Index: CHANGES.txt
===================================================================
--- CHANGES.txt	(revision 823241)
+++ CHANGES.txt	(working copy)
@@ -7,6 +7,10 @@
 
 Changes in runtime behavior
 
+* LUCENE-1966: Updated the Arabic stopwords.txt with an enhanced version,
+  cleaned up, and normalized words. ArabicAnalyzer now have StopFilter 
+  after normalization filter. (Basem Narmok)
+
 API Changes
 
 * LUCENE-1944, ...: Removed (all) deprecated methods/classes left over
Index: contrib/analyzers/common/src/java/org/apache/lucene/analysis/ar/ArabicAnalyzer.java
===================================================================
--- contrib/analyzers/common/src/java/org/apache/lucene/analysis/ar/ArabicAnalyzer.java	(revision 823241)
+++ contrib/analyzers/common/src/java/org/apache/lucene/analysis/ar/ArabicAnalyzer.java	(working copy)
@@ -147,9 +147,9 @@
    */
   public final TokenStream tokenStream(String fieldName, Reader reader) {
     TokenStream result = new ArabicLetterTokenizer( reader );
-    result = new StopFilter( result, stoptable );
     result = new LowerCaseFilter(result);
     result = new ArabicNormalizationFilter( result );
+    result = new StopFilter( result, stoptable );
     result = new ArabicStemFilter( result );
 
     return result;
@@ -174,9 +174,9 @@
     if (streams == null) {
       streams = new SavedStreams();
       streams.source = new ArabicLetterTokenizer(reader);
-      streams.result = new StopFilter(streams.source, stoptable);
-      streams.result = new LowerCaseFilter(streams.result);
+      streams.result = new LowerCaseFilter(streams.source);
       streams.result = new ArabicNormalizationFilter(streams.result);
+      streams.result = new StopFilter(streams.result, stoptable);
       streams.result = new ArabicStemFilter(streams.result);
       setPreviousTokenStream(streams);
     } else {
Index: contrib/analyzers/common/src/resources/org/apache/lucene/analysis/ar/stopwords.txt
===================================================================
--- contrib/analyzers/common/src/resources/org/apache/lucene/analysis/ar/stopwords.txt	(revision 823241)
+++ contrib/analyzers/common/src/resources/org/apache/lucene/analysis/ar/stopwords.txt	(working copy)
@@ -1,161 +1,93 @@
 # This file was created by Jacques Savoy and is distributed under the BSD license.
 # See http://members.unine.ch/jacques.savoy/clef/index.html.
 # Also see http://www.opensource.org/licenses/bsd-license.html
+# Cleaned on October 08, 2009 (all normlized, so use after normalization)
+من
+ومن
+منها
+منه
+فى
+وفى
+فيها
+فيه
+و
+ف
+ثم
+او
 ب
+بها
+به
 ا
-أ
-،
-عبد
-عدم
-عام
-عاما
+اى
+لا
+ولا
+الا
+لكن
+ما
+وما
+كما
+فما
 عن
-عند
-عندما
-على
-عليه
-عليها
-تم
-ضد
-بعد
-بعض
-اعادة
-اعلن
-اعلنت
-بسبب
-حتى
-اتفاق
+مع
 اذا
-احد
-اثر
-اجتماع
-اطار
-اربعة
-اخرى
-بان
-ابو
-اجل
-غير
-اطلاق
-بشكل
-حاليا
-بن
-به
-ثم
-اف
 ان
-او
-اي
-بها
-جهة
-حيث
-اكد
-الا
-اما
-العام
-السابق
-السلام
-التعاون
+انها
+انه
+بان
+فان
+وان
 التى
-التي
-اكثر
-ايضا
-الذاتي
-الاخيرة
-الثاني
-الثانية
 الذى
-الذي
-الان
-خلال
-حوالى
 الذين
-الحكم
-الاول
-الاولى
-بين
-ذلك
 الى
-انه
-ضمن
-انها
-جميع
-الماضي
-المقبل
-ف
-و
-و6
-قد
-لا
-ما
-مع
-هذا
-واضاف
-واضافت
-فان
-قبل
-كان
-لدى
-نحو
-هذه
-وان
-يذكر
-كانت
-واوضح
-فى
-في
+على
+عليها
+عليه
+اما
+ايضا
 كل
+وكل
 لم
+ولم
 لن
-له
-من
+ولن
+هى
 هو
-هي
-كما
+وهى
+وهو
+فهى
+فهو
+انت
+لك
 لها
-منذ
-ولا
-مقابل
+له
+هذه
+هذا
+تلك
+ذلك
 هناك
-وكان
-وكانت
-فيه
-لكن
-وفي
-ولم
-ومن
-وهو
-وهي
-فيها
-منها
+كانت
+كان
 يكون
-أخرى
-إذا
-أربعة
-إطار
-إعادة
-أعلن
-أعلنت
-أف
-أكثر
-أكد
-إلا
-الأخيرة
-الآن
-الأول
-الأولى
-إلى
-أما
-أن
-إن
-إنه
-أنه
-أنها
-إنها
-أو
-اى
-أي
-أى
-أيضا
-بأن
-فإن
+تكون
+وكانت
+وكان
+غير
+بعض
+قد
+نحو
+بين
+بينما
+منذ
+ضمن
+حيث
+الان
+خلال
+بعد
+قبل
+حتى
+عند
+عندما
+لدى
+ايضا
+جميع
