- 07 Apr, 2001 9 commits
-
-
Jim Fulton authored
At: http://classic.zope.org:8080/Collector/Collector/2141/sview Submitter: John Eikenberry Email: jae@kavi.com Description: We have a large query implemented via a SQL Method. We've been messing with it to get the most speed out of it, and noticed a large hit in the __init__() method on the Results class. We found that with this simple tweak (see included patch) we got around a 180% speed up. Not a ton, but pretty good for changing 3 lines of code.
-
Jim Fulton authored
(There's really not a good reason for asynchat to be in Python's standard lib.)
-
Jim Fulton authored
-
Jim Fulton authored
CVS (1.9).
-
Jim Fulton authored
-
Jim Fulton authored
as I hate line-continuation characters.
-
Jim Fulton authored
-
Fred Drake authored
Remove done item from TO DO list (CDATA content support).
-
Jeremy Hylton authored
to a directory other than the ZEO package directory.
-
- 06 Apr, 2001 18 commits
-
-
Fred Drake authored
Add general support for CDATA element content, enabled by default for <script> and <style> elements since those are the ones I found in HTML 4.01.
-
Fred Drake authored
Added a test case to make sure <script> and <style> elements are handled correctly.
-
Guido van Rossum authored
-
Guido van Rossum authored
set or cleared by specifying any true or false value. (XXX I wonder if this should be recognized at compile time rather than at interpretation time; oh well, this works.)
-
Guido van Rossum authored
-
Fred Drake authored
more strict about matchnig only what's legal. The expression ends up being a bit more complex, and needs additional checks to be done on what follows. HTMLParser.check_for_whole_start_tag(): Helper method that uses locatestarttagend, performs the required additional checks, and determines whether we've actually found the end of the start tag, are at a buffer boundary, or have encountered an syntactical error. HTMLParser.parse_starttag(): Use check_for_whole_start_tag() to see if we really have the start tag. HTMLParseError.__init__(): Simplify assertion. This should close ZPT(18).
-
Fred Drake authored
Revise a test that requires "<tag attr=>" to be accepted -- it is not! Add a check to ensure it raises an HTMLParseError.
-
Fred Drake authored
Revise a test that requires "<tag attr=>" to be accepted -- it is not!
-
Barry Warsaw authored
exceptions. New tests which poke at transactionalUndo() checkSimpleTransactionalUndo checkTwoObjectUndo checkTwoObjectUndoAgain checkNotUndoable checkUndoInVersion On the Full storage only, of course.
-
Barry Warsaw authored
i.e. it undoes by writing new records. This means undone transactions can be redone. It also has lots of other benefits.
-
Evan Simpson authored
-
Shane Hathaway authored
- Made ZPT invoke DTML the normal way.
-
Shane Hathaway authored
-
Chris McDonough authored
-
Guido van Rossum authored
-
Guido van Rossum authored
Also fix the error for a duplicate fill-slot (which was erroneously reported as a duplicate slot *definition*). Question arises, should we also complain about duplicate define-slot, or is it okay to use define-slot with the same name more than once? This would be similar to "#define X(a) (a+a)" in C; it does point out that define-slot isn't a great name...
-
Guido van Rossum authored
-
- 05 Apr, 2001 10 commits
-
-
Jim Fulton authored
care of installing them when necessary (not for Python 2.0) Now import asyncore and asynchat as top-level modules, rather than from the medusa package. This makes it easier to use our custum version for Python 1.5 and to use the standard versions for Python 2.x. Note that the Python 2.1b1 and 2.1b2 releases had a broken asynchat that causes these changes to break Zope. The Python cvs and earler and later versions are OK.
-
Jim Fulton authored
care of installing them when necessary (not for Python 2.0)
-
Barry Warsaw authored
checkCreateNoFile(), checkCreateWithFilename(), checkCreateWithFileobj(): Make sure these tests close the file object before they attempt to unlink the underlying file.y checkCloseNoUnlink(), checkDel(): New tests in the CreateCommitLogTest class. CloseCommitLogTest: removed this class; its tests are folded into CreateCommitLogTest.
-
Barry Warsaw authored
(there's no DB object since we're poking at things at a lower level).
-
Barry Warsaw authored
tearDown(): Make sure any outstanding transactions are aborted so as not to retain modified objects connected to closed databases. Second, call self._close() to free any resources. _close(): Close the DB object, which in turn closes the underlying storage.
-
Chris McDonough authored
-
Chris McDonough authored
-
Chris McDonough authored
-
Barry Warsaw authored
_finish(): In delete-a-version clause, use next_dup() instead of next() to iterate over the currentVersions table with cursor set to the vid of the version we're deleting. abortVersion(): When cruising over the currentVersions table (and the key set to vid of the version we're aborting), use next_dup() instead of next(). Also, when curvid <> vid, raise StorageSystemError instead of VersionError. Same later on when we check curvid <> zero. commitVersion(): Add sanity checking based on model documentation: if the source version is the empty string, or src == dest, raise a VersionCommitError. Make the same changes we made previously to abortVersion() to keep track of the oids in a set/dictionary instead of a list to avoid duplicates. Other fixes include, writing revid instead of tid==self._serial to write_moved_object() and adding a write_discard_version(svid) once the source version's been committed. commitVersion() now works! load(): Add another check to avoid finding an object revision in a committed or aborted version if we can guess that version name. It now raises a VersionError if vid==zero and version is true. Also, although we still raise VersionError later on, elaborate the actual exception better in the error message.
-
Barry Warsaw authored
checkAbortVersionErrors checkModifyAfterAbortVersion checkCommitToNonVersion checkCommitToOtherVersion checkAbortOneVersionCommitTheOther All are inhibited for Minimal storage.
-
- 04 Apr, 2001 3 commits
-
-
Barry Warsaw authored
(a.k.a. pickle pointer) is usually tid but not always! In fact, it's specifically not tid when we've aborted a version -- it'll be the pointer to the pickle of the last non-version revision. We were actually setting up lrevid correctly, but writing tid to the metadata record. This fix writes lrevid instead.
-
Barry Warsaw authored
storage has a failing abortVersion(), so it's mostly a checkpoint. Not yet tested: commitVersion(), transactionalUndo(), undoLog(). Not yet implemented: history(), pack() Specific changes: - Table txnOids renamed to txnoids everywhere. - Define a module global `zero' constant and use (via global) where ever appropriate (should be named ZERO but that's ugly). - _finish(): Only boost the refcount of objects referenced by the pickle when we've actually got a new pickle. Also, add a note about the currentVersions table, which will contain multiple copies of vid/oid records. It's easier to weed them out later than to weed them out here. One of the places you need to weed them all out is at the end of this method, in the `delete-a-version' branch. - abortVersion(): Record oids found by scanning the currentVersions table in a set, to account for the possible multiple vid/oid records. Fix some typos. When calling write_nonversion_object() on the CommitLog, the prevrevid ought to be the revid of the current object revision, for undo purposes. - load(): Where we previously had a comment that asked whether we should assert that the version is empty (after we've checked everything else), now we really check that and raise a VersionError if not. - loadSerial(): Fix a typo. - store(): Inside the old-revision-id-is-true test, if the old vid is not zero and it is equal to the new vid, then the non-version revision of the object is the old non-version revision (added the else: clause). - transactionalUndo(): Implemented but not yet tested. - undo(): Removed. - versionEmpty(): Semantics are to return true if an unknown version is given. As an extra bonus, if version is empty (i.e. the non-version) check the serials table.
-
Barry Warsaw authored
common operation. ;) Also, _dostore() automatically pickles the data argument, since you don't really want anything else. Lots of new tests: checkNonVersionModifiedInVersion() checkLoadSerial() checkVersionedStoreAndLoad() checkVersionedLoadErrors() checkConflicts() checkVersionLock() checkVersionEmpty() checkVersions() checkAbortVersion() Skip for the Minimal storage: checkVersionedLoadErrors() checkVersionLock() checkVersionEmpty() checkVersions() checkAbortVersion() Override for the Minimal storage (basically check for Unsupported exceptions): checkLoadSerial() checkVersionedStoreAndLoad()
-