Mercurial > p > roundup > code
diff CHANGES.txt @ 6437:e6d0e86181d5
Edit CHANGES.txt to eliminate reStructuredText errors
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Mon, 14 Jun 2021 21:46:10 -0400 |
| parents | 1f2f7c0b8968 |
| children | 5296d27ac97c |
line wrap: on
line diff
--- a/CHANGES.txt Mon Jun 14 19:33:27 2021 -0400 +++ b/CHANGES.txt Mon Jun 14 21:46:10 2021 -0400 @@ -14,10 +14,11 @@ XXXX-XX-XX 2.0.1 Fixed: + - Reverse multilink to *the same class* would trigger a traceback about a modified dictionary on iteration (Ralf Schlatterbeck) - issue2551086 - Valid class names not documented. Should follow - [A-z][A-z0-9_]+[A-z_]. This was never documented or enforced, but + ``[A-z][A-z0-9_]+[A-z_]``. This was never documented or enforced, but we get obscure errors if the rules are not followed. (Tom Ekberg tests by John Rouilard) - issue2550564 - Roundup sets "Precedence: bulk" on all outgoing mail, @@ -25,7 +26,7 @@ like we do precedence bulk. This is part of this issue. - roundup-admin filter calls find() not filter when using -s -c -S (John Rouillard) -- When requesting transitive properties via '@fields' in the REST-API, +- When requesting transitive properties via ``@fields`` in the REST-API, an empty link in the transitive property (e.g. author.username when requesting message properties) would result in a 404 error. Now we're returning a JSON 'null' value. for an empty link (e.g. empty author in @@ -40,7 +41,7 @@ backend markdown formatters. (report: Cedric Krier, patch: Christof Meerwald) - issue2551092 - fix crash bug by aligning - roundup.anypy.email_.decode_header with stdlib email.header and + ``roundup.anypy.email_.decode_header`` with stdlib ``email.header`` and convert string to bytes for python 3. (Cedric Krier) - issue2551097 - fix underlying bug in use of fenced codeblocks with markdown2. Fix for issue2551093 to prevent exception trigger. @@ -140,10 +141,13 @@ - ignore blank lines in CSV class editing. (John Rouillard) Features: + - issue2550522 - Add 'filter' command to command-line interface. Filter command was actually added in 2.0.0, but this - issue requested transitive searching. So that: + issue requested transitive searching. So that:: + roundup-admin -i . filter issue assignedto.username=Admin + will work. This also fixes a bug. If assignedto.username had no matches, all issues would be returned. This is also fixed. (John Rouillard) @@ -177,11 +181,13 @@ - extract translatable strings from devel and responsive templates. Merge translations from https://sourceforge.net/p/roundup/code/merge-requests/3/ (John Rouillard. DE translations by Tobias Herp.) -- send_message now allows setting authid to set source of email. (John Rouillard) +- send_message now allows setting authid to set source of email. + (John Rouillard) - issue2550837 - New option for web auth (also http header passing). Allow admin to configure authentication header replacing the default REMOTE_USER. Also allow arbitrary headers to be passed to the - tracker when using roundup-serverbhind a proxy. + tracker when using roundup-server behind a proxy. This code is + experimental see upgrading.txt admin_guide.txt. 2020-07-13 2.0.0 @@ -533,6 +539,7 @@ 2019-07-13 1.6.1 Features: + - doc updates. Link rot fixed and some grammar changes. 'Provisional User' config example fixed. Issue tracker is now https. (John Rouillard) @@ -598,27 +605,35 @@ otherwise they will clash with the "hidden" input elements generated by indexargs_form itself. - For example: + For example:: + <tal:block replace="structure python:request.indexargs_form( sort=0,group=0,filter=0,columns=0, exclude=['type','status','assignedto'])"/> + where the variables type, status and assignedto are supplied via other form input elements. Without the new exclude argument to indexargs_form, all hidden input elements otherwise generated by this call would need to be manually added to the template code. Further, given that the template may not know what other variables may be defined, it may not even be possible to code this without some python helpers. + [ rouilj I think this is an example usecase. Possible assignedto users need to have a specific role. Create TAL that filters the users to the select few. Defines a select list for assignedto. Use exclude=['assignedto'] to prevent the indexargs_form from generating a confliciting assignedto field which lists all users regardless of the role.] + - allow user to recover account password using an entry in the Alternate E-mail addresses list. See: + http://psf.upfronthosting.co.za/roundup/meta/issue564 + for description. Merge request at: + https://sourceforge.net/p/roundup/code/merge-requests/1/ + Patch supplied by kinggreedy. Applied/tested by John Rouillard - issue2550636, issue2550909: Added support for Whoosh indexer. Also adds new config.ini setting called indexer to select @@ -628,28 +643,36 @@ - issue2550803: Replying to NOSY mail goes to the tracker through reply-to, not original message author. Created new [tracker] replyto_address config.ini option to allow: + 1) setting reply-to header to the tracker 2) setting reply-to header to the address of the author of the change 3) setting it to a fixed address (like noreply@some.place) + Done by John Rouillard from proposal by Peter Funk (pefu) in discussion with Tom Ekberg (tekberg). See doc/upgrading.txt. - issue1714899: Feature Request: Optional Change Note. Added a new quiet=True/False option for all property types. When quiet=True changes to the property will not be displayed in the:: - confirmation banner (shown in green) when a change is made - property change section of change note (nosy emails) - web history display for an item. + + - confirmation banner (shown in green) when a change is made + - property change section of change note (nosy emails) + - web history display for an item. + Note that this may confuse users if used on a property that is meant to be changed by a user. It is most useful on administrative properties that are changed by an auditor as part of a user generated change. Original patch by Daniel Diniz (ajaksu2) discussed also at: + http://psf.upfronthosting.co.za/roundup/meta/issue249 + Support for setting quiet when calling the class specifiers: E.G. prop=String(quiet=True) rather than:: + prop=String() prop.quiet=True + support for anydb backend, added tests, doc updates, support for ignoring quiet setting using showall=True in call to history() function in templates by (John Rouillard). (Note implementation @@ -720,12 +743,16 @@ on "Implementing Modal Editing Using @template" in ``customizing.txt``. (John Rouillard) - New form of check function is permitted in permission definitions. - If the check function is defined as: + If the check function is defined as:: + check(db, userid, itemid, **ctx) - the ctx variable will have: - ctx['property'] the name of the property being checked or None - ctx['classname'] the class that is being checked or None - ctx['permission'] the name of the permission (e.g. View, Edit) + + the ctx variable will have:: + + ctx['property']: the name of the property being checked or None + ctx['classname']: the class that is being checked or None + ctx['permission']: the name of the permission (e.g. View, Edit) + At some future date the older 3 argument style check command will be deprecated. See ``upgrading.txt`` for details. - New property for permissions added to simplify the model. See @@ -841,9 +868,9 @@ pagesize is not propigated to the prev link. This patch fixes that. Patch provided by John Kristensen. (Applied, light testing by John Rouillard.) -- issue2550850 anypy/email_.py uses BSPACE which is not defined in python 2.7 - Supplied a definition for BSPACE since it seems to not be defined - anywhere. Reported by Dennis Boone. (John Rouillard) +- issue2550850 ``anypy/email_.py`` uses BSPACE which is not defined \ + in python 2.7. Supplied a definition for BSPACE since it seems to + not be defined anywhere. Reported by Dennis Boone. (John Rouillard) - Validate properties specified for sorting and grouping in index views. Original patch from martin.v.loewis via: https://hg.python.org/tracker/roundup/rev/439bd3060df2 @@ -893,7 +920,9 @@ also improves handling of retryable errors. Applied and edited by John Rouillard. Edits included removing support for psycopg1. See: + https://sourceforge.net/p/roundup/mailman/message/32855027/ + for rational for dropping it. - issue2550831: Make the classic template query.edit page work. Many fixes and improvements. See ``upgrading.txt`` for details. @@ -994,7 +1023,9 @@ error. Also the index.search.html template in the classic tracker and corresponding templates in the other example trackers has been modified to include: + <input type="hidden" name="@template" value="index|search"/> + so an error from SearchAction will display an error message and keep the user on the search page so they can correct the error. See ``doc/upgrading.txt``. (John Rouillard) @@ -1026,7 +1057,9 @@ list of directories to search for static files in the web interface. If one of the elements is -, the search stops and the TEMPLATES directory is not searched. See: + https://sourceforge.net/p/roundup/mailman/message/35773357/ + subject is "showing template sources to all". - issue2550945: OpenPGP: Extends newissuecopy.py to encrypt if configured. (Bernhard Reiter) @@ -1258,6 +1291,7 @@ changes arriving by unauthenticated mechanisms (e.g. plain email where headers can be faked). The property db.tx_Source has the following values: + * None - Default value set to None. May be valid if it's a script that is created by the user. Otherwise it's an error and indicates that some code path is not properly setting the tx_Source property. @@ -1271,6 +1305,7 @@ valid pgp signature is used. (*NOTE* the testing for this mode is incomplete. If you have a pgp infrastructure you should test and verify that this is properly set.) (John Rouillard) + - Introducing Template Loader API (anatoly techtonik) - Experimental support for Jinja2, try 'jinja2' for template_engine in config (anatoly techtonik) @@ -1341,9 +1376,9 @@ - issue2550765: Don't show links in calendar that will fail. Found and fixed by C\E9dric Krier. (Bernhard) -- issue2550765: use <meta name="robots" content="noindex, nofollow"> in the - _generic.calendar.html to prevent robots to follow all the links in the - calendar. (Ezio Melotti) +- issue2550765: use ``<meta name="robots" content="noindex, + nofollow">`` in the _generic.calendar.html to prevent robots to + follow all the links in the calendar. (Ezio Melotti) - "BaseException.with_traceback" is not available on Python 2, so use "raise E, V, T" instead of "raise E(V).with_traceback(T)". This change was originally introduced in 74476eaac38a. (Ezio Melotti) @@ -1359,7 +1394,7 @@ thanks John Kristensen. (Bernhard Reiter) - issue2550738: Fixes for various documentation typoes, thanks Nathan Russell. (John Kristensen) -- issue2550756: Fix `oder' typo in mailer.Mailer.bounce_message docstring, +- issue2550756: Fix 'oder' typo in mailer.Mailer.bounce_message docstring, thanks W. Trevor King (John Kristensen) - Fix basic authentication: instatiating the login action would fail if the user is not set. We now first set the user to anonymous and then @@ -1740,15 +1775,18 @@ 2010-02-19: 1.4.13 Fixed: + - Multilink edit fields lose their values (thanks Will Maier) 2010-02-09: 1.4.12 Features: + - Support IMAP CRAM-MD5, thanks Jochen Maes Fixes: + - Proper handling of 'Create' permissions in both mail gateway (earlier commit r4405 by Richard), web interface, and xmlrpc. This used to check 'Edit' permission previously. See @@ -1781,9 +1819,11 @@ 2009-12-21: 1.4.11 Features: + - Generic class editor may now restore retired items (thanks Ralf Hemmecke) Fixes: + - Fix security hole allowing user permission escalation (thanks Ralf Schlatterbeck) - More SSL fixes. SSL wants the underlying socket non-blocking. So we @@ -1837,6 +1877,7 @@ 2009-10-09: 1.4.10 Fixes: + - Minor update of doc/developers.txt to point to the new resources on www.roundup-tracker.org (Bernhard Reiter) - Small CSS improvements regaring the search box (thanks Thomas Arendsen Hein) @@ -1860,6 +1901,7 @@ 2009-08-10: 1.4.9 Fixes: + - fixed action taken in response to invalid GET request - fixed classic tracker template to submit POST requests when appropriate - fix problems with french and german locale files (issue 2550546) @@ -1879,6 +1921,7 @@ 2009-03-18: 1.4.8 Fixes: + - bug introduced into hyperdb filter (issue 2550505) - bug introduced into CVS export and view (issue 2550529) - bugs introduced in the migration to the email package (issue 2550531) @@ -1889,6 +1932,7 @@ 2009-03-13: 1.4.7 Features: + - Provide a "no selection" option in web interface selection widgets - Debug logging now uses the logging module rather than print - Allow CGI frontend to serve XMLRPC requests. @@ -1897,6 +1941,7 @@ - Support resuming downloads for (large) files. Fixes: + - a number of security issues were discovered by Daniel Diniz - EditCSV and ExportCSV altered to include permission checks - HTTP POST required on actions which alter data @@ -1911,18 +1956,23 @@ 2008-09-01: 1.4.6 + Fixed: + - Fix bug introduced in 1.4.5 in RDBMS full-text indexing - Make URL matching code less matchy - Try to clarify mail_domain config setting 2008-08-19: 1.4.5 + Feature: + - Add use of username/password stored in ~/.netrc in mailgw (sf patch #1912105) Fixed: + - 'Make a Copy' failed with more than one person in nosy list (sf #1906147) - xml-rpc security checks and tests across all backends (sf #1907211) - Send a Precedence header in email so (well-written) autoresponders don't @@ -1947,18 +1997,24 @@ 2008-03-01: 1.4.4 + Fixed: + - Security fixes (thanks Roland Meister) 2008-02-27: 1.4.3 + Fixed: + - MySQL backend bug introduced in 1.4.2 (TEXT columns need a size when being indexed) 2008-02-08: 1.4.2 + Feature: + - New config option in mail section: ignore_alternatives allows to ignore alternatives besides the text/plain part used for the content of a message in multipart/alternative attachments. @@ -1970,6 +2026,7 @@ properties with a "name" attribute) (thanks Martin v. L\F6wis) Fixed: + - Searching date range by supplying just a date as the filter spec - Handle no time.tzset under Windows (sf #1825643) - Fix race condition in file storage transaction commit (sf #1883580) @@ -1980,12 +2037,16 @@ 2007-11-09: 1.4.1 + Fixed: + - Removed some metakit references 2007-11-04: 1.4.0 + Feature: + - Roundup has a new xmlrpc frontend that gives access to a tracker using XMLRPC. - Dates can now be in the year-range 1-9999 @@ -2008,6 +2069,7 @@ - support for receiving OpenPGP MIME messages (signed or encrypted) Fixed: + - Handling of unset Link search in RDBMS backend - Journal export of anydbm didn't correctly export previously empty values - Fix handling of defaults for date fields @@ -2049,7 +2111,9 @@ 2007-02-15: 1.3.3 + Fixed: + - If-Modified-Since handling was broken - Updated documentation for customising hard-coded searches in page.html - Updated Windows installation docs (thanks Bo Berglund) @@ -2060,7 +2124,9 @@ 2006-12-19: 1.3.2 + Fixed: + - relax rules for required fields in form_parser.py (sf bug 1599740) - documentation cleanup from Luke Ross (sf patch 1594860) - updated Spanish translation from Ramiro Morales (sf patch 1594718) @@ -2077,17 +2143,22 @@ 2006-11-11: 1.3.1 + Fixed: + - setup.py had broken reference to roundup.cgi (sf bug 1593573) - full-text search wasn't coping with multiple multilinks to the same class - unicode / sqlite 3 problem (sf bug 1589292) 2006-11-09: 1.3.0 + Feature: + - WSGI support via roundup.cgi.wsgi_handler Fixed: + - sqlite module detection was broken for python 2.5 compiled without sqlite support - fixed support for pysqlite2 (version 2.1.0 is the minimum version @@ -2102,13 +2173,17 @@ 2006-10-07: 1.2.1 + Fixed: + - E-mail subject line prefix delimiter configuration was being ignored. - Password confirm field in user editing. 2006-10-04: 1.2.0 + Feature: + - supports Python 2.5, including the sqlite3 module - full timezone support (sf patch 1465296) - handle connection loss when responding to web requests @@ -2132,6 +2207,7 @@ Fixed: + - Verbose option for import and export (sf bug 1505645) - -c option for roundup-mailgw won't accept parameter (sf bug 1505649) - '?' in rfc2822-encoded header isn't quoted (sf bug 1505663) @@ -2168,11 +2244,14 @@ 2006-04-27: 1.1.2 + Feature: + - server-ctl script uses server configuration file (sf bug 1443805) - mail user interface translated (sf patch 1462491) Fixed: + - progress display in roundup-admin reindex - bug in menu() permission filter (sf bug 1444440) - indexing may be turned off for FileClass "content" now @@ -2193,7 +2272,9 @@ 2006-03-03: 1.1.1 + Fixed: + - failure with browsers not sending "Accept-Language" header (sf bugs 1429646 and 1435335) - translate class name in "required property not supplied" error message @@ -2218,7 +2299,9 @@ 2006-02-10: 1.1.0 + Feature: + - trackers may configure custom stop-words for the full-text indexer - login may now be for a single session (and this is the default) - trackers may hide exceptions from web users (they will be mailed to the @@ -2226,6 +2309,7 @@ - include "clear this message" link in the "ok" message bar Fixed: + - fixes in scripts/import_sf.py - fix some unicode bugs in roundup-admin import - Xapian indexer wasn't actually being used and its reindexing of existing @@ -2237,11 +2321,14 @@ 2006-02-03: 1.0.1 + Feature: + - scripts/import_sf.py will import a tracker from Sourceforge.NET - added hasRole() to HTMLUser Fixed: + - SQL generation for sort/group by separate Link properties (sf bug 1417565) - fix timezone offsetting in email Date: header @@ -2249,7 +2336,9 @@ 2006-01-27: 1.0 + Feature: + - Lithuanian translation by Aiste Kesminaite - Web User Interface language selection by form variable @language, browser cookie or HTTP header Accept-Language (sf patch 1360321) @@ -2273,6 +2362,7 @@ - added "copy_url" method to generate a URL for copying an item Fixed: + - MySQL now creates String columns using the TEXT column type - password.crypt won't work with md5 passwords (sf bug 1372253) - use quoted printable encoding for nosy attachments that have MIME @@ -2295,7 +2385,9 @@ 2005-10-07: 0.9.0b1 + Feature: + - added "imapServer.py" script (sf patch 934567) - added date selection popup windows (thanks Marcus Priesch) - added Xapian indexer; replaces standard indexers if Xapian is available @@ -2306,6 +2398,7 @@ 2006-01-27: 0.8.6 Fixed: + - french translation updated by Patrick Decat (sf patch 1397059) - tighten up Date parsing to not allow 'M/D/YY' (or 'D/M/YY) (sf bug 1290550) @@ -2327,10 +2420,13 @@ 2005-10-07: 0.8.5 + Feature: + - Argentinian Spanish translation by Ramiro Morales Fixed: + - Display of Multilinks where linked Class labelprop values are None - Fix references to the old * Registration Permissions - Fix missing merge of fix to sf bug 1177057 @@ -2339,7 +2435,9 @@ 2005-07-18: 0.8.4 + Fixed: + - extra CRs in CSV export files on Windows platform (sf bug 1195742) - activity RDBMS columns were being reported in changes - fix name collision in roundup.cgi script (sf bug 1203795) @@ -2368,10 +2466,13 @@ 2005-05-02: 0.8.3 + Feature: + - chinese translation by limodou Fixed: + - fix reference to The Zope Book in Roundup FAQ - disabled file logging in Roundup test suite (sf bug 1155649) - return original string if message issue xref isn't valid @@ -2400,11 +2501,14 @@ 2005-03-03: 0.8.2 + Feature: + - roundup-server automatically redirects from trackers list to the tracker page if there is only one tracker Fixed: + - added content to ZRoundup refresh.txt file (sf bug 1147622) - fix invalid reference to csv.colon_separated - correct URL to What's New in setup.py meta-data @@ -2416,7 +2520,9 @@ 2005-02-17: 0.8.1 + Fixed: + - replaced MutlilinkIterator with multilinkGenerator (thanks Bob Ippolito) - fixed broken csv import in roundup.admin module - fixed braino in HTMLClass.filter() (sf bug 1124213) @@ -2424,7 +2530,9 @@ 2005-01-16: 0.8.0 + Fixed: + - fix roundup-server log and PID file paths to be absolute - fix initialisation of roundup-server in daemon mode so initialisation errors are visible @@ -2450,7 +2558,9 @@ 2005-01-13: 0.8.0b2 + Fixed: + - note about how to run roundup demo in Windows (sf bug 1082090) - fix API for templating utils extensions - remove "utils" arg (sf bug 1081981) - back_sqlite.py is missing "import time" (sf bug 1081959) @@ -2465,7 +2575,9 @@ 2004-12-08: 0.8.0b1 + Feature: + - added MD5 scheme for password hiding - added support for HTTP charset selection - implement __nonzero__ for HTMLProperty @@ -2504,15 +2616,18 @@ getPermission call Fixed: + - postgres backend open doesn't hide corruption in schema (sf bug 956375) -- *dbm-style backends nuke() method now clear id counters +- \*dbm-style backends nuke() method now clear id counters - removed safeget() from the API (sf bug 994750) - demo tracker is always set up on localhost (sf bug 1049101) - relaxed URL designator syntax to allow issue[0]*1 (sf bug 1054523) 2005-05-02: 0.7.12 + Fixed: + - handle capitalisation of class names in text hyperlinking (sf bug 1101043) - quote full-text search text in URL generation @@ -2527,14 +2642,18 @@ 2005-01-06: 0.7.11 + Fixed: + - index args URL generation broken in .10 (sf bug 1096027) - handle NotModified for non-static files (sf patch 1095790) - fix permission lookup in query editing 2005-01-04: 0.7.10 + Fixed: + - reset ID counters if the database is cleared (thanks William) - apply IE caching "fix" to automatically serve up all pages expired - fix typo (sf patch 1076629) @@ -2551,10 +2670,13 @@ 2004-10-26: 0.7.9 + Feature: + - DateHTMLProperty.field() accepts format string (thanks Wil Cooley) Fixed: + - popup listing uses filter args (thanks Marlon van den Berg) - fixed editing of message contents - loosened the detection of issue cross-references in messages @@ -2577,12 +2699,16 @@ 2004-10-15: 0.7.8 + Fixed: + - Clean out sessions / otks tables when migrating 2004-10-11: 0.7.7 + Fixed: + - ZRoundup's search interface works now (sf bug 994957) - fixed history display when "ascending" - removed references to py2.3+ boolean values (sf bug 995682) @@ -2604,7 +2730,9 @@ 2004-07-21: 0.7.6 + Fixed: + - rdbms backend full text search failure after import (sf bug 980314) - rdbms backends not filtering correctly on link=None - fix anydbm journal import (sf bug 983166) @@ -2627,7 +2755,9 @@ 2004-06-24: 0.7.5 + Fixed: + - force lookup of journal props in anydbm filtering - fixed lookup of "missing" Link values for new props in anydbm backend - allow list of values for id, Number and Boolean filtering in anydbm @@ -2644,7 +2774,9 @@ 2004-06-10: 0.7.4 + Fixed: + - re-acquire the OTK manager when we re-open the database - mailgw handler can close the database on us - fixed grouping by a NULL Link value @@ -2657,7 +2789,9 @@ 2004-05-28: 0.7.3 + Fixed: + - add "checked" to truth values for Boolean input - fixed import in metakit backend - fix SearchAction use of Class.filter(), and clarify API docs for same @@ -2666,7 +2800,9 @@ 2004-05-17: 0.7.2 + Fixed: + - anydbm sorting with None values (sf bug 952853) - roundup-server -g option not recognised (sf bug 952310) - HTML templating isset() inverted (sf bug 951779) @@ -2680,7 +2816,9 @@ 2004-05-10: 0.7.1 + Fixed: + - several temp files made it into the source distribution (sf bug 949243) - typo in roundup/instance.py - missing CRLF var in rfc822.py (sf patch 949471) @@ -2692,7 +2830,9 @@ 2004-05-06: 0.7.0 + Fixed: + - sqlite migration drops some journal information (thanks David Linke) - user editing Role entry help text always appears - disable forking server when os.fork() not available (sf bug 938586) @@ -2710,7 +2850,9 @@ 2004-04-18: 0.7.0b3 + Feature: + - added a favicon - added url_quote and html_quote methods to the utils object - added isset method to HTMLProperty @@ -2724,6 +2866,7 @@ - roundupdb nosymessage() takes an optional bcc list Fixed: + - mysql and postgresql schema mutation now handle added Multilinks - web CSV export was busted (as was any action returning a result) - MultiMapping deviated from the Zope C implementation in a number of @@ -2744,7 +2887,9 @@ 2004-03-27: 0.7.0b2 + Feature: + - added CSV export to index pages - added emailauditor.py which works around a bug in IE. See "detectors/emailauditor.py" for more info. @@ -2758,6 +2903,7 @@ - added is_retired to HTMLItems in templating Fixed: + - Boolean, Date and Link HTML templating was broken - fix reporting of test inclusion in postgresql test - EditAction was confused about who "self" was @@ -2770,7 +2916,9 @@ 2004-03-24: 0.7.0b1 + Major new features: + - added postgresql backend (originally from sf patch 761740, many changes since) - added new "actor" automatic property (indicates user who cause the last @@ -2784,6 +2932,7 @@ (either view or edit as appropriate), greatly simplifying templates Other new features: + - simple support for collision detection (sf rfe 648763) - support setgid and running on port < 1024 (sf patch 777528) - using Zope3's test runner now, allowing GC checks, nicer controls and @@ -2808,6 +2957,7 @@ - date.Date now handles fractional seconds Fixed: + - mysql documentation fixed to note requirement of 4.0+ and InnoDB - added testing of schema mutation, fixed rdbms backends handling of a couple of cases @@ -2832,6 +2982,7 @@ - fixed ability to edit "content" property (sf bug 914062) Cleanup: + - replace curuserid attribute on Database with the extended getuid() method - extract a new 'mailer' module for sending mail - extract a '_send_mail' method for testing mail sending @@ -2843,6 +2994,7 @@ - tidied up forms in default stylesheet - force textareas to use monospace fonts, lessening surprise on the user - moved out parts of client.py to new modules: + * actions.py - the xxxAction and xxxPermission functions refactored into Action classes * exceptions.py - all exceptions @@ -2851,14 +3003,18 @@ 2004-05-17: 0.6.10 + Fixed: + - mysql backend wasn't locking tracker - ensure static files may only be served out of the tracker's "static files" directory 2004-04-18: 0.6.9 + Fixed: + - paging in classhelp popup was broken - socket timeout error logging can fail - hyperlink designators in message display (sf bug 931828) @@ -2866,7 +3022,9 @@ 2004-04-01: 0.6.8 + Fixed: + - existing trackers (ie. live ones) may be used as templates for new trackers - the TEMPLATE-INFO.txt name entry has the tracker's dir name appended (so the demo tracker's template name is "classic-demo") @@ -2881,7 +3039,9 @@ 2004-03-01: 0.6.7 + Fixed: + - be more backward-compatible when asking for EMAIL_CHARSET - made error on create consistent with edit when user enters invalid data for Multilink and Link form fields (sf bug 904072) @@ -2893,7 +3053,9 @@ 2004-02-25: 0.6.6 + Fixed: + - don't insert spaces into designators, it just confuses users (sf bug 898087) - Eudora can't handle utf-8 headers. We love Eudora. (sf bug 900046) @@ -2905,7 +3067,9 @@ 2004-02-16: 0.6.5 + Fixed: + - mailgw handling of subject-line errors - allow serving of FileClass file content when the class isn't called "file" (eg. messages and other FileClasses) @@ -2924,7 +3088,9 @@ 2003-12-17: 0.6.4 + Fixed: + - fixed date arithmetic to not allow day-of-month == 0 (sf bug 853306) - fixed date arithmetic to limit hours-per-day to 24, not 60 - hard-coded python2.3-ism (socket.timeout) fixed @@ -2935,7 +3101,9 @@ 2003-11-14: 0.6.3 + Fixed: + - fixed detectors fix incorrectly fixed in bugfix release 0.6.2 - added note to upgrading doc for detectors fix in 0.6.2 - added script to help migrating queries from pre-0.6 trackers @@ -2947,12 +3115,14 @@ an Interval. - handle socket timeout exception (thanks Marcus Priesch) - fixed retirement of items in rdbms imports (sf bug 841355) -- fixed bug in looking up journal of newly-created items in *dbm backends +- fixed bug in looking up journal of newly-created items in \*dbm backends 2003-09-29: 0.6.2 + Fixed: -- cleaned up, clarified internal caching API in *dbm backends + +- cleaned up, clarified internal caching API in \*dbm backends - stopped pyc writing to current directory! yay! (patch 800718 with changes) - fixed file leak in detector initialisation (patch 800715) - commented out example tracker homes (patch 800720) @@ -2962,7 +3132,9 @@ 2003-08-31: 0.6.1 + Fixed: + - Add note about installing cgi-bin with a different interpreter - Importing wasn't setting None values explicitly when it should have been - Fixed import warning regarding 0xffff0000 literal, finally, really this @@ -2979,6 +3151,9 @@ 2003-08-08: 0.6.0 + +Fixed: + - Fixed editing attributes on FileClass nodes. - Query editing now works correctly (sf bug 621248) - roundup-server now logs IP addresses by default (sf bug 778795) @@ -2992,6 +3167,9 @@ 2003-07-29: 0.6.0b4 + +Fixed: + - plugged cross-site-scripting hole (thanks Jeff Epler) - handle deprecation of FCNTL in python2.2+ (sf bug 756756) - handle missing Subject: line (sf bug 755331) @@ -3007,28 +3185,36 @@ 2003-06-10: 0.6.0b3 + Fixed: + - cgi client was broken during b2 fixing 2003-06-09: 0.6.0b2 + Feature: + - added the start/stop/restart/condstart/status roundup-server control script Fixed: + - handle non-existant demo dir (thanks Ollie Rutherfurd) - strip whitespace from Role names so "User, Admin" will work - fixed template searching on Windows (thanks J Vickroy) 2003-05-09: 0.6.0b1 + Removed: + - having served its purpose as a template for other relational database implementations, the gadfly backend has now been removed from the Roundup distribution. Feature: + - new instant-gratification Demo Mode - support setting of properties on message and file through web and email interface (thanks John Rouillard) @@ -3093,6 +3279,7 @@ - nicer index navigation (sf feature 676866) Fixed: + - applied unicode patch. All data is stored in utf-8. Incoming messages converted from any encoding to utf-8, outgoing messages are encoded according to rfc2822 (sf bug 568873) @@ -3111,7 +3298,7 @@ - added example HTML tempating for vacation flag (sf bug 701722) - finally, tables autosize columns (sf bug 609070) - added creation to index columns (sf bug 708247) -- fixed missing (pre-commit) journal entries in *dbm backends (sf bug 679217) +- fixed missing (pre-commit) journal entries in \*dbm backends (sf bug 679217) - URL cited in roundup email confusing dumb Email clients (sf bug 716585) - set title on issues even when the email body is empty (sf bug 727430) - under the heading of "questionable whether it's a fix or not" @@ -3119,6 +3306,9 @@ 2003-05-08: 0.5.7 + +Fixed: + - fixed Interval maths (sf bug 665357) - fixed sqlite rollback/caching bug (sf bug 689383) - fixed rdbms table update detection logic (sf bug 703297) @@ -3134,6 +3324,9 @@ 2003-02-27: 0.5.6 + +Fixed: + - fixed templating filter function arguments (sf bug 678911) - fixed multiselect in searching (sf bug 676874) - fixed parsing of content-disposition filenames (sf bug 675116) @@ -3151,6 +3344,9 @@ 2003-01-24: 0.5.5 + +Fixed: + - fixed rdbms searching by ID (sf bug 666615) - fixed metakit searching by ID - detect corrupted index and raise semi-useful exception (sf bug 666767) @@ -3164,6 +3360,9 @@ 2003-01-10: 0.5.4 + +Fixed: + - key the templates cache off full path, not filename - implemented whole-database locking - hyperlinking of special text (url, email, item designator) in messages @@ -3183,6 +3382,9 @@ 2002-12-11: 0.5.3 + +Fixed: + - added mention of how to give users multiple Roles - mention needed trailing "/" in TRACKER_WEB - fixed upgrading doc to have CGI changes in the correct order @@ -3207,6 +3409,9 @@ 2002-11-07: 0.5.2 + +Fixed: + - added quotes around python interpreter in windows bat (sf bug 623963) - fixed link at end of installation doc (sf bug 623957) - handle "classname" URL path errors cleaner (generate a 404) @@ -3233,6 +3438,9 @@ 2002-10-16: 0.5.1 + +Fixed: + - highlight rows in groups of three - metakit cleanups - nicer "navigation" style in index views @@ -3264,6 +3472,9 @@ 2002-10-02: 0.5.0 + +Fixed: + - fixed style for alternating rows in user lists - fixed query edit form so it doesn't barf - #617133 ] 0.5.0pr1 uses nonexistent renderTemplate @@ -3271,6 +3482,9 @@ 2002-09-27: 0.5.0 pr1 + +Fixed: + - handling of None for Date/Interval/Password values in export/import - handling of journal values in export/import - password edit now has a confirmation field @@ -3287,7 +3501,7 @@ if they're not all there - sf 611217 ] menu() has problems when labelprop==None - verify contents of tracker module when the tracker is opened -- many performance improvements in *dbm and sql backends +- many performance improvements in \*dbm and sql backends - mailgw was missing an "import sys" - setup now installs scripts with python -O flag, doubling performance in some cases (there's a lot of __debug__ use) @@ -3319,6 +3533,9 @@ 2002-09-13: 0.5.0 beta2 + +Fixed: + - all backends now have a .close() method, and it's used everywhere - fixed bug in detectors __init__ - switched the default issue item display to only show issue summary @@ -3331,7 +3548,9 @@ 2002-09-11: 0.5.0 beta1 + Fixed: + - #576086 ] dumb copying mistake (frontends/ZRoundup.py) - installation instructions now mention "python2" in "testing your python". - made the unit tests run again - they were quite b0rken @@ -3343,6 +3562,7 @@ - instance __init__ no longer silently traps dbinit import errors Feature: + - new backend for metakit (thanks Gordon McMillan) - new backend for gadfly (it's as done as it's going to get) - further split the dbm backends from the core code, allowing easier @@ -3373,6 +3593,7 @@ - several bug fixes and documentation fixes - added is_retired test to hyperdb.Class - added capability to save queries: + - a query Class with name, klass (to search) and url (query string) properties - a Multilink to query on user called queries @@ -3381,7 +3602,9 @@ - saved queries put in menu in pagehead - for migration, none of the above is required and old behavior preserved. - showquery translates search form <-> query string + - cleaned up the indexer code: + - it splits more words out - removed code we'll never use (roundup.roundup_indexer has the full implementation, and replaces roundup.indexer) @@ -3391,11 +3614,13 @@ - all String properties may now be indexed too. Currently there's a bit of "issue" specific code in the actual searching which needs to be addressed. In a nutshell: + + pass 'indexme="yes"' as a String() property initialisation arg, eg: file = FileClass(db, "file", name=String(), type=String(), comment=String(indexme="yes")) + the comment will then be indexed and be searchable, with the results related back to the issue that the file is linked to + - as a result of this work, the FileClass has a default MIME type that may be overridden in a subclass, or by the use of a "type" property as is done in the default templates. @@ -3403,6 +3628,7 @@ set up in the dbinit. - new "reindex" command in roundup-admin used to force regeneration of the index + - added email display function - mangles email addrs so they're not so easily scraped from the web - switched to using a session-based web login @@ -3412,7 +3638,9 @@ 2002-06-24: 0.4.2 + Fixed: + - Cleaned up the hyperdb unit tests. - Applied patch from Andrew W. Nosenko to give nicer Unauthorised message when anonymous user tries to edit. Should've been applied in 0.4.2pr1. Oops. @@ -3420,7 +3648,9 @@ 2002-06-19: 0.4.2pr1 + Feature: + - added a "detectors" directory for people to put their useful auditors and reactors in. Note - the roundupdb.IssueClass.sendmessage method has been split and renamed "nosymessage" specifically for things like the nosy @@ -3429,14 +3659,16 @@ multilinks. When true, it only displays the linked node id as the anchor text. The link value is displayed as a tooltip using the title anchor attribute. - To use in eg. the superseder field, have something like this: - <td> - <display call="field('superseder', showid=1)"> - <display call="classhelp('issue', 'id,title', label='list', width=500)"> - <property name="superseder"> - <br>View: <display call="link('superseder', showid=1)"> - </property> - </td> + To use in eg. the superseder field, have something like this:: + + <td> + <display call="field('superseder', showid=1)"> + <display call="classhelp('issue', 'id,title', label='list', width=500)"> + <property name="superseder"> + <br>View: <display call="link('superseder', showid=1)"> + </property> + </td> + - stripping of the email message body can now be controlled through the config variables EMAIL_KEEP_QUOTED_TEXT and EMAIL_LEAVE_BODY_UNCHANGED. - all database files created are now group readable and writable. @@ -3454,10 +3686,12 @@ - may now display additional fields in Multilink form menus - #541941 ] changing multilink properties by mail - #526730 ] search for messages capability -- #505180 ] split MailGW.handle_Message +- #505180 ] split MailGW.handle_Message: + - also changed cgi client since it was duplicating the functionality Fixed: + - stop sending blank (whitespace-only) notes - cleanup of serialisation for database storage - node ids are now generated from a lockable store - no more race conditions @@ -3499,29 +3733,39 @@ 2002-03-25: 0.4.1 + Feature: + - use blobfiles in back_anydbm which is used in back_bsddb. change test_db as dirlist does not work for subdirectories. ATTENTION: blobfiles now creates subdirectories for files. - add module blobfiles in backends with file access functions. - roundup db catch only IOError in getfile. - roundup db catches retrieving not existing files. -- #503204 ] mailgw needs a default class +- #503204 ] mailgw needs a default class: + - partially done - the setting of additional properties can wait for a better configuration system. + - Alternate email addresses are now available for users. See the MIGRATION file for info on how to activate the feature. - #511168 ] Web interface: Adding new products - Classes that don't provide template html get a default edit interface now: + Classes that don't provide template html get a default edit + interface now: + - access using the admin "class list" interface - limited to admin-only - requires the csv module from object-craft (url given if it's missing) -- Added popup help for classes using the classhelp html template function. - - add <display call="classhelp('priority', 'id,name,description')"> + +- Added popup help for classes using the classhelp html template + function. + + - add ``<display call="classhelp('priority', 'id,name,description')">`` to an item page, and it generates a link to a popup window which displays the id, name and description for the priority class. The description field won't exist in most installations, but it will be added to the default templates. + - #517734 ] web header customisation is obscure - All messages sent to the nosy list are now encoded as quoted-printable before they are sent. @@ -3529,6 +3773,7 @@ functions, menu and plain. Fixed: + - Clean up mail handling, multipart handling. - respect encodings in non multipart messages. - makeHtmlBase: re.sub under python 2.2 did not replace '.', string.replace @@ -3554,7 +3799,9 @@ 2002-01-24: 0.4.0 + Feature: + - much nicer history display (actualy real handling of property types etc) - journal entries for link and mutlilink properties can be switched on or off @@ -3562,6 +3809,7 @@ - you can now use the roundup-admin tool pack the database Fixed: + - the mail gateway now responds with an error message when invalid values for arguments are specified for link or mutlilink properties - modified unit test to check nosy and assignedto when specified as arguments @@ -3580,7 +3828,9 @@ 2002-01-16: 0.4.0b2 + Fixed: + - #495392 ] empty nosy -patch - #500574 ] messageid must have format <part1@part2> - fixed some problems with web editing and change detection @@ -3612,7 +3862,9 @@ 2002-01-08: 0.4.0b1 + Feature: + - Added INSTANCE_NAME to configuration - used in web and email to identify the instance. - Added EMAIL_SIGNATURE_POSITION to indicate where to place the roundup @@ -3624,11 +3876,13 @@ the database when the commit() method is called. Only the anydbm and bsddb3 backends are modified in this way - the bsddb3 backend needs a lot more work anyway... + - the CGI and mailgw automatically commit() at the end of processing a single transaction - the admin tool requires an explicit "commit" - it will prompt at exit if there are unsaved changes. A "rollback" removes all changes made during the session (up to the last commit). + - Added the "display" command to the admin tool - displays a node's values - Message author's name appears in From: instead of roundup instance name (which still appears in the Reply-To:) @@ -3642,6 +3896,7 @@ feature, and we hope to add support for it to the web gateway. Fixed: + - Lots of bugs, thanks Roch\E9 and others on the devel mailing list! - login_action and newuser_action return values were being ignored - Woohoo! Found that bloody re-login bug that was killing the mail @@ -3670,7 +3925,9 @@ 2001-11-23: 0.3.0 + Feature: + - #467129 ] Lossage when username=e-mail-address - #473123 ] Change message generation for author - MailGW now moves 'resolved' to 'chatting' on receiving e-mail for an issue. @@ -3688,6 +3945,7 @@ translatable messages Fixed: + - Fixed a bug in HTMLTemplate changes. - 'unread' to 'chatting' automagic status change was b0rken. - Anonymous user lockout wasn't working. @@ -3720,21 +3978,27 @@ 2001-10-23: 0.3.0 pre 3 + Feature: + - MailGW now moves 'unread' to 'chatting' on receiving e-mail for an issue. - feature #473127: Filenames. I modified the file.index and htmltemplate source so that the filename is used in the link and the creation information is displayed. - Admin Tool (roundup-admin): + +Admin Tool (roundup-admin): + - Interactive mode for running multiple (independant at present) commands. - Tabular display of nodes. - Import and export via colon-separated files. Changed: + - re-organised the html templating code. Fixed some bugs, probably introduced some more. Hopefully not too many. Fixed: + - Stand-alone server now has a configurable setuid user. - CGI interface wasn't handling checkboxes at all. - Fixed quopri usage in mailgw from bug reports on mailing list. @@ -3755,13 +4019,17 @@ 2001-10-11: 0.3.0 pre 2 + Fixed: + - Hyperdatabase was inserting empty strings instead of None for missing property values. This broke a lot of things. 2001-10-10: 0.3.0 pre 1 + Feature: + - roundup-admin create now prompts for property info if none is supplied on the command-line. - hyperdb Class getprops() method may now return only the mutable @@ -3769,6 +4037,7 @@ - CGI interfaces now generate a top-level index of their known instances. Changed: + - Login now uses cookies, which makes it a whole lot more flexible. We can now support anonymous user access (read-only, unless there's an "anonymous" user, in which case write access is permitted). Login @@ -3786,6 +4055,7 @@ documentation for details.) Fixed: + - Incorrectly had a Bizar Software copyright on the cgitb.py module from Ping - has been removed. - Pretty time interval wasn't handling > 1 month properly. @@ -3803,17 +4073,22 @@ -------------- 2001-08-30: 0.2.8 + Fixed: + - Wasn't handling unguessable mime types for file uploads. - Missing import in mailgw. 2001-08-29: 0.2.7 + Feature: + - Text searches are now case insensitive. All forms of text search use regular expressions now. Fixed: + - Had another 2.1-ism in the unit tests - Made the mail parser a little more robust w.r.t missing Subject: (both thanks Mikhail Sobolev) @@ -3830,10 +4105,13 @@ 2001-08-08: 0.2.6 + Note: + - Roundup is now released under the same terms as the Python License. Feature: + - Added tests for instance initialisation. No more releasing the software with bugs in roundup.init! - Now bundling unittest with the package so that python 2.0 users can use @@ -3841,6 +4119,7 @@ - Much better error handling and messages generated by the mail gateway. Fixed: + - Implemented correct mail splitting. Added unit tests. Also snips signatures now too. - Bug #447671 - typo in roundup/init.py @@ -3852,17 +4131,22 @@ 2001-08-03: 0.2.5 + Note: + - The bsddb3 module has a bug that renders it non-functional. Users should select the anydbm or bsddb backend instead. Fixed: + - Python 2.0 does not contain the unittest module. The setup.py module now checks for unittest before attempting to run the unit tests. 2001-08-03: 0.2.4 + Features: + - Added ability for cgi newblah forms to indicate that the new node should be linked somewhere. - Added time logging and file uploading to the templates. @@ -3883,6 +4167,7 @@ instructions, etc). Fixed: + - Argument handling for the roundup-admin find command. - Handling of summary when no note supplied for newblah. Again. - Detection of no form in htmltemplate Field display. @@ -3897,7 +4182,9 @@ 2001-07-30: 0.2.3 + Big change: + - I've split off the support class from the issue class in "extended". Anyone who has any support entries, sorry. It should be possible to write a scipt that moves the entries over pretty easily. If this causes @@ -3905,6 +4192,7 @@ code in "extended" either way. Features: + - Added the unit tests to the start of setup.py so they're run whenever we do anything distutils'y. - Added nicer prompting to the roundup-admin "init" command. @@ -3915,6 +4203,7 @@ - Added more DB to test. Skips tests where imports fail. Fixed: + - One of the tests in test_date had the wrong expected result. - Fixed IssueClass so that superseders links to its classname rather than hard-coded to "issue". @@ -3926,7 +4215,9 @@ 2001-07-29: 0.2.2 + Features: + - Added implementation.txt to the doc directory. Contains implementation notes specific to this implementations of Roundup. - Cleaned up mailgw some (subclass Message for getPart) and added some @@ -3942,6 +4233,7 @@ it). Fixed: + - Everything uses errno module now to check errno values. - New issue form handles lack of note better now. - HTML templating uses section-bar style for index group headers now. @@ -3953,12 +4245,15 @@ 2001-07-28: 0.2.1 + Features: + - Added docstring to roundup package so pydoc reports useful information. - Added the roundup 1 software carpentry submission HTML to the doc directory as "overview.html". Fixes: + - Fixed bug in init command - templatebuilder was assuming existence of "html" directory in instance home. - Fixed INSTALL.txt to reflect some changes in the installation and test @@ -3968,7 +4263,9 @@ strict about such things. 2001-07-26: 0.2.0 + Features: + - Major reorganisation of code to allow multiple roundup instances and a single, site-packages -based installation. Also allows multiple database back-ends. @@ -3983,6 +4280,7 @@ - Added some unit tests. Fixes: + - Fixed bug in re generation in the filter - Fixed handling of None String property in grouped list headings - Fixed adding new issue with no change note @@ -3992,6 +4290,7 @@ message. 2001-07-19: 0.1.3 + - Reldate now takes an argument "pretty" - when true, it pretty-prints the interval generated up to 5 days, then pretty-prints the date of last activity. The issue index and item now use the pretty format. @@ -4013,14 +4312,17 @@ 2001-07-18: 0.1.2 + - Set default index to ?:group=priority&:columns=activity,status,title so the priority column isn't displayed. - Thanks Anthony: + - added notes to the README about Python prerequisites - added check to roundup.py, roundup.cgi, server.py and roundup-mailgw.py for python 2+ - and made the file itself parseable by 1.5.2 ;) - python 2.0 didn't have the default args for the time module functions. - better handling of db directory in initDB + - Sorting on the extra properties defined by roundupdb classes was broken due to the caching used. May now sort on activity and creation properties, etc. @@ -4028,10 +4330,12 @@ 2001-07-18: 0.1.1 + - Initial version release with consent of Roundup spec author, Ka-Ping Yee: "Amazing! Nice work. I'll watch for the source code on your website." 2001-07-11: 0.1.0 + - Needed a bug tracking system. Looked around. Tried to install many Perl-based systems, to no avail. Got tired of waiting for Roundup to be released. Had just finished major product project, so needed something
