Enable translation import queue approval through API
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
Triaged
|
Low
|
Unassigned | ||
Ubuntu Translations |
Triaged
|
High
|
Unassigned |
Bug Description
The fix for bug 664327 means that the imports queue API can now be used to do a great part of the work in an automated way.
Now import queue maintainers can:
* Read all entries for a specific target (distribution, distro release series, project group, project, product release series, or person)
* Change the paths of entries
As a final request, and in order to fully automate the process and give maintainers full control upon entries without having to depend on the web UI or database surgery, it would be extremely useful to be able to approve entries through API.
This means making the setStatus method [1] work, as right now it does not allow to change the status of an entry. Some more info from an IRC conversation on #launchpad-dev:
<dpm> hi all, could someone give me a hand? I'm trying to use the API to manage the import queue entries in Ubuntu. While on the web UI I can change any entry's status, I don't seem to have the permissions when trying to do it with launchpadlib -> http://
<wgrant> dpm: Is import_into set?
<dpm> wgrant, what's import_into? I cannot find it in the api docs, and I did not set it
<wgrant> dpm: An import queue entry can't be approved until it has somewhere to be imported into. I'm not sure you can set that through the API.
<dpm> wgrant, ah so perhaps the setStatus call is missing an import_into parameter, you think?
(I mean in the api)
or the import queue entry is missing the attribute
<wgrant> dpm: Well, you'd need to set the target POFile or POTemplate.
<wgrant> Which means we'd need to export those two onto the API, which isn't done yet.
<dpm> ok, thanks wgrant, I think I'll file a bug, then
<henninge> wgrant, dpm: that is correct
<henninge> dpm: but there may be more to it because POTempalte and POFile entries might need to geet created during approval.
This would also mean less work for Launchpad Translations developers and LOSAs, as maintainers would no longer have to resort to them for import queue processing on a great number of entries. This could then be done through the API.
Rationale
---------
Right now, one of the tasks that takes most of the time from the Ubuntu Translations Coordinators team (UTC) is manual work in the imports queue: approving templates, fixing paths, blocking templates, etc. In the case of big source packages (take KDE or OpenOffice.org), manually processing hundreds of packages is a task that can take several hours or
days, which could be best spent working on community-related aspects -apart from the fact that repetitive manual work is very prone to mistakes, as I've had the pain to experience.
Often, when there really isn't any other option, we resort to the Launchpad Translations developers to fix entries through databasesurgery, but that's still not optimal: it takes both developer and LOSA time, and it is also not without a risk regarding entry data loss or corruption.
Thanks!
[1] https:/
Changed in rosetta: | |
status: | New → Triaged |
importance: | Undecided → Medium |
tags: | added: api |
Changed in launchpad: | |
importance: | Medium → Low |
summary: |
- Enable translation import queue approval through API + Launchpad: Enable translation import queue approval through API |
summary: |
- Launchpad: Enable translation import queue approval through API + Enable translation import queue approval through API |
Changed in launchpad: | |
assignee: | nobody → Emanuelle Pharand (ladykraken) |
Changed in ubuntu-translations: | |
assignee: | nobody → Emanuelle Pharand (ladykraken) |
Changed in launchpad: | |
assignee: | Emanuelle Pharand (ladykraken) → nobody |
Changed in ubuntu-translations: | |
assignee: | Emanuelle Pharand (ladykraken) → nobody |
Changed in launchpad: | |
assignee: | nobody → Emanuelle Pharand (ladykraken) |
Changed in ubuntu-translations: | |
assignee: | nobody → Emanuelle Pharand (ladykraken) |
information type: | Public → Private |
As in the previous API bug, I'm also adding a task for the ubuntu-translations project. Not a bug per-se, but as the queue which sees most activity and is most looked after is the Ubuntu one, I'd like the UTC team to be in the loop.