|
|
|
Jacob Floyd
|
Hey Andi (and anyone else who can give some input),
Does chandlerdb 0.7-37 work with pylucene-2.4.1 or 2.4.*? I've just built chandlerdb against the osaf patched db, and pylucene-2.4.1 and get the following error when running the tests: === Start snippet of test output === ====================================================================== ERROR: testZlibEncrypted (tests.TestText.TestText) ---------------------------------------------------------------------- Traceback (most recent call last): File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/tests/TestText.py", line 30, in setUp super(TestText, self).setUp() File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/util/RepositoryTestCase.py", line 44, in setUp self._openRepository(ramdb) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/util/RepositoryTestCase.py", line 34, in _openRepository self.rep.create(ramdb=self.ramdb, refcounted=True) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/DBRepository.py", line 119, in create self._create(**kwds) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/DBRepository.py", line 175, in _create self.store.open(**kwds) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/DBRepository.py", line 1119, in open self._index.open("__index.db", txn, **kwds) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/LuceneContainer.py", line 164, in open indexWriter = IndexWriter(directory, StandardAnalyzer(), True) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/LuceneContainer.py", line 119, in deleteFile if self.fileContainer.fileExists(name): File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/FileContainer.py", line 72, in fileExists return File(self, name).exists() File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/FileContainer.py", line 158, in __init__ if not self.exists(): File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/FileContainer.py", line 197, in exists value = self._container.get(self._key) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/DBContainer.py", line 169, in get return db.get(key, self.store.txn, self.c.flags, None) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/LuceneContainer.py", line 59, in close super(DbIndexOutput, self).close() File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/LuceneContainer.py", line 70, in flushBuffer self.stream.write(buffer) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/FileContainer.py", line 363, in write self._block.write(buffer) File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/FileContainer.py", line 308, in write self._data[self._position:self._position+size] = data TypeError: bad argument type for built-in operation ---------------------------------------------------------------------- Ran 149 tests in 98.264s FAILED (errors=147) === End snippet of test output === Note, that *all* of the tests stop at the same point: line 308 of FileContainer.py I stuck the line: print "data=%s" %data and print "buffer=%s" %buffer In a variety of places where those variables are used (next to the lines mentioned in the traceback) and I got the following: buffer=JArray<byte>ÿÿÿù !¦¢òâ data=JArray<byte>ÿÿÿù !¦¢òâ or buffer=JArray<byte>ÿÿÿù !¤dU»< data=JArray<byte>ÿÿÿù !¤dU»< the garbage differes from test to test, but the Jarray<byte> is always there, leading me to believe these errors are caused by recent changes in pylucene: (quoted form the CHANGELOG) Version 2.4.0 -> 2.4.1 - passing strings for byte[] or char[] is no longer supported, use JArray Version 2.3.2 -> 2.4.0 - arrays are now wrapped with JArray() instances instead of expanded into lists However I do not know where to go from here. All I've got is guesses and I'm not sure how to proceed or what to patch to make chandlerdb work with pylucene 2.4.1-1 (if that really is the problem here). Note that all tests run just fine for both pylucene and db (well, for db, there's always a couple regression tests that don't work quite right, but that's a case for fixing the tests, which I've not a clue how to go about doing, not a problem with db itself.) Thank you all so much for your help and patience with me as I work through all of this. Thanks, Jacob _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Open Source Applications Foundation "chandler-dev" mailing list http://lists.osafoundation.org/mailman/listinfo/chandler-dev |
||||||||||||||||
|
Andi Vajda
|
On Apr 10, 2009, at 15:33, Jacob Floyd <[hidden email]> wrote: > Hey Andi (and anyone else who can give some input), > > Does chandlerdb 0.7-37 work with pylucene-2.4.1 or 2.4.*? No, probably not since I changed array support in JCC in version 2.0. That part of the Lucene store extensions needs to be reworked. The changes should be minimal, look at the svn history of PyLucene's test_PythonDirectory.py. But, to do this properly, one needs to take on the task of upgrading PyLucene in the chandler build. Given, at least, that no new functionality is introduced by this upgrade that chandler lacks or desires, I don't think you'll get much interest in it. Andi.. > I've just > built chandlerdb against the osaf patched db, and pylucene-2.4.1 and > get the following error when running the tests: > > === Start snippet of test output === > ====================================================================== > ERROR: testZlibEncrypted (tests.TestText.TestText) > ---------------------------------------------------------------------- > Traceback (most recent call last): > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/tests/TestText.py", > line 30, in setUp > super(TestText, self).setUp() > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/util/ > RepositoryTestCase.py", > line 44, in setUp > self._openRepository(ramdb) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/util/ > RepositoryTestCase.py", > line 34, in _openRepository > self.rep.create(ramdb=self.ramdb, refcounted=True) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > DBRepository.py", > line 119, in create > self._create(**kwds) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > DBRepository.py", > line 175, in _create > self.store.open(**kwds) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > DBRepository.py", > line 1119, in open > self._index.open("__index.db", txn, **kwds) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > LuceneContainer.py", > line 164, in open > indexWriter = IndexWriter(directory, StandardAnalyzer(), True) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > LuceneContainer.py", > line 119, in deleteFile > if self.fileContainer.fileExists(name): > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > FileContainer.py", > line 72, in fileExists > return File(self, name).exists() > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > FileContainer.py", > line 158, in __init__ > if not self.exists(): > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > FileContainer.py", > line 197, in exists > value = self._container.get(self._key) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > DBContainer.py", > line 169, in get > return db.get(key, self.store.txn, self.c.flags, None) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > LuceneContainer.py", > line 59, in close > super(DbIndexOutput, self).close() > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > LuceneContainer.py", > line 70, in flushBuffer > self.stream.write(buffer) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > FileContainer.py", > line 363, in write > self._block.write(buffer) > File "/var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/chandlerdb/persistence/ > FileContainer.py", > line 308, in write > self._data[self._position:self._position+size] = data > TypeError: bad argument type for built-in operation > > ---------------------------------------------------------------------- > Ran 149 tests in 98.264s > > FAILED (errors=147) > === End snippet of test output === > Note, that *all* of the tests stop at the same point: line 308 of > FileContainer.py > > I stuck the line: > print "data=%s" %data > and > print "buffer=%s" %buffer > > In a variety of places where those variables are used (next to the > lines mentioned in the traceback) and I got the following: > buffer=JArray<byte>ÿÿÿù !¦¢òâ > data=JArray<byte>ÿÿÿù !¦¢òâ > or > buffer=JArray<byte>ÿÿÿù !¤dU»< > data=JArray<byte>ÿÿÿù !¤dU»< > > the garbage differes from test to test, but the Jarray<byte> is always > there, leading me to believe these errors are caused by recent changes > in pylucene: (quoted form the CHANGELOG) > Version 2.4.0 -> 2.4.1 > - passing strings for byte[] or char[] is no longer supported, use > JArray > Version 2.3.2 -> 2.4.0 > - arrays are now wrapped with JArray() instances instead of expanded > into lists > > However I do not know where to go from here. All I've got is guesses > and I'm not sure how to proceed or what to patch to make chandlerdb > work with pylucene 2.4.1-1 (if that really is the problem here). > > Note that all tests run just fine for both pylucene and db (well, for > db, there's always a couple regression tests that don't work quite > right, but that's a case for fixing the tests, which I've not a clue > how to go about doing, not a problem with db itself.) > > Thank you all so much for your help and patience with me as I work > through all of this. > > Thanks, > Jacob > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > > Open Source Applications Foundation "chandler-dev" mailing list > http://lists.osafoundation.org/mailman/listinfo/chandler-dev Open Source Applications Foundation "chandler-dev" mailing list http://lists.osafoundation.org/mailman/listinfo/chandler-dev |
||||||||||||||||
|
Jacob Floyd
|
> That part of the Lucene store extensions needs to be reworked.
> The changes should be minimal, look at the svn history of PyLucene's > test_PythonDirectory.py. That seems to have been just the ticket I needed. Based on the various changes visible in svn, I made a patch for chandlerdb/persistence/LuceneContainer.py which is attached (I hope that's ok on this list, if not let me know, and I'll post it some other way) It seems to work for me, all the tests apparently pass, but please do a sanity check on what I changed. > But, to do this properly, one needs to take on the task of upgrading > PyLucene in the chandler build. > > Given, at least, that no new functionality is introduced by this > upgrade that chandler lacks or desires, I don't think you'll get much > interest in it. ok. Well we'll see what happens with this patch then. Thanks for looking it over. Thank you, Jacob Floyd _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Open Source Applications Foundation "chandler-dev" mailing list http://lists.osafoundation.org/mailman/listinfo/chandler-dev |
||||||||||||||||
|
Jacob Floyd
|
With the patch I sent, I get all oks, but there's some extra output, that I don't know if I should worry about, or if it's normal. Here's the output from some of the tests (What I skipped passed with a simple ok, or was clearly intended output). Thanks again for all your help!
running test running egg_info writing chandlerdb.egg-info/PKG-INFO writing top-level names to chandlerdb.egg-info/top_level.txt writing dependency_links to chandlerdb.egg-info/dependency_links.txt reading manifest file 'chandlerdb.egg-info/SOURCES.txt' writing manifest file 'chandlerdb.egg-info/SOURCES.txt' running build_ext copying build/lib.linux-i686-2.5/chandlerdb/util/c.so -> chandlerdb/util copying build/lib.linux-i686-2.5/chandlerdb/schema/c.so -> chandlerdb/schema copying build/lib.linux-i686-2.5/chandlerdb/item/c.so -> chandlerdb/item copying build/lib.linux-i686-2.5/chandlerdb/persistence/c.so -> chandlerdb/persistence testDifference (tests.TestAbstractSets.TestAbstractSets) ... ok testDuplicate (tests.TestAbstractSets.TestAbstractSets) ... Set 'Union((UUID('04lQcoD517u8Gg00PNUgx6'), 'set'), (UUID('04nwswD517u8Gg00PNUgx6'), 'set'))', value of attribute 'set' on <Movie: m2 0116d0ca-2714-11de-8a90-000cf1e10846> has duplicated source (<Movie: m4 01184572-2714-11de-8a90-000cf1e10846>, writers) ok testFilter (tests.TestAbstractSets.TestAbstractSets) ... ok testIntersection (tests.TestAbstractSets.TestAbstractSets) ... ok ''' SNIP ''' testDeferredReindexing (tests.TestIndexes.TestIndexes) ... Attributes (('frenchTitle', 'title')) in index (<Actor: KHepburn 0dd312c4-2714-11de-8a90-000cf1e10846>, movies, f) are correlated but the kind of the items being indexed is not declared. This correlation will not be heeded during view merges ok testDeferredReindexingAdd (tests.TestIndexes.TestIndexes) ... Attributes (('frenchTitle', 'title')) in index (<Actor: KHepburn 0f6f71ae-2714-11de-8a90-000cf1e10846>, movies, f) are correlated but the kind of the items being indexed is not declared. This correlation will not be heeded during view merges ok ''' SNIP ''' testDeepCopyRef (tests.TestDeepCopyRef.TestDeepCopyRef) ... eggsClone.event is <Item (new): 522783ba-2714-11de-8a90-000cf1e10846> eggsBlock.event is <Item (new): spamEvent 52273194-2714-11de-8a90-000cf1e10846> ok ''' SNIP ''' testReopen (tests.TestMove.TestMove) ... ok testReopenCommit (tests.TestMove.TestMove) ... ok Create a repository and make sure it is open ... creating repository in /var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/tests/__repository__ <DBRepository>: checkpointing every 10 minutes closed db in 0:00:00.029652 ok Create and then delete a repository, verify it doesn't exist ... creating repository in /var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/tests/__repository__ <DBRepository>: checkpointing every 10 minutes closed db in 0:00:00.015840 opening repository in /var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/tests/__repository__ closed db in 0:00:00.000188 ok Minimal test to ensure that we can load packs ... creating repository in /var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/tests/__repository__ <DBRepository>: checkpointing every 10 minutes closed db in 0:00:00.019838 ok The repository should not exist at this point ... opening repository in /var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/internal/chandlerdb/tests/__repository__ closed db in 0:00:00.000094 ok ''' SNIP ''' testMonitor (tests.TestMixins.TestMixins) ... <Movie: 754a15b0-2714-11de-8a90-000cf1e10846> kindChanged add <Movie: 754a15b0-2714-11de-8a90-000cf1e10846> <Kind: Movie 7536fce6-2714-11de-8a90-000cf1e10846> 75499a40-2714-11de-8a90-000cf1e10846 () ok ''' SNIP ''' ---------------------------------------------------------------------- Ran 149 tests in 292.200s OK _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Open Source Applications Foundation "chandler-dev" mailing list http://lists.osafoundation.org/mailman/listinfo/chandler-dev |
||||||||||||||||
|
Andi Vajda
|
In reply to this post
by Jacob Floyd
On Apr 11, 2009, at 20:27, Jacob Floyd <[hidden email]> wrote: >> That part of the Lucene store extensions needs to be reworked. >> The changes should be minimal, look at the svn history of PyLucene's >> test_PythonDirectory.py. > > That seems to have been just the ticket I needed. Based on the > various changes visible in svn, I made a patch for chandlerdb/ > persistence/LuceneContainer.py which is attached (I hope that's ok > on this list, if not let me know, and I'll post it some other way) That's definitely ok. This is what this list is for. > It seems to work for me, all the tests apparently pass, but please > do a sanity check on what I changed. Yes, these changes are the ones I'd expect. All looks familiar. >> But, to do this properly, one needs to take on the task of upgrading >> PyLucene in the chandler build. >> >> Given, at least, that no new functionality is introduced by this >> upgrade that chandler lacks or desires, I don't think you'll get much >> interest in it. > > ok. Well we'll see what happens with this patch then. Thanks for > looking it over. If you run with this new build and don't get strange new bugs over time, I'd say your patch is good, but I didn't try it out myself. Congrats ! Andi.. > > > Thank you, > Jacob Floyd > <LuceneContainer.py.diff> > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > > Open Source Applications Foundation "chandler-dev" mailing list > http://lists.osafoundation.org/mailman/listinfo/chandler-dev _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ Open Source Applications Foundation "chandler-dev" mailing list http://lists.osafoundation.org/mailman/listinfo/chandler-dev |
||||||||||||||||
|
Andi Vajda
|
In reply to this post
by Jacob Floyd
On Apr 11, 2009, at 20:50, Jacob Floyd <[hidden email]> wrote: > With the patch I sent, I get all oks, but there's some extra output, > that I don't know if I should worry about, or if it's normal. Here's > the output from some of the tests (What I skipped passed with a > simple ok, or was clearly intended output). Thanks again for all > your help! The extra output looks familiar. The patch you wrote should only affect one or two tests anyway. Nothing looks unusual here. Andi.. > > > running test > running egg_info > writing chandlerdb.egg-info/PKG-INFO > writing top-level names to chandlerdb.egg-info/top_level.txt > writing dependency_links to chandlerdb.egg-info/dependency_links.txt > reading manifest file 'chandlerdb.egg-info/SOURCES.txt' > writing manifest file 'chandlerdb.egg-info/SOURCES.txt' > running build_ext > copying build/lib.linux-i686-2.5/chandlerdb/util/c.so -> chandlerdb/ > util > copying build/lib.linux-i686-2.5/chandlerdb/schema/c.so -> > chandlerdb/schema > copying build/lib.linux-i686-2.5/chandlerdb/item/c.so -> chandlerdb/ > item > copying build/lib.linux-i686-2.5/chandlerdb/persistence/c.so -> > chandlerdb/persistence > testDifference (tests.TestAbstractSets.TestAbstractSets) ... ok > testDuplicate (tests.TestAbstractSets.TestAbstractSets) ... Set > 'Union((UUID('04lQcoD517u8Gg00PNUgx6'), 'set'), > (UUID('04nwswD517u8Gg00PNUgx6'), 'set'))', value of attribute 'set' > on <Movie: m2 0116d0ca-2714-11de-8a90-000cf1e10846> has duplicated > source (<Movie: m4 01184572-2714-11de-8a90-000cf1e10846>, writers) > ok > testFilter (tests.TestAbstractSets.TestAbstractSets) ... ok > testIntersection (tests.TestAbstractSets.TestAbstractSets) ... ok > ''' SNIP ''' > testDeferredReindexing (tests.TestIndexes.TestIndexes) ... > Attributes (('frenchTitle', 'title')) in index (<Actor: KHepburn > 0dd312c4-2714-11de-8a90-000cf1e10846>, movies, f) are correlated but > the kind of the items being indexed is not declared. This > correlation will not be heeded during view merges > ok > testDeferredReindexingAdd (tests.TestIndexes.TestIndexes) ... > Attributes (('frenchTitle', 'title')) in index (<Actor: KHepburn > 0f6f71ae-2714-11de-8a90-000cf1e10846>, movies, f) are correlated but > the kind of the items being indexed is not declared. This > correlation will not be heeded during view merges > ok > ''' SNIP ''' > testDeepCopyRef (tests.TestDeepCopyRef.TestDeepCopyRef) ... > eggsClone.event is <Item (new): 522783ba-2714-11de-8a90-000cf1e10846> > eggsBlock.event is <Item (new): spamEvent > 52273194-2714-11de-8a90-000cf1e10846> > ok > ''' SNIP ''' > testReopen (tests.TestMove.TestMove) ... ok > testReopenCommit (tests.TestMove.TestMove) ... ok > Create a repository and make sure it is open ... creating repository > in /var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/ > internal/chandlerdb/tests/__repository__ > <DBRepository>: checkpointing every 10 minutes > closed db in 0:00:00.029652 > ok > Create and then delete a repository, verify it doesn't exist ... > creating repository in /var/tmp/portage/dev-python/chandlerdb-0.7.37/ > work/chandler-1.0.2/internal/chandlerdb/tests/__repository__ > <DBRepository>: checkpointing every 10 minutes > closed db in 0:00:00.015840 > opening repository in /var/tmp/portage/dev-python/chandlerdb-0.7.37/ > work/chandler-1.0.2/internal/chandlerdb/tests/__repository__ > closed db in 0:00:00.000188 > ok > Minimal test to ensure that we can load packs ... creating > repository in /var/tmp/portage/dev-python/chandlerdb-0.7.37/work/ > chandler-1.0.2/internal/chandlerdb/tests/__repository__ > <DBRepository>: checkpointing every 10 minutes > closed db in 0:00:00.019838 > ok > The repository should not exist at this point ... opening repository > in /var/tmp/portage/dev-python/chandlerdb-0.7.37/work/chandler-1.0.2/ > internal/chandlerdb/tests/__repository__ > closed db in 0:00:00.000094 > ok > ''' SNIP ''' > testMonitor (tests.TestMixins.TestMixins) ... <Movie: > 754a15b0-2714-11de-8a90-000cf1e10846> kindChanged add <Movie: > 754a15b0-2714-11de-8a90-000cf1e10846> <Kind: Movie > 7536fce6-2714-11de-8a90-000cf1e10846> > 75499a40-2714-11de-8a90-000cf1e10846 () > ok > ''' SNIP ''' > ---------------------------------------------------------------------- > Ran 149 tests in 292.200s > > OK > _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > > Open Source Applications Foundation "chandler-dev" mailing list > http://lists.osafoundation.org/mailman/listinfo/chandler-dev Open Source Applications Foundation "chandler-dev" mailing list http://lists.osafoundation.org/mailman/listinfo/chandler-dev |
||||||||||||||||
| Free Embeddable Forum Powered by Nabble | Help |