Activity log for bug #934724

Date Who What changed Old value New value Message
2012-02-18 04:27:46 Eike bug added bug
2012-02-18 04:27:58 Eike bug-repo-syncer: milestone 0.2.0
2012-02-18 04:28:13 Eike bug-repo-syncer: importance Undecided Wishlist
2012-03-05 17:23:52 Eike bug-repo-syncer: status New Confirmed
2012-03-05 17:23:52 Eike bug-repo-syncer: assignee Eike (eike-welk)
2012-03-05 17:23:53 Eike description Bugs have interdependencies among each other, and to additional objects, like Wiki pages and Blueprints. These links should be translated when the bug is transfered to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. Bugs have interdependencies among each other, and to additional objects, like Wiki pages and Blueprints. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates.
2012-03-06 15:10:47 Eike bug-repo-syncer: milestone 0.2.0 0.3.0
2012-03-06 15:10:48 Eike description Bugs have interdependencies among each other, and to additional objects, like Wiki pages and Blueprints. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * Scenario 1: New bugs in one repository, that link each other. * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. == Dependencies == Probably: Bug #262 (Internal ID should be permanent)
2012-03-09 12:01:21 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * Scenario 1: New bugs in one repository, that link each other. * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. == Dependencies == Probably: Bug #262 (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * Scenario 1: New bugs in one repository, that link each other. * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. == Dependencies == * TranslateBugLinks * Probably: Bug #262 (Internal ID should be permanent)
2012-03-12 07:16:32 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * Scenario 1: New bugs in one repository, that link each other. * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. == Dependencies == * TranslateBugLinks * Probably: Bug #262 (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * Scenario 1: New bugs in one repository, that link each other. * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. == Done == Basic text replacement algorithm. == Dependencies == * TranslateBugLinks * Probably: Bug #262 (Internal ID should be permanent)
2012-03-13 00:34:20 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * Scenario 1: New bugs in one repository, that link each other. * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. == Done == Basic text replacement algorithm. == Dependencies == * TranslateBugLinks * Probably: Bug #262 (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * Scenario 1: New bugs in one repository, that link each other. * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. == Problems == With current architecture the algorithm will never overwrite discovery links. After a successful translation, discovery links are the same as regular links. The merging algorithm can not see that there is a discovery link in the original text that came from the repository. Furthermore the text is the same in all repositories. Therefore the merging algorithm thinks that no updates are necessary to any repository, when in fact it became possible to translate a ''discovery link''. == Done == Basic text replacement algorithm. Experimental integration into RepoControllerDummy. == Dependencies == * TranslateBugLinks * Probably: Bug #262 (Internal ID should be permanent)
2012-03-18 09:11:40 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * Scenario 1: New bugs in one repository, that link each other. * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. == Problems == With current architecture the algorithm will never overwrite discovery links. After a successful translation, discovery links are the same as regular links. The merging algorithm can not see that there is a discovery link in the original text that came from the repository. Furthermore the text is the same in all repositories. Therefore the merging algorithm thinks that no updates are necessary to any repository, when in fact it became possible to translate a ''discovery link''. == Done == Basic text replacement algorithm. Experimental integration into RepoControllerDummy. == Dependencies == * TranslateBugLinks * Probably: Bug #262 (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly:  * Scenario 1: New bugs in one repository, that link each other.  * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. The bug data format gets a special bug ID for links. This greatly simplifies the design for the Launchpad sub system. There we use the bug-task's self-link as the bug ID, while Launchpad itself uses a numeric bug ID. * Maybe Bug Repo Syncer should switch to numeric bug IDs on Launchpad. * The algorithm for loading bugs would become only slightly more complicated and slightly slower. * Switching between "staging" and "qastaging" would become very easy. They use different self links, but the same numeric bug IDs. == Problems == With current architecture the algorithm will never overwrite discovery links. After a successful translation, discovery links are the same as regular links. The merging algorithm can not see that there is a discovery link in the original text that came from the repository. Furthermore the text is the same in all repositories. Therefore the merging algorithm thinks that no updates are necessary to any repository, when in fact it became possible to translate a ''discovery link''. == Done == Basic text replacement algorithm. Experimental integration into RepoControllerDummy. == Dependencies ==  * TranslateBugLinks  * Probably: Bug #262 (Internal ID should be permanent)
2012-03-20 12:55:09 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly:  * Scenario 1: New bugs in one repository, that link each other.  * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. The bug data format gets a special bug ID for links. This greatly simplifies the design for the Launchpad sub system. There we use the bug-task's self-link as the bug ID, while Launchpad itself uses a numeric bug ID. * Maybe Bug Repo Syncer should switch to numeric bug IDs on Launchpad. * The algorithm for loading bugs would become only slightly more complicated and slightly slower. * Switching between "staging" and "qastaging" would become very easy. They use different self links, but the same numeric bug IDs. == Problems == With current architecture the algorithm will never overwrite discovery links. After a successful translation, discovery links are the same as regular links. The merging algorithm can not see that there is a discovery link in the original text that came from the repository. Furthermore the text is the same in all repositories. Therefore the merging algorithm thinks that no updates are necessary to any repository, when in fact it became possible to translate a ''discovery link''. == Done == Basic text replacement algorithm. Experimental integration into RepoControllerDummy. == Dependencies ==  * TranslateBugLinks  * Probably: Bug #262 (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly:  * Scenario 1: New bugs in one repository, that link each other.  * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. The bug data format gets a special bug ID for links. This greatly simplifies the design for the Launchpad sub system. There we use the bug-task's self-link as the bug ID, while Launchpad itself uses a numeric bug ID. * Maybe Bug Repo Syncer should switch to numeric bug IDs on Launchpad. See Bug #312 * The algorithm for loading bugs would become only slightly more complicated and slightly slower. * Switching between "staging" and "qastaging" would become very easy. They use different self links, but the same numeric bug IDs. == Problems == With current architecture the algorithm will never overwrite discovery links. After a successful translation, discovery links are the same as regular links. The merging algorithm can not see that there is a discovery link in the original text that came from the repository. Furthermore the text is the same in all repositories. Therefore the merging algorithm thinks that no updates are necessary to any repository, when in fact it became possible to translate a ''discovery link''. == Done == Basic text replacement algorithm. Experimental integration into RepoControllerDummy. == Related == * TranslateBugLinks * Bug #312 (Switch to numeric bug IDs on Launchpad)  * Bug #262 (Internal ID should be permanent)
2012-03-20 23:48:16 Eike bug-repo-syncer: status Confirmed In Progress
2012-03-21 10:08:39 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly:  * Scenario 1: New bugs in one repository, that link each other.  * Scenario 2: The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. The bug data format gets a special bug ID for links. This greatly simplifies the design for the Launchpad sub system. There we use the bug-task's self-link as the bug ID, while Launchpad itself uses a numeric bug ID. * Maybe Bug Repo Syncer should switch to numeric bug IDs on Launchpad. See Bug #312 * The algorithm for loading bugs would become only slightly more complicated and slightly slower. * Switching between "staging" and "qastaging" would become very easy. They use different self links, but the same numeric bug IDs. == Problems == With current architecture the algorithm will never overwrite discovery links. After a successful translation, discovery links are the same as regular links. The merging algorithm can not see that there is a discovery link in the original text that came from the repository. Furthermore the text is the same in all repositories. Therefore the merging algorithm thinks that no updates are necessary to any repository, when in fact it became possible to translate a ''discovery link''. == Done == Basic text replacement algorithm. Experimental integration into RepoControllerDummy. == Related == * TranslateBugLinks * Bug #312 (Switch to numeric bug IDs on Launchpad)  * Bug #262 (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly:  * "Complex Scenario 1": New bugs in one repository, that link each other.  * "Complex Scenario 2": The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. == Problems == Writing garbage (discovery format) links to the repositories first is inelegant. In "Complex Scenario 2" the current algorithm duplicates all lines that contain bugs. == Done == Numerical bug IDs are now used for Launchpad too. The architecture for translating bugs has been completely changed. All translation algorithms can now be run multiple times (in principle). Basic text replacement algorithm. Experimental integration into RepoControllerDummy. == Related == * TranslateBugLinks * Bug #261 (Truly immutable bugs) * Bug #312 (Switch to numeric bug IDs on Launchpad)  * Bug #262 (Internal ID should be permanent)
2012-03-23 21:00:35 Eike summary Translate links and bug numbers in text. Translate bug-links in text.
2012-03-25 22:44:04 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly:  * "Complex Scenario 1": New bugs in one repository, that link each other.  * "Complex Scenario 2": The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. == Problems == Writing garbage (discovery format) links to the repositories first is inelegant. In "Complex Scenario 2" the current algorithm duplicates all lines that contain bugs. == Done == Numerical bug IDs are now used for Launchpad too. The architecture for translating bugs has been completely changed. All translation algorithms can now be run multiple times (in principle). Basic text replacement algorithm. Experimental integration into RepoControllerDummy. == Related == * TranslateBugLinks * Bug #261 (Truly immutable bugs) * Bug #312 (Switch to numeric bug IDs on Launchpad)  * Bug #262 (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * "Simple Scenario": All bug IDs are known.  * "Complex Scenario 1": New bugs in one repository, that link each other.  * "Complex Scenario 2": The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. To avoid duplication of lines that contain links in "Complex Scenario 2", bug IDs (and preliminary `KnownBug` records) are created for all unknown bugs, prior to translation of bug-links. == Problems == Launchpad and Trac controllers use `int` instances as Bug IDs, the algorithm and most tests however use `str` instances as keys. == Done == Launchpad and Trac controllers changed to use `str` as bug IDs. These strings however are integer numbers that have been converted to strings. Numerical bug IDs are now used for Launchpad too. The architecture for translating bugs has been completely changed. All translation algorithms can now be run multiple times (in principle). Basic text replacement algorithm. Experimental integration into `RepoControllerDummy`. Revised link translation algorithm Integrated revised algorithm into the whole program. == Related == * TranslateBugLinks * Bug #261 (Truly immutable bugs) * Bug #312 (Switch to numeric bug IDs on Launchpad)  * Bug #262 (Internal ID should be permanent)
2012-03-25 22:50:08 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "Bug #123" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * "Simple Scenario": All bug IDs are known.  * "Complex Scenario 1": New bugs in one repository, that link each other.  * "Complex Scenario 2": The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. To avoid duplication of lines that contain links in "Complex Scenario 2", bug IDs (and preliminary `KnownBug` records) are created for all unknown bugs, prior to translation of bug-links. == Problems == Launchpad and Trac controllers use `int` instances as Bug IDs, the algorithm and most tests however use `str` instances as keys. == Done == Launchpad and Trac controllers changed to use `str` as bug IDs. These strings however are integer numbers that have been converted to strings. Numerical bug IDs are now used for Launchpad too. The architecture for translating bugs has been completely changed. All translation algorithms can now be run multiple times (in principle). Basic text replacement algorithm. Experimental integration into `RepoControllerDummy`. Revised link translation algorithm Integrated revised algorithm into the whole program. == Related == * TranslateBugLinks * Bug #261 (Truly immutable bugs) * Bug #312 (Switch to numeric bug IDs on Launchpad)  * Bug #262 (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "[@[@BUGLINK "Bug #123"@trac @]@]" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "[@[@BUGLINK "Bug #123"@lp @]@]" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * "Simple Scenario": All bug IDs are known.  * "Complex Scenario 1": New bugs in one repository, that link each other.  * "Complex Scenario 2": The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. To avoid duplication of lines that contain links in "Complex Scenario 2", bug IDs (and preliminary `KnownBug` records) are created for all unknown bugs, prior to translation of bug-links. == Problems == Launchpad and Trac controllers use `int` instances as Bug IDs, the algorithm and most tests however use `str` instances as keys. == Done == Launchpad and Trac controllers changed to use `str` as bug IDs. These strings however are integer numbers that have been converted to strings. Numerical bug IDs are now used for Launchpad too. The architecture for translating bugs has been completely changed. All translation algorithms can now be run multiple times (in principle). Basic text replacement algorithm. Experimental integration into `RepoControllerDummy`. Revised link translation algorithm Integrated revised algorithm into the whole program. == Related == * TranslateBugLinks * bug #931828 (Truly immutable bugs) * [@[@BUGLINK "Bug #261"@lp @]@] (Truly immutable bugs) * bug #960163 (Switch to numeric bug IDs on Launchpad) * [@[@BUGLINK "Bug #312"@lp @]@] (Switch to numeric bug IDs on Launchpad)  * bug #936878 (Internal ID should be permanent)  * [@[@BUGLINK "Bug #262"@lp @]@] (Internal ID should be permanent)
2012-03-25 22:55:03 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "[@[@BUGLINK "Bug #123"@trac @]@]" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "[@[@BUGLINK "Bug #123"@lp @]@]" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly: * "Simple Scenario": All bug IDs are known.  * "Complex Scenario 1": New bugs in one repository, that link each other.  * "Complex Scenario 2": The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. To avoid duplication of lines that contain links in "Complex Scenario 2", bug IDs (and preliminary `KnownBug` records) are created for all unknown bugs, prior to translation of bug-links. == Problems == Launchpad and Trac controllers use `int` instances as Bug IDs, the algorithm and most tests however use `str` instances as keys. == Done == Launchpad and Trac controllers changed to use `str` as bug IDs. These strings however are integer numbers that have been converted to strings. Numerical bug IDs are now used for Launchpad too. The architecture for translating bugs has been completely changed. All translation algorithms can now be run multiple times (in principle). Basic text replacement algorithm. Experimental integration into `RepoControllerDummy`. Revised link translation algorithm Integrated revised algorithm into the whole program. == Related == * TranslateBugLinks * bug #931828 (Truly immutable bugs) * [@[@BUGLINK "Bug #261"@lp @]@] (Truly immutable bugs) * bug #960163 (Switch to numeric bug IDs on Launchpad) * [@[@BUGLINK "Bug #312"@lp @]@] (Switch to numeric bug IDs on Launchpad)  * bug #936878 (Internal ID should be permanent)  * [@[@BUGLINK "Bug #262"@lp @]@] (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "[@[@BUGLINK "Bug #123"@trac @]@]" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "[@[@BUGLINK "Bug #123"@lp @]@]" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly:  * "Simple Scenario": All bug IDs are known.  * "Complex Scenario 1": New bugs in one repository, that link each other.  * "Complex Scenario 2": The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. To avoid duplication of lines that contain links in "Complex Scenario 2", bug IDs (and preliminary `KnownBug` records) are created for all unknown bugs, prior to translation of bug-links. == Problems == == Done == Launchpad and Trac controllers changed to use `str` as bug IDs. These strings however are integer numbers that have been converted to strings. Numerical bug IDs are now used for Launchpad too. The architecture for translating bugs has been completely changed. All translation algorithms can now be run multiple times (in principle). Basic text replacement algorithm. Experimental integration into `RepoControllerDummy`. Revised link translation algorithm Integrated revised algorithm into the whole program. == Related ==  * TranslateBugLinks  * bug #931828 (Truly immutable bugs)  * bug #960163 (Switch to numeric bug IDs on Launchpad)  * bug #936878 (Internal ID should be permanent)
2012-03-25 22:55:18 Eike bug-repo-syncer: status In Progress Fix Committed
2012-03-25 22:56:13 Eike bug-repo-syncer: status Fix Committed Fix Released
2012-03-27 20:57:58 Eike description Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "[@[@BUGLINK "Bug #123"@trac @]@]" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like "[@[@BUGLINK "Bug #123"@lp @]@]" act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly:  * "Simple Scenario": All bug IDs are known.  * "Complex Scenario 1": New bugs in one repository, that link each other.  * "Complex Scenario 2": The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. To avoid duplication of lines that contain links in "Complex Scenario 2", bug IDs (and preliminary `KnownBug` records) are created for all unknown bugs, prior to translation of bug-links. == Problems == == Done == Launchpad and Trac controllers changed to use `str` as bug IDs. These strings however are integer numbers that have been converted to strings. Numerical bug IDs are now used for Launchpad too. The architecture for translating bugs has been completely changed. All translation algorithms can now be run multiple times (in principle). Basic text replacement algorithm. Experimental integration into `RepoControllerDummy`. Revised link translation algorithm Integrated revised algorithm into the whole program. == Related ==  * TranslateBugLinks  * bug #931828 (Truly immutable bugs)  * bug #960163 (Switch to numeric bug IDs on Launchpad)  * bug #936878 (Internal ID should be permanent) Bugs are dependent on each other, (and also to Wiki pages and Blueprints which are not regarded here). Inserting text like `Bug #123` act as links between the bugs, and the web front ends really produce links. These links should be translated when the bug is transferred to an other repository. The text of Trac bugs contains bug numbers and wiki links in the text. Bugs on Launchpad have several fields for interdependencies: related bugs/blueprints, duplicates. == Design Required == Translating bug-links in new bugs is problematic with the current data structures, because the IDs of new bugs become only known at the end of the algorithm. The bug-link translation infrastructure probably needs two passes. The following scenarios need to be handled flawlessly:  * "Simple Scenario": All bug IDs are known.  * "Complex Scenario 1": New bugs in one repository, that link each other.  * "Complex Scenario 2": The internal bug database has been lost. The repositories contain perfectly synchronized bugs, that link each other. It must be possible to reconstruct the database by downloading all bugs. More complicated scenarios don't need to work without errors. ==== Design ==== When links to unknown bugs are discovered, they are not really translated, but wrapped in a so called ''discovery format''. This format contains the original link, and the repository where it was discovered. Links in this ''discovery format'' are written to all repositories. When the bug IDs become known, these ''discovery links'' can be translated irrespective of the repository where they are stored. To avoid duplication of lines that contain links in "Complex Scenario 2", bug IDs (and preliminary `KnownBug` records) are created for all unknown bugs, prior to translation of bug-links. == Problems == == Done == Launchpad and Trac controllers changed to use `str` as bug IDs. These strings however are integer numbers that have been converted to strings. Numerical bug IDs are now used for Launchpad too. The architecture for translating bugs has been completely changed. All translation algorithms can now be run multiple times (in principle). Basic text replacement algorithm. Experimental integration into `RepoControllerDummy`. Revised link translation algorithm Integrated revised algorithm into the whole program. == Related ==  * TranslateBugLinks  * bug #931828 (Truly immutable bugs)  * bug #960163 (Switch to numeric bug IDs on Launchpad)  * bug #936878 (Internal ID should be permanent)