By storing history of the string inline in the same database record, we loose a lot of possible features:
- we don't know when and who declined a string (which is also very useful for .po file generation)
- we don't know when and who reactived a string by importing a .po file
- we don't know when and who demoted a translation to suggestion by approving another string
- we don't know if a string is result of a remote submission, web addition or bulk import
The attached patch tries to solve most of these issues by refactoring the history handling to its own table, which can then store detailed action information (uid, time, action type) for each translation. So we can track the whole history of a string even if it is approved, demoted, declined and then reactivated again :) This should also let us have certain new filters, like recently approved or reactived strings only, etc. (Not that I'm that keen on adding more and more filters).
Additionally to the above, I'd also like to fix this thing, which is not yet part of the patch:
- we don't know who initiated an import when the user used for import is different to who we save the import under
This is still all a work in progress, and I opened the 6.x-3.x branch to work on this (and allow for possible hotfixes to localize.drupal.org still if needed). I commit this for testing purposes though, but still planning to work on it more. (Tests are still passing with this patch :)
| Comment | File | Size | Author |
|---|---|---|---|
| #4 | refactor-history-even-more.patch | 30.66 KB | gábor hojtsy |
| refactor-history.patch | 23.12 KB | gábor hojtsy |
Comments
Comment #1
podaroksubscribe
Comment #2
gábor hojtsyBTW the update is not tested at all, so we need to test that too. Marking needs review for that (although already committed).
Comment #4
gábor hojtsyMoved on refactoring this to make the action medium separate from type, add a re-add type and fix several bugs with the upgrade path. Committing this and doing more testing with the upgrade path.