comparison 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
comparison
equal deleted inserted replaced
6436:1f2f7c0b8968 6437:e6d0e86181d5
12 onwards Python 3.4 and later are also supported. 12 onwards Python 3.4 and later are also supported.
13 13
14 XXXX-XX-XX 2.0.1 14 XXXX-XX-XX 2.0.1
15 15
16 Fixed: 16 Fixed:
17
17 - Reverse multilink to *the same class* would trigger a traceback about 18 - Reverse multilink to *the same class* would trigger a traceback about
18 a modified dictionary on iteration (Ralf Schlatterbeck) 19 a modified dictionary on iteration (Ralf Schlatterbeck)
19 - issue2551086 - Valid class names not documented. Should follow 20 - issue2551086 - Valid class names not documented. Should follow
20 [A-z][A-z0-9_]+[A-z_]. This was never documented or enforced, but 21 ``[A-z][A-z0-9_]+[A-z_]``. This was never documented or enforced, but
21 we get obscure errors if the rules are not followed. (Tom 22 we get obscure errors if the rules are not followed. (Tom
22 Ekberg tests by John Rouilard) 23 Ekberg tests by John Rouilard)
23 - issue2550564 - Roundup sets "Precedence: bulk" on all outgoing mail, 24 - issue2550564 - Roundup sets "Precedence: bulk" on all outgoing mail,
24 which seems wrong. Handle Auto-Submitted header on *inbound* email 25 which seems wrong. Handle Auto-Submitted header on *inbound* email
25 like we do precedence bulk. This is part of this issue. 26 like we do precedence bulk. This is part of this issue.
26 - roundup-admin filter calls find() not filter when using -s -c -S 27 - roundup-admin filter calls find() not filter when using -s -c -S
27 (John Rouillard) 28 (John Rouillard)
28 - When requesting transitive properties via '@fields' in the REST-API, 29 - When requesting transitive properties via ``@fields`` in the REST-API,
29 an empty link in the transitive property (e.g. author.username when 30 an empty link in the transitive property (e.g. author.username when
30 requesting message properties) would result in a 404 error. Now we're 31 requesting message properties) would result in a 404 error. Now we're
31 returning a JSON 'null' value. for an empty link (e.g. empty author in 32 returning a JSON 'null' value. for an empty link (e.g. empty author in
32 the example). 33 the example).
33 - sphinxcontrib.cheeseshop is unmaintained and using old http 34 - sphinxcontrib.cheeseshop is unmaintained and using old http
38 (reported by Cedric Krier, fix by John Rouillard) 39 (reported by Cedric Krier, fix by John Rouillard)
39 - issue2551094 - make simplemde handle line breaks the same as the 40 - issue2551094 - make simplemde handle line breaks the same as the
40 backend markdown formatters. (report: Cedric Krier, patch: Christof 41 backend markdown formatters. (report: Cedric Krier, patch: Christof
41 Meerwald) 42 Meerwald)
42 - issue2551092 - fix crash bug by aligning 43 - issue2551092 - fix crash bug by aligning
43 roundup.anypy.email_.decode_header with stdlib email.header and 44 ``roundup.anypy.email_.decode_header`` with stdlib ``email.header`` and
44 convert string to bytes for python 3. (Cedric Krier) 45 convert string to bytes for python 3. (Cedric Krier)
45 - issue2551097 - fix underlying bug in use of fenced codeblocks with 46 - issue2551097 - fix underlying bug in use of fenced codeblocks with
46 markdown2. Fix for issue2551093 to prevent exception trigger. 47 markdown2. Fix for issue2551093 to prevent exception trigger.
47 (patch: Cedric Krier) 48 (patch: Cedric Krier)
48 - issue2551099 - disable processing of data url's in markdown. Display 49 - issue2551099 - disable processing of data url's in markdown. Display
138 missing unique key constraint. Found during fix for issue2551142. 139 missing unique key constraint. Found during fix for issue2551142.
139 See upgrading.txt. 140 See upgrading.txt.
140 - ignore blank lines in CSV class editing. (John Rouillard) 141 - ignore blank lines in CSV class editing. (John Rouillard)
141 142
142 Features: 143 Features:
144
143 - issue2550522 - Add 'filter' command to command-line 145 - issue2550522 - Add 'filter' command to command-line
144 interface. Filter command was actually added in 2.0.0, but this 146 interface. Filter command was actually added in 2.0.0, but this
145 issue requested transitive searching. So that: 147 issue requested transitive searching. So that::
148
146 roundup-admin -i . filter issue assignedto.username=Admin 149 roundup-admin -i . filter issue assignedto.username=Admin
150
147 will work. This also fixes a bug. If assignedto.username had no 151 will work. This also fixes a bug. If assignedto.username had no
148 matches, all issues would be returned. This is also fixed. 152 matches, all issues would be returned. This is also fixed.
149 (John Rouillard) 153 (John Rouillard)
150 - issue2550716 - Email address displayed after password reset request. 154 - issue2550716 - Email address displayed after password reset request.
151 This fix actually made it into 1.6 release. However this release 155 This fix actually made it into 1.6 release. However this release
175 - pytest suite now starts the server under wsgi and loads the home 179 - pytest suite now starts the server under wsgi and loads the home
176 page. This test is skipped if the requests module is not installed. 180 page. This test is skipped if the requests module is not installed.
177 - extract translatable strings from devel and responsive templates. Merge 181 - extract translatable strings from devel and responsive templates. Merge
178 translations from https://sourceforge.net/p/roundup/code/merge-requests/3/ 182 translations from https://sourceforge.net/p/roundup/code/merge-requests/3/
179 (John Rouillard. DE translations by Tobias Herp.) 183 (John Rouillard. DE translations by Tobias Herp.)
180 - send_message now allows setting authid to set source of email. (John Rouillard) 184 - send_message now allows setting authid to set source of email.
185 (John Rouillard)
181 - issue2550837 - New option for web auth (also http header passing). 186 - issue2550837 - New option for web auth (also http header passing).
182 Allow admin to configure authentication header replacing the default 187 Allow admin to configure authentication header replacing the default
183 REMOTE_USER. Also allow arbitrary headers to be passed to the 188 REMOTE_USER. Also allow arbitrary headers to be passed to the
184 tracker when using roundup-serverbhind a proxy. 189 tracker when using roundup-server behind a proxy. This code is
190 experimental see upgrading.txt admin_guide.txt.
185 191
186 2020-07-13 2.0.0 192 2020-07-13 2.0.0
187 193
188 Fixed: 194 Fixed:
189 195
531 too. 537 too.
532 538
533 2019-07-13 1.6.1 539 2019-07-13 1.6.1
534 540
535 Features: 541 Features:
542
536 - doc updates. Link rot fixed and some grammar changes. 543 - doc updates. Link rot fixed and some grammar changes.
537 'Provisional User' config example fixed. Issue tracker is 544 'Provisional User' config example fixed. Issue tracker is
538 now https. (John Rouillard) 545 now https. (John Rouillard)
539 546
540 Fixed: 547 Fixed:
596 One must exclude all variables from the indexargs_form call which are to 603 One must exclude all variables from the indexargs_form call which are to
597 be replaced with values that are derived from other form input elements, 604 be replaced with values that are derived from other form input elements,
598 otherwise they will clash with the "hidden" input elements generated by 605 otherwise they will clash with the "hidden" input elements generated by
599 indexargs_form itself. 606 indexargs_form itself.
600 607
601 For example: 608 For example::
609
602 <tal:block replace="structure python:request.indexargs_form( 610 <tal:block replace="structure python:request.indexargs_form(
603 sort=0,group=0,filter=0,columns=0, 611 sort=0,group=0,filter=0,columns=0,
604 exclude=['type','status','assignedto'])"/> 612 exclude=['type','status','assignedto'])"/>
613
605 where the variables type, status and assignedto are supplied via other 614 where the variables type, status and assignedto are supplied via other
606 form input elements. Without the new exclude argument to indexargs_form, 615 form input elements. Without the new exclude argument to indexargs_form,
607 all hidden input elements otherwise generated by this call would need to 616 all hidden input elements otherwise generated by this call would need to
608 be manually added to the template code. Further, given that the template 617 be manually added to the template code. Further, given that the template
609 may not know what other variables may be defined, it may not even be 618 may not know what other variables may be defined, it may not even be
610 possible to code this without some python helpers. 619 possible to code this without some python helpers.
620
611 [ rouilj I think this is an example usecase. Possible assignedto 621 [ rouilj I think this is an example usecase. Possible assignedto
612 users need to have a specific role. Create TAL that 622 users need to have a specific role. Create TAL that
613 filters the users to the select few. Defines a select list for 623 filters the users to the select few. Defines a select list for
614 assignedto. Use exclude=['assignedto'] to prevent the 624 assignedto. Use exclude=['assignedto'] to prevent the
615 indexargs_form from generating a confliciting assignedto field 625 indexargs_form from generating a confliciting assignedto field
616 which lists all users regardless of the role.] 626 which lists all users regardless of the role.]
627
617 - allow user to recover account password using an entry in the 628 - allow user to recover account password using an entry in the
618 Alternate E-mail addresses list. See: 629 Alternate E-mail addresses list. See:
630
619 http://psf.upfronthosting.co.za/roundup/meta/issue564 631 http://psf.upfronthosting.co.za/roundup/meta/issue564
632
620 for description. Merge request at: 633 for description. Merge request at:
634
621 https://sourceforge.net/p/roundup/code/merge-requests/1/ 635 https://sourceforge.net/p/roundup/code/merge-requests/1/
636
622 Patch supplied by kinggreedy. Applied/tested by John Rouillard 637 Patch supplied by kinggreedy. Applied/tested by John Rouillard
623 - issue2550636, issue2550909: Added support for Whoosh indexer. 638 - issue2550636, issue2550909: Added support for Whoosh indexer.
624 Also adds new config.ini setting called indexer to select 639 Also adds new config.ini setting called indexer to select
625 indexer. See ``doc/upgrading.txt`` for details. Initial patch 640 indexer. See ``doc/upgrading.txt`` for details. Initial patch
626 done by David Wolever. Patch modified, docs added and committed 641 done by David Wolever. Patch modified, docs added and committed
627 by John Rouillard. 642 by John Rouillard.
628 - issue2550803: Replying to NOSY mail goes to the tracker through 643 - issue2550803: Replying to NOSY mail goes to the tracker through
629 reply-to, not original message author. 644 reply-to, not original message author.
630 Created new [tracker] replyto_address config.ini option to allow: 645 Created new [tracker] replyto_address config.ini option to allow:
646
631 1) setting reply-to header to the tracker 647 1) setting reply-to header to the tracker
632 2) setting reply-to header to the address of the author 648 2) setting reply-to header to the address of the author
633 of the change 649 of the change
634 3) setting it to a fixed address (like noreply@some.place) 650 3) setting it to a fixed address (like noreply@some.place)
651
635 Done by John Rouillard from proposal by Peter Funk (pefu) 652 Done by John Rouillard from proposal by Peter Funk (pefu)
636 in discussion with Tom Ekberg (tekberg). See doc/upgrading.txt. 653 in discussion with Tom Ekberg (tekberg). See doc/upgrading.txt.
637 - issue1714899: Feature Request: Optional Change Note. Added a new 654 - issue1714899: Feature Request: Optional Change Note. Added a new
638 quiet=True/False option for all property types. When quiet=True 655 quiet=True/False option for all property types. When quiet=True
639 changes to the property will not be displayed in the:: 656 changes to the property will not be displayed in the::
640 confirmation banner (shown in green) when a change is made 657
641 property change section of change note (nosy emails) 658 - confirmation banner (shown in green) when a change is made
642 web history display for an item. 659 - property change section of change note (nosy emails)
660 - web history display for an item.
661
643 Note that this may confuse users if used on a property that is 662 Note that this may confuse users if used on a property that is
644 meant to be changed by a user. It is most useful on administrative 663 meant to be changed by a user. It is most useful on administrative
645 properties that are changed by an auditor as part of a user 664 properties that are changed by an auditor as part of a user
646 generated change. Original patch by Daniel Diniz (ajaksu2) 665 generated change. Original patch by Daniel Diniz (ajaksu2)
647 discussed also at: 666 discussed also at:
667
648 http://psf.upfronthosting.co.za/roundup/meta/issue249 668 http://psf.upfronthosting.co.za/roundup/meta/issue249
669
649 Support for setting quiet when calling the class specifiers: 670 Support for setting quiet when calling the class specifiers:
650 E.G. prop=String(quiet=True) rather than:: 671 E.G. prop=String(quiet=True) rather than::
672
651 prop=String() 673 prop=String()
652 prop.quiet=True 674 prop.quiet=True
675
653 support for anydb backend, added tests, doc updates, support for 676 support for anydb backend, added tests, doc updates, support for
654 ignoring quiet setting using showall=True in call to history() 677 ignoring quiet setting using showall=True in call to history()
655 function in templates by (John Rouillard). (Note implementation 678 function in templates by (John Rouillard). (Note implementation
656 changed while implementing fix for issue2550864. Filtering of 679 changed while implementing fix for issue2550864. Filtering of
657 quiet properties pushed down to the hyperdb.py::Class::history 680 quiet properties pushed down to the hyperdb.py::Class::history
718 errortmpl page is used to display the form. The errortmpl will 741 errortmpl page is used to display the form. The errortmpl will
719 usually be the same template used to edit the form. See the section 742 usually be the same template used to edit the form. See the section
720 on "Implementing Modal Editing Using @template" in 743 on "Implementing Modal Editing Using @template" in
721 ``customizing.txt``. (John Rouillard) 744 ``customizing.txt``. (John Rouillard)
722 - New form of check function is permitted in permission definitions. 745 - New form of check function is permitted in permission definitions.
723 If the check function is defined as: 746 If the check function is defined as::
747
724 check(db, userid, itemid, **ctx) 748 check(db, userid, itemid, **ctx)
725 the ctx variable will have: 749
726 ctx['property'] the name of the property being checked or None 750 the ctx variable will have::
727 ctx['classname'] the class that is being checked or None 751
728 ctx['permission'] the name of the permission (e.g. View, Edit) 752 ctx['property']: the name of the property being checked or None
753 ctx['classname']: the class that is being checked or None
754 ctx['permission']: the name of the permission (e.g. View, Edit)
755
729 At some future date the older 3 argument style check command will 756 At some future date the older 3 argument style check command will
730 be deprecated. See ``upgrading.txt`` for details. 757 be deprecated. See ``upgrading.txt`` for details.
731 - New property for permissions added to simplify the model. See 758 - New property for permissions added to simplify the model. See
732 ``customizing.txt`` and search for props_only and 759 ``customizing.txt`` and search for props_only and
733 set_props_only_default in the section 'Adding a new Permission'. 760 set_props_only_default in the section 'Adding a new Permission'.
839 - issue2550723 Fix propagation of @pagesize 866 - issue2550723 Fix propagation of @pagesize
840 When @pagesize=0 is specified (indicating show all), the value of 867 When @pagesize=0 is specified (indicating show all), the value of
841 pagesize is not propigated to the prev link. This patch fixes that. 868 pagesize is not propigated to the prev link. This patch fixes that.
842 Patch provided by John Kristensen. (Applied, light testing by John 869 Patch provided by John Kristensen. (Applied, light testing by John
843 Rouillard.) 870 Rouillard.)
844 - issue2550850 anypy/email_.py uses BSPACE which is not defined in python 2.7 871 - issue2550850 ``anypy/email_.py`` uses BSPACE which is not defined \
845 Supplied a definition for BSPACE since it seems to not be defined 872 in python 2.7. Supplied a definition for BSPACE since it seems to
846 anywhere. Reported by Dennis Boone. (John Rouillard) 873 not be defined anywhere. Reported by Dennis Boone. (John Rouillard)
847 - Validate properties specified for sorting and grouping in index 874 - Validate properties specified for sorting and grouping in index
848 views. Original patch from martin.v.loewis via: 875 views. Original patch from martin.v.loewis via:
849 https://hg.python.org/tracker/roundup/rev/439bd3060df2 876 https://hg.python.org/tracker/roundup/rev/439bd3060df2
850 Applied by John Rouillard with some modification to properly 877 Applied by John Rouillard with some modification to properly
851 identify if the bad property is a sort or grouping property. Tests 878 identify if the bad property is a sort or grouping property. Tests
891 - issue2086536 - back_postgresql: fixing pg_command and prefering 918 - issue2086536 - back_postgresql: fixing pg_command and prefering
892 psycopg2. Patch done by Philipp Gortan (mephinet). His patch 919 psycopg2. Patch done by Philipp Gortan (mephinet). His patch
893 also improves handling of retryable errors. Applied and 920 also improves handling of retryable errors. Applied and
894 edited by John Rouillard. Edits included removing support for 921 edited by John Rouillard. Edits included removing support for
895 psycopg1. See: 922 psycopg1. See:
923
896 https://sourceforge.net/p/roundup/mailman/message/32855027/ 924 https://sourceforge.net/p/roundup/mailman/message/32855027/
925
897 for rational for dropping it. 926 for rational for dropping it.
898 - issue2550831: Make the classic template query.edit page work. 927 - issue2550831: Make the classic template query.edit page work.
899 Many fixes and improvements. See ``upgrading.txt`` for details. 928 Many fixes and improvements. See ``upgrading.txt`` for details.
900 Diagnosis and fix with patch by R David Murray. Support for 929 Diagnosis and fix with patch by R David Murray. Support for
901 restoring retired but active queries, html layout changes and doc 930 restoring retired but active queries, html layout changes and doc
992 circumstances a user could generate a second query with the same 1021 circumstances a user could generate a second query with the same
993 name. The SearchAction function has been corrected to report this 1022 name. The SearchAction function has been corrected to report this
994 error. Also the index.search.html template in the classic tracker 1023 error. Also the index.search.html template in the classic tracker
995 and corresponding templates in the other example trackers 1024 and corresponding templates in the other example trackers
996 has been modified to include: 1025 has been modified to include:
1026
997 <input type="hidden" name="@template" value="index|search"/> 1027 <input type="hidden" name="@template" value="index|search"/>
1028
998 so an error from SearchAction will display an error message and keep 1029 so an error from SearchAction will display an error message and keep
999 the user on the search page so they can correct the error. See 1030 the user on the search page so they can correct the error. See
1000 ``doc/upgrading.txt``. (John Rouillard) 1031 ``doc/upgrading.txt``. (John Rouillard)
1001 - When a new named search is created, the index page that is displayed 1032 - When a new named search is created, the index page that is displayed
1002 doesn't show the name. This has been fixed by setting the @dispname 1033 doesn't show the name. This has been fixed by setting the @dispname
1024 config (do_config) command. (John Rouillard) 1055 config (do_config) command. (John Rouillard)
1025 - Modified configuration option static_files to be a space separated 1056 - Modified configuration option static_files to be a space separated
1026 list of directories to search for static files in the web interface. 1057 list of directories to search for static files in the web interface.
1027 If one of the elements is -, the search stops and the TEMPLATES 1058 If one of the elements is -, the search stops and the TEMPLATES
1028 directory is not searched. See: 1059 directory is not searched. See:
1060
1029 https://sourceforge.net/p/roundup/mailman/message/35773357/ 1061 https://sourceforge.net/p/roundup/mailman/message/35773357/
1062
1030 subject is "showing template sources to all". 1063 subject is "showing template sources to all".
1031 - issue2550945: OpenPGP: Extends newissuecopy.py to encrypt if configured. 1064 - issue2550945: OpenPGP: Extends newissuecopy.py to encrypt if configured.
1032 (Bernhard Reiter) 1065 (Bernhard Reiter)
1033 - CSRF protection broke the retire function for query edit. Fix 1066 - CSRF protection broke the retire function for query edit. Fix
1034 javascript and make sure csrf tokens are provided in the right 1067 javascript and make sure csrf tokens are provided in the right
1256 - Support for tx_Source property on database handle. Can be used by 1289 - Support for tx_Source property on database handle. Can be used by
1257 detectors to find out the source of a change in an auditor to block 1290 detectors to find out the source of a change in an auditor to block
1258 changes arriving by unauthenticated mechanisms (e.g. plain email 1291 changes arriving by unauthenticated mechanisms (e.g. plain email
1259 where headers can be faked). The property db.tx_Source has the 1292 where headers can be faked). The property db.tx_Source has the
1260 following values: 1293 following values:
1294
1261 * None - Default value set to None. May be valid if it's a script 1295 * None - Default value set to None. May be valid if it's a script
1262 that is created by the user. Otherwise it's an error and indicates 1296 that is created by the user. Otherwise it's an error and indicates
1263 that some code path is not properly setting the tx_Source property. 1297 that some code path is not properly setting the tx_Source property.
1264 * "cli" - this string value is set when using roundup-admin and 1298 * "cli" - this string value is set when using roundup-admin and
1265 supplied scripts. 1299 supplied scripts.
1269 email based technique. 1303 email based technique.
1270 * "email-sig-openpgp" - this string value is set when email with a 1304 * "email-sig-openpgp" - this string value is set when email with a
1271 valid pgp signature is used. (*NOTE* the testing for this mode 1305 valid pgp signature is used. (*NOTE* the testing for this mode
1272 is incomplete. If you have a pgp infrastructure you should test 1306 is incomplete. If you have a pgp infrastructure you should test
1273 and verify that this is properly set.) (John Rouillard) 1307 and verify that this is properly set.) (John Rouillard)
1308
1274 - Introducing Template Loader API (anatoly techtonik) 1309 - Introducing Template Loader API (anatoly techtonik)
1275 - Experimental support for Jinja2, try 'jinja2' for template_engine 1310 - Experimental support for Jinja2, try 'jinja2' for template_engine
1276 in config (anatoly techtonik) 1311 in config (anatoly techtonik)
1277 - A new jinja2 template based on Classic schema and using Twitter 1312 - A new jinja2 template based on Classic schema and using Twitter
1278 bootstrap for responsive behaviour. Run as - 1313 bootstrap for responsive behaviour. Run as -
1339 1374
1340 Fixed: 1375 Fixed:
1341 1376
1342 - issue2550765: Don't show links in calendar that will fail. 1377 - issue2550765: Don't show links in calendar that will fail.
1343 Found and fixed by C\E9dric Krier. (Bernhard) 1378 Found and fixed by C\E9dric Krier. (Bernhard)
1344 - issue2550765: use <meta name="robots" content="noindex, nofollow"> in the 1379 - issue2550765: use ``<meta name="robots" content="noindex,
1345 _generic.calendar.html to prevent robots to follow all the links in the 1380 nofollow">`` in the _generic.calendar.html to prevent robots to
1346 calendar. (Ezio Melotti) 1381 follow all the links in the calendar. (Ezio Melotti)
1347 - "BaseException.with_traceback" is not available on Python 2, so use 1382 - "BaseException.with_traceback" is not available on Python 2, so use
1348 "raise E, V, T" instead of "raise E(V).with_traceback(T)". This change was 1383 "raise E, V, T" instead of "raise E(V).with_traceback(T)". This change was
1349 originally introduced in 74476eaac38a. (Ezio Melotti) 1384 originally introduced in 74476eaac38a. (Ezio Melotti)
1350 - issue2550759: Trailing punctuation is no longer included when URLs are 1385 - issue2550759: Trailing punctuation is no longer included when URLs are
1351 converted to links. (Ezio Melotti) 1386 converted to links. (Ezio Melotti)
1357 to W. Trevor King. (Bernhard Reiter) 1392 to W. Trevor King. (Bernhard Reiter)
1358 - issue2550766: Minor formatting issues in the docs for date properties, 1393 - issue2550766: Minor formatting issues in the docs for date properties,
1359 thanks John Kristensen. (Bernhard Reiter) 1394 thanks John Kristensen. (Bernhard Reiter)
1360 - issue2550738: Fixes for various documentation typoes, 1395 - issue2550738: Fixes for various documentation typoes,
1361 thanks Nathan Russell. (John Kristensen) 1396 thanks Nathan Russell. (John Kristensen)
1362 - issue2550756: Fix `oder' typo in mailer.Mailer.bounce_message docstring, 1397 - issue2550756: Fix 'oder' typo in mailer.Mailer.bounce_message docstring,
1363 thanks W. Trevor King (John Kristensen) 1398 thanks W. Trevor King (John Kristensen)
1364 - Fix basic authentication: instatiating the login action would fail if 1399 - Fix basic authentication: instatiating the login action would fail if
1365 the user is not set. We now first set the user to anonymous and then 1400 the user is not set. We now first set the user to anonymous and then
1366 try basic authentication if enabled. (Ralf Schlatterbeck) 1401 try basic authentication if enabled. (Ralf Schlatterbeck)
1367 - Fix xmlrpc permissions for lookup method: Allow if the key attribute 1402 - Fix xmlrpc permissions for lookup method: Allow if the key attribute
1738 1773
1739 1774
1740 2010-02-19: 1.4.13 1775 2010-02-19: 1.4.13
1741 1776
1742 Fixed: 1777 Fixed:
1778
1743 - Multilink edit fields lose their values (thanks Will Maier) 1779 - Multilink edit fields lose their values (thanks Will Maier)
1744 1780
1745 1781
1746 2010-02-09: 1.4.12 1782 2010-02-09: 1.4.12
1747 1783
1748 Features: 1784 Features:
1785
1749 - Support IMAP CRAM-MD5, thanks Jochen Maes 1786 - Support IMAP CRAM-MD5, thanks Jochen Maes
1750 1787
1751 Fixes: 1788 Fixes:
1789
1752 - Proper handling of 'Create' permissions in both mail gateway (earlier 1790 - Proper handling of 'Create' permissions in both mail gateway (earlier
1753 commit r4405 by Richard), web interface, and xmlrpc. This used to 1791 commit r4405 by Richard), web interface, and xmlrpc. This used to
1754 check 'Edit' permission previously. See 1792 check 'Edit' permission previously. See
1755 http://thread.gmane.org/gmane.comp.bug-tracking.roundup.devel/5133 1793 http://thread.gmane.org/gmane.comp.bug-tracking.roundup.devel/5133
1756 Add regression tests for proper handling of 'Create' and 'Edit' 1794 Add regression tests for proper handling of 'Create' and 'Edit'
1779 1817
1780 1818
1781 2009-12-21: 1.4.11 1819 2009-12-21: 1.4.11
1782 1820
1783 Features: 1821 Features:
1822
1784 - Generic class editor may now restore retired items (thanks Ralf Hemmecke) 1823 - Generic class editor may now restore retired items (thanks Ralf Hemmecke)
1785 1824
1786 Fixes: 1825 Fixes:
1826
1787 - Fix security hole allowing user permission escalation (thanks Ralf 1827 - Fix security hole allowing user permission escalation (thanks Ralf
1788 Schlatterbeck) 1828 Schlatterbeck)
1789 - More SSL fixes. SSL wants the underlying socket non-blocking. So we 1829 - More SSL fixes. SSL wants the underlying socket non-blocking. So we
1790 don't call socket.setdefaulttimeout in case of SSL. This apparently 1830 don't call socket.setdefaulttimeout in case of SSL. This apparently
1791 never raises a WantReadError from SSL. 1831 never raises a WantReadError from SSL.
1835 1875
1836 1876
1837 2009-10-09: 1.4.10 1877 2009-10-09: 1.4.10
1838 1878
1839 Fixes: 1879 Fixes:
1880
1840 - Minor update of doc/developers.txt to point to the new resources 1881 - Minor update of doc/developers.txt to point to the new resources
1841 on www.roundup-tracker.org (Bernhard Reiter) 1882 on www.roundup-tracker.org (Bernhard Reiter)
1842 - Small CSS improvements regaring the search box (thanks Thomas Arendsen Hein) 1883 - Small CSS improvements regaring the search box (thanks Thomas Arendsen Hein)
1843 (issue 2550589) 1884 (issue 2550589)
1844 - Indexers behaviour made more consistent regarding length of indexed words 1885 - Indexers behaviour made more consistent regarding length of indexed words
1858 (Ralf Schlatterbeck) 1899 (Ralf Schlatterbeck)
1859 1900
1860 2009-08-10: 1.4.9 1901 2009-08-10: 1.4.9
1861 1902
1862 Fixes: 1903 Fixes:
1904
1863 - fixed action taken in response to invalid GET request 1905 - fixed action taken in response to invalid GET request
1864 - fixed classic tracker template to submit POST requests when appropriate 1906 - fixed classic tracker template to submit POST requests when appropriate
1865 - fix problems with french and german locale files (issue 2550546) 1907 - fix problems with french and german locale files (issue 2550546)
1866 - Run each message of the mail-gateway in a separate transaction, 1908 - Run each message of the mail-gateway in a separate transaction,
1867 see http://thread.gmane.org/gmane.comp.bug-tracking.roundup.user/9500 1909 see http://thread.gmane.org/gmane.comp.bug-tracking.roundup.user/9500
1877 1919
1878 1920
1879 2009-03-18: 1.4.8 1921 2009-03-18: 1.4.8
1880 1922
1881 Fixes: 1923 Fixes:
1924
1882 - bug introduced into hyperdb filter (issue 2550505) 1925 - bug introduced into hyperdb filter (issue 2550505)
1883 - bug introduced into CVS export and view (issue 2550529) 1926 - bug introduced into CVS export and view (issue 2550529)
1884 - bugs introduced in the migration to the email package (issue 2550531) 1927 - bugs introduced in the migration to the email package (issue 2550531)
1885 - handle bogus pagination values (issue 2550530) 1928 - handle bogus pagination values (issue 2550530)
1886 - fix TLS handling with some SMTP servers (issues 2484879 and 1912923) 1929 - fix TLS handling with some SMTP servers (issues 2484879 and 1912923)
1887 1930
1888 1931
1889 2009-03-13: 1.4.7 1932 2009-03-13: 1.4.7
1890 1933
1891 Features: 1934 Features:
1935
1892 - Provide a "no selection" option in web interface selection widgets 1936 - Provide a "no selection" option in web interface selection widgets
1893 - Debug logging now uses the logging module rather than print 1937 - Debug logging now uses the logging module rather than print
1894 - Allow CGI frontend to serve XMLRPC requests. 1938 - Allow CGI frontend to serve XMLRPC requests.
1895 - Added XMLRPC actions, as well as bridging CGI actions to XMLRPC actions. 1939 - Added XMLRPC actions, as well as bridging CGI actions to XMLRPC actions.
1896 - Optimized large file serving via mod_python / sendfile(). 1940 - Optimized large file serving via mod_python / sendfile().
1897 - Support resuming downloads for (large) files. 1941 - Support resuming downloads for (large) files.
1898 1942
1899 Fixes: 1943 Fixes:
1944
1900 - a number of security issues were discovered by Daniel Diniz 1945 - a number of security issues were discovered by Daniel Diniz
1901 - EditCSV and ExportCSV altered to include permission checks 1946 - EditCSV and ExportCSV altered to include permission checks
1902 - HTTP POST required on actions which alter data 1947 - HTTP POST required on actions which alter data
1903 - HTML file uploads served as application/octet-stream 1948 - HTML file uploads served as application/octet-stream
1904 - Handle Unauthorised in file serving correctly 1949 - Handle Unauthorised in file serving correctly
1909 - Improve consistency of item sorting in HTML interface 1954 - Improve consistency of item sorting in HTML interface
1910 - Various other small bug fixes, robustification and optimisation 1955 - Various other small bug fixes, robustification and optimisation
1911 1956
1912 1957
1913 2008-09-01: 1.4.6 1958 2008-09-01: 1.4.6
1914 Fixed: 1959
1960 Fixed:
1961
1915 - Fix bug introduced in 1.4.5 in RDBMS full-text indexing 1962 - Fix bug introduced in 1.4.5 in RDBMS full-text indexing
1916 - Make URL matching code less matchy 1963 - Make URL matching code less matchy
1917 - Try to clarify mail_domain config setting 1964 - Try to clarify mail_domain config setting
1918 1965
1919 1966
1920 2008-08-19: 1.4.5 1967 2008-08-19: 1.4.5
1968
1921 Feature: 1969 Feature:
1970
1922 - Add use of username/password stored in ~/.netrc in mailgw (sf patch 1971 - Add use of username/password stored in ~/.netrc in mailgw (sf patch
1923 #1912105) 1972 #1912105)
1924 1973
1925 Fixed: 1974 Fixed:
1975
1926 - 'Make a Copy' failed with more than one person in nosy list (sf #1906147) 1976 - 'Make a Copy' failed with more than one person in nosy list (sf #1906147)
1927 - xml-rpc security checks and tests across all backends (sf #1907211) 1977 - xml-rpc security checks and tests across all backends (sf #1907211)
1928 - Send a Precedence header in email so (well-written) autoresponders don't 1978 - Send a Precedence header in email so (well-written) autoresponders don't
1929 - Fix mailgw total failure bounce message generation (thanks Bradley Dean) 1979 - Fix mailgw total failure bounce message generation (thanks Bradley Dean)
1930 - Fix for postgres 8.3 compatibility (and bug) (sf patch #2030479 and bug 1980 - Fix for postgres 8.3 compatibility (and bug) (sf patch #2030479 and bug
1945 - Fix HTML injection into page title 1995 - Fix HTML injection into page title
1946 - Fix indexer handling of indexed Link properties (sf #1936876) 1996 - Fix indexer handling of indexed Link properties (sf #1936876)
1947 1997
1948 1998
1949 2008-03-01: 1.4.4 1999 2008-03-01: 1.4.4
1950 Fixed: 2000
2001 Fixed:
2002
1951 - Security fixes (thanks Roland Meister) 2003 - Security fixes (thanks Roland Meister)
1952 2004
1953 2005
1954 2008-02-27: 1.4.3 2006 2008-02-27: 1.4.3
1955 Fixed: 2007
2008 Fixed:
2009
1956 - MySQL backend bug introduced in 1.4.2 (TEXT columns need a size when 2010 - MySQL backend bug introduced in 1.4.2 (TEXT columns need a size when
1957 being indexed) 2011 being indexed)
1958 2012
1959 2013
1960 2008-02-08: 1.4.2 2014 2008-02-08: 1.4.2
2015
1961 Feature: 2016 Feature:
2017
1962 - New config option in mail section: ignore_alternatives allows to 2018 - New config option in mail section: ignore_alternatives allows to
1963 ignore alternatives besides the text/plain part used for the content 2019 ignore alternatives besides the text/plain part used for the content
1964 of a message in multipart/alternative attachments. 2020 of a message in multipart/alternative attachments.
1965 - Admin copy of error email from mailgw includes traceback (thanks Ulrik 2021 - Admin copy of error email from mailgw includes traceback (thanks Ulrik
1966 Mikaelsson) 2022 Mikaelsson)
1968 when email out to nosy (thanks Martin v. L\F6wis) 2024 when email out to nosy (thanks Martin v. L\F6wis)
1969 - Nosy messages now include more information about issues (all link 2025 - Nosy messages now include more information about issues (all link
1970 properties with a "name" attribute) (thanks Martin v. L\F6wis) 2026 properties with a "name" attribute) (thanks Martin v. L\F6wis)
1971 2027
1972 Fixed: 2028 Fixed:
2029
1973 - Searching date range by supplying just a date as the filter spec 2030 - Searching date range by supplying just a date as the filter spec
1974 - Handle no time.tzset under Windows (sf #1825643) 2031 - Handle no time.tzset under Windows (sf #1825643)
1975 - Fix race condition in file storage transaction commit (sf #1883580) 2032 - Fix race condition in file storage transaction commit (sf #1883580)
1976 - Make user utils JS work with firstname/lastname again (sf #1868323) 2033 - Make user utils JS work with firstname/lastname again (sf #1868323)
1977 - Fix ZRoundup to work with Zope 2.8.5 (sf #1806125) 2034 - Fix ZRoundup to work with Zope 2.8.5 (sf #1806125)
1978 - Fix race condition for key properties in rdbms backends (sf #1876683) 2035 - Fix race condition for key properties in rdbms backends (sf #1876683)
1979 - Handle Reject in mailgw final set/create (sf #1826425) 2036 - Handle Reject in mailgw final set/create (sf #1826425)
1980 2037
1981 2038
1982 2007-11-09: 1.4.1 2039 2007-11-09: 1.4.1
1983 Fixed: 2040
2041 Fixed:
2042
1984 - Removed some metakit references 2043 - Removed some metakit references
1985 2044
1986 2045
1987 2007-11-04: 1.4.0 2046 2007-11-04: 1.4.0
2047
1988 Feature: 2048 Feature:
2049
1989 - Roundup has a new xmlrpc frontend that gives access to a tracker using 2050 - Roundup has a new xmlrpc frontend that gives access to a tracker using
1990 XMLRPC. 2051 XMLRPC.
1991 - Dates can now be in the year-range 1-9999 2052 - Dates can now be in the year-range 1-9999
1992 - The metakit backend has been removed 2053 - The metakit backend has been removed
1993 - Add simple anti-spam recipe to docs 2054 - Add simple anti-spam recipe to docs
2006 - config options: control whether author info/email is included in email 2067 - config options: control whether author info/email is included in email
2007 sent by roundup 2068 sent by roundup
2008 - support for receiving OpenPGP MIME messages (signed or encrypted) 2069 - support for receiving OpenPGP MIME messages (signed or encrypted)
2009 2070
2010 Fixed: 2071 Fixed:
2072
2011 - Handling of unset Link search in RDBMS backend 2073 - Handling of unset Link search in RDBMS backend
2012 - Journal export of anydbm didn't correctly export previously empty values 2074 - Journal export of anydbm didn't correctly export previously empty values
2013 - Fix handling of defaults for date fields 2075 - Fix handling of defaults for date fields
2014 - Fix <form> name in user editing to allow multilink popups to work 2076 - Fix <form> name in user editing to allow multilink popups to work
2015 - Fix form handling of editing existing hyperdb items from a new item page. 2077 - Fix form handling of editing existing hyperdb items from a new item page.
2047 backend 2109 backend
2048 - make LinkHTMLProperty handle non-existing keys (sf patch 1815895) 2110 - make LinkHTMLProperty handle non-existing keys (sf patch 1815895)
2049 2111
2050 2112
2051 2007-02-15: 1.3.3 2113 2007-02-15: 1.3.3
2052 Fixed: 2114
2115 Fixed:
2116
2053 - If-Modified-Since handling was broken 2117 - If-Modified-Since handling was broken
2054 - Updated documentation for customising hard-coded searches in page.html 2118 - Updated documentation for customising hard-coded searches in page.html
2055 - Updated Windows installation docs (thanks Bo Berglund) 2119 - Updated Windows installation docs (thanks Bo Berglund)
2056 - Handle rounding of seconds generating invalid date values 2120 - Handle rounding of seconds generating invalid date values
2057 - Handle 8-bit untranslateable messages from database properties 2121 - Handle 8-bit untranslateable messages from database properties
2058 - Fix scripts/roundup-reminder date calculation (sf bug 1649979) 2122 - Fix scripts/roundup-reminder date calculation (sf bug 1649979)
2059 - Improved due_date and timelog customisation docs (sf bug 1625124) 2123 - Improved due_date and timelog customisation docs (sf bug 1625124)
2060 2124
2061 2125
2062 2006-12-19: 1.3.2 2126 2006-12-19: 1.3.2
2063 Fixed: 2127
2128 Fixed:
2129
2064 - relax rules for required fields in form_parser.py (sf bug 1599740) 2130 - relax rules for required fields in form_parser.py (sf bug 1599740)
2065 - documentation cleanup from Luke Ross (sf patch 1594860) 2131 - documentation cleanup from Luke Ross (sf patch 1594860)
2066 - updated Spanish translation from Ramiro Morales (sf patch 1594718) 2132 - updated Spanish translation from Ramiro Morales (sf patch 1594718)
2067 - handle 8-bit untranslateable messages in tracker templates 2133 - handle 8-bit untranslateable messages in tracker templates
2068 - handling of required for boolean False and numeric 0 (sf bug 1608200) 2134 - handling of required for boolean False and numeric 0 (sf bug 1608200)
2075 - allow use of roundup-server pidfile without forking (sf bug 1614753) 2141 - allow use of roundup-server pidfile without forking (sf bug 1614753)
2076 - allow translation of status/priority menu options (sf bug 1613976) 2142 - allow translation of status/priority menu options (sf bug 1613976)
2077 2143
2078 2144
2079 2006-11-11: 1.3.1 2145 2006-11-11: 1.3.1
2080 Fixed: 2146
2147 Fixed:
2148
2081 - setup.py had broken reference to roundup.cgi (sf bug 1593573) 2149 - setup.py had broken reference to roundup.cgi (sf bug 1593573)
2082 - full-text search wasn't coping with multiple multilinks to the same class 2150 - full-text search wasn't coping with multiple multilinks to the same class
2083 - unicode / sqlite 3 problem (sf bug 1589292) 2151 - unicode / sqlite 3 problem (sf bug 1589292)
2084 2152
2085 2153
2086 2006-11-09: 1.3.0 2154 2006-11-09: 1.3.0
2155
2087 Feature: 2156 Feature:
2157
2088 - WSGI support via roundup.cgi.wsgi_handler 2158 - WSGI support via roundup.cgi.wsgi_handler
2089 2159
2090 Fixed: 2160 Fixed:
2161
2091 - sqlite module detection was broken for python 2.5 compiled without sqlite 2162 - sqlite module detection was broken for python 2.5 compiled without sqlite
2092 support 2163 support
2093 - fixed support for pysqlite2 (version 2.1.0 is the minimum version 2164 - fixed support for pysqlite2 (version 2.1.0 is the minimum version
2094 supported) 2165 supported)
2095 - roundup-server called setuid when run by non-root user 2166 - roundup-server called setuid when run by non-root user
2100 - nicer "permission required" messages (sf patch 1558183) 2171 - nicer "permission required" messages (sf patch 1558183)
2101 - fix unstable ordering of detectors (sf bug 1585378) 2172 - fix unstable ordering of detectors (sf bug 1585378)
2102 2173
2103 2174
2104 2006-10-07: 1.2.1 2175 2006-10-07: 1.2.1
2105 Fixed: 2176
2177 Fixed:
2178
2106 - E-mail subject line prefix delimiter configuration was being ignored. 2179 - E-mail subject line prefix delimiter configuration was being ignored.
2107 - Password confirm field in user editing. 2180 - Password confirm field in user editing.
2108 2181
2109 2182
2110 2006-10-04: 1.2.0 2183 2006-10-04: 1.2.0
2184
2111 Feature: 2185 Feature:
2186
2112 - supports Python 2.5, including the sqlite3 module 2187 - supports Python 2.5, including the sqlite3 module
2113 - full timezone support (sf patch 1465296) 2188 - full timezone support (sf patch 1465296)
2114 - handle connection loss when responding to web requests 2189 - handle connection loss when responding to web requests
2115 - match incoming mail In-Reply-To against existing messages when no issue 2190 - match incoming mail In-Reply-To against existing messages when no issue
2116 id is specified in the Subject 2191 id is specified in the Subject
2130 - added filter_sql to SQL backends which takes an arbitrary SQL statement 2205 - added filter_sql to SQL backends which takes an arbitrary SQL statement
2131 and returns a list of item ids 2206 and returns a list of item ids
2132 2207
2133 2208
2134 Fixed: 2209 Fixed:
2210
2135 - Verbose option for import and export (sf bug 1505645) 2211 - Verbose option for import and export (sf bug 1505645)
2136 - -c option for roundup-mailgw won't accept parameter (sf bug 1505649) 2212 - -c option for roundup-mailgw won't accept parameter (sf bug 1505649)
2137 - '?' in rfc2822-encoded header isn't quoted (sf bug 1505663) 2213 - '?' in rfc2822-encoded header isn't quoted (sf bug 1505663)
2138 - fix error message in form parser 2214 - fix error message in form parser
2139 - updated ZRoundup for Zope 2.9 (sf patch 1511734) 2215 - updated ZRoundup for Zope 2.9 (sf patch 1511734)
2166 - better conflict retry in postgresql backend (sf bug 1552809) 2242 - better conflict retry in postgresql backend (sf bug 1552809)
2167 - fix time log example (sf bug 1554630) 2243 - fix time log example (sf bug 1554630)
2168 2244
2169 2245
2170 2006-04-27: 1.1.2 2246 2006-04-27: 1.1.2
2247
2171 Feature: 2248 Feature:
2249
2172 - server-ctl script uses server configuration file (sf bug 1443805) 2250 - server-ctl script uses server configuration file (sf bug 1443805)
2173 - mail user interface translated (sf patch 1462491) 2251 - mail user interface translated (sf patch 1462491)
2174 2252
2175 Fixed: 2253 Fixed:
2254
2176 - progress display in roundup-admin reindex 2255 - progress display in roundup-admin reindex
2177 - bug in menu() permission filter (sf bug 1444440) 2256 - bug in menu() permission filter (sf bug 1444440)
2178 - indexing may be turned off for FileClass "content" now 2257 - indexing may be turned off for FileClass "content" now
2179 ("content" and "type" properties are now automatically included in the 2258 ("content" and "type" properties are now automatically included in the
2180 FileClass schema where previously the "content" property was faked and 2259 FileClass schema where previously the "content" property was faked and
2191 - prevent generation of new single-digit seconds dates (sf bug 1429390) 2270 - prevent generation of new single-digit seconds dates (sf bug 1429390)
2192 - implement close() on all indexers (sf bug 1242477) 2271 - implement close() on all indexers (sf bug 1242477)
2193 2272
2194 2273
2195 2006-03-03: 1.1.1 2274 2006-03-03: 1.1.1
2196 Fixed: 2275
2276 Fixed:
2277
2197 - failure with browsers not sending "Accept-Language" header 2278 - failure with browsers not sending "Accept-Language" header
2198 (sf bugs 1429646 and 1435335) 2279 (sf bugs 1429646 and 1435335)
2199 - translate class name in "required property not supplied" error message 2280 - translate class name in "required property not supplied" error message
2200 (sf bug 1429669) 2281 (sf bug 1429669)
2201 - error in link property lookups with numeric-alike key values (sf bug 1424550) 2282 - error in link property lookups with numeric-alike key values (sf bug 1424550)
2216 - escape all uses of "schema" in mysql backend (sf bug 1397569) 2297 - escape all uses of "schema" in mysql backend (sf bug 1397569)
2217 - date spec wasn't allowing week intervals 2298 - date spec wasn't allowing week intervals
2218 2299
2219 2300
2220 2006-02-10: 1.1.0 2301 2006-02-10: 1.1.0
2302
2221 Feature: 2303 Feature:
2304
2222 - trackers may configure custom stop-words for the full-text indexer 2305 - trackers may configure custom stop-words for the full-text indexer
2223 - login may now be for a single session (and this is the default) 2306 - login may now be for a single session (and this is the default)
2224 - trackers may hide exceptions from web users (they will be mailed to the 2307 - trackers may hide exceptions from web users (they will be mailed to the
2225 tracker admin) (hiding is the default) 2308 tracker admin) (hiding is the default)
2226 - include "clear this message" link in the "ok" message bar 2309 - include "clear this message" link in the "ok" message bar
2227 2310
2228 Fixed: 2311 Fixed:
2312
2229 - fixes in scripts/import_sf.py 2313 - fixes in scripts/import_sf.py
2230 - fix some unicode bugs in roundup-admin import 2314 - fix some unicode bugs in roundup-admin import
2231 - Xapian indexer wasn't actually being used and its reindexing of existing 2315 - Xapian indexer wasn't actually being used and its reindexing of existing
2232 data was busted to boot 2316 data was busted to boot
2233 - roundup-admin import wasn't indexing message content 2317 - roundup-admin import wasn't indexing message content
2235 - rename dispname to @dispname to avoid name clashes in the future 2319 - rename dispname to @dispname to avoid name clashes in the future
2236 - fixed schema migration problem when Class keys were removed 2320 - fixed schema migration problem when Class keys were removed
2237 2321
2238 2322
2239 2006-02-03: 1.0.1 2323 2006-02-03: 1.0.1
2324
2240 Feature: 2325 Feature:
2326
2241 - scripts/import_sf.py will import a tracker from Sourceforge.NET 2327 - scripts/import_sf.py will import a tracker from Sourceforge.NET
2242 - added hasRole() to HTMLUser 2328 - added hasRole() to HTMLUser
2243 2329
2244 Fixed: 2330 Fixed:
2331
2245 - SQL generation for sort/group by separate Link properties (sf bug 2332 - SQL generation for sort/group by separate Link properties (sf bug
2246 1417565) 2333 1417565)
2247 - fix timezone offsetting in email Date: header 2334 - fix timezone offsetting in email Date: header
2248 - fix security check for hasPermission('Permission', None) 2335 - fix security check for hasPermission('Permission', None)
2249 2336
2250 2337
2251 2006-01-27: 1.0 2338 2006-01-27: 1.0
2339
2252 Feature: 2340 Feature:
2341
2253 - Lithuanian translation by Aiste Kesminaite 2342 - Lithuanian translation by Aiste Kesminaite
2254 - Web User Interface language selection by form variable @language, 2343 - Web User Interface language selection by form variable @language,
2255 browser cookie or HTTP header Accept-Language (sf patch 1360321) 2344 browser cookie or HTTP header Accept-Language (sf patch 1360321)
2256 - initial values for configuration options may be passed on 2345 - initial values for configuration options may be passed on
2257 'roundup-admin install' command line (based on sf patch 1237110) 2346 'roundup-admin install' command line (based on sf patch 1237110)
2271 - additional attributes for input element may be passed to the 'field' 2360 - additional attributes for input element may be passed to the 'field'
2272 method of a property wrapper 2361 method of a property wrapper
2273 - added "copy_url" method to generate a URL for copying an item 2362 - added "copy_url" method to generate a URL for copying an item
2274 2363
2275 Fixed: 2364 Fixed:
2365
2276 - MySQL now creates String columns using the TEXT column type 2366 - MySQL now creates String columns using the TEXT column type
2277 - password.crypt won't work with md5 passwords (sf bug 1372253) 2367 - password.crypt won't work with md5 passwords (sf bug 1372253)
2278 - use quoted printable encoding for nosy attachments that have MIME 2368 - use quoted printable encoding for nosy attachments that have MIME
2279 type 'text/plain' but contain 8-bit characters (sf bug 1381559) 2369 type 'text/plain' but contain 8-bit characters (sf bug 1381559)
2280 - login name and email address fields in the classic template 2370 - login name and email address fields in the classic template
2293 - have "System Messages" be marked as such again (sf bug 1281907) 2383 - have "System Messages" be marked as such again (sf bug 1281907)
2294 - enable editing of public queries (sf bug 966144) 2384 - enable editing of public queries (sf bug 966144)
2295 2385
2296 2386
2297 2005-10-07: 0.9.0b1 2387 2005-10-07: 0.9.0b1
2388
2298 Feature: 2389 Feature:
2390
2299 - added "imapServer.py" script (sf patch 934567) 2391 - added "imapServer.py" script (sf patch 934567)
2300 - added date selection popup windows (thanks Marcus Priesch) 2392 - added date selection popup windows (thanks Marcus Priesch)
2301 - added Xapian indexer; replaces standard indexers if Xapian is available 2393 - added Xapian indexer; replaces standard indexers if Xapian is available
2302 - mailgw subject parsing has configurable levels of strictness 2394 - mailgw subject parsing has configurable levels of strictness
2303 - nosy messages may be sent individually to all recipients 2395 - nosy messages may be sent individually to all recipients
2304 - remember where we came from when logging in (sf patch 1312889) 2396 - remember where we came from when logging in (sf patch 1312889)
2305 2397
2306 2398
2307 2006-01-27: 0.8.6 2399 2006-01-27: 0.8.6
2308 Fixed: 2400 Fixed:
2401
2309 - french translation updated by Patrick Decat (sf patch 1397059) 2402 - french translation updated by Patrick Decat (sf patch 1397059)
2310 - tighten up Date parsing to not allow 'M/D/YY' (or 'D/M/YY) (sf bug 2403 - tighten up Date parsing to not allow 'M/D/YY' (or 'D/M/YY) (sf bug
2311 1290550) 2404 1290550)
2312 - handle "schema" being reserved word in MySQL 5+ (sf bug 1397569) 2405 - handle "schema" being reserved word in MySQL 5+ (sf bug 1397569)
2313 - fixed documentation of filter() in the case of multiple values in a 2406 - fixed documentation of filter() in the case of multiple values in a
2325 - fix permission checks in mailgw (sf bug 1263655) 2418 - fix permission checks in mailgw (sf bug 1263655)
2326 - fix encoding of subject in generated error message (sf bug 1414465) 2419 - fix encoding of subject in generated error message (sf bug 1414465)
2327 2420
2328 2421
2329 2005-10-07: 0.8.5 2422 2005-10-07: 0.8.5
2423
2330 Feature: 2424 Feature:
2425
2331 - Argentinian Spanish translation by Ramiro Morales 2426 - Argentinian Spanish translation by Ramiro Morales
2332 2427
2333 Fixed: 2428 Fixed:
2429
2334 - Display of Multilinks where linked Class labelprop values are None 2430 - Display of Multilinks where linked Class labelprop values are None
2335 - Fix references to the old * Registration Permissions 2431 - Fix references to the old * Registration Permissions
2336 - Fix missing merge of fix to sf bug 1177057 2432 - Fix missing merge of fix to sf bug 1177057
2337 - Fix RDBMS indexer indexing UTF-8 words that encode to > 30 chars 2433 - Fix RDBMS indexer indexing UTF-8 words that encode to > 30 chars
2338 - Handle invalidly-specified charsets in incoming email 2434 - Handle invalidly-specified charsets in incoming email
2339 2435
2340 2436
2341 2005-07-18: 0.8.4 2437 2005-07-18: 0.8.4
2342 Fixed: 2438
2439 Fixed:
2440
2343 - extra CRs in CSV export files on Windows platform (sf bug 1195742) 2441 - extra CRs in CSV export files on Windows platform (sf bug 1195742)
2344 - activity RDBMS columns were being reported in changes 2442 - activity RDBMS columns were being reported in changes
2345 - fix name collision in roundup.cgi script (sf bug 1203795) 2443 - fix name collision in roundup.cgi script (sf bug 1203795)
2346 - fix handling of invalid interval input 2444 - fix handling of invalid interval input
2347 - search locale files relative ro roundup installation path (sf bug 1219689) 2445 - search locale files relative ro roundup installation path (sf bug 1219689)
2366 - don't try to set a timeout for IMAPS (thanks Paul Jimenez) 2464 - don't try to set a timeout for IMAPS (thanks Paul Jimenez)
2367 - present Reject exception messages to web users (sf bug 1237685) 2465 - present Reject exception messages to web users (sf bug 1237685)
2368 2466
2369 2467
2370 2005-05-02: 0.8.3 2468 2005-05-02: 0.8.3
2469
2371 Feature: 2470 Feature:
2471
2372 - chinese translation by limodou 2472 - chinese translation by limodou
2373 2473
2374 Fixed: 2474 Fixed:
2475
2375 - fix reference to The Zope Book in Roundup FAQ 2476 - fix reference to The Zope Book in Roundup FAQ
2376 - disabled file logging in Roundup test suite (sf bug 1155649) 2477 - disabled file logging in Roundup test suite (sf bug 1155649)
2377 - return original string if message issue xref isn't valid 2478 - return original string if message issue xref isn't valid
2378 - fix nosyreaction.py to stop it setting the nosy list unnecessarily 2479 - fix nosyreaction.py to stop it setting the nosy list unnecessarily
2379 (see doc/upgrading.txt for how to fix in your trackers) 2480 (see doc/upgrading.txt for how to fix in your trackers)
2398 - fix installation docs referring to old-style configuration variables 2499 - fix installation docs referring to old-style configuration variables
2399 - fix roundup-admin "find" for searching Multilinks (sf bug 1189465) 2500 - fix roundup-admin "find" for searching Multilinks (sf bug 1189465)
2400 2501
2401 2502
2402 2005-03-03: 0.8.2 2503 2005-03-03: 0.8.2
2504
2403 Feature: 2505 Feature:
2506
2404 - roundup-server automatically redirects from trackers list 2507 - roundup-server automatically redirects from trackers list
2405 to the tracker page if there is only one tracker 2508 to the tracker page if there is only one tracker
2406 2509
2407 Fixed: 2510 Fixed:
2511
2408 - added content to ZRoundup refresh.txt file (sf bug 1147622) 2512 - added content to ZRoundup refresh.txt file (sf bug 1147622)
2409 - fix invalid reference to csv.colon_separated 2513 - fix invalid reference to csv.colon_separated
2410 - correct URL to What's New in setup.py meta-data 2514 - correct URL to What's New in setup.py meta-data
2411 - change AUTOCOMMIT=OFF to AUTOCOMMIT=0 for MySQL (sf bug 1143707) 2515 - change AUTOCOMMIT=OFF to AUTOCOMMIT=0 for MySQL (sf bug 1143707)
2412 - compile message objects in 'setup.py build' 2516 - compile message objects in 'setup.py build'
2414 - fixes to the "Using an external password validation source" 2518 - fixes to the "Using an external password validation source"
2415 customisation example (sf bugs 1153640 and 1155108) 2519 customisation example (sf bugs 1153640 and 1155108)
2416 2520
2417 2521
2418 2005-02-17: 0.8.1 2522 2005-02-17: 0.8.1
2419 Fixed: 2523
2524 Fixed:
2525
2420 - replaced MutlilinkIterator with multilinkGenerator (thanks Bob Ippolito) 2526 - replaced MutlilinkIterator with multilinkGenerator (thanks Bob Ippolito)
2421 - fixed broken csv import in roundup.admin module 2527 - fixed broken csv import in roundup.admin module
2422 - fixed braino in HTMLClass.filter() (sf bug 1124213) 2528 - fixed braino in HTMLClass.filter() (sf bug 1124213)
2423 - change ZTUtils Iterator to always iter() its sequence argument 2529 - change ZTUtils Iterator to always iter() its sequence argument
2424 2530
2425 2531
2426 2005-01-16: 0.8.0 2532 2005-01-16: 0.8.0
2427 Fixed: 2533
2534 Fixed:
2535
2428 - fix roundup-server log and PID file paths to be absolute 2536 - fix roundup-server log and PID file paths to be absolute
2429 - fix initialisation of roundup-server in daemon mode so initialisation 2537 - fix initialisation of roundup-server in daemon mode so initialisation
2430 errors are visible 2538 errors are visible
2431 - fix: 'Logout' link was enabled on issue index page only 2539 - fix: 'Logout' link was enabled on issue index page only
2432 - have Permissions only test the check function if itemid is suppled 2540 - have Permissions only test the check function if itemid is suppled
2448 - nicer error looking up values of None (response to sf bug 1108697) 2556 - nicer error looking up values of None (response to sf bug 1108697)
2449 - fallback for (list) popups if javascript disabled (sf patch 1101626) 2557 - fallback for (list) popups if javascript disabled (sf patch 1101626)
2450 2558
2451 2559
2452 2005-01-13: 0.8.0b2 2560 2005-01-13: 0.8.0b2
2453 Fixed: 2561
2562 Fixed:
2563
2454 - note about how to run roundup demo in Windows (sf bug 1082090) 2564 - note about how to run roundup demo in Windows (sf bug 1082090)
2455 - fix API for templating utils extensions - remove "utils" arg (sf bug 1081981) 2565 - fix API for templating utils extensions - remove "utils" arg (sf bug 1081981)
2456 - back_sqlite.py is missing "import time" (sf bug 1081959) 2566 - back_sqlite.py is missing "import time" (sf bug 1081959)
2457 - fix (list) popup (sf bug 1083570) 2567 - fix (list) popup (sf bug 1083570)
2458 - fix some security assertions (sf bug 1085481) 2568 - fix some security assertions (sf bug 1085481)
2463 - fix "Users may only edit their issues" example in docs 2573 - fix "Users may only edit their issues" example in docs
2464 - handle ~/.my.cnf files for MySQL defaults (sf bug 1096031) 2574 - handle ~/.my.cnf files for MySQL defaults (sf bug 1096031)
2465 2575
2466 2576
2467 2004-12-08: 0.8.0b1 2577 2004-12-08: 0.8.0b1
2578
2468 Feature: 2579 Feature:
2580
2469 - added MD5 scheme for password hiding 2581 - added MD5 scheme for password hiding
2470 - added support for HTTP charset selection 2582 - added support for HTTP charset selection
2471 - implement __nonzero__ for HTMLProperty 2583 - implement __nonzero__ for HTMLProperty
2472 - remove "manual" locking of sqlite database 2584 - remove "manual" locking of sqlite database
2473 - create a new RDBMS cursor after committing 2585 - create a new RDBMS cursor after committing
2502 - HTTP Basic Authentication (sf patch 1067690) 2614 - HTTP Basic Authentication (sf patch 1067690)
2503 - extended security.addPermissionToRole to allow skipping the separate 2615 - extended security.addPermissionToRole to allow skipping the separate
2504 getPermission call 2616 getPermission call
2505 2617
2506 Fixed: 2618 Fixed:
2619
2507 - postgres backend open doesn't hide corruption in schema (sf bug 956375) 2620 - postgres backend open doesn't hide corruption in schema (sf bug 956375)
2508 - *dbm-style backends nuke() method now clear id counters 2621 - \*dbm-style backends nuke() method now clear id counters
2509 - removed safeget() from the API (sf bug 994750) 2622 - removed safeget() from the API (sf bug 994750)
2510 - demo tracker is always set up on localhost (sf bug 1049101) 2623 - demo tracker is always set up on localhost (sf bug 1049101)
2511 - relaxed URL designator syntax to allow issue[0]*1 (sf bug 1054523) 2624 - relaxed URL designator syntax to allow issue[0]*1 (sf bug 1054523)
2512 2625
2513 2626
2514 2005-05-02: 0.7.12 2627 2005-05-02: 0.7.12
2515 Fixed: 2628
2629 Fixed:
2630
2516 - handle capitalisation of class names in text hyperlinking (sf bug 2631 - handle capitalisation of class names in text hyperlinking (sf bug
2517 1101043) 2632 1101043)
2518 - quote full-text search text in URL generation 2633 - quote full-text search text in URL generation
2519 - fixed problem migrating mysql databases 2634 - fixed problem migrating mysql databases
2520 - fix search_checkboxes macro (sf patch 1113828) 2635 - fix search_checkboxes macro (sf patch 1113828)
2525 - fix ZRoundup syntax error (sf bug 1122335) 2640 - fix ZRoundup syntax error (sf bug 1122335)
2526 - fix RDBMS clear() so it resets all class itemid counters 2641 - fix RDBMS clear() so it resets all class itemid counters
2527 2642
2528 2643
2529 2005-01-06: 0.7.11 2644 2005-01-06: 0.7.11
2530 Fixed: 2645
2646 Fixed:
2647
2531 - index args URL generation broken in .10 (sf bug 1096027) 2648 - index args URL generation broken in .10 (sf bug 1096027)
2532 - handle NotModified for non-static files (sf patch 1095790) 2649 - handle NotModified for non-static files (sf patch 1095790)
2533 - fix permission lookup in query editing 2650 - fix permission lookup in query editing
2534 2651
2535 2652
2536 2005-01-04: 0.7.10 2653 2005-01-04: 0.7.10
2537 Fixed: 2654
2655 Fixed:
2656
2538 - reset ID counters if the database is cleared (thanks William) 2657 - reset ID counters if the database is cleared (thanks William)
2539 - apply IE caching "fix" to automatically serve up all pages expired 2658 - apply IE caching "fix" to automatically serve up all pages expired
2540 - fix typo (sf patch 1076629) 2659 - fix typo (sf patch 1076629)
2541 - fix hyperlinking of items (sf bug 1080251) 2660 - fix hyperlinking of items (sf bug 1080251)
2542 - fix roundup-admin find command handling of Multilinks 2661 - fix roundup-admin find command handling of Multilinks
2549 - have RDBMS full-text indexer do AND searching (sf bug 1055435) 2668 - have RDBMS full-text indexer do AND searching (sf bug 1055435)
2550 - handle spaces in String index params in batching (sf bug 1054224) 2669 - handle spaces in String index params in batching (sf bug 1054224)
2551 2670
2552 2671
2553 2004-10-26: 0.7.9 2672 2004-10-26: 0.7.9
2673
2554 Feature: 2674 Feature:
2675
2555 - DateHTMLProperty.field() accepts format string (thanks Wil Cooley) 2676 - DateHTMLProperty.field() accepts format string (thanks Wil Cooley)
2556 2677
2557 Fixed: 2678 Fixed:
2679
2558 - popup listing uses filter args (thanks Marlon van den Berg) 2680 - popup listing uses filter args (thanks Marlon van den Berg)
2559 - fixed editing of message contents 2681 - fixed editing of message contents
2560 - loosened the detection of issue cross-references in messages 2682 - loosened the detection of issue cross-references in messages
2561 - open CSV files in "universal newline" mode 2683 - open CSV files in "universal newline" mode
2562 - s/Modifed/Modified (thanks donfu) 2684 - s/Modifed/Modified (thanks donfu)
2575 - make anydbm journal export handle removed properties 2697 - make anydbm journal export handle removed properties
2576 - allow use of XML templates again 2698 - allow use of XML templates again
2577 2699
2578 2700
2579 2004-10-15: 0.7.8 2701 2004-10-15: 0.7.8
2580 Fixed: 2702
2703 Fixed:
2704
2581 - Clean out sessions / otks tables when migrating 2705 - Clean out sessions / otks tables when migrating
2582 2706
2583 2707
2584 2004-10-11: 0.7.7 2708 2004-10-11: 0.7.7
2585 Fixed: 2709
2710 Fixed:
2711
2586 - ZRoundup's search interface works now (sf bug 994957) 2712 - ZRoundup's search interface works now (sf bug 994957)
2587 - fixed history display when "ascending" 2713 - fixed history display when "ascending"
2588 - removed references to py2.3+ boolean values (sf bug 995682) 2714 - removed references to py2.3+ boolean values (sf bug 995682)
2589 - fix static file path normalisation in security check (thanks David Linke) 2715 - fix static file path normalisation in security check (thanks David Linke)
2590 - less specific messages for login failures (thanks Chris Withers) 2716 - less specific messages for login failures (thanks Chris Withers)
2602 - apply timezone in correct direction in user input (sf bug 1013097) 2728 - apply timezone in correct direction in user input (sf bug 1013097)
2603 - more efficient find() in RDBMS (sf bug 1012781) 2729 - more efficient find() in RDBMS (sf bug 1012781)
2604 2730
2605 2731
2606 2004-07-21: 0.7.6 2732 2004-07-21: 0.7.6
2607 Fixed: 2733
2734 Fixed:
2735
2608 - rdbms backend full text search failure after import (sf bug 980314) 2736 - rdbms backend full text search failure after import (sf bug 980314)
2609 - rdbms backends not filtering correctly on link=None 2737 - rdbms backends not filtering correctly on link=None
2610 - fix anydbm journal import (sf bug 983166) 2738 - fix anydbm journal import (sf bug 983166)
2611 - handle postgresql bug in SQL generation (sf bug 984591) 2739 - handle postgresql bug in SQL generation (sf bug 984591)
2612 - fix dates-from-Dates (sf bug 984604) 2740 - fix dates-from-Dates (sf bug 984604)
2625 is implemented across the board now. 2753 is implemented across the board now.
2626 - fix metakit handling of filter on Link==None 2754 - fix metakit handling of filter on Link==None
2627 2755
2628 2756
2629 2004-06-24: 0.7.5 2757 2004-06-24: 0.7.5
2630 Fixed: 2758
2759 Fixed:
2760
2631 - force lookup of journal props in anydbm filtering 2761 - force lookup of journal props in anydbm filtering
2632 - fixed lookup of "missing" Link values for new props in anydbm backend 2762 - fixed lookup of "missing" Link values for new props in anydbm backend
2633 - allow list of values for id, Number and Boolean filtering in anydbm 2763 - allow list of values for id, Number and Boolean filtering in anydbm
2634 backend 2764 backend
2635 - fixed some more mysql 0.6->0.7 upgrade bugs (sf bug 950410) 2765 - fixed some more mysql 0.6->0.7 upgrade bugs (sf bug 950410)
2642 - fixed RDBMS Class.find() to handle None value in multiple find 2772 - fixed RDBMS Class.find() to handle None value in multiple find
2643 - export now stores file "content" in separate files in export directory 2773 - export now stores file "content" in separate files in export directory
2644 2774
2645 2775
2646 2004-06-10: 0.7.4 2776 2004-06-10: 0.7.4
2647 Fixed: 2777
2778 Fixed:
2779
2648 - re-acquire the OTK manager when we re-open the database 2780 - re-acquire the OTK manager when we re-open the database
2649 - mailgw handler can close the database on us 2781 - mailgw handler can close the database on us
2650 - fixed grouping by a NULL Link value 2782 - fixed grouping by a NULL Link value
2651 - fixed anydbm import/export (sf bugs 965216, 964457, 964450) 2783 - fixed anydbm import/export (sf bugs 965216, 964457, 964450)
2652 - fix python 2.3.3 strftime deprecation warning (sf patch 968398) 2784 - fix python 2.3.3 strftime deprecation warning (sf patch 968398)
2655 - fixed RDBMS journal packing (sf bug 959177) 2787 - fixed RDBMS journal packing (sf bug 959177)
2656 - fixed filtering by floats in anydbm (sf bug 963584) 2788 - fixed filtering by floats in anydbm (sf bug 963584)
2657 2789
2658 2790
2659 2004-05-28: 0.7.3 2791 2004-05-28: 0.7.3
2660 Fixed: 2792
2793 Fixed:
2794
2661 - add "checked" to truth values for Boolean input 2795 - add "checked" to truth values for Boolean input
2662 - fixed import in metakit backend 2796 - fixed import in metakit backend
2663 - fix SearchAction use of Class.filter(), and clarify API docs for same 2797 - fix SearchAction use of Class.filter(), and clarify API docs for same
2664 - ensure static files may only be served out of the tracker's "static 2798 - ensure static files may only be served out of the tracker's "static
2665 files" directory 2799 files" directory
2666 2800
2667 2801
2668 2004-05-17: 0.7.2 2802 2004-05-17: 0.7.2
2669 Fixed: 2803
2804 Fixed:
2805
2670 - anydbm sorting with None values (sf bug 952853) 2806 - anydbm sorting with None values (sf bug 952853)
2671 - roundup-server -g option not recognised (sf bug 952310) 2807 - roundup-server -g option not recognised (sf bug 952310)
2672 - HTML templating isset() inverted (sf bug 951779) 2808 - HTML templating isset() inverted (sf bug 951779)
2673 - otks manager missing (sf bug 952931) 2809 - otks manager missing (sf bug 952931)
2674 - mention DEFAULT_TIMEZONE requirement in upgrading doc (sf bug 952932) 2810 - mention DEFAULT_TIMEZONE requirement in upgrading doc (sf bug 952932)
2678 Link'ed "order" properties (sf bug 953148) 2814 Link'ed "order" properties (sf bug 953148)
2679 - fix Interval editing (sf bug 954891) 2815 - fix Interval editing (sf bug 954891)
2680 2816
2681 2817
2682 2004-05-10: 0.7.1 2818 2004-05-10: 0.7.1
2683 Fixed: 2819
2820 Fixed:
2821
2684 - several temp files made it into the source distribution (sf bug 949243) 2822 - several temp files made it into the source distribution (sf bug 949243)
2685 - typo in roundup/instance.py 2823 - typo in roundup/instance.py
2686 - missing CRLF var in rfc822.py (sf patch 949471) 2824 - missing CRLF var in rfc822.py (sf patch 949471)
2687 - fix user creation page 2825 - fix user creation page
2688 - have roundup server pass though the cause of a "403 Forbidden" response 2826 - have roundup server pass though the cause of a "403 Forbidden" response
2690 - make popup Javascript IE 5.0 friendly (thanks Marlon van den Berg) 2828 - make popup Javascript IE 5.0 friendly (thanks Marlon van den Berg)
2691 - fix RDBMS import (thanks Tamer Fahmy) 2829 - fix RDBMS import (thanks Tamer Fahmy)
2692 2830
2693 2831
2694 2004-05-06: 0.7.0 2832 2004-05-06: 0.7.0
2695 Fixed: 2833
2834 Fixed:
2835
2696 - sqlite migration drops some journal information (thanks David Linke) 2836 - sqlite migration drops some journal information (thanks David Linke)
2697 - user editing Role entry help text always appears 2837 - user editing Role entry help text always appears
2698 - disable forking server when os.fork() not available (sf bug 938586) 2838 - disable forking server when os.fork() not available (sf bug 938586)
2699 - removed Boolean from source to make py <2.3 happy (sf bug 938790) 2839 - removed Boolean from source to make py <2.3 happy (sf bug 938790)
2700 - fix nested scope bug in rdbms multilink sorting 2840 - fix nested scope bug in rdbms multilink sorting
2708 - fixed sqlite journal ordering issue 2848 - fixed sqlite journal ordering issue
2709 - fixed mysql date range filtering 2849 - fixed mysql date range filtering
2710 2850
2711 2851
2712 2004-04-18: 0.7.0b3 2852 2004-04-18: 0.7.0b3
2853
2713 Feature: 2854 Feature:
2855
2714 - added a favicon 2856 - added a favicon
2715 - added url_quote and html_quote methods to the utils object 2857 - added url_quote and html_quote methods to the utils object
2716 - added isset method to HTMLProperty 2858 - added isset method to HTMLProperty
2717 - database export now exports full journals too 2859 - database export now exports full journals too
2718 - tracker name at end of page title (sf rfe 926840) 2860 - tracker name at end of page title (sf rfe 926840)
2722 - added IMAP support to mail gateway (sf rfe 934000) 2864 - added IMAP support to mail gateway (sf rfe 934000)
2723 - check MANIFEST against the files actually unpacked 2865 - check MANIFEST against the files actually unpacked
2724 - roundupdb nosymessage() takes an optional bcc list 2866 - roundupdb nosymessage() takes an optional bcc list
2725 2867
2726 Fixed: 2868 Fixed:
2869
2727 - mysql and postgresql schema mutation now handle added Multilinks 2870 - mysql and postgresql schema mutation now handle added Multilinks
2728 - web CSV export was busted (as was any action returning a result) 2871 - web CSV export was busted (as was any action returning a result)
2729 - MultiMapping deviated from the Zope C implementation in a number of 2872 - MultiMapping deviated from the Zope C implementation in a number of
2730 places (thanks Toby Sargeant) 2873 places (thanks Toby Sargeant)
2731 - MySQL and Postgresql use BOOL/BOOLEAN for Boolean types 2874 - MySQL and Postgresql use BOOL/BOOLEAN for Boolean types
2742 - stop Interval from displaying an empty string (sf bug 934022) 2885 - stop Interval from displaying an empty string (sf bug 934022)
2743 - fixed storage of some datatypes in some RDBMS backends 2886 - fixed storage of some datatypes in some RDBMS backends
2744 2887
2745 2888
2746 2004-03-27: 0.7.0b2 2889 2004-03-27: 0.7.0b2
2890
2747 Feature: 2891 Feature:
2892
2748 - added CSV export to index pages 2893 - added CSV export to index pages
2749 - added emailauditor.py which works around a bug in IE. See 2894 - added emailauditor.py which works around a bug in IE. See
2750 "detectors/emailauditor.py" for more info. 2895 "detectors/emailauditor.py" for more info.
2751 - added dispatcher functionality - see upgrading.txt for more info 2896 - added dispatcher functionality - see upgrading.txt for more info
2752 - added Reject exception which may be raised by auditors. This is trapped 2897 - added Reject exception which may be raised by auditors. This is trapped
2756 - added DEFAULT_TIMEZONE (sf rfe 895139) 2901 - added DEFAULT_TIMEZONE (sf rfe 895139)
2757 - added HTML page template to the templating context as "template" 2902 - added HTML page template to the templating context as "template"
2758 - added is_retired to HTMLItems in templating 2903 - added is_retired to HTMLItems in templating
2759 2904
2760 Fixed: 2905 Fixed:
2906
2761 - Boolean, Date and Link HTML templating was broken 2907 - Boolean, Date and Link HTML templating was broken
2762 - fix reporting of test inclusion in postgresql test 2908 - fix reporting of test inclusion in postgresql test
2763 - EditAction was confused about who "self" was 2909 - EditAction was confused about who "self" was
2764 - edit collision detection was broken for index-page edits 2910 - edit collision detection was broken for index-page edits
2765 - sqlite backend wasn't migrating multilink tables correctly 2911 - sqlite backend wasn't migrating multilink tables correctly
2768 - make presetunread more resilient to status Class changes 2914 - make presetunread more resilient to status Class changes
2769 - HTMLDatabase classes() was broken 2915 - HTMLDatabase classes() was broken
2770 2916
2771 2917
2772 2004-03-24: 0.7.0b1 2918 2004-03-24: 0.7.0b1
2919
2773 Major new features: 2920 Major new features:
2921
2774 - added postgresql backend (originally from sf patch 761740, many changes 2922 - added postgresql backend (originally from sf patch 761740, many changes
2775 since) 2923 since)
2776 - added new "actor" automatic property (indicates user who cause the last 2924 - added new "actor" automatic property (indicates user who cause the last
2777 "activity") 2925 "activity")
2778 - RDBMS backends implement their session and one-time-key stores and 2926 - RDBMS backends implement their session and one-time-key stores and
2782 - support confirming registration by replying to the email (sf bug 763668) 2930 - support confirming registration by replying to the email (sf bug 763668)
2783 - all HTML templating methods now automatically check for permissions 2931 - all HTML templating methods now automatically check for permissions
2784 (either view or edit as appropriate), greatly simplifying templates 2932 (either view or edit as appropriate), greatly simplifying templates
2785 2933
2786 Other new features: 2934 Other new features:
2935
2787 - simple support for collision detection (sf rfe 648763) 2936 - simple support for collision detection (sf rfe 648763)
2788 - support setgid and running on port < 1024 (sf patch 777528) 2937 - support setgid and running on port < 1024 (sf patch 777528)
2789 - using Zope3's test runner now, allowing GC checks, nicer controls and 2938 - using Zope3's test runner now, allowing GC checks, nicer controls and
2790 coverage analysis 2939 coverage analysis
2791 - change nosymessage and send_message to accept msgid=None (RFE #707235) 2940 - change nosymessage and send_message to accept msgid=None (RFE #707235)
2806 - cgi Action handlers may now return the actual content to be sent back to 2955 - cgi Action handlers may now return the actual content to be sent back to
2807 the user (rather than using some template) 2956 the user (rather than using some template)
2808 - date.Date now handles fractional seconds 2957 - date.Date now handles fractional seconds
2809 2958
2810 Fixed: 2959 Fixed:
2960
2811 - mysql documentation fixed to note requirement of 4.0+ and InnoDB 2961 - mysql documentation fixed to note requirement of 4.0+ and InnoDB
2812 - added testing of schema mutation, fixed rdbms backends handling of a 2962 - added testing of schema mutation, fixed rdbms backends handling of a
2813 couple of cases 2963 couple of cases
2814 - HTML 4.01 validation on the 'classic' backend 2964 - HTML 4.01 validation on the 'classic' backend
2815 - messages to the mailgw can be about classes other than issues now. 2965 - messages to the mailgw can be about classes other than issues now.
2830 attachments of a message (sf bug 841241). 2980 attachments of a message (sf bug 841241).
2831 - fixed display of feedback messages in some situations (sf bug 739545) 2981 - fixed display of feedback messages in some situations (sf bug 739545)
2832 - fixed ability to edit "content" property (sf bug 914062) 2982 - fixed ability to edit "content" property (sf bug 914062)
2833 2983
2834 Cleanup: 2984 Cleanup:
2985
2835 - replace curuserid attribute on Database with the extended getuid() method 2986 - replace curuserid attribute on Database with the extended getuid() method
2836 - extract a new 'mailer' module for sending mail 2987 - extract a new 'mailer' module for sending mail
2837 - extract a '_send_mail' method for testing mail sending 2988 - extract a '_send_mail' method for testing mail sending
2838 - simplify backend importing 2989 - simplify backend importing
2839 - use roundup_server in demo.py 2990 - use roundup_server in demo.py
2841 - use FormError in client.py, moving the handling up to inner_main() 2992 - use FormError in client.py, moving the handling up to inner_main()
2842 - implemented semantic comparison of Message objects in test_mailgw 2993 - implemented semantic comparison of Message objects in test_mailgw
2843 - tidied up forms in default stylesheet 2994 - tidied up forms in default stylesheet
2844 - force textareas to use monospace fonts, lessening surprise on the user 2995 - force textareas to use monospace fonts, lessening surprise on the user
2845 - moved out parts of client.py to new modules: 2996 - moved out parts of client.py to new modules:
2997
2846 * actions.py - the xxxAction and xxxPermission functions refactored into 2998 * actions.py - the xxxAction and xxxPermission functions refactored into
2847 Action classes 2999 Action classes
2848 * exceptions.py - all exceptions 3000 * exceptions.py - all exceptions
2849 * form_parser.py - parsePropsFromForm & extractFormList in a FormParser 3001 * form_parser.py - parsePropsFromForm & extractFormList in a FormParser
2850 class 3002 class
2851 3003
2852 3004
2853 2004-05-17: 0.6.10 3005 2004-05-17: 0.6.10
2854 Fixed: 3006
3007 Fixed:
3008
2855 - mysql backend wasn't locking tracker 3009 - mysql backend wasn't locking tracker
2856 - ensure static files may only be served out of the tracker's "static 3010 - ensure static files may only be served out of the tracker's "static
2857 files" directory 3011 files" directory
2858 3012
2859 3013
2860 2004-04-18: 0.6.9 3014 2004-04-18: 0.6.9
2861 Fixed: 3015
3016 Fixed:
3017
2862 - paging in classhelp popup was broken 3018 - paging in classhelp popup was broken
2863 - socket timeout error logging can fail 3019 - socket timeout error logging can fail
2864 - hyperlink designators in message display (sf bug 931828) 3020 - hyperlink designators in message display (sf bug 931828)
2865 - don't match retired items in RDBMS stringFind 3021 - don't match retired items in RDBMS stringFind
2866 3022
2867 3023
2868 2004-04-01: 0.6.8 3024 2004-04-01: 0.6.8
2869 Fixed: 3025
3026 Fixed:
3027
2870 - existing trackers (ie. live ones) may be used as templates for new 3028 - existing trackers (ie. live ones) may be used as templates for new
2871 trackers - the TEMPLATE-INFO.txt name entry has the tracker's dir name 3029 trackers - the TEMPLATE-INFO.txt name entry has the tracker's dir name
2872 appended (so the demo tracker's template name is "classic-demo") 3030 appended (so the demo tracker's template name is "classic-demo")
2873 - handle bad multilink input at item creation time better (sf bug 917834) 3031 - handle bad multilink input at item creation time better (sf bug 917834)
2874 - make sure email signature starts on a newline (sf bug 919759) 3032 - make sure email signature starts on a newline (sf bug 919759)
2879 - make rdbms serialise() less trusting 3037 - make rdbms serialise() less trusting
2880 - handle Boolean values in history HTML display 3038 - handle Boolean values in history HTML display
2881 3039
2882 3040
2883 2004-03-01: 0.6.7 3041 2004-03-01: 0.6.7
2884 Fixed: 3042
3043 Fixed:
3044
2885 - be more backward-compatible when asking for EMAIL_CHARSET 3045 - be more backward-compatible when asking for EMAIL_CHARSET
2886 - made error on create consistent with edit when user enters invalid data 3046 - made error on create consistent with edit when user enters invalid data
2887 for Multilink and Link form fields (sf bug 904072) 3047 for Multilink and Link form fields (sf bug 904072)
2888 - made errors from bad input in the quick "Show issue:" form more 3048 - made errors from bad input in the quick "Show issue:" form more
2889 user-friendly (sf bug 904064) 3049 user-friendly (sf bug 904064)
2891 - nicer invalid property error in HTML templating 3051 - nicer invalid property error in HTML templating
2892 - use EMAIL_CHARSET for message body too (still sf bug 900046) 3052 - use EMAIL_CHARSET for message body too (still sf bug 900046)
2893 3053
2894 3054
2895 2004-02-25: 0.6.6 3055 2004-02-25: 0.6.6
2896 Fixed: 3056
3057 Fixed:
3058
2897 - don't insert spaces into designators, it just confuses users (sf bug 3059 - don't insert spaces into designators, it just confuses users (sf bug
2898 898087) 3060 898087)
2899 - Eudora can't handle utf-8 headers. We love Eudora. (sf bug 900046) 3061 - Eudora can't handle utf-8 headers. We love Eudora. (sf bug 900046)
2900 - fixed bug in args to new DateHTMLProperty in the local() method (sf bug 3062 - fixed bug in args to new DateHTMLProperty in the local() method (sf bug
2901 901444) 3063 901444)
2903 - also changed rego to not use a 302 during confirmation, as this seems to 3065 - also changed rego to not use a 302 during confirmation, as this seems to
2904 confuse some email clients or browsers. 3066 confuse some email clients or browsers.
2905 3067
2906 3068
2907 2004-02-16: 0.6.5 3069 2004-02-16: 0.6.5
2908 Fixed: 3070
3071 Fixed:
3072
2909 - mailgw handling of subject-line errors 3073 - mailgw handling of subject-line errors
2910 - allow serving of FileClass file content when the class isn't called 3074 - allow serving of FileClass file content when the class isn't called
2911 "file" (eg. messages and other FileClasses) 3075 "file" (eg. messages and other FileClasses)
2912 - allowed negative ids (ie. new item markers) in HTMLClass.getItem, 3076 - allowed negative ids (ie. new item markers) in HTMLClass.getItem,
2913 allowing "db/file_with_status/-1/status/menu" to generate a useful 3077 allowing "db/file_with_status/-1/status/menu" to generate a useful
2922 - fixed edit action / parsePropsFromForm to handle index-page edits better 3086 - fixed edit action / parsePropsFromForm to handle index-page edits better
2923 - safer logging from HTTP server (sf bug 896917) 3087 - safer logging from HTTP server (sf bug 896917)
2924 3088
2925 3089
2926 2003-12-17: 0.6.4 3090 2003-12-17: 0.6.4
2927 Fixed: 3091
3092 Fixed:
3093
2928 - fixed date arithmetic to not allow day-of-month == 0 (sf bug 853306) 3094 - fixed date arithmetic to not allow day-of-month == 0 (sf bug 853306)
2929 - fixed date arithmetic to limit hours-per-day to 24, not 60 3095 - fixed date arithmetic to limit hours-per-day to 24, not 60
2930 - hard-coded python2.3-ism (socket.timeout) fixed 3096 - hard-coded python2.3-ism (socket.timeout) fixed
2931 - fixed activity displaying as future because of Date arithmetic fix in 0.6.3 3097 - fixed activity displaying as future because of Date arithmetic fix in 0.6.3
2932 (sf bug 842027). 3098 (sf bug 842027).
2933 - fix Windows service mode for roundup-server (sf bug 819890) 3099 - fix Windows service mode for roundup-server (sf bug 819890)
2934 - fixed #white in cgitb (thanks Henrik Levkowetz) 3100 - fixed #white in cgitb (thanks Henrik Levkowetz)
2935 3101
2936 3102
2937 2003-11-14: 0.6.3 3103 2003-11-14: 0.6.3
2938 Fixed: 3104
3105 Fixed:
3106
2939 - fixed detectors fix incorrectly fixed in bugfix release 0.6.2 3107 - fixed detectors fix incorrectly fixed in bugfix release 0.6.2
2940 - added note to upgrading doc for detectors fix in 0.6.2 3108 - added note to upgrading doc for detectors fix in 0.6.2
2941 - added script to help migrating queries from pre-0.6 trackers 3109 - added script to help migrating queries from pre-0.6 trackers
2942 - fixed "documentation" of getnodeids in roundup.hyperdb 3110 - fixed "documentation" of getnodeids in roundup.hyperdb
2943 - added flush() to DevNull (sf bug 835365) 3111 - added flush() to DevNull (sf bug 835365)
2945 - date arithmetic was utterly broken, and has been for a long time. 3113 - date arithmetic was utterly broken, and has been for a long time.
2946 Date +/- Interval now works, and Date - Date also works (produces 3114 Date +/- Interval now works, and Date - Date also works (produces
2947 an Interval. 3115 an Interval.
2948 - handle socket timeout exception (thanks Marcus Priesch) 3116 - handle socket timeout exception (thanks Marcus Priesch)
2949 - fixed retirement of items in rdbms imports (sf bug 841355) 3117 - fixed retirement of items in rdbms imports (sf bug 841355)
2950 - fixed bug in looking up journal of newly-created items in *dbm backends 3118 - fixed bug in looking up journal of newly-created items in \*dbm backends
2951 3119
2952 3120
2953 2003-09-29: 0.6.2 3121 2003-09-29: 0.6.2
2954 Fixed: 3122
2955 - cleaned up, clarified internal caching API in *dbm backends 3123 Fixed:
3124
3125 - cleaned up, clarified internal caching API in \*dbm backends
2956 - stopped pyc writing to current directory! yay! (patch 800718 with changes) 3126 - stopped pyc writing to current directory! yay! (patch 800718 with changes)
2957 - fixed file leak in detector initialisation (patch 800715) 3127 - fixed file leak in detector initialisation (patch 800715)
2958 - commented out example tracker homes (patch 800720) 3128 - commented out example tracker homes (patch 800720)
2959 - added note about hidden :template var in user.item (bug 799842) 3129 - added note about hidden :template var in user.item (bug 799842)
2960 - fixed Apply Error that was raised, when property was deleted from class and 3130 - fixed Apply Error that was raised, when property was deleted from class and
2961 we are trying to edit an instance 3131 we are trying to edit an instance
2962 3132
2963 3133
2964 2003-08-31: 0.6.1 3134 2003-08-31: 0.6.1
2965 Fixed: 3135
3136 Fixed:
3137
2966 - Add note about installing cgi-bin with a different interpreter 3138 - Add note about installing cgi-bin with a different interpreter
2967 - Importing wasn't setting None values explicitly when it should have been 3139 - Importing wasn't setting None values explicitly when it should have been
2968 - Fixed import warning regarding 0xffff0000 literal, finally, really this 3140 - Fixed import warning regarding 0xffff0000 literal, finally, really this
2969 time. Checked on win2k. (sf bug 786711) 3141 time. Checked on win2k. (sf bug 786711)
2970 - fix CGI editCSV action to handle metakit's integer itemids 3142 - fix CGI editCSV action to handle metakit's integer itemids
2977 - various cosmetic fixes (thanks James Kew for being persistent :) 3149 - various cosmetic fixes (thanks James Kew for being persistent :)
2978 - applied patch 739314 (sorry John!) 3150 - applied patch 739314 (sorry John!)
2979 3151
2980 3152
2981 2003-08-08: 0.6.0 3153 2003-08-08: 0.6.0
3154
3155 Fixed:
3156
2982 - Fixed editing attributes on FileClass nodes. 3157 - Fixed editing attributes on FileClass nodes.
2983 - Query editing now works correctly (sf bug 621248) 3158 - Query editing now works correctly (sf bug 621248)
2984 - roundup-server now logs IP addresses by default (sf bug 778795) 3159 - roundup-server now logs IP addresses by default (sf bug 778795)
2985 - logfile must be specified if pidfile is (sf bug 772820) 3160 - logfile must be specified if pidfile is (sf bug 772820)
2986 - timelog editing via csv interface crashes (sf bug 699837) 3161 - timelog editing via csv interface crashes (sf bug 699837)
2990 - fix file downloading 3165 - fix file downloading
2991 - add action attribute to issue.item form tag 3166 - add action attribute to issue.item form tag
2992 3167
2993 3168
2994 2003-07-29: 0.6.0b4 3169 2003-07-29: 0.6.0b4
3170
3171 Fixed:
3172
2995 - plugged cross-site-scripting hole (thanks Jeff Epler) 3173 - plugged cross-site-scripting hole (thanks Jeff Epler)
2996 - handle deprecation of FCNTL in python2.2+ (sf bug 756756) 3174 - handle deprecation of FCNTL in python2.2+ (sf bug 756756)
2997 - handle missing Subject: line (sf bug 755331) 3175 - handle missing Subject: line (sf bug 755331)
2998 - fix New User creation (sf bug 754510) 3176 - fix New User creation (sf bug 754510)
2999 - fix hackish message escaping (sf bug 757128) 3177 - fix hackish message escaping (sf bug 757128)
3005 around. 3183 around.
3006 - changed rdbms_common to fix sql backends for new Boolean types under Py2.3 3184 - changed rdbms_common to fix sql backends for new Boolean types under Py2.3
3007 3185
3008 3186
3009 2003-06-10: 0.6.0b3 3187 2003-06-10: 0.6.0b3
3010 Fixed: 3188
3189 Fixed:
3190
3011 - cgi client was broken during b2 fixing 3191 - cgi client was broken during b2 fixing
3012 3192
3013 3193
3014 2003-06-09: 0.6.0b2 3194 2003-06-09: 0.6.0b2
3195
3015 Feature: 3196 Feature:
3197
3016 - added the start/stop/restart/condstart/status roundup-server control 3198 - added the start/stop/restart/condstart/status roundup-server control
3017 script 3199 script
3018 3200
3019 Fixed: 3201 Fixed:
3202
3020 - handle non-existant demo dir (thanks Ollie Rutherfurd) 3203 - handle non-existant demo dir (thanks Ollie Rutherfurd)
3021 - strip whitespace from Role names so "User, Admin" will work 3204 - strip whitespace from Role names so "User, Admin" will work
3022 - fixed template searching on Windows (thanks J Vickroy) 3205 - fixed template searching on Windows (thanks J Vickroy)
3023 3206
3024 3207
3025 2003-05-09: 0.6.0b1 3208 2003-05-09: 0.6.0b1
3209
3026 Removed: 3210 Removed:
3211
3027 - having served its purpose as a template for other relational database 3212 - having served its purpose as a template for other relational database
3028 implementations, the gadfly backend has now been removed from the Roundup 3213 implementations, the gadfly backend has now been removed from the Roundup
3029 distribution. 3214 distribution.
3030 3215
3031 Feature: 3216 Feature:
3217
3032 - new instant-gratification Demo Mode 3218 - new instant-gratification Demo Mode
3033 - support setting of properties on message and file through web and 3219 - support setting of properties on message and file through web and
3034 email interface (thanks John Rouillard) 3220 email interface (thanks John Rouillard)
3035 - allow additional control over the roundupdb email sending (explicit 3221 - allow additional control over the roundupdb email sending (explicit
3036 cc addresses, different from address and different nosy list property) 3222 cc addresses, different from address and different nosy list property)
3091 attempted on Windows. 3277 attempted on Windows.
3092 - sort HTMLClass.properties results by name (sf feature 724738) 3278 - sort HTMLClass.properties results by name (sf feature 724738)
3093 - nicer index navigation (sf feature 676866) 3279 - nicer index navigation (sf feature 676866)
3094 3280
3095 Fixed: 3281 Fixed:
3282
3096 - applied unicode patch. All data is stored in utf-8. Incoming messages 3283 - applied unicode patch. All data is stored in utf-8. Incoming messages
3097 converted from any encoding to utf-8, outgoing messages are encoded 3284 converted from any encoding to utf-8, outgoing messages are encoded
3098 according to rfc2822 (sf bug 568873) 3285 according to rfc2822 (sf bug 568873)
3099 - fixed layout issues with forms in sidebar 3286 - fixed layout issues with forms in sidebar
3100 - fixed timelog example so it handles new issues (sf bug 678908) 3287 - fixed timelog example so it handles new issues (sf bug 678908)
3109 - fixed export/import of retired nodes (sf bug 685273) 3296 - fixed export/import of retired nodes (sf bug 685273)
3110 - remember the display template specified during edit (sf bug 701815) 3297 - remember the display template specified during edit (sf bug 701815)
3111 - added example HTML tempating for vacation flag (sf bug 701722) 3298 - added example HTML tempating for vacation flag (sf bug 701722)
3112 - finally, tables autosize columns (sf bug 609070) 3299 - finally, tables autosize columns (sf bug 609070)
3113 - added creation to index columns (sf bug 708247) 3300 - added creation to index columns (sf bug 708247)
3114 - fixed missing (pre-commit) journal entries in *dbm backends (sf bug 679217) 3301 - fixed missing (pre-commit) journal entries in \*dbm backends (sf bug 679217)
3115 - URL cited in roundup email confusing dumb Email clients (sf bug 716585) 3302 - URL cited in roundup email confusing dumb Email clients (sf bug 716585)
3116 - set title on issues even when the email body is empty (sf bug 727430) 3303 - set title on issues even when the email body is empty (sf bug 727430)
3117 - under the heading of "questionable whether it's a fix or not" 3304 - under the heading of "questionable whether it's a fix or not"
3118 (sf "bug" 621226 for the users of the "standards compliant" browser IE) 3305 (sf "bug" 621226 for the users of the "standards compliant" browser IE)
3119 3306
3120 3307
3121 2003-05-08: 0.5.7 3308 2003-05-08: 0.5.7
3309
3310 Fixed:
3311
3122 - fixed Interval maths (sf bug 665357) 3312 - fixed Interval maths (sf bug 665357)
3123 - fixed sqlite rollback/caching bug (sf bug 689383) 3313 - fixed sqlite rollback/caching bug (sf bug 689383)
3124 - fixed rdbms table update detection logic (sf bug 703297) 3314 - fixed rdbms table update detection logic (sf bug 703297)
3125 - fixed detection of bad date specs (sf bug 691439) 3315 - fixed detection of bad date specs (sf bug 691439)
3126 - required String properties not being flagged (thanks Ajit George) 3316 - required String properties not being flagged (thanks Ajit George)
3132 - email registered users shouldn't be able to log in (sf bug 714673) 3322 - email registered users shouldn't be able to log in (sf bug 714673)
3133 - handle missing addresses on users (sf bug 724537) 3323 - handle missing addresses on users (sf bug 724537)
3134 3324
3135 3325
3136 2003-02-27: 0.5.6 3326 2003-02-27: 0.5.6
3327
3328 Fixed:
3329
3137 - fixed templating filter function arguments (sf bug 678911) 3330 - fixed templating filter function arguments (sf bug 678911)
3138 - fixed multiselect in searching (sf bug 676874) 3331 - fixed multiselect in searching (sf bug 676874)
3139 - fixed parsing of content-disposition filenames (sf bug 675116) 3332 - fixed parsing of content-disposition filenames (sf bug 675116)
3140 - added 'h' to roundup-server optarg list (sf bug 674070) 3333 - added 'h' to roundup-server optarg list (sf bug 674070)
3141 - fixed doc for db.history in anydbm and rdbms_common (sf bug 679221) 3334 - fixed doc for db.history in anydbm and rdbms_common (sf bug 679221)
3149 - fixed args to some date templating methods (sf bug 689670) 3342 - fixed args to some date templating methods (sf bug 689670)
3150 - fixed database corruption in rdbms property mutation 3343 - fixed database corruption in rdbms property mutation
3151 3344
3152 3345
3153 2003-01-24: 0.5.5 3346 2003-01-24: 0.5.5
3347
3348 Fixed:
3349
3154 - fixed rdbms searching by ID (sf bug 666615) 3350 - fixed rdbms searching by ID (sf bug 666615)
3155 - fixed metakit searching by ID 3351 - fixed metakit searching by ID
3156 - detect corrupted index and raise semi-useful exception (sf bug 666767) 3352 - detect corrupted index and raise semi-useful exception (sf bug 666767)
3157 - open server logfile unbuffered 3353 - open server logfile unbuffered
3158 - revert StringHTMLProperty to not hyperlink text by default 3354 - revert StringHTMLProperty to not hyperlink text by default
3162 - fixed cookie path to use TRACKER_WEB (sf bug 667020) (thanks Nathaniel Smith 3358 - fixed cookie path to use TRACKER_WEB (sf bug 667020) (thanks Nathaniel Smith
3163 for helping chase it down and Luke Opperman for confirming fix) 3359 for helping chase it down and Luke Opperman for confirming fix)
3164 3360
3165 3361
3166 2003-01-10: 0.5.4 3362 2003-01-10: 0.5.4
3363
3364 Fixed:
3365
3167 - key the templates cache off full path, not filename 3366 - key the templates cache off full path, not filename
3168 - implemented whole-database locking 3367 - implemented whole-database locking
3169 - hyperlinking of special text (url, email, item designator) in messages 3368 - hyperlinking of special text (url, email, item designator) in messages
3170 - fixed time default in date.py 3369 - fixed time default in date.py
3171 - fixed error in cgi/templates.py (sf bug 652089) 3370 - fixed error in cgi/templates.py (sf bug 652089)
3181 on "creation" field 3380 on "creation" field
3182 - display of saved queries is now performed correctly 3381 - display of saved queries is now performed correctly
3183 3382
3184 3383
3185 2002-12-11: 0.5.3 3384 2002-12-11: 0.5.3
3385
3386 Fixed:
3387
3186 - added mention of how to give users multiple Roles 3388 - added mention of how to give users multiple Roles
3187 - mention needed trailing "/" in TRACKER_WEB 3389 - mention needed trailing "/" in TRACKER_WEB
3188 - fixed upgrading doc to have CGI changes in the correct order 3390 - fixed upgrading doc to have CGI changes in the correct order
3189 - fixed double-close of anydbm backend (sf bug 639030) 3391 - fixed double-close of anydbm backend (sf bug 639030)
3190 - removed use of string/strop from TAL/TALInterpreter 3392 - removed use of string/strop from TAL/TALInterpreter
3205 - allow multiple :remove and :add elements per property being edited 3407 - allow multiple :remove and :add elements per property being edited
3206 - added date header to emails (sf bug 651358) 3408 - added date header to emails (sf bug 651358)
3207 3409
3208 3410
3209 2002-11-07: 0.5.2 3411 2002-11-07: 0.5.2
3412
3413 Fixed:
3414
3210 - added quotes around python interpreter in windows bat (sf bug 623963) 3415 - added quotes around python interpreter in windows bat (sf bug 623963)
3211 - fixed link at end of installation doc (sf bug 623957) 3416 - fixed link at end of installation doc (sf bug 623957)
3212 - handle "classname" URL path errors cleaner (generate a 404) 3417 - handle "classname" URL path errors cleaner (generate a 404)
3213 - added CGI :remove:<propname> and :add:<propname> which specify item ids to 3418 - added CGI :remove:<propname> and :add:<propname> which specify item ids to
3214 remove / add in <propname> multilink. 3419 remove / add in <propname> multilink.
3231 - fixed journalling to save old values instead of new (sorry it took so long GM) 3436 - fixed journalling to save old values instead of new (sorry it took so long GM)
3232 - handle missing REQUEST_URI for cgi-bin users (sf bug 620163) 3437 - handle missing REQUEST_URI for cgi-bin users (sf bug 620163)
3233 3438
3234 3439
3235 2002-10-16: 0.5.1 3440 2002-10-16: 0.5.1
3441
3442 Fixed:
3443
3236 - highlight rows in groups of three 3444 - highlight rows in groups of three
3237 - metakit cleanups 3445 - metakit cleanups
3238 - nicer "navigation" style in index views 3446 - nicer "navigation" style in index views
3239 - handle missing Link values in anydbm backend set() operation 3447 - handle missing Link values in anydbm backend set() operation
3240 - fixed filter() with no sort/group (sf bug 618614) 3448 - fixed filter() with no sort/group (sf bug 618614)
3262 - implemented "retire" cgi action, added to user index (sf bug 618612) 3470 - implemented "retire" cgi action, added to user index (sf bug 618612)
3263 - included doc ideas from Bernhard Reiter (sf feature 621941) 3471 - included doc ideas from Bernhard Reiter (sf feature 621941)
3264 3472
3265 3473
3266 2002-10-02: 0.5.0 3474 2002-10-02: 0.5.0
3475
3476 Fixed:
3477
3267 - fixed style for alternating rows in user lists 3478 - fixed style for alternating rows in user lists
3268 - fixed query edit form so it doesn't barf 3479 - fixed query edit form so it doesn't barf
3269 - #617133 ] 0.5.0pr1 uses nonexistent renderTemplate 3480 - #617133 ] 0.5.0pr1 uses nonexistent renderTemplate
3270 - merged Zope Collector #539 fix from ZPT CVS trunk 3481 - merged Zope Collector #539 fix from ZPT CVS trunk
3271 3482
3272 3483
3273 2002-09-27: 0.5.0 pr1 3484 2002-09-27: 0.5.0 pr1
3485
3486 Fixed:
3487
3274 - handling of None for Date/Interval/Password values in export/import 3488 - handling of None for Date/Interval/Password values in export/import
3275 - handling of journal values in export/import 3489 - handling of journal values in export/import
3276 - password edit now has a confirmation field 3490 - password edit now has a confirmation field
3277 - registration error punts back to register page 3491 - registration error punts back to register page
3278 - gadfly backend now handles changes to the schema - but only one property 3492 - gadfly backend now handles changes to the schema - but only one property
3285 backends 3499 backends
3286 - we now verify instance attributes on instance open and throw a useful error 3500 - we now verify instance attributes on instance open and throw a useful error
3287 if they're not all there 3501 if they're not all there
3288 - sf 611217 ] menu() has problems when labelprop==None 3502 - sf 611217 ] menu() has problems when labelprop==None
3289 - verify contents of tracker module when the tracker is opened 3503 - verify contents of tracker module when the tracker is opened
3290 - many performance improvements in *dbm and sql backends 3504 - many performance improvements in \*dbm and sql backends
3291 - mailgw was missing an "import sys" 3505 - mailgw was missing an "import sys"
3292 - setup now installs scripts with python -O flag, doubling performance in some 3506 - setup now installs scripts with python -O flag, doubling performance in some
3293 cases (there's a lot of __debug__ use) 3507 cases (there's a lot of __debug__ use)
3294 - fix :required for Link menus 3508 - fix :required for Link menus
3295 - import wasn't setting the ID to maxid+1 3509 - import wasn't setting the ID to maxid+1
3317 tracker interfaces module 3531 tracker interfaces module
3318 - fixed login attempt by user that doesn't exist 3532 - fixed login attempt by user that doesn't exist
3319 3533
3320 3534
3321 2002-09-13: 0.5.0 beta2 3535 2002-09-13: 0.5.0 beta2
3536
3537 Fixed:
3538
3322 - all backends now have a .close() method, and it's used everywhere 3539 - all backends now have a .close() method, and it's used everywhere
3323 - fixed bug in detectors __init__ 3540 - fixed bug in detectors __init__
3324 - switched the default issue item display to only show issue summary 3541 - switched the default issue item display to only show issue summary
3325 (added instructions to doc to make it display entire content) 3542 (added instructions to doc to make it display entire content)
3326 - MANIFEST.in was missing a lot of template files 3543 - MANIFEST.in was missing a lot of template files
3329 - added context/is_edit_ok and context/is_view_ok convenience methods and 3546 - added context/is_edit_ok and context/is_view_ok convenience methods and
3330 implemented use of them in the classic template 3547 implemented use of them in the classic template
3331 3548
3332 3549
3333 2002-09-11: 0.5.0 beta1 3550 2002-09-11: 0.5.0 beta1
3334 Fixed: 3551
3552 Fixed:
3553
3335 - #576086 ] dumb copying mistake (frontends/ZRoundup.py) 3554 - #576086 ] dumb copying mistake (frontends/ZRoundup.py)
3336 - installation instructions now mention "python2" in "testing your python". 3555 - installation instructions now mention "python2" in "testing your python".
3337 - made the unit tests run again - they were quite b0rken 3556 - made the unit tests run again - they were quite b0rken
3338 - #571170 ] gdbm deadlock 3557 - #571170 ] gdbm deadlock
3339 - #576241 ] MultiLink problems in parsePropsFromForm 3558 - #576241 ] MultiLink problems in parsePropsFromForm
3341 - web forms may now unset Link values (like assignedto) 3560 - web forms may now unset Link values (like assignedto)
3342 - cleanup: moved roundup.templatebuilder to roundup.templates.builder 3561 - cleanup: moved roundup.templatebuilder to roundup.templates.builder
3343 - instance __init__ no longer silently traps dbinit import errors 3562 - instance __init__ no longer silently traps dbinit import errors
3344 3563
3345 Feature: 3564 Feature:
3565
3346 - new backend for metakit (thanks Gordon McMillan) 3566 - new backend for metakit (thanks Gordon McMillan)
3347 - new backend for gadfly (it's as done as it's going to get) 3567 - new backend for gadfly (it's as done as it's going to get)
3348 - further split the dbm backends from the core code, allowing easier 3568 - further split the dbm backends from the core code, allowing easier
3349 non-dict-like backends (eg metakit, RDB) 3569 non-dict-like backends (eg metakit, RDB)
3350 - implemented and used the new access control mechanisms (Permissions, Roles) 3570 - implemented and used the new access control mechanisms (Permissions, Roles)
3371 - revamped look and feel in web interface 3591 - revamped look and feel in web interface
3372 - cleaned up stylesheet usage 3592 - cleaned up stylesheet usage
3373 - several bug fixes and documentation fixes 3593 - several bug fixes and documentation fixes
3374 - added is_retired test to hyperdb.Class 3594 - added is_retired test to hyperdb.Class
3375 - added capability to save queries: 3595 - added capability to save queries:
3596
3376 - a query Class with name, klass (to search) and url (query string) 3597 - a query Class with name, klass (to search) and url (query string)
3377 properties 3598 properties
3378 - a Multilink to query on user called queries 3599 - a Multilink to query on user called queries
3379 - html templates for query, and a list of queries in user.item 3600 - html templates for query, and a list of queries in user.item
3380 - search form has Save button & name input 3601 - search form has Save button & name input
3381 - saved queries put in menu in pagehead 3602 - saved queries put in menu in pagehead
3382 - for migration, none of the above is required and old behavior preserved. 3603 - for migration, none of the above is required and old behavior preserved.
3383 - showquery translates search form <-> query string 3604 - showquery translates search form <-> query string
3605
3384 - cleaned up the indexer code: 3606 - cleaned up the indexer code:
3607
3385 - it splits more words out 3608 - it splits more words out
3386 - removed code we'll never use (roundup.roundup_indexer has the full 3609 - removed code we'll never use (roundup.roundup_indexer has the full
3387 implementation, and replaces roundup.indexer) 3610 implementation, and replaces roundup.indexer)
3388 - only index text/plain and rfc822/message (ideas for other text formats to 3611 - only index text/plain and rfc822/message (ideas for other text formats to
3389 index are welcome) 3612 index are welcome)
3390 - added simple unit test for indexer. Needs more tests for regression. 3613 - added simple unit test for indexer. Needs more tests for regression.
3391 - all String properties may now be indexed too. Currently there's a bit of 3614 - all String properties may now be indexed too. Currently there's a bit of
3392 "issue" specific code in the actual searching which needs to be 3615 "issue" specific code in the actual searching which needs to be
3393 addressed. In a nutshell: 3616 addressed. In a nutshell:
3617
3394 + pass 'indexme="yes"' as a String() property initialisation arg, eg: 3618 + pass 'indexme="yes"' as a String() property initialisation arg, eg:
3395 file = FileClass(db, "file", name=String(), type=String(), 3619 file = FileClass(db, "file", name=String(), type=String(),
3396 comment=String(indexme="yes")) 3620 comment=String(indexme="yes"))
3397 + the comment will then be indexed and be searchable, with the results 3621 + the comment will then be indexed and be searchable, with the results
3398 related back to the issue that the file is linked to 3622 related back to the issue that the file is linked to
3623
3399 - as a result of this work, the FileClass has a default MIME type that may 3624 - as a result of this work, the FileClass has a default MIME type that may
3400 be overridden in a subclass, or by the use of a "type" property as is 3625 be overridden in a subclass, or by the use of a "type" property as is
3401 done in the default templates. 3626 done in the default templates.
3402 - the regeneration of the indexes (if necessary) is done once the schema is 3627 - the regeneration of the indexes (if necessary) is done once the schema is
3403 set up in the dbinit. 3628 set up in the dbinit.
3404 - new "reindex" command in roundup-admin used to force regeneration of the 3629 - new "reindex" command in roundup-admin used to force regeneration of the
3405 index 3630 index
3631
3406 - added email display function - mangles email addrs so they're not so easily 3632 - added email display function - mangles email addrs so they're not so easily
3407 scraped from the web 3633 scraped from the web
3408 - switched to using a session-based web login 3634 - switched to using a session-based web login
3409 - made mailgw handle set and modify operations on multilinks (bug #579094) 3635 - made mailgw handle set and modify operations on multilinks (bug #579094)
3410 - fixed the journal bloat from multilink changes - we just log the add or 3636 - fixed the journal bloat from multilink changes - we just log the add or
3411 remove operations, not the whole list 3637 remove operations, not the whole list
3412 3638
3413 3639
3414 2002-06-24: 0.4.2 3640 2002-06-24: 0.4.2
3415 Fixed: 3641
3642 Fixed:
3643
3416 - Cleaned up the hyperdb unit tests. 3644 - Cleaned up the hyperdb unit tests.
3417 - Applied patch from Andrew W. Nosenko to give nicer Unauthorised message 3645 - Applied patch from Andrew W. Nosenko to give nicer Unauthorised message
3418 when anonymous user tries to edit. Should've been applied in 0.4.2pr1. Oops. 3646 when anonymous user tries to edit. Should've been applied in 0.4.2pr1. Oops.
3419 - Added more detailed note to MIGRATION regarding the detectors changes. 3647 - Added more detailed note to MIGRATION regarding the detectors changes.
3420 3648
3421 3649
3422 2002-06-19: 0.4.2pr1 3650 2002-06-19: 0.4.2pr1
3651
3423 Feature: 3652 Feature:
3653
3424 - added a "detectors" directory for people to put their useful auditors and 3654 - added a "detectors" directory for people to put their useful auditors and
3425 reactors in. Note - the roundupdb.IssueClass.sendmessage method has been 3655 reactors in. Note - the roundupdb.IssueClass.sendmessage method has been
3426 split and renamed "nosymessage" specifically for things like the nosy 3656 split and renamed "nosymessage" specifically for things like the nosy
3427 reactor, and "send_message" which just sends the message. 3657 reactor, and "send_message" which just sends the message.
3428 - link() htmltemplate function now has a "showid" option for links and 3658 - link() htmltemplate function now has a "showid" option for links and
3429 multilinks. When true, it only displays the linked node id as the anchor 3659 multilinks. When true, it only displays the linked node id as the anchor
3430 text. The link value is displayed as a tooltip using the title anchor 3660 text. The link value is displayed as a tooltip using the title anchor
3431 attribute. 3661 attribute.
3432 To use in eg. the superseder field, have something like this: 3662 To use in eg. the superseder field, have something like this::
3433 <td> 3663
3434 <display call="field('superseder', showid=1)"> 3664 <td>
3435 <display call="classhelp('issue', 'id,title', label='list', width=500)"> 3665 <display call="field('superseder', showid=1)">
3436 <property name="superseder"> 3666 <display call="classhelp('issue', 'id,title', label='list', width=500)">
3437 <br>View: <display call="link('superseder', showid=1)"> 3667 <property name="superseder">
3438 </property> 3668 <br>View: <display call="link('superseder', showid=1)">
3439 </td> 3669 </property>
3670 </td>
3671
3440 - stripping of the email message body can now be controlled through the 3672 - stripping of the email message body can now be controlled through the
3441 config variables EMAIL_KEEP_QUOTED_TEXT and EMAIL_LEAVE_BODY_UNCHANGED. 3673 config variables EMAIL_KEEP_QUOTED_TEXT and EMAIL_LEAVE_BODY_UNCHANGED.
3442 - all database files created are now group readable and writable. 3674 - all database files created are now group readable and writable.
3443 - added option to automatically add the authors and recipients of messages 3675 - added option to automatically add the authors and recipients of messages
3444 to the nosy lists with the options ADD_AUTHOR_TO_NOSY (default 'new') and 3676 to the nosy lists with the options ADD_AUTHOR_TO_NOSY (default 'new') and
3452 before the database is initialised. 3684 before the database is initialised.
3453 - don't create an empty message on email issue creation if the email is empty 3685 - don't create an empty message on email issue creation if the email is empty
3454 - may now display additional fields in Multilink form menus 3686 - may now display additional fields in Multilink form menus
3455 - #541941 ] changing multilink properties by mail 3687 - #541941 ] changing multilink properties by mail
3456 - #526730 ] search for messages capability 3688 - #526730 ] search for messages capability
3457 - #505180 ] split MailGW.handle_Message 3689 - #505180 ] split MailGW.handle_Message:
3690
3458 - also changed cgi client since it was duplicating the functionality 3691 - also changed cgi client since it was duplicating the functionality
3459 3692
3460 Fixed: 3693 Fixed:
3694
3461 - stop sending blank (whitespace-only) notes 3695 - stop sending blank (whitespace-only) notes
3462 - cleanup of serialisation for database storage 3696 - cleanup of serialisation for database storage
3463 - node ids are now generated from a lockable store - no more race conditions 3697 - node ids are now generated from a lockable store - no more race conditions
3464 - sorting was applied to all nodes of the MultiLink class instead of 3698 - sorting was applied to all nodes of the MultiLink class instead of
3465 to the nodes that are actually linked to in the "field" template 3699 to the nodes that are actually linked to in the "field" template
3497 - #569178 ] type error 3731 - #569178 ] type error
3498 was fixed as part of the general cleanup of reactors 3732 was fixed as part of the general cleanup of reactors
3499 3733
3500 3734
3501 2002-03-25: 0.4.1 3735 2002-03-25: 0.4.1
3736
3502 Feature: 3737 Feature:
3738
3503 - use blobfiles in back_anydbm which is used in back_bsddb. 3739 - use blobfiles in back_anydbm which is used in back_bsddb.
3504 change test_db as dirlist does not work for subdirectories. 3740 change test_db as dirlist does not work for subdirectories.
3505 ATTENTION: blobfiles now creates subdirectories for files. 3741 ATTENTION: blobfiles now creates subdirectories for files.
3506 - add module blobfiles in backends with file access functions. 3742 - add module blobfiles in backends with file access functions.
3507 - roundup db catch only IOError in getfile. 3743 - roundup db catch only IOError in getfile.
3508 - roundup db catches retrieving not existing files. 3744 - roundup db catches retrieving not existing files.
3509 - #503204 ] mailgw needs a default class 3745 - #503204 ] mailgw needs a default class:
3746
3510 - partially done - the setting of additional properties can wait for a 3747 - partially done - the setting of additional properties can wait for a
3511 better configuration system. 3748 better configuration system.
3749
3512 - Alternate email addresses are now available for users. See the MIGRATION 3750 - Alternate email addresses are now available for users. See the MIGRATION
3513 file for info on how to activate the feature. 3751 file for info on how to activate the feature.
3514 - #511168 ] Web interface: Adding new products 3752 - #511168 ] Web interface: Adding new products
3515 Classes that don't provide template html get a default edit interface now: 3753 Classes that don't provide template html get a default edit
3754 interface now:
3755
3516 - access using the admin "class list" interface 3756 - access using the admin "class list" interface
3517 - limited to admin-only 3757 - limited to admin-only
3518 - requires the csv module from object-craft (url given if it's missing) 3758 - requires the csv module from object-craft (url given if it's missing)
3519 - Added popup help for classes using the classhelp html template function. 3759
3520 - add <display call="classhelp('priority', 'id,name,description')"> 3760 - Added popup help for classes using the classhelp html template
3761 function.
3762
3763 - add ``<display call="classhelp('priority', 'id,name,description')">``
3521 to an item page, and it generates a link to a popup window which displays 3764 to an item page, and it generates a link to a popup window which displays
3522 the id, name and description for the priority class. The description 3765 the id, name and description for the priority class. The description
3523 field won't exist in most installations, but it will be added to the 3766 field won't exist in most installations, but it will be added to the
3524 default templates. 3767 default templates.
3768
3525 - #517734 ] web header customisation is obscure 3769 - #517734 ] web header customisation is obscure
3526 - All messages sent to the nosy list are now encoded as 3770 - All messages sent to the nosy list are now encoded as
3527 quoted-printable before they are sent. 3771 quoted-printable before they are sent.
3528 - Fixed display of mutlilink properties when using the template 3772 - Fixed display of mutlilink properties when using the template
3529 functions, menu and plain. 3773 functions, menu and plain.
3530 3774
3531 Fixed: 3775 Fixed:
3776
3532 - Clean up mail handling, multipart handling. 3777 - Clean up mail handling, multipart handling.
3533 - respect encodings in non multipart messages. 3778 - respect encodings in non multipart messages.
3534 - makeHtmlBase: re.sub under python 2.2 did not replace '.', string.replace 3779 - makeHtmlBase: re.sub under python 2.2 did not replace '.', string.replace
3535 does it. 3780 does it.
3536 - preamble in tepmlateBuilder mentioned htmldata 3781 - preamble in tepmlateBuilder mentioned htmldata
3552 (also handles UsageError correctly now in init) 3797 (also handles UsageError correctly now in init)
3553 - #524129 ] roundup-admin gets python path wrong 3798 - #524129 ] roundup-admin gets python path wrong
3554 3799
3555 3800
3556 2002-01-24: 0.4.0 3801 2002-01-24: 0.4.0
3802
3557 Feature: 3803 Feature:
3804
3558 - much nicer history display (actualy real handling of property types etc) 3805 - much nicer history display (actualy real handling of property types etc)
3559 - journal entries for link and mutlilink properties can be switched on or 3806 - journal entries for link and mutlilink properties can be switched on or
3560 off 3807 off
3561 - properties in change note are now sorted 3808 - properties in change note are now sorted
3562 - you can now use the roundup-admin tool pack the database 3809 - you can now use the roundup-admin tool pack the database
3563 3810
3564 Fixed: 3811 Fixed:
3812
3565 - the mail gateway now responds with an error message when invalid values 3813 - the mail gateway now responds with an error message when invalid values
3566 for arguments are specified for link or mutlilink properties 3814 for arguments are specified for link or mutlilink properties
3567 - modified unit test to check nosy and assignedto when specified as arguments 3815 - modified unit test to check nosy and assignedto when specified as arguments
3568 - handle attachments with no name (eg tnef) 3816 - handle attachments with no name (eg tnef)
3569 - fixed setting nosy as argument in subject line 3817 - fixed setting nosy as argument in subject line
3578 - run_tests testReldate_date failed if LANG is 'german' 3826 - run_tests testReldate_date failed if LANG is 'german'
3579 - mailgw failures (unexpected ones) are forwarded to the roundup admin 3827 - mailgw failures (unexpected ones) are forwarded to the roundup admin
3580 3828
3581 3829
3582 2002-01-16: 0.4.0b2 3830 2002-01-16: 0.4.0b2
3583 Fixed: 3831
3832 Fixed:
3833
3584 - #495392 ] empty nosy -patch 3834 - #495392 ] empty nosy -patch
3585 - #500574 ] messageid must have format <part1@part2> 3835 - #500574 ] messageid must have format <part1@part2>
3586 - fixed some problems with web editing and change detection 3836 - fixed some problems with web editing and change detection
3587 - mail splitting wasn't detecting responses in the same "section" as quoted 3837 - mail splitting wasn't detecting responses in the same "section" as quoted
3588 text 3838 text
3610 - more relaxed date format for input 3860 - more relaxed date format for input
3611 - handle None for date/interval properties 3861 - handle None for date/interval properties
3612 3862
3613 3863
3614 2002-01-08: 0.4.0b1 3864 2002-01-08: 0.4.0b1
3865
3615 Feature: 3866 Feature:
3867
3616 - Added INSTANCE_NAME to configuration - used in web and email to identify 3868 - Added INSTANCE_NAME to configuration - used in web and email to identify
3617 the instance. 3869 the instance.
3618 - Added EMAIL_SIGNATURE_POSITION to indicate where to place the roundup 3870 - Added EMAIL_SIGNATURE_POSITION to indicate where to place the roundup
3619 signature info in e-mails. 3871 signature info in e-mails.
3620 - Some more flexibility in the mail gateway and more error handling. 3872 - Some more flexibility in the mail gateway and more error handling.
3622 - Admin user now can has a user index link on their web interface. 3874 - Admin user now can has a user index link on their web interface.
3623 - We now have basic transaction support. Information is only written to 3875 - We now have basic transaction support. Information is only written to
3624 the database when the commit() method is called. Only the anydbm and 3876 the database when the commit() method is called. Only the anydbm and
3625 bsddb3 backends are modified in this way - the bsddb3 backend needs a 3877 bsddb3 backends are modified in this way - the bsddb3 backend needs a
3626 lot more work anyway... 3878 lot more work anyway...
3879
3627 - the CGI and mailgw automatically commit() at the end of processing a 3880 - the CGI and mailgw automatically commit() at the end of processing a
3628 single transaction 3881 single transaction
3629 - the admin tool requires an explicit "commit" - it will prompt at exit 3882 - the admin tool requires an explicit "commit" - it will prompt at exit
3630 if there are unsaved changes. A "rollback" removes all changes made 3883 if there are unsaved changes. A "rollback" removes all changes made
3631 during the session (up to the last commit). 3884 during the session (up to the last commit).
3885
3632 - Added the "display" command to the admin tool - displays a node's values 3886 - Added the "display" command to the admin tool - displays a node's values
3633 - Message author's name appears in From: instead of roundup instance name 3887 - Message author's name appears in From: instead of roundup instance name
3634 (which still appears in the Reply-To:) 3888 (which still appears in the Reply-To:)
3635 - Added a Zope frontend for roundup. 3889 - Added a Zope frontend for roundup.
3636 - Centralised the python version check code, bumped version to 2.1.1 (really 3890 - Centralised the python version check code, bumped version to 2.1.1 (really
3640 This adds the tracking of messages by message-id and allows threading 3894 This adds the tracking of messages by message-id and allows threading
3641 using in-reply-to. Most e-mail clients support threading using this 3895 using in-reply-to. Most e-mail clients support threading using this
3642 feature, and we hope to add support for it to the web gateway. 3896 feature, and we hope to add support for it to the web gateway.
3643 3897
3644 Fixed: 3898 Fixed:
3899
3645 - Lots of bugs, thanks Roch\E9 and others on the devel mailing list! 3900 - Lots of bugs, thanks Roch\E9 and others on the devel mailing list!
3646 - login_action and newuser_action return values were being ignored 3901 - login_action and newuser_action return values were being ignored
3647 - Woohoo! Found that bloody re-login bug that was killing the mail 3902 - Woohoo! Found that bloody re-login bug that was killing the mail
3648 gateway. 3903 gateway.
3649 - Fixed login/registration forwarding the user to the right page (or not, 3904 - Fixed login/registration forwarding the user to the right page (or not,
3668 - detectors were being registered multiple times 3923 - detectors were being registered multiple times
3669 - added tests for mailgw 3924 - added tests for mailgw
3670 3925
3671 3926
3672 2001-11-23: 0.3.0 3927 2001-11-23: 0.3.0
3928
3673 Feature: 3929 Feature:
3930
3674 - #467129 ] Lossage when username=e-mail-address 3931 - #467129 ] Lossage when username=e-mail-address
3675 - #473123 ] Change message generation for author 3932 - #473123 ] Change message generation for author
3676 - MailGW now moves 'resolved' to 'chatting' on receiving e-mail for an issue. 3933 - MailGW now moves 'resolved' to 'chatting' on receiving e-mail for an issue.
3677 - Added Structured Text rendering to htmltemplate, thanks Brad Clements. 3934 - Added Structured Text rendering to htmltemplate, thanks Brad Clements.
3678 - Added CGI configuration via env vars (see roundup.cgi for details) 3935 - Added CGI configuration via env vars (see roundup.cgi for details)
3686 - added a target version field to the extended issue schema 3943 - added a target version field to the extended issue schema
3687 - added dummy hooks for I18N and some preliminary (test) markup of 3944 - added dummy hooks for I18N and some preliminary (test) markup of
3688 translatable messages 3945 translatable messages
3689 3946
3690 Fixed: 3947 Fixed:
3948
3691 - Fixed a bug in HTMLTemplate changes. 3949 - Fixed a bug in HTMLTemplate changes.
3692 - 'unread' to 'chatting' automagic status change was b0rken. 3950 - 'unread' to 'chatting' automagic status change was b0rken.
3693 - Anonymous user lockout wasn't working. 3951 - Anonymous user lockout wasn't working.
3694 - roundup-server now works on Windows, thanks Juergen Hermann. 3952 - roundup-server now works on Windows, thanks Juergen Hermann.
3695 - Fixed install documentation, also thanks Juergen Hermann. 3953 - Fixed install documentation, also thanks Juergen Hermann.
3718 - re-open the database as the author in mail handling 3976 - re-open the database as the author in mail handling
3719 - missing "return" in filter_section (thanks Roch'e Compaan) 3977 - missing "return" in filter_section (thanks Roch'e Compaan)
3720 3978
3721 3979
3722 2001-10-23: 0.3.0 pre 3 3980 2001-10-23: 0.3.0 pre 3
3981
3723 Feature: 3982 Feature:
3983
3724 - MailGW now moves 'unread' to 'chatting' on receiving e-mail for an issue. 3984 - MailGW now moves 'unread' to 'chatting' on receiving e-mail for an issue.
3725 - feature #473127: Filenames. I modified the file.index and htmltemplate 3985 - feature #473127: Filenames. I modified the file.index and htmltemplate
3726 source so that the filename is used in the link and the creation 3986 source so that the filename is used in the link and the creation
3727 information is displayed. 3987 information is displayed.
3728 Admin Tool (roundup-admin): 3988
3989 Admin Tool (roundup-admin):
3990
3729 - Interactive mode for running multiple (independant at present) commands. 3991 - Interactive mode for running multiple (independant at present) commands.
3730 - Tabular display of nodes. 3992 - Tabular display of nodes.
3731 - Import and export via colon-separated files. 3993 - Import and export via colon-separated files.
3732 3994
3733 Changed: 3995 Changed:
3996
3734 - re-organised the html templating code. Fixed some bugs, probably 3997 - re-organised the html templating code. Fixed some bugs, probably
3735 introduced some more. Hopefully not too many. 3998 introduced some more. Hopefully not too many.
3736 3999
3737 Fixed: 4000 Fixed:
4001
3738 - Stand-alone server now has a configurable setuid user. 4002 - Stand-alone server now has a configurable setuid user.
3739 - CGI interface wasn't handling checkboxes at all. 4003 - CGI interface wasn't handling checkboxes at all.
3740 - Fixed quopri usage in mailgw from bug reports on mailing list. 4004 - Fixed quopri usage in mailgw from bug reports on mailing list.
3741 - Remove the "freshen" command from the roundup-admin tool. 4005 - Remove the "freshen" command from the roundup-admin tool.
3742 - Catch errors in login - no username or password supplied. 4006 - Catch errors in login - no username or password supplied.
3753 - bug #473126: Sender unknown 4017 - bug #473126: Sender unknown
3754 - bug #473130: Nosy list not set correctly 4018 - bug #473130: Nosy list not set correctly
3755 4019
3756 4020
3757 2001-10-11: 0.3.0 pre 2 4021 2001-10-11: 0.3.0 pre 2
3758 Fixed: 4022
4023 Fixed:
4024
3759 - Hyperdatabase was inserting empty strings instead of None for missing 4025 - Hyperdatabase was inserting empty strings instead of None for missing
3760 property values. This broke a lot of things. 4026 property values. This broke a lot of things.
3761 4027
3762 4028
3763 2001-10-10: 0.3.0 pre 1 4029 2001-10-10: 0.3.0 pre 1
4030
3764 Feature: 4031 Feature:
4032
3765 - roundup-admin create now prompts for property info if none is supplied 4033 - roundup-admin create now prompts for property info if none is supplied
3766 on the command-line. 4034 on the command-line.
3767 - hyperdb Class getprops() method may now return only the mutable 4035 - hyperdb Class getprops() method may now return only the mutable
3768 properties. 4036 properties.
3769 - CGI interfaces now generate a top-level index of their known instances. 4037 - CGI interfaces now generate a top-level index of their known instances.
3770 4038
3771 Changed: 4039 Changed:
4040
3772 - Login now uses cookies, which makes it a whole lot more flexible. We can 4041 - Login now uses cookies, which makes it a whole lot more flexible. We can
3773 now support anonymous user access (read-only, unless there's an 4042 now support anonymous user access (read-only, unless there's an
3774 "anonymous" user, in which case write access is permitted). Login 4043 "anonymous" user, in which case write access is permitted). Login
3775 handling has been moved into cgi_client.Client.main() 4044 handling has been moved into cgi_client.Client.main()
3776 - The "extended" schema is now the default in roundup init. 4045 - The "extended" schema is now the default in roundup init.
3784 - The roundup-admin tool always operates as the "admin" user now. Database 4053 - The roundup-admin tool always operates as the "admin" user now. Database
3785 protection should be achieved using file system protections (see the 4054 protection should be achieved using file system protections (see the
3786 documentation for details.) 4055 documentation for details.)
3787 4056
3788 Fixed: 4057 Fixed:
4058
3789 - Incorrectly had a Bizar Software copyright on the cgitb.py module from 4059 - Incorrectly had a Bizar Software copyright on the cgitb.py module from
3790 Ping - has been removed. 4060 Ping - has been removed.
3791 - Pretty time interval wasn't handling > 1 month properly. 4061 - Pretty time interval wasn't handling > 1 month properly.
3792 - Generation of links to Link/Multilink in indexes. (thanks Hubert Hoegl) 4062 - Generation of links to Link/Multilink in indexes. (thanks Hubert Hoegl)
3793 - AssignedTo wasn't in the "classic" schema's item page. 4063 - AssignedTo wasn't in the "classic" schema's item page.
3801 4071
3802 4072
3803 -------------- 4073 --------------
3804 4074
3805 2001-08-30: 0.2.8 4075 2001-08-30: 0.2.8
3806 Fixed: 4076
4077 Fixed:
4078
3807 - Wasn't handling unguessable mime types for file uploads. 4079 - Wasn't handling unguessable mime types for file uploads.
3808 - Missing import in mailgw. 4080 - Missing import in mailgw.
3809 4081
3810 4082
3811 2001-08-29: 0.2.7 4083 2001-08-29: 0.2.7
4084
3812 Feature: 4085 Feature:
4086
3813 - Text searches are now case insensitive. All forms of text search use 4087 - Text searches are now case insensitive. All forms of text search use
3814 regular expressions now. 4088 regular expressions now.
3815 4089
3816 Fixed: 4090 Fixed:
4091
3817 - Had another 2.1-ism in the unit tests 4092 - Had another 2.1-ism in the unit tests
3818 - Made the mail parser a little more robust w.r.t missing Subject: 4093 - Made the mail parser a little more robust w.r.t missing Subject:
3819 (both thanks Mikhail Sobolev) 4094 (both thanks Mikhail Sobolev)
3820 - Missed some isFooType usages (thanks Mikhail Sobolev for spotting them) 4095 - Missed some isFooType usages (thanks Mikhail Sobolev for spotting them)
3821 - Reverted back to sending change messages to the web editor of a node so 4096 - Reverted back to sending change messages to the web editor of a node so
3828 when the http://bsddb.sourceforge.net/'s bugs #439959 and #456408 are 4103 when the http://bsddb.sourceforge.net/'s bugs #439959 and #456408 are
3829 dealt with. One is fixed in CVS, the other pending. 4104 dealt with. One is fixed in CVS, the other pending.
3830 4105
3831 4106
3832 2001-08-08: 0.2.6 4107 2001-08-08: 0.2.6
4108
3833 Note: 4109 Note:
4110
3834 - Roundup is now released under the same terms as the Python License. 4111 - Roundup is now released under the same terms as the Python License.
3835 4112
3836 Feature: 4113 Feature:
4114
3837 - Added tests for instance initialisation. No more releasing the software 4115 - Added tests for instance initialisation. No more releasing the software
3838 with bugs in roundup.init! 4116 with bugs in roundup.init!
3839 - Now bundling unittest with the package so that python 2.0 users can use 4117 - Now bundling unittest with the package so that python 2.0 users can use
3840 the tests. 4118 the tests.
3841 - Much better error handling and messages generated by the mail gateway. 4119 - Much better error handling and messages generated by the mail gateway.
3842 4120
3843 Fixed: 4121 Fixed:
4122
3844 - Implemented correct mail splitting. Added unit tests. Also snips 4123 - Implemented correct mail splitting. Added unit tests. Also snips
3845 signatures now too. 4124 signatures now too.
3846 - Bug #447671 - typo in roundup/init.py 4125 - Bug #447671 - typo in roundup/init.py
3847 - Changed date.Date to use regular string formatting instead of strftime - 4126 - Changed date.Date to use regular string formatting instead of strftime -
3848 win32 seems to have problems with %T and no hour... or something... 4127 win32 seems to have problems with %T and no hour... or something...
3850 - Instances are now opened by a special function that generates a unique 4129 - Instances are now opened by a special function that generates a unique
3851 module name for the instances on import time. 4130 module name for the instances on import time.
3852 4131
3853 4132
3854 2001-08-03: 0.2.5 4133 2001-08-03: 0.2.5
4134
3855 Note: 4135 Note:
4136
3856 - The bsddb3 module has a bug that renders it non-functional. Users should 4137 - The bsddb3 module has a bug that renders it non-functional. Users should
3857 select the anydbm or bsddb backend instead. 4138 select the anydbm or bsddb backend instead.
3858 4139
3859 Fixed: 4140 Fixed:
4141
3860 - Python 2.0 does not contain the unittest module. The setup.py module now 4142 - Python 2.0 does not contain the unittest module. The setup.py module now
3861 checks for unittest before attempting to run the unit tests. 4143 checks for unittest before attempting to run the unit tests.
3862 4144
3863 4145
3864 2001-08-03: 0.2.4 4146 2001-08-03: 0.2.4
4147
3865 Features: 4148 Features:
4149
3866 - Added ability for cgi newblah forms to indicate that the new node 4150 - Added ability for cgi newblah forms to indicate that the new node
3867 should be linked somewhere. 4151 should be linked somewhere.
3868 - Added time logging and file uploading to the templates. 4152 - Added time logging and file uploading to the templates.
3869 - Added "My Issues" and "My Support" to extended template. Changed "Your 4153 - Added "My Issues" and "My Support" to extended template. Changed "Your
3870 Details" to "My Details". Changed the "New Foo" links to "Add Foo". 4154 Details" to "My Details". Changed the "New Foo" links to "Add Foo".
3881 include the e-mail address and web interface address. Templates may 4165 include the e-mail address and web interface address. Templates may
3882 override this in their db classes to include specific information (support 4166 override this in their db classes to include specific information (support
3883 instructions, etc). 4167 instructions, etc).
3884 4168
3885 Fixed: 4169 Fixed:
4170
3886 - Argument handling for the roundup-admin find command. 4171 - Argument handling for the roundup-admin find command.
3887 - Handling of summary when no note supplied for newblah. Again. 4172 - Handling of summary when no note supplied for newblah. Again.
3888 - Detection of no form in htmltemplate Field display. 4173 - Detection of no form in htmltemplate Field display.
3889 - Checklist html template command was setting wrong name. 4174 - Checklist html template command was setting wrong name.
3890 - 2.1-specific gmtime() (no arg) call in roundup.date. (thanks Paul Wright) 4175 - 2.1-specific gmtime() (no arg) call in roundup.date. (thanks Paul Wright)
3895 we can have instance homes of "roundup" or other existing python package 4180 we can have instance homes of "roundup" or other existing python package
3896 names. 4181 names.
3897 4182
3898 4183
3899 2001-07-30: 0.2.3 4184 2001-07-30: 0.2.3
4185
3900 Big change: 4186 Big change:
4187
3901 - I've split off the support class from the issue class in "extended". 4188 - I've split off the support class from the issue class in "extended".
3902 Anyone who has any support entries, sorry. It should be possible to 4189 Anyone who has any support entries, sorry. It should be possible to
3903 write a scipt that moves the entries over pretty easily. If this causes 4190 write a scipt that moves the entries over pretty easily. If this causes
3904 you pain, I'll do so. You'll want to update your instance with the new 4191 you pain, I'll do so. You'll want to update your instance with the new
3905 code in "extended" either way. 4192 code in "extended" either way.
3906 4193
3907 Features: 4194 Features:
4195
3908 - Added the unit tests to the start of setup.py so they're run whenever 4196 - Added the unit tests to the start of setup.py so they're run whenever
3909 we do anything distutils'y. 4197 we do anything distutils'y.
3910 - Added nicer prompting to the roundup-admin "init" command. 4198 - Added nicer prompting to the roundup-admin "init" command.
3911 - Actually, the roundup-admin code is totally revamped, and has command 4199 - Actually, the roundup-admin code is totally revamped, and has command
3912 help and better command-line arg handling. 4200 help and better command-line arg handling.
3913 - The cgi_client.Client base class now reflects the structure of "classic" 4201 - The cgi_client.Client base class now reflects the structure of "classic"
3914 rather than "extended" since "classic" is more of a "base" template. 4202 rather than "extended" since "classic" is more of a "base" template.
3915 - Added more DB to test. Skips tests where imports fail. 4203 - Added more DB to test. Skips tests where imports fail.
3916 4204
3917 Fixed: 4205 Fixed:
4206
3918 - One of the tests in test_date had the wrong expected result. 4207 - One of the tests in test_date had the wrong expected result.
3919 - Fixed IssueClass so that superseders links to its classname rather than 4208 - Fixed IssueClass so that superseders links to its classname rather than
3920 hard-coded to "issue". 4209 hard-coded to "issue".
3921 - templatebuilder was catching IOError instead of OSError. 4210 - templatebuilder was catching IOError instead of OSError.
3922 - The cgi_client newblah method wasn't detecting the __note form field 4211 - The cgi_client newblah method wasn't detecting the __note form field
3924 - The History command in htmltemplate didn't handle a new node (None 4213 - The History command in htmltemplate didn't handle a new node (None
3925 nodeid) properly. 4214 nodeid) properly.
3926 4215
3927 4216
3928 2001-07-29: 0.2.2 4217 2001-07-29: 0.2.2
4218
3929 Features: 4219 Features:
4220
3930 - Added implementation.txt to the doc directory. Contains implementation 4221 - Added implementation.txt to the doc directory. Contains implementation
3931 notes specific to this implementations of Roundup. 4222 notes specific to this implementations of Roundup.
3932 - Cleaned up mailgw some (subclass Message for getPart) and added some 4223 - Cleaned up mailgw some (subclass Message for getPart) and added some
3933 tests for multipart splitting. 4224 tests for multipart splitting.
3934 - Better checking for html dir in templatebuilder. 4225 - Better checking for html dir in templatebuilder.
3940 - Added the fabricated property "id" to all hyperdb classes. 4231 - Added the fabricated property "id" to all hyperdb classes.
3941 - Cleanup of the link label generation (new method on hyperdb.Class to do 4232 - Cleanup of the link label generation (new method on hyperdb.Class to do
3942 it). 4233 it).
3943 4234
3944 Fixed: 4235 Fixed:
4236
3945 - Everything uses errno module now to check errno values. 4237 - Everything uses errno module now to check errno values.
3946 - New issue form handles lack of note better now. 4238 - New issue form handles lack of note better now.
3947 - HTML templating uses section-bar style for index group headers now. 4239 - HTML templating uses section-bar style for index group headers now.
3948 - Fixed problem in link display when Link value is None. 4240 - Fixed problem in link display when Link value is None.
3949 - Form handling in cgi client wasn't propogating through the previous 4241 - Form handling in cgi client wasn't propogating through the previous
3951 - Fixed sort arguments generated for column headings so sorting can be 4243 - Fixed sort arguments generated for column headings so sorting can be
3952 changed now. 4244 changed now.
3953 4245
3954 4246
3955 2001-07-28: 0.2.1 4247 2001-07-28: 0.2.1
4248
3956 Features: 4249 Features:
4250
3957 - Added docstring to roundup package so pydoc reports useful information. 4251 - Added docstring to roundup package so pydoc reports useful information.
3958 - Added the roundup 1 software carpentry submission HTML to the doc 4252 - Added the roundup 1 software carpentry submission HTML to the doc
3959 directory as "overview.html". 4253 directory as "overview.html".
3960 4254
3961 Fixes: 4255 Fixes:
4256
3962 - Fixed bug in init command - templatebuilder was assuming existence of 4257 - Fixed bug in init command - templatebuilder was assuming existence of
3963 "html" directory in instance home. 4258 "html" directory in instance home.
3964 - Fixed INSTALL.txt to reflect some changes in the installation and test 4259 - Fixed INSTALL.txt to reflect some changes in the installation and test
3965 procedure. Whatdya know, "setup.py install" does the script install. 4260 procedure. Whatdya know, "setup.py install" does the script install.
3966 There you go... 4261 There you go...
3967 - Fixed some non-string node ids in cgi_client now that the hyperdb is 4262 - Fixed some non-string node ids in cgi_client now that the hyperdb is
3968 strict about such things. 4263 strict about such things.
3969 4264
3970 2001-07-26: 0.2.0 4265 2001-07-26: 0.2.0
4266
3971 Features: 4267 Features:
4268
3972 - Major reorganisation of code to allow multiple roundup instances and a 4269 - Major reorganisation of code to allow multiple roundup instances and a
3973 single, site-packages -based installation. Also allows multiple database 4270 single, site-packages -based installation. Also allows multiple database
3974 back-ends. 4271 back-ends.
3975 - Moved the bin/ proggies into the top dir, so that it all works 4272 - Moved the bin/ proggies into the top dir, so that it all works
3976 out-of-the-box 4273 out-of-the-box
3981 out-of-the-box. 4278 out-of-the-box.
3982 - Added distutils-style installation of "lib" files. 4279 - Added distutils-style installation of "lib" files.
3983 - Added some unit tests. 4280 - Added some unit tests.
3984 4281
3985 Fixes: 4282 Fixes:
4283
3986 - Fixed bug in re generation in the filter 4284 - Fixed bug in re generation in the filter
3987 - Fixed handling of None String property in grouped list headings 4285 - Fixed handling of None String property in grouped list headings
3988 - Fixed adding new issue with no change note 4286 - Fixed adding new issue with no change note
3989 - Fixed values in text input fields which contained quotes (") are now 4287 - Fixed values in text input fields which contained quotes (") are now
3990 quoted. 4288 quoted.
3991 - Fixed a bug in the hyperdb filter - wrong variable names in the error 4289 - Fixed a bug in the hyperdb filter - wrong variable names in the error
3992 message. 4290 message.
3993 4291
3994 2001-07-19: 0.1.3 4292 2001-07-19: 0.1.3
4293
3995 - Reldate now takes an argument "pretty" - when true, it pretty-prints the 4294 - Reldate now takes an argument "pretty" - when true, it pretty-prints the
3996 interval generated up to 5 days, then pretty-prints the date of last 4295 interval generated up to 5 days, then pretty-prints the date of last
3997 activity. The issue index and item now use the pretty format. 4296 activity. The issue index and item now use the pretty format.
3998 - Classes list for admin user in CGI interface. 4297 - Classes list for admin user in CGI interface.
3999 - Made the view configuration more accessible, neater and more realistic. 4298 - Made the view configuration more accessible, neater and more realistic.
4011 te?xt - search for text matching "te"<any one character>"xt" 4310 te?xt - search for text matching "te"<any one character>"xt"
4012 - Added more fields to the issue.filter and issue.index templates 4311 - Added more fields to the issue.filter and issue.index templates
4013 4312
4014 4313
4015 2001-07-18: 0.1.2 4314 2001-07-18: 0.1.2
4315
4016 - Set default index to ?:group=priority&:columns=activity,status,title so 4316 - Set default index to ?:group=priority&:columns=activity,status,title so
4017 the priority column isn't displayed. 4317 the priority column isn't displayed.
4018 - Thanks Anthony: 4318 - Thanks Anthony:
4319
4019 - added notes to the README about Python prerequisites 4320 - added notes to the README about Python prerequisites
4020 - added check to roundup.py, roundup.cgi, server.py and roundup-mailgw.py 4321 - added check to roundup.py, roundup.cgi, server.py and roundup-mailgw.py
4021 for python 2+ - and made the file itself parseable by 1.5.2 ;) 4322 for python 2+ - and made the file itself parseable by 1.5.2 ;)
4022 - python 2.0 didn't have the default args for the time module functions. 4323 - python 2.0 didn't have the default args for the time module functions.
4023 - better handling of db directory in initDB 4324 - better handling of db directory in initDB
4325
4024 - Sorting on the extra properties defined by roundupdb classes was broken 4326 - Sorting on the extra properties defined by roundupdb classes was broken
4025 due to the caching used. May now sort on activity and creation 4327 due to the caching used. May now sort on activity and creation
4026 properties, etc. 4328 properties, etc.
4027 - Set the default index to sort on activity 4329 - Set the default index to sort on activity
4028 4330
4029 4331
4030 2001-07-18: 0.1.1 4332 2001-07-18: 0.1.1
4333
4031 - Initial version release with consent of Roundup spec author, Ka-Ping Yee: 4334 - Initial version release with consent of Roundup spec author, Ka-Ping Yee:
4032 "Amazing! Nice work. I'll watch for the source code on your website." 4335 "Amazing! Nice work. I'll watch for the source code on your website."
4033 4336
4034 2001-07-11: 0.1.0 4337 2001-07-11: 0.1.0
4338
4035 - Needed a bug tracking system. Looked around. Tried to install many 4339 - Needed a bug tracking system. Looked around. Tried to install many
4036 Perl-based systems, to no avail. Got tired of waiting for Roundup to be 4340 Perl-based systems, to no avail. Got tired of waiting for Roundup to be
4037 released. Had just finished major product project, so needed something 4341 released. Had just finished major product project, so needed something
4038 different for a while. Roundup here I come... 4342 different for a while. Roundup here I come...
4039 4343

Roundup Issue Tracker: http://roundup-tracker.org/