The work done during the last week of GSoC includes the following features:
- Team subscription management. A user can mute/unmute particular team memberships in whole or only certain packages that belong to the team. A set of default keywords for the entire team or particular keywords for each package can also be set. - Receive updates for packages of a team. All members of the team receive package messages regarding packages in the team, if the message is tagged with a keyword that the user accepts for the given package (based on team package-specific keywords, team-keywords or user default keywords) and if the team/package is not muted. - Email commands related to teams. Email control commands similar to what is available for regular package subscriptions. Allows users to join a team, leave a team, list a team's packages (for private teams this works only if the user who sent the control email is a member of the team), list all public teams, and list all teams a certain user belongs to. - Import PTS existing PTS package subsciption info. A Debian-specific management command to ease the transition to the new service. Imports all existing package subscriptions, package-specific keywords and user default keywords based on the outputs of the bin/dump.pl and bin/dump-tags.pl scripts of the old PTS. - Export PTS data to UDD: an alternative format is provided for the output of the management command that lists source packages and their subscribers. The output is adapted to what the UDD expects. - Account password reset. A user is able to reset his account's password in case he has forgotten it. After following a confirmation link sent in an email message, he has access to a form to input a new password for the account. - Associate additional emails with an account. Users can add a new email address to their account in order to manage its subscriptions within the same PTS account. In order for the change to take effect, a confirmation link sent in an email message to the address to be added to the account needs to be followed. If the email address that is to be added to the account is already associated with an existing PTS account, the user may choose to merge the two accounts. For this, a confirmation is required from the account that is not initiating the merge. - Login via sso.debian.org. A PTS account is automatically created for DDs authenticated by sso.d.o. Additionally, any account that has a @debian.org address associated with it is not allowed to log in using a PTS-specific password and is directed to sign in at sso.d.o. - Enable South for schema migration for all apps that define any models. - Some model refactoring: use only a single PackageName model (currently the BinaryPackageName was separate from the reset) and use a single email model -- all email fields are now foreign keys to this model. As for the summary of the project: The existing Debian Package Tracking System was rewritten to use the Django Web framework. The rewrite managed to add new features to the System, such as user accounts and team management, as well as fix a few existing bugs. The application is easily extensible and configurable, which makes it easy for Debian derivatives to set up their own instances or other developers to join and hack on new features. The project followed a Test Driven Development strategy which means that all features are covered by appropriate functional and unit tests giving confidence that they work as expected. This is it for the final report regarding the Package Tracking System rewrite. In the end, I'd like to say that I've had quite a productive and interesting summer. The feedback my mentors provided has helped me learn and improve myself in many different aspects. Hopefully, the result we've produced will stand the test of time and prove to be an asset for the entire Debian community! Thank you once again for the opportunity to participate in the Google Summer of Code! Cheers, -- Marko Lalić email: [email protected] _______________________________________________ Soc-coordination mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/soc-coordination
