Activity log for bug #1033523

Date Who What changed Old value New value Message
2012-08-06 14:03:41 Curtis Hovey bug added bug
2012-08-06 14:40:39 Curtis Hovey summary Users get 503 because Lp has contradictory rules to unlink packages Users get 403 because Lp has contradictory rules to unlink packages
2012-08-06 14:42:43 Curtis Hovey description Launchpad's zcml states that anyone can unlink a package from a series. The rule is used on the distrribution and source package pages, and on the project's package pages. When translation message sharing was added, a condition was added to the code that will raise a forbidden error if the user attempts to unlink a package from a series that is sharing translations. A. When the rule was added, all places that show the remove packaging links should have been updated to use the code rules. so that Lp does not lie to users. I see a nominal attempt to guard the links on the source package's menu, which is seen less often than the DSP's page. B. I think the code rule is wrong. Packaging.userCanDelete() assumes that unlinking the package will also remove the shared messages accidentally. A common reason a series is unlinked is because a series was linked to several packages, which is wrong. Ubuntu does not loose data in this case. Secondly the permission check assumes that Packaging.owner entitles a group control the package. This is not so. Packaging.owner is the registrant. This check entitles sinzui and jelmer to change packaging because they registered 50% of all packaging links. If the link is wrong, anyone should be permitted to remove it. I think the restriction exists to prevent accidental loss of translations, and that could be solved by asking the user to confirm the the series with translations must be removed. The confirmation is not needed is the series is linked to several packages. Launchpad's zcml states that anyone can unlink a package from a series. The rule is used on the distrribution and source package pages, and on the project's package pages. When translation message sharing was added, a condition was added to the code that will raise a forbidden error if the user attempts to unlink a package from a series that is sharing translations. A. When the rule was added, all places that show the remove packaging links should have been updated to use the code rules. so that Lp does not lie to users. I see a nominal attempt to guard the links on the source package's menu, which is seen less often than the DSP's page. B. I think the code rule is wrong. Packaging.userCanDelete() assumes that unlinking the package will also remove the shared messages accidentally. A common reason a series is unlinked is because a series was linked to several packages, which is wrong. Ubuntu does not loose data in this case. Secondly the permission check assumes that Packaging.owner entitles a group control the package. This is not so. Packaging.owner is the registrant. This check entitles sinzui and jelmer to change packaging because they registered 50% of all packaging links. If the link is wrong, anyone should be permitted to remove it. I think the restriction exists to prevent accidental loss of translations, and that could be solved by asking the user to confirm the the series with translations must be removed. The confirmation is not needed is the series is linked to several packages. There already is a confirmation page, all that is needed is an explanation that translations are shared, do you still want to remove the packaging link?
2012-09-17 16:49:05 Curtis Hovey tags 403 message-sharing package-link 403 message-sharing package-link regression
2012-09-17 17:33:25 Curtis Hovey launchpad: assignee Curtis Hovey (sinzui)
2012-09-17 17:33:28 Curtis Hovey launchpad: status Triaged In Progress
2012-09-17 21:42:58 Curtis Hovey branch linked lp:~sinzui/launchpad/delete-packaging-link
2012-09-20 10:00:33 Launchpad QA Bot tags 403 message-sharing package-link regression 403 message-sharing package-link qa-needstesting regression
2012-09-20 10:00:35 Launchpad QA Bot launchpad: status In Progress Fix Committed
2012-09-20 12:46:27 Curtis Hovey tags 403 message-sharing package-link qa-needstesting regression 403 message-sharing package-link qa-ok regression
2012-09-24 12:15:50 William Grant launchpad: status Fix Committed Fix Released