Redmine 0.9.2 released
Redmine 0.9.2 was posted to Rubyforge yesterday. This is a release for the 0.9.x series of Redmine that includes 15 bugfixes since the 0.9.1 release. Upgrading from 0.9.1 should follow the standard upgrade process.
Redmine 0.9 officially released
Jean-Philippe just posted the official 0.9 release of Redmine to the servers. This is the first official release of the Redmine 0.9 branch that has been under development since December 2008. It includes over 269 new features and bug fixes. You can find the entire list of changes on the 0.9.0 and 0.9.1 roadmaps but here are some of my favorites:
- Asynchronous email delivery - can really speed up email delivery, which I written about before
- Browse through Git branches
- Copy A Project
- REST API for authentication
- Rails 2.3.4 support - it's actually 2.3.5 now but this opened up so many more API methods for Redmine plugins
- Remove email body via a delimiter
- Set session store to cookie store by default - this means no more 1000s of ruby_session files in /tmp
- Unlimited subproject nesting
- User groups
What are your favorite new features? What are you wanting to get added to the next major release of Redmine?
Community Update #6
There's been a lot of activity in the Redmine community over the past few months. Here are some highlights from November 2009:
Code changes
Close versions
Versions can now be given a status which will close a version, preventing assigning new issues to it (#1245). This is great if you want to prevent adding additional features to a version, like during a release process. The three version statuses are:
- open: no restriction
- locked: can not assign new issues to the version
- closed: can not assign new issues and can not reopen assigned issues
Url to fetch changesets for a repository
In #2925 a new action was added to allow fetching the changesets for a repository to be triggered by a url. This means that when:
http://your-redmine.com/sys/fetch_changesets is called Redmine will fetch all of the changesets for all projects.
You can also specific only one project to fetch with http://your-redmine.com/sys/fetch_changesets?id=my-project-id.
Update trackers from the issue form
Feature #2405 changed the issue form so the Tracker Type can be changed as part of an issue update. This means that if a Feature was entered incorrectly as a Bug, it can be updated directly. Doing this used to require Moving the issue first.
Add or remove columns from the issue list
Feature #4272 adds a new set of options to the Issues list filters. Now you can add, remove, and reorder columns on the fly. I've found this useful for running reports on the issues like: "What are the target versions of issues that have an estimate, are due this week, and are assigned to someone?".
Tree based menus
Redmine will now support Tree based menus. This means any of the menus (the project menu, the top menu, the administration menu) can now have submenus and submenus. The Redmine core isn't taking advantage of this change yet, but some plugins have created additional menus and I suspect this will be used more in the near future.
The feature request shows an example of how the menus are structured as well as how to use the new API.
Allow custom fields for Versions
#4219 added support for defining custom fields on Versions.
Copy and Move
A 'Copy' check box was added to the Issue Move form. This will make it easy to copy multiple issues to another area of Redmine (e.g. different project, different Tracker). Added for Feature #1847.
Managers able to create subprojects
#2963 fixed a bug so users with the "Add Project" permission can now create sub projects. Before, they could only create top level projects.
"View Issues" user permission
#3187 adds a new permission "View Issues". This permission has always been "on" for users but now it is possible to turn it off if you don't want someone to see the issues list at all.
Allow [#id] as subject to reply by email
When the Email Receiving option is Redmine is configured, sending an email with the subject line of:
Subject: [#101]
would not find issue #101 correctly. Bug #3653 corrects this.
child_pages wiki macro on with ?version in URL
#4152 added the ability to specify a specific page version when using the child_pages wiki macro.
Community Events
6 new themes from Rajesh Krishnan
Rajesh Krishnan has released 6 new themes for Redmine. Each one has a different color scheme with some minor variations. If you're looking for a new theme for your Redmine, check them out.
Screenshot pasting plugin
Jean-Philippe Lang posted a quick plugin for Redmine that shows how a screenshot can be pasted directly into the issue form using a Java applet.
Redmine Harvest plugin
Jim Mulholland created a plugin to integrate Harvest time tracking into Redmine. He includes a short screencast of how it works on his blog post.
Scrum PM plugin
Marcin Jędras is working on a Scrum plugin for Redmine. It current supports some drag and drop planning but he's planning to add more features in the next releases.
iRedmine - iPhone app
Thomas Stägemann has released an iPhone app for Redmine called iRedmine. It's released under the GPL and the code is available on Github. I've tried it out and it's a great start. There are still some bugs but I've already found it useful, especially while traveling.
Redmine 0.9 RC Released
On January 9th, Jean-Philippe released the first release candidate for Redmine 0.9. This is a preview release intended to catch any final bugs before the official stable release. If you have been waiting to use the new features of Redmine 0.9, now would be the best time to upgrade your testing and staging systems.
If you find a new bug, please report it to the issue tracker. We're hoping to have the next release in a couple of weeks, either another release candidate or the stable 0.9 release.
0.9 Feature Freeze
In case you haven't heard yet, Redmine 0.9 is getting ready to be released. We've just put it into a feature freeze to get ready for the first Release Candidate. If you would like to help test the new release, upgrade to the 0.9-stable branch and let us know about any bugs that you find. If we can get enough help to test this Release Candidates, we should be able to have a final release in January 2010.
Jean-Philippe has also posted a short overview of the major changes coming in 0.9. The version page for 0.9 lists all of the new features and bug fixes (242 at the moment).
Question for the Redmine Community: Bug fix releases or release new plugins?
I wanted to make a short post to ask for some feedback on a question I just posted my development blog. I asked which people would prefer: "Bug fix releases to my existing plugins or the release of new plugins that are complete?"
If you have a minute, I'd love to hear what you think. You can leave a comment here or on my original blog post.
Thank you.
Community Update #5
There's been a bunch of activity in the Redmine community lately. This post will highlight some of the major changes from September and October.
Code changes
Groups
Jean-Philippe Lang added group support to the Redmine trunk. This makes it easy to assign a set of people to each project. Each group can be given an existing Role in Redmine so you can control their permissions using the existing settings. Added in r2869 for Issue #1018.
Attachments are added to an issue even during a failed save
A bug was fixed when a user would:
- Try to post an update to an issue with a file attachment.
- The update failed because someone else updated the issue first.
- Attachments would still be added to the issue, without a journal entry.
r2875 changed this so the attachments would be deleted if the update failed (step #3). I don't agree with the behavior, I'd rather have Redmine store the attachments and then try to reattach them after the user resubmits. Added for Issue #3846.
Include spent time in the Activity
When time is logged to a project, it can now be included as part of the Activity stream. This also works on the cross-project Activity stream (e.g. http://example.com/activity). Added in r2877 for Issue #3809.
Customize the Issue filters on custom queries
Issue #2883 added the ability to edit the filters on a custom query. So if you use custom queries for reporting, you can now add or remove filters to modify the data that's displayed without having to edit the custom query itself.
Remove Watchers
Jean-Philippe Lang added the ability to remove issue watchers in r2977. I've been missing this feature for some time, since I use watchers to make sure specific people are notified of changes to issues.
Hide user profiles if they have no visible activity
User profiles (at /account/show/user-id) are now hidden unless the user has any public activity. This will be useful to hide user accounts who should not be listed in the public. Added in r2986 for Issue #3720.
Community Events
Backlogs plugin
Mark Maglana released the Backlogs plugin, a plugin that will help a team visualize the work in progress and work remaining. The announcement contains a url to a demonstration of the plugin.
Workload plugin
Christopher Mann created a Workload plugin for Redmine. It looks interesting and might compliment the Schedules plugin. The plugin can be downloaded from the forum thread or from Github.
Amazon S3 storage plugin
Christopher Dell has created a plugin that will let Redmine save file uploads to Amazon's S3 service. I'm extremely interested in this, since S3 storage is very cheap and makes hosting Redmine in the cloud a lot easier. I'm planning on trying out the plugin and posting a review of it here.
Bugzilla migration script
Ralph Juhnke has posted a new migration script to convert a Bugzilla install to Redmine. His script has been posted to Github and should work with both Redmine 0.8.x and trunk.
Redmine Repository Controls plugin
Brian created the Redmine Repository Controls plugin. This plugin allows more fine grained repository access control and permissions, based on Subversion's SVNAuthz file. It currently only supports Subversion but he's left the ability to support any SCM that uses WebDav. More information can be found on it's Google Code page.
Redmine Risk plugins
Daniel Neis Araujo and Nicolas Bertet both created two different risk management plugins for Redmine. The plugins are both trying to make it easy for Redmine users to define and evaluate the different risks that are involved in a project. As I haven't looked at either one yet, if you are using one please let me know what you think in the comments.
Community Update #4
I have a lot of updates from Redmine for the Community Updates so I'm going to split them into a few posts. This update will cover events from July 13th through September 1st.
Code changes
Git Branch support
Adam Soltys created a patch to add branch support for the git SCM repository. This patch will let you browse through all of the branches in a git repository including the revisions and diffs. It's gone through a few bug fixes but I've had some great experience using it in production on my Redmine so far. This was committed in r2840 for Issue #1406.
If you would to try this out, my Stuff To Do project is public.
Exporting a custom issue query to PDF will use the custom columns
In r2841 Jean-Philippe Lang fixed a bug that prevented custom columns from working with the issue list PDF export.
Journal entry in Issue not displaying correctly
I added a small tweak to the Journal entries (Issue notes) so any lists are aligned properly when Gravatars are enabled or disabled. Committed in r2848 for Issue #3771.
Community Events
Wiki Extensions plugin
Haru Iida has made several updates to his Wiki Extensions plugin. It's under rapid development so if you're interested in it I'd recommend watching the forum thread about it.
Code Review plugin
Haru Iida also released a few new versions of the Code Review Plugin with a bunch of bug fixes and compatibility updates. You can find the release notes in these forum topics: Code Review Plugin 0.2.0 Released. and Code Review Plugin 0.2.7 Released..
NewIssueAlerts plugin
chantra created a new plugin called NewIssueAlerts. When it's installed, it will let you setup a Redmine project to add an email address into the new issue email notification. This would be useful to notify specific people whenever an issue is created. You can read about the plugin on the forum thread and download the plugin from Github
Global Filter Plugin
Kumudha Rangachari posted the Global Filter plugin which will display a list of your global filters on the Redmine homepage. This would be very useful if you use saved Queries a lot and need to navigate to them quickly. The wiki page has some documentation as well as the Readme file on the Github project.
It also includes a related change which I think is interesting. On the issue list there will be a new set of filters which can be used to further the issue list to show only specific projects. This is visible on the wiki page in the screenshot at the very bottom. Personally, I think this feature would be good to be included in the Redmine core.
Default Assigned User
Robert Chady created a plugin that adds the ability to automatically assign an issue to a default user when it's created. I'm thinking of using this on my smaller projects, where one person is responsible for the majority of the work. You can get the plugin from Github and read about it in Issue #482.
I'm thinking about writing these posts at the end of every month. Let me know if you like that idea in the comments below.
Redmine 0.8.7 Released
Redmine 0.8.7 was just released yesterday, November 15th. This is a point release which fixes a major security vulnerability. If you're running a public Redmine server, it's highly recommended that you upgrade as soon as possible.
CSRF Security Vulnerability
The Redmine security team was contacted by p0deje about a potential CSRF vulnerability with some example code to exploit it. After reviewing it, we created a fix and rushed out 0.8.7 to address the vulnerability.
Hide the paragraph terminator on HTML exports
On the wiki pages there is a paragraph terminator (¶) after each heading to make it easy to link to a specific section of the page. As of r3026, this will now be hidden on the HTML export of the page until the heading is hovered over. Issue #4194.
Start date not included in the spent time report with SQLite
0.8.7 includes a fix for the Spent Time report with SQLite. It appears that the starting date was using the time of "00:00:00" with the dates which caused SQLite to exclude today in the range. This should be fixed in r3009, Issue #3112
Preformatted tags with <pre would be incorrectly formatted
You can now enter tags starting with pre into a <pre> block. There was a bug where Redmine would think that the content should have another <pre> tag added instead of just rendering the tag as it was entered. For example if you enter some xml inside a pre sections like:
<pre>
<xml>
<prepared-statement>Some xml</prepared-statement>
</xml>
</pre>
Redmine was seeing the inner pre in prepared-statement and thought it was another preformatted block. This is now fixed in r3030, Issue #4125
Password field on the login page was styled differently
On the login page for Redmine, the password field was styled differently on the alternative theme than any other text fields. r3032 adds some styling rules so the fields will match. Issue #3845.
To see more details about all of the changes in 0.8.7, check out the Changelog posted to Redmine.org.
Eric Davis

