- 0.6.9 Bug fixed: If no name or email on the issue and the user, it would say that you're already subscribing to an issue. (Thanks Benjamin Higgins Real#0113) New feature: Deleting drafts from the Add Issue page is done with AJAX. New feature: if you want to use a Secure Mail Host instead of the default Mail Host, it is now recognized as 'SecureMailHost' but 'MailHost' still takes precedence. Bug fixed: Which type of List Issues was remembered but not used if you were logged in as Issue User. (Thanks Marcus Scotti, Real#0110) Bug fixed: Filter on fromname didn't work due to a bug in a regular expression. (Thanks Fred Damberger, Real#0103) Bug fixed: getEmail() and getName() would raise an error if the acl_users (if applicable) folder can't be found, which might be the case when importing an issuetracker. Bug fixed: DeployStandards checked folder existance with acquisition. New feature: If AJAX works the filter options are loaded with AJAX otherwise loaded as a new page request (on the List Issues or Complete List). New feature: When you search on multiple words, an alternative search link appears that puts "or" between all words. (Real#0102) New feature: export.csv makes it possible to download all issues in one single CSV file. If you enabled 'CSV export link' in the Advanced properties you can export the current set to CSV. Bug fixed: Assignment form no longer shown on Complete List (Real#0101) Bug fixed: The first saved draft wouldn't pop up again on Add Issue. Real#0079 became reproducable and fixed. New feature: AddIssue and QuickAddIssue is autosaving drafts now with AJAX. New feature: Inbound emails with header X-Spambayes-Classification=spam is automatically deleted and not uploaded. New feature: Option to enforce a different stylesshet http://www.issuetrackerproduct.com/Documentation/How-Tos/forced-stylesheet Bug fixed: Assigned, Added, followups etc. on the User tab were sorted such old ones were shown first in the list. Reversed that. (Real#0078) New feature: If an error occurs the an error log file is only created if the error type is *not* in zope's error_log object on Zope2.7. (Real#0077) New feature: Which list you want to use is now stored in a cookie rather than a session. - 0.6.8 Bug fixed: Emails couldn't be sent out if you had converted to storing all issues in a BTreeFolder2. So if you were using that, this fix will renable email dispatch for probably several unsent emails. New feature: Mention who added the issue on always notify messages (Real#0086) Bug fixed: Password reminder for Issue User Folder (Real#0025) Bug fixed: The 'subscribers' can no longer be set when instanciating the IssueTrackerIssue class. This solves Real#0033. New feature: When showing the issue it shows the age next to the date it was submitted, like on the List Issues. - 0.6.7 Bug fixed: It was not possible to create a Issue User Folder. Thanks Jeff for Real#0073. Bug fixed: The default sort order is now 'issuedate' and not modification date which was not recommended. Bug fixed: Who you choose with Tell-a-Friend is no longer remembered in a cookie. Can't remember why it was even doing it before. New feature: It is now possible to change the assignments if you're the one it's assigned to (Real#0045) Bug fixed: You couldn't use the View permission toggle because of a typo caused by legacy code. Thank you Goeldi (Real#0068) Bug fixed: Added SendInboundEmailConfirm_script.py back until a more grand solution has been found. - 0.6.6 New feature: Added firstname filtering as mentioned in Real#0065 New feature: If subscription option on, when you look at an issue that you're already involved in, you do not get the option to subscribe since you're already implicitily a subscriber. (Real#0047) New feature: Filter settings you make are remembered persistently. They are stored with a (hopefully) descriptive english title. You can at any time select a previously used filter and apply it again. Bug fixed: Successfully telling a friend will no longer show the more options form again. New feature: Have fixed all source code to consistently use 4 spaces for tabs. Before there was mix which could cause problems for other people except the author who uses jed (which doesn't care about the difference) New feature: AddIssue now has well defined tabindexes. Bug fixed: Finally Real#0014 has been solved thanks to Petter Warnsberg of Swede Ltd. It's called the "Holly hack" and we managed to reproduce it and see how it started to not blank out the followup box. New feature: Lists on the User page are now shortened with an option to show all. New feature: If you assign an issue to someone who is also on the 'always notify' list it used to send out two emails. One about the new issue and one about the assignment. Not it only sends the assignment one. (Real#0026) New feature: Link to Add Issue on Quick Add Issue takes what you started writing with you to Add Issue. Thanks Jan (Real#0054) New feature: Printing issues (and consequently CompleteList) now looks much better with all the forms and navs hidden. Bug fixed: If you use "Tell a Friend with more options" and change the default message, the default message was still what was sent. Bug fixed: Issue threads and notification objects' ids are now incremented sanely. Before it was 1,3,5,7,... now it's 1,2,3,4,... New feature: NotYetRecent not in the URL when issue added (Real#0048) New feature: "Images in menu" and "Can add new sections" now part of the Properties Wizard. Bug fixed: If the display format is StructuredText and the text is just a number (eg. a telephone number) it *was* converted to a numbered list. UPDATE: this introduce a new bug that is now fixed. Bug fixed: If you tried to upload an image that doesn't exist it would return hard error when it tried to create a thumbnail. Bug fixed: New issues weren't saved to the BTreeFolder2 if you had set to use one. Bug fixed: Fixed the hard ParseError on stopword searches (Real#0024) New feature: If you have lots of issues you can now change the issue tracker to store all issues in a BTreeFolder2 container instead. This changes the URLs but if you accidently use a stale URL it will redirect you to the correct new issue URL. New feature: Issues are now movable in the ZMI. (Real#0030) New feature: Much improved Properties tab that uses web standards and Javascript. Degrades perfectly. See http://www.issuetrackerproduct.com/News/improved-properties-tab Bug fixed: Lots of tidying up of the XHTML to make tidy happier. Bug fixed: Fixed bug in relative_url() due to new feature below. Bug fixed: Displaying issues without the "Encode email links" option on would cause a problem with addhrefs version 0.6 (Thank you Jan Real#0034) New feature: discovery of absolute_url_path() replaces custom method. New feature: Ids are shown on the *left* of titles now (Real#0032) (if you enable showing ids with the title) Bug fixed: Email addresses found inside an issue or a followup text is also encoded if that option is on. (http://www.peterbe.com/plog/add-hrefs-III) New feature: Option for Issue Users to enable keyboard shortcuts. Bug fixed: Due to a typo in getFilterValue() filters weren't saved in the SESSION so if you go anywhere else the filter options were forgotten. Bug fixed: Filters on lists from the user tab now work. Real#0010 Bug fixed: Home page looked dodgy with no issues but Recent search history. Real#0002 Bug fixed: Use of builtin False caused bombing out NameError for people who use Python2.1. (Also fixed some SyntaxWarnings for Python2.1) This fixes Real#0028. Thanks Stephan Goeldi. - 0.6.5 Bug fixed: Pressing the Update Everything button twice caused a CatalogError because it tried to add certain indexes twice. - 0.6.4 Bug fixed: When writing a followup to an issue in the form at the bottom of the page and change your mind to use another action the text you've written is remembered. (Real#0020) New feature: New (advanced) option to show the issue Id next to the title of the issue in all displays. (asked for by Brent Skinner) New feature: If your search term is an issue id prefixed with a # it goes immediately to that issue without searching inside titles or descriptions. Bug fixed: POP3 management page could say that you need to have a folder called 'pop3' when it was not necessary (Real#0023) Bug fixed: Menu lost focus on Add Issue when you pressed the Save draft button. Bug fixed: Some hex encoded characters didn't show up correctly in the User template and shortening them went wrong in the Add Issue drafts list (if you have one). New feature: Previewing a followup or an issue now shows properly which people will be notified once it's submitted. New feature: User tab now has a list for all issues you are subscribed to. New feature: Issues and threads are now indexed in the ZCatalog with the ZCTextIndex instead to give much better search results when searching for issues. It's faster and more advanced. (Press the Update Everything button to activate it) New feature: Using a search term which is a section, status, type, urgency, fromname or email will make a special filter-link appear under the search box. New feature: _searchCatalog() is now more careful to not fetch thread objects that don't exist. (thanks Mark Thomas, Real#0018) New feature: Great speed optimization to ListIssues and CompleteList. Bug fixed: Resaving the cookie with draft issues now makes sure there's no stale drafts in the cookie. New feature: Compact and Rich lists in ListIssues. Default is Rich which is the good old list but if you click Compact you get a compacter list. See bottom of ListIssues page. New feature: People who can log in as Issue Users to an IssueTracker that is publically available can enable auto-login which means they're taken passed the login page when they come back. Bug fixed: Cookies expiration is again stored with proper RFC822 format. Bug fixed: Fixed some issues with the tell_a_friend feature for issue users where their name wasn't found. New feature: Check in SubmitIssue() prevents duplicates. Same happens for new followups. Bug fixed: Fixed some filtering links from the Statistics page. New feature: Now you can specify Issue User Folder usernames in the Always notify property too. New feature: Added a standard_error_message with user-friendly error messages and directions for bug reporting. - 0.6.3 Bug fixed: CheckoutableTemplates was made a requirement for IssueTrackerProduct to start. Caused broken objects for people without CheckoutableTemplates. Bug fixed: HTML escaped in displayBriefTitle() used in Recent History and Home page but HEX HTML entities preserved. - 0.6.2 Bug fixed: Made ValidEmailAddress() return True for foo'bar@some.com Bug fixed: Typo in IssueUserFolder made it impossible change 'must_change_password'. Bug fixed: Improvements to feature about new sections (see below) Bug fixed: Improved how a Issue User saves display_format New feature: New option for making it possible to add new sections to an issuetracker when adding a new issue. (feature disabled by default. see Properties tab) New feature: Implemented a much faster unique() function. Bug fixed: sendReturnErrorEmail() had a typo bug. (thanks Bart Cortooms) Bug fixed: _alwaysNotifyMessage() now gets the title of an issue via the getTitle() method. Bug fixed: Filtering links from the home page used the wrong approach. Instead of showing the selected status it showed everything else. Thanks Simon Lucy Bug fixed: AcceptingEmail class inherited a whole module, not a class. This caused problems with its attributes and methods. Bug fixed: If 'slimmer' is installed, the Management, Properties and POP3 tabs would turn black. This happened because TemplateAdder.py had a bug where the 'optimize' parameter was incorrectly remember. Bug fixed: generateID() could raise a ValueError in Python2.1 if and when the prefix is an empty string. New feature: Option to disable XHTML optimization (if being applied) with environment variable OPTIMIZE_ISSUETRACKERPRODUCT Bug fixed: StandardHeader template could not be checked out even though it was defined as a CheckoutableTemplate. Bug fixed: Saving listlike properties through the Properties tab would not filter duplicates. New feature: this_package_home defined in IssueTracker class to filter out templates when using showCheckoutableTemplates. - 0.6.1 New feature: Installed addhrefs.py version 0.5. New feature: Option in Properties tab to make default sort order by modification- or by creation date. Also implemented in Properties Wizard. Bug fixed: Finding one issue when searching did not take the searchterm with it so no highlighting. Bug fixed: When initiating the ZCatalog, the 'title' TextIndex was not attached to the Vocabulary which prevented wildcard searches on the title. Bug fixed: Previewing follow ups shows who will be notified but if someone in that list has left their email blank they are now ignored. Bug fixed: Statistics could raise an UnboundLocalError in certain sitautions. Bug fixed: Assigning an issue to oneself does not check the little checkbox about notifications that appears. New feature: Installed the new addhrefs module (see http://www.peterbe.com/plog/add-hrefs-II) Bug fixed: Using getRolesInContext(self) instead of getRoles() to take extra care for local roles. (Thanks Danny W. Adair, Asterisk Ltd) Bug fixed: Quick Add Issue could sometimes ask for Email when you are logged in as a Issue User. Bug fixed: If you delete an issue user the assignment as shown in ShowIssueData will no longer raise an error. Bug fixed: UnboundLocalError in dispatcher() caused notifications about followups not to be sent out. Bug fixed: If you forgot the subject line in a new issue, the REQUEST object was not passed back to AddIssueTemplate properly. Bug fixed: sendAlwaysNotify() is now wrapped with a nice try:except: catcher Bug fixed: Displayformat for Issue Users sometimes forgotten. Bug fixed: Switching on Issue Assignment was not backwardcompatible with old instances. Bug fixed: Was not compatible to Python 2.1 in HighlightQ(). - 0.6.0 Bug fixed: Assignees get notified with an email if not selected otherwise. Bug fixed: It is now possible to specify a notifyable groupname as an always notify. Will be very useful for teams that should all get notified of an added issue. New feature: You can now specify (in Properties tab) the signature to be used for the email sendouts. New feature: New option in properties makes it possible to have little icons to go with the items on the menu bar. See Properties tab. New feature: When logged in (standard ACL User or IssueTrackerUser) you now get a page with all your related issues and followups. New feature: An internal counter keeps track of what numerical increment to use when generating the next Id for an issue or a follow up. This works like sequences in PostgreSQL and prevents reappearing URLs when issues have been deleted. New feature: title tag now reflects what page you're on. Bug fixed: JPEG file attachments uploaded when using Internet Explorer used a non-standard content-type. (Thanks Melvin Jacobson) Bug fixed: File attachments that aren't file attachments can not be uploaded. Before one could manually write anything in the file attachment input box and it would be treated as a file. (Thanks Melvin Jacobson) New feature: Much improved information page about StructuredText with simple quick examples. New feature: Temporarily uploaded file attachments are now stored inside the issue tracker instance instead of the global /temp_folder which should do away with some low level persistency errors in Zope2.7.x. New feature: A button on the Management tab (ZMI) that updates everything that deploys standards, updates the ZCatalog, assures all objects have the correct attributes and clears temporary uploaded file attachments. New feature: A new and improved Properties Wizard. New feature: When showing issues, the urgency is explicitly styled if anything else than 'normal'. E.g. 'critical' is shown in bold and red. New feature: Whenever you add an issue, the selected sections you chose become more "popular" since their position in the list of options is moved up one notch. New feature: File attachments that are images are uploaded now with a little thumbnail if PIL is installed. New feature: Added a RSS 1.0 feed as the default feed. The 0.91 feed can still be reached on /rss-0.91.xml. Bug fixed: Certain strictly Management pages weren't secured for Zope managers only. Now they are. Bug fixed: When you update the catalog manually from the Management tab it logged lots of ERROR(200) messages which were not necessary and should now not appear anymore. New feature: ListIssues changed in layout and now also shows the first couple of words from the issue description. Bug fixed: Since Zope 2.5.x, when you add a ZCatalog it does not automatically create a Vocabulary. Added that to InitZCatalog(). New feature: Improved the use of Recent history so the page templates will now show them without having to create a Batch object. This will decrease rendering time. New feature: If you search an click a found issue, '?=' is not passed in the URL but still works the same. More convenient for copy-and-paste URLs without the search argument. New feature: All templates are now interfaced as CheckoutableTemplates (see http://zope.org/Members/peterbe/CheckoutableTemplates) This means that any IssueTrackerProduct instance's templates can easily be customized without having to change any sourcecode and makes it possible to install upgrades. New feature: Almost all occurances of absolute URLs in the generated HTML has been replaced by relative ones. This makes the resulting HTML slightly smaller in size. New feature: ListIssues and CompleteList is now much faster if you are not doing a search. It was before doing a search on nothing instead of using objectValues(). Great speed improvement. New feature: POP3Account now has a configurable port number. Bug fixed: POP3 was not working in Zope270 due to a bad class import. - 0.5.2 Bug fixed: Added View security on RSS feed. Bug fixed: Removed the use of the variable 'yield' since this is now a reserved keyword in Python 2.3.x New feature: If you're logged in to Zope, your fromname and email is stored so that if you loose your cookie but log in the same the fromname and email is still there. Bug fixed: preParseEmailString() in IssueTrackerUtils() could return None when expecting list, now it returns [] in this case. Affected POP3. Bug fixed: Email and followup action shown separatly now on "5 Latest Issues". Bug fixed: Sometimes the "Notify the others" on followup showed incorrect results. Bug fixed: Subscribers aren't automatically added to all next issues. New feature: List Issues now shows what last happened in every issue. New feature: "5 Latest Issues" shows who posted the last followup. New feature: If the submitter is in Always notify, he is not getting the Always notify email. - 0.5.1 Bug fixed: AddIssue and QuickAddIssue wasn't properly implemented with the ClassSecurityInfo() which would cause a "unauthorized" error without login prompt if a parent object has the View permission switched off. Bug fixed: The accesskeys previously implemented didn't work properly in Internet Explorer so I took it off until I know more about adding accesskeys. New feature: Accesskeys to the main tabs. Try for example: ALT + h New feature: There is now a 'Show Always notify status' option if you want to display which Always notify that have been notified. Very useful to the "issue adder" if uncertain who gets to know about the added issue. Default is off. See Advanced properties. New feature: If you call rss.xml?show=all then it also shows threads/follow ups are items with "Followup to:" added to the title of the issue. Bug fixed: rss.xml did not sort on 'issuedate' but on default sortorder which could become confusing. Bug fixed: When using your own statuses and the first one is not 'open', you would get an error when trying to add an issue when not running as manager. Bug fixed: When creating an issuetracker instance and using the Properties Wizard some default boolean values were incorrectly saved. Bug fixed: Creation of emails was buggy because of spelling misstake. It read '\r\b' when it should have been '\r\n'. Bug fixed: Dodgy emails wheren't ignored properly. Now they are. Bug fixed: "(mail@peterbe.com) bla bla" was converted to: "(mail@peterbe.com) bla bl" but now that is fixed. - 0.5.0b New feature: When viewing an issue, the Add followup etc. buttons is only shown at the top. At the bottom is a minial version of the Add Followup form. New feature: Now statuses are no longer hardcoded. See the Properties tab where each line is a state,action combo of statuses. Looking at the existing list it should be obvious how it works. New feature: Download button and the Confidential & Hide me options are now by default hidden. New feature: JavaScript encoded email hyperlinks. Idea taken from http://www.zope.org/Members/jmeile/email%20encoder A new property has been introduced for this. See bottom of Properties tab. This is **recommended** for public instances. New feature: A simple Statistics page. It's linked from the Home page if you're logged in as Manager or if you have switched of the Private Statistics property. New feature: Inbound emails now get a confirmation message sent back. This is optional and for it to work you need to redeploy standards to get the SendInboundEmailConfirm_script Bug fixed: Accepting email objects can not be created if the email address is already used as an always-notify to prevent notifications becoming inbound email. Bug fixed: Dodgy email attachments are now ignored thanks to an added try & except statement. New feature: When you upgrade the product some new properties might have been introduced but not instanciated for. Visit the Management tab and see the All properties header. New feature: Inbound email via POP3. You can now set up one or more POP3 accounts each with one or more email addresses that are dedicated to sniff for emails sent to it that is converted to issues. It depends on the email package from http://mimelib.sourceforge.net/ and if you want to strip HTML formatted emails you are advised to install Strip-o-Gram from http://www.zope.org/Members/chrisw/StripOGram For this to work you are expected to set up some sort of cron job to periodically check for new email. Bug fixed: Lines that start with a URL or an email address turned to e.g. copyright@dot.com. Now that has been fixed. Bug fixed: Removing several groups in the Notifyable groups now works. Thank you Wolfgang Reinelt. Bug fixed: Adding and removing other properties now work. Bug fixed: Open option available when issue already Open. (was because it tested if 'Open'=='open') New feature: Added createIssueObject() method so that you'll be able to create issue objects other than via the web. New feature: Added Subscription to issues. See Properties tab to enable this. Bug fixed: Searching for name or email was before assumed AND, but now it assumes OR. New feature: File attachements to followups. See Properties tab. Bug fixed: Improved getRoot() even more since last bug fix was not sufficient. Bug fixed: When pressing the Delete button you no longer get a Javascript error. Bug fixed: Improved getRoot() when using Virtual Hosts Bug fixed: When pressing 'Save Changes' in the Properties tab the page was returned completely blank. Now it "redirects" back to the Properties tab as expected. Bug fixed: ShowIssueData and the 'change these attributes' action link was misspelled. Now fixed. Gave up on the ReportLab module. CompleteList will have to suffice for now. Bug fixed: UpdateCatalog() now clears the catalog before it reindexes all objects. New feature: added showURL2Issue() which concatenates too long URLs in ShowIssueData. Bug fixed: Search highlight does now not mess with tags. Try searching for 'strong' or 'p'. Before it looked odd. Bug fixed: Latest issues on homepage is now latest issues. Before it used cookie sortorders. - 0.4.9b Improved "5 latest issues" to indicate followups. Improved wording in batchlinks. Improved search results so that it applies sorting based on the actual search. New feature: Comments searchable. Together with this, see the Management tab for the new Update Catalog button which you'll need to press. - 0.4.9a Bug fixed: Searching the catalog with Zope2.6.1b1 New feature: Added Properties Wizard for when you create an instance. Can be reached from the Properties tab too. New feature: Added favicon.ico object. Improved look of the StandardHeader and standards.css This requires redeployment. Bug fixed: Always notify crashed if no always_notify. New feature: Complete batch alternative "Show them all". Bug fixed: filteroptions now stored in session. New feature: Hidable filter options. New feature: Sortorder settings stored in cookie now. New feature: CompleteList page, shows all of issues and their comments. Improved addhrefs() to ignore ending brackets, dots, commas and semicolon. Improved manage_editIssueTrackerProperties() to use __dict__ instead of exec New feature: cache prevent based on a property called 'Stop cache' Requires that you redeploy StandardLook. Bug fixed: ListIssues now has security settings like it's supposed to have. New feature: If you set 'Allow issue attribute change' in Properties managers can change the properties of an issue once it's been submitted. Thanks Robert Allyn for suggesting this. Bug fixed: 'Notify others' option was ignored whilst you're previewing a followup. Bug fixed: how always_notifys are sent out. Thanks Robert Allyn for noticing this. New feature: to Management called ReplaceEmail. - 0.4.8a Added HREFs to URLs in text. Fixed so that anonymous users could preview followups. Bug fixes when UpdateCatalog() has been invoked. Made getRecentHistory() careful with deleted issues. Fixed some bug where instance variable name_cookiekey was used. - 0.4.7b Removed gif [action]buttons and used CSS instead. (faster loading) Added always_notify property so that you can have people that get emails silently about all new issues added. This works together with Notifyables. Made it possible to search by Issue id. Type in an issue id and it takes you there. Made emailstring cookies be per instance but fromname and email is across all instances. Added "Your Recent History" feature. It's "cacheconfusion" is debatable still. Changed the searching so that when searching the title attributes is wrapped with two wildcards on both sides. Will now find "This is the title..." when searching for "itl". Added preview when adding a followup. Fixed bug in "Complete redeployment" Now you can Send2Friends from any issue and not only newly added ones. (requires you to redeploy SendIssue2Friends_script) Added link to document about Structured Text. Fixed little bug in SendIssue2Friends_script so it saves email address even if emails fail to send. Removed lots of redundant code. Especially from IssueTrackerUtils. Created the Issue Tracker Notifyable Container folderish object so that many instances can share the same notifyables. Made notifyable groups a class with 'Issue Tracker Notifyable Group' objects instead of just a list property. Separated out the notifyables stuff to IssueTrackerNotifyables.py. Created IssueTrackerConstants.py module for better software design. Usability improvments to Add Issue, Quick Add Issue and Management. - 0.4.6a File attachments feature (see properties to turn it on). Nice and cachable URLs now used for sortorder, reverse and batchsizing. ListIssues/sortorder-sections/reverse-1/start-12 ...instead of... ListIssues?sortorder=sections&reverse=1&start=12 Improved AddIssue, QuickAddIssue and AddFollowup so that it sets focus in the first field of the input first automatically. (requires StandardLook object refreshed) Modified generateID() to generate more sensible ids independent of their location in space. Minor improvements to the dispatcher.html object in standards. Fixed the tabs for IssueNotifications. Fixed the tabs for IssueThreads. - 0.4.5b Fixed some major bugs for sending out emails. You must now redeploy the dispatcher.html object. Added search feature. Queried word is highlighted case insensitivly. - 0.4.4b What makes an IssueTracker manager is now stored in 'manager_roles' property. Emailstrings on new issues for multipmail is now saved in a cookie. You need to Redeploy the SendIssue2Friends_script object (i.e. delete it and visit the Management tab and press "Deploy and preserve existing") Fixed a typo that broke the batching of lots of issues. Twice. - 0.4.4a Added sendEmail() method and changed SendIssue2Friends_script.py correspondingly. Added the filter options at the bottom of ListIssues (for evaluation) - 0.4.3 Started making the ZClass product a python product