Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 8, 2007, at 7:46 PM, Chris McDonough wrote: How about zope.transaction? Guido recently told me that people in the Python community at large assume that anything in the Zope namespace is assumed to be Zope specific, so I'd rather not put it there. Does it matter? People who are allergic to the name zope can probably lose. It maters to me. There's a good deal of 3rd-party code that does import transaction Good point. I guess we should leave the package where it is. Note that then we have a tricky issue with avoiding having the package installed twice. I guess we should ignore this for now. :/ It'd be no problem to provide the shims. I don't agree. Shims and similar tricks are evil. Sometimes, it's a necessary evil, but I don't think the case is strong enough here. Jim -- Jim Fulton Zope Corporation ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
[ZODB-Dev] Decide about `after commit hooks` regarding abort
Hi, this bug https://bugs.edge.launchpad.net/zodb/+bug/137739 needs a decision whether: - we want after commit hooks to be called on abort (interface documentation and tests contradict each other) - we want to backport this from the trunk to 3.8 Christian -- gocept gmbh co. kg - forsterstrasse 29 - 06112 halle (saale) - germany www.gocept.com - [EMAIL PROTECTED] - phone +49 345 122 9889 7 - fax +49 345 122 9889 1 - zope and plone consulting and development signature.asc Description: Dies ist ein digital signierter Nachrichtenteil ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 9, 2007, at 7:52 AM, Jim Fulton wrote: On Nov 8, 2007, at 7:46 PM, Chris McDonough wrote: How about zope.transaction? Guido recently told me that people in the Python community at large assume that anything in the Zope namespace is assumed to be Zope specific, so I'd rather not put it there. Does it matter? People who are allergic to the name zope can probably lose. It maters to me. OK. I defer here. But in general, I think what would probably work better than a new z namespace or any other avoidance of the zope name is is better dependency specifications, so people would feel better about trying to easy_install zope.* packages. Tres suggested yesterday that we should write a buildbot-like thing that checked out each top-level package in SVN and installed it into a fresh virtualenv to see what its dependencies actually are and fix the too-conservative dependencies. I've made a 'zope.transaction' package that I'll rename to 'transaction': one test still fails in its current state, which I should get fixed today: http://svn.zope.org/zope.transaction/trunk/ WeakSet is in weakset.py. It also contains TimeStamp, which will get moved out of persistent. The tests work (reqt's are downloaded) if you do setup.py test -q - C ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 9, 2007, at 8:31 AM, Chris McDonough wrote: It also contains TimeStamp, which will get moved out of persistent. Why? I don't see any uses of TimeStamp by the transaction package. In your new package, it is only used by its tests. The tests work (reqt's are downloaded) if you do setup.py test -q Yawn. IMO, the test command in setuptools is a waste of time, because it doesn't work with anything else. zope.interface is a real requirement. It is already in test_requires. Over time, we need to clean up the transaction tests so they don't use ZODB. Jim -- Jim Fulton Zope Corporation ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 9, 2007, at 8:41 AM, Jim Fulton wrote: On Nov 9, 2007, at 8:31 AM, Chris McDonough wrote: It also contains TimeStamp, which will get moved out of persistent. Why? I don't see any uses of TimeStamp by the transaction package. In your new package, it is only used by its tests. D'oh! You're right. Out it goes. I wrote tests for it, I'll add them to the persistent package. The tests work (reqt's are downloaded) if you do setup.py test -q Yawn. IMO, the test command in setuptools is a waste of time, because it doesn't work with anything else. It runs all the tests, even the doctests, if thats what you mean. See the additional_tests hair in the test modules. zope.interface is a real requirement. It is already in test_requires. Over time, we need to clean up the transaction tests so they don't use ZODB. Yeah, given that we're name this thing transaction, it's an actually an immediate requirement. There's only one test that uses anything that can't be mocked up in the transaction package (it uses an actual MappingStorage and a DB) itself. It also happens to be the one that fails right now; I haven't tried to understand it yet. - C ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 9, 2007, at 9:29 AM, Chris McDonough wrote: On Nov 9, 2007, at 8:41 AM, Jim Fulton wrote: On Nov 9, 2007, at 8:31 AM, Chris McDonough wrote: It also contains TimeStamp, which will get moved out of persistent. Why? I don't see any uses of TimeStamp by the transaction package. In your new package, it is only used by its tests. D'oh! You're right. Out it goes. I wrote tests for it, I'll add them to the persistent package. Thanks! The tests work (reqt's are downloaded) if you do setup.py test -q Yawn. IMO, the test command in setuptools is a waste of time, because it doesn't work with anything else. It runs all the tests, even the doctests, if thats what you mean. See the additional_tests hair in the test modules. My point is that the meta data you added to the setup.py only works with setup.py. It isn't accessible to any other test runners. I shouldn't have yawned. It is significant that the tests work. :) I just don't find this way of running the tests to be useful. The first time I work on this package, I'll add a buildout.cfg so I can use the Zope test runner. At that point, I'll have to deal with these extra requirements in another way (which is no big deal). zope.interface is a real requirement. It is already in test_requires. Over time, we need to clean up the transaction tests so they don't use ZODB. Yeah, given that we're name this thing transaction, it's an actually an immediate requirement. If you are going to spend the time, then, uh, sure. ;) Seriously, while I would love to see this cleaned up, I don't think I would consider this super urgent. I guess that depends on competing priorities. There's only one test that uses anything that can't be mocked up in the transaction package (it uses an actual MappingStorage and a DB) itself. It also happens to be the one that fails right now; I haven't tried to understand it yet. Gah. BTW, if you haven't already, you should check for transaction tests lurking in the other ZODB packages. Jim -- Jim Fulton Zope Corporation ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 9, 2007, at 9:29 AM, Chris McDonough wrote: On Nov 9, 2007, at 8:41 AM, Jim Fulton wrote: On Nov 9, 2007, at 8:31 AM, Chris McDonough wrote: It also contains TimeStamp, which will get moved out of persistent. Why? I don't see any uses of TimeStamp by the transaction package. In your new package, it is only used by its tests. D'oh! You're right. Out it goes. I wrote tests for it, I'll add them to the persistent package. BTW, I doubt that persistent is the right location for TimeStamp either, but that's a different project. TimeStamp *is* there now, so that's the right place to put these tests (now). Someday, I'm going to refactor persistent in a pretty major way. Jim -- Jim Fulton Zope Corporation ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
[ZODB-Dev] Re: [Checkins] SVN: zope.app.securitypolicy/branches/3.4/ Revert the splitup of zope.app.securitypolicy in the stable 3.4.x line (it will be confined
On Friday 09 November 2007, Philipp von Weitershausen wrote: Log message for revision 81637: Revert the splitup of zope.app.securitypolicy in the stable 3.4.x line (it will be confined to the trunk/3.5.x line). We're doing this by creating the 3.4.x branch based on the last working release, 3.4.0. Please do not do this!! All packages in the KGS have been adjusted! Just fix the broken things! Regards, Stephan -- Stephan Richter CBU Physics Chemistry (B.S.) / Tufts Physics (Ph.D. student) Web2k - Web Software Design, Development and Training ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
[ZODB-Dev] Updating ZEO cache file magic number to get rid of version info
I'm studying the ZEO cache-file implementation. I'd like to remove version support from the trunk. Would anyone object if I changed the magic number on the trunk (3.9) to reflect that cache data records no- longer contain version information? This would mean that persistent cache files created with 3.8 and earlier wouldn't work with 3.9. Jim -- Jim Fulton Zope Corporation ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 9, 2007, at 9:43 AM, Jim Fulton wrote: Yawn. IMO, the test command in setuptools is a waste of time, because it doesn't work with anything else. It runs all the tests, even the doctests, if thats what you mean. See the additional_tests hair in the test modules. My point is that the meta data you added to the setup.py only works with setup.py. It isn't accessible to any other test runners. I shouldn't have yawned. It is significant that the tests work. :) I just don't find this way of running the tests to be useful. The first time I work on this package, I'll add a buildout.cfg so I can use the Zope test runner. At that point, I'll have to deal with these extra requirements in another way (which is no big deal). What if we caused setup.py to read a buildout.cfg for the tests_require package names and we passed these in as tests_require= names? Would that make it all better? zope.interface is a real requirement. It is already in test_requires. Over time, we need to clean up the transaction tests so they don't use ZODB. Yeah, given that we're name this thing transaction, it's an actually an immediate requirement. If you are going to spend the time, then, uh, sure. ;) Seriously, while I would love to see this cleaned up, I don't think I would consider this super urgent. I guess that depends on competing priorities. I just deleted the sections of the test_transaction doctests that depended on ZODB. They were actually not really testing transactions, they were testing persistent object behavior. I'll try to put them back in a form within ZODB proper, as the test really are testing ZODB functionality, not transaction functionality. There's only one test that uses anything that can't be mocked up in the transaction package (it uses an actual MappingStorage and a DB) itself. It also happens to be the one that fails right now; I haven't tried to understand it yet. Gah. BTW, if you haven't already, you should check for transaction tests lurking in the other ZODB packages. Good idea. In the meantime, I've gotten rid of 'zope.transaction' and I've created a new top-level 'transaction' package at http://svn.zope.org/transaction/ . All its tests pass. It depends only on 'zope.interface', and requires 'zope.testing' for running the tests. - C ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 9, 2007, at 11:37 AM, Chris McDonough wrote: On Nov 9, 2007, at 9:43 AM, Jim Fulton wrote: Yawn. IMO, the test command in setuptools is a waste of time, because it doesn't work with anything else. It runs all the tests, even the doctests, if thats what you mean. See the additional_tests hair in the test modules. My point is that the meta data you added to the setup.py only works with setup.py. It isn't accessible to any other test runners. I shouldn't have yawned. It is significant that the tests work. :) I just don't find this way of running the tests to be useful. The first time I work on this package, I'll add a buildout.cfg so I can use the Zope test runner. At that point, I'll have to deal with these extra requirements in another way (which is no big deal). What if we caused setup.py to read a buildout.cfg for the tests_require package names and we passed these in as tests_require= names? Would that make it all better? Too complicated. :) Again, this isn't a big deal. You've done the hard work of figuring out what's required. You even reduced the requirements. I can't ask for more. In fact, from what you've written below, nothing there aren't any extra requirements if the Zope test runner is used, as it will already cause zope.testing to be required. zope.interface is a real requirement. It is already in test_requires. Over time, we need to clean up the transaction tests so they don't use ZODB. Yeah, given that we're name this thing transaction, it's an actually an immediate requirement. If you are going to spend the time, then, uh, sure. ;) Seriously, while I would love to see this cleaned up, I don't think I would consider this super urgent. I guess that depends on competing priorities. I just deleted the sections of the test_transaction doctests that depended on ZODB. They were actually not really testing transactions, they were testing persistent object behavior. I'll try to put them back in a form within ZODB proper, as the test really are testing ZODB functionality, not transaction functionality. Way cool. There's only one test that uses anything that can't be mocked up in the transaction package (it uses an actual MappingStorage and a DB) itself. It also happens to be the one that fails right now; I haven't tried to understand it yet. Gah. BTW, if you haven't already, you should check for transaction tests lurking in the other ZODB packages. Good idea. In the meantime, I've gotten rid of 'zope.transaction' and I've created a new top-level 'transaction' package at http:// svn.zope.org/transaction/ . All its tests pass. It depends only on 'zope.interface', and requires 'zope.testing' for running the tests. Yay! I think you are pretty close to done -- if not done. Much thanks. I wish there was a way to state anti-requirements in setuptools. Then we could say that transaction had an anti-requirement for ZODB3 3.9. BTW, it would be nice to now remove the transaction package from the ZODB trunk and make it a dependency. Jim -- Jim Fulton Zope Corporation ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] Updating ZEO cache file magic number to get rid of version info
+1 On Nov 9, 2007 9:46 AM, Jim Fulton [EMAIL PROTECTED] wrote: I'm studying the ZEO cache-file implementation. I'd like to remove version support from the trunk. Would anyone object if I changed the magic number on the trunk (3.9) to reflect that cache data records no- longer contain version information? This would mean that persistent cache files created with 3.8 and earlier wouldn't work with 3.9. Jim -- Jim Fulton Zope Corporation ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev -- Alan Runyan Enfold Systems, Inc. http://www.enfoldsystems.com/ phone: +1.713.942.2377x111 fax: +1.832.201.8856 ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 9, 2007, at 12:10 PM, Chris McDonough wrote: In the meantime, I've gotten rid of 'zope.transaction' and I've created a new top-level 'transaction' package at http:// svn.zope.org/transaction/ . All its tests pass. It depends only on 'zope.interface', and requires 'zope.testing' for running the tests. Yay! I think you are pretty close to done -- if not done. Much thanks. I wish there was a way to state anti-requirements in setuptools. Then we could say that transaction had an anti-requirement for ZODB3 3.9. Yeah, especially given that I removed a deprecated method (beforeCommitHook), so its installation may tend to break running systems. Maybe I should put it back, as systems will probably continue to just work even if they have this installed for any system that uses a recent Zope. I'm not sure what's best here. One option might be to write something that searches sys.path looking for and complaining about multiple transaction modules. BTW, it would be nice to now remove the transaction package from the ZODB trunk and make it a dependency. Yes. ZODB's setup.py is polyglotic... it works if setuptools isn't installed. I suspect it shouldn't continue to given that it now has an external egg dependency. My intent, if I can find time, is to rewrite the setup script from scratch and require setuptools. I suspect it will be much simpler at that point. Jim -- Jim Fulton Zope Corporation ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev
Re: [ZODB-Dev] breaking out the transaction module from ZODB
On Nov 9, 2007, at 12:10 PM, Chris McDonough wrote: BTW, it would be nice to now remove the transaction package from the ZODB trunk and make it a dependency. Yes. ZODB's setup.py is polyglotic... it works if setuptools isn't installed. I suspect it shouldn't continue to given that it now has an external egg dependency. I've made changes to the ZODB setup.py and I've remove the 'transaction' directory from ZODB/src. The changes also imply that setuptools is required to run setup.py, and the 'transaction' distribution is named as an install_requires dependency. Setuptools is now required to install the ZODB head. I made a tag before I did this at http://svn.zope.org/ZODB/tags/before_transaction_remove/ in case I hosed anything in the process. - C ___ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev