{ "info": { "author": "Eike Welk", "author_email": "Eike.Welk@gmx.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU General Public License (GPL)", "Natural Language :: English", "Operating System :: POSIX", "Programming Language :: Python :: 2", "Topic :: Software Development :: Quality Assurance" ], "description": ".. ############################################################################\n # Bug Repo Syncer - A program to synchronize bug repositories. #\n # #\n # Copyright (C) 2012 by Eike Welk #\n # eike.welk@gmx.net #\n # #\n # License: GPL V3 #\n # #\n # This program is free software: you can redistribute it and/or modify #\n # it under the terms of the GNU General Public License as published by #\n # the Free Software Foundation, either version 3 of the License, or #\n # (at your option) any later version. #\n # #\n # This program is distributed in the hope that it will be useful, #\n # but WITHOUT ANY WARRANTY; without even the implied warranty of #\n # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #\n # GNU General Public License for more details. #\n # #\n # You should have received a copy of the GNU General Public License #\n # along with this program. If not, see . #\n ############################################################################\n\n.. This text contains reStructuredText markup. You can convert it to HTML with\n the following command::\n\n rst2html.py README.txt README.html\n\n===============================================================================\n Bug Repo Syncer\n===============================================================================\n\n*Bug Repo Syncer* is a command line program to synchronize bug repositories. It\ncurrently works with Launchpad and Trac. It can in principle also be used to\nmigrate between these repositories. The main motivation to write this program,\nis the lack of a Mylyn connector for Launchpad, while there exists a Mylyn\nconnector for Trac. Additionally Launchpad has no integrated Wiki.\n\nThe program synchronizes its own bug trackers: the project's bugs on Launchpad\nwith a Trac site on Sourceforge. \n\nhttps://bugs.launchpad.net/bug-repo-syncer\n\nhttp://sourceforge.net/apps/trac/bug-repo-syncer/report/6\n\n*Bug Repo Syncer* is licensed under the GNU General Public License (GPL) \nVersion 3.\n\n\nDeficiencies\n===============================================================================\n\nThe program is currently incomplete. Also the approach to translate between\nrepositories with significantly different concepts, has inherent drawbacks.\n\n* *Bug Repo Syncer* does not synchronize bug comments.\n\n* Bug status values (status, priority, resolution, type) can only be roughly\n translated between repositories of different type. *Bug Repo Syncer* uses\n internally a fairly simple model, that is quite similar to the way how Trac\n works. When *Bug Repo Syncer* changes a bug, the status values are set in\n accordance with this simple model. This way information is lost, especially\n from Launchpad's fairly fine grained workflow.\n\n\nDependencies\n===============================================================================\n\nThe program is developed on Linux. It uses however nothing Linux specific,\nand may therefore work on other Unix-like operating systems such as Mac OS X. \n\nThe following software is required to run *Bug Repo Syncer*:\n\n**Python**\n An installation of the Python programming language, **version 2.6** or \n newer.\n\n**diff3**\n A command line program to merge text. Present on nearly all Linux and Unix\n installations.\n\n**Dateutil**\n A Python library to process dates. Usually installed on Linux by default.\n \n**Launchpadlib**\n A library to access launchpad from Python programs.\n Install it with:: \n\n pip install launchpadlib\n\n\nInstallation\n===============================================================================\n\nOpen a shell window, get administrative permissions, and type::\n\n pip install bug-repo-syncer\n\nAlternatively download the source archive, extract it, change into the\nextracted directory, get administrative permissions, and type the familiar::\n\n python setup.py install\n\nTrac Permissions\n----------------\n\nTo access a Trac repository with *Bug Repo Syncer* a user needs the permission\n``XML_RPC``. To make changes one additionally needs ``TRAC_ADMIN`` \npermission. (The tool needs administrative permission, because it does not\nrespect Trac's workflow, for reasons of simplicity.)\n\nThe ``XML_RPC`` permission is switched off by default (at least on\nSourceforge), and must be enabled. In the web front end go to \"Admin\" ->\n\"Permissions\". Search for ``XML_RPC`` in the \"Action\" drop-down list in the\nupper right of the page. Simply give everybody (\"anonymous\") ``XML_RPC`` \npermissions.\n\n\nOperation\n===============================================================================\n\n*Bug Repo Syncer* has the notion of a *project directory*, where configuration\nand data files are stored. For normal operation it is assumed that the user \nchanges into the project directory and types the synchronization command(s).\n\nSynchronization commands are executed with the ``bsync`` program, it uses\nsub-commands like Bazaar's ``bzr`` program.\n\nGeneral Options\n---------------\n\nThe general options precede the sub-commands. For example, synchronize and\nspecify the project directory explicitly::\n\n bsync --project-dir path/to/project/dir sync\n\n-h, --help \n Show a help message and exit.\n \n--version\n Show a version message and exit.\n\n--project-dir DIRECTORY\n Specify the directory with configuration and data files.\n\n(Sub-) Commands\n---------------\n\nAll sub-commands have their own option ``--help``, that shows a specific help\nmessage. To get the help message for the sub-command ``sync`` for example, type::\n\n bsync sync --help\n\n``init``\n........\n\nCreate a configuration file in the current directory. ::\n\n bsync init\n\nThe generated configuration file must be edited, so that it refers to your bug\nrepositories. The file format is documented quite extensively in the generated\nfile itself.\n\n``info`` \n........\n\nShow status of the project, and test the configuration file. ::\n\n bsync info\n\n\n``sync`` \n........\n\nSynchronize the repositories. ::\n\n bsync sync\n\nThis sub-command has further options:\n\n--since DATE_TIME \n Consider changes since this date (and time).\n\n--dry-run \n Don't change the repositories, instead show what the program would do. \n\n\nBug Reports, Wishes, and Hacking \n===============================================================================\n\nBugs reports and wishes can be filed in Launchpad, or in the Trac site on\nSourceforge. Use the repository that is convenient for you, as both\nrepositories are synchronized. \n\nhttps://launchpad.net/bug-repo-syncer\n\nhttps://sourceforge.net/apps/trac/bug-repo-syncer/report/6\n\nThe program is written in the Python programming language. Development is\ncoordinated on Launchpad, Bazaar is the version control system, the developer\nuses Eclipse and Vim. (Vim mainly for English text, such as this README). The\nTrac site lets developers see the bugs in the Mylyn component of Eclipse.\n\nTo check out the sources, type::\n\n bzr branch lp:bug-repo-syncer", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://launchpad.net/bug-repo-syncer/", "keywords": null, "license": "GPL V3", "maintainer": null, "maintainer_email": null, "name": "bug-repo-syncer", "package_url": "https://pypi.org/project/bug-repo-syncer/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/bug-repo-syncer/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://launchpad.net/bug-repo-syncer/" }, "release_url": "https://pypi.org/project/bug-repo-syncer/0.3.0/", "requires_dist": null, "requires_python": null, "summary": "Program to synchronize bug repositories", "version": "0.3.0" }, "last_serial": 399769, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "183743a96b6ec37fcfbbde4959492937", "sha256": "e8437b5f133dc859cafd172bdebe505060ef7e50ca904e588737fcd71f17d00e" }, "downloads": -1, "filename": "bug-repo-syncer-0.1.0.tar.gz", "has_sig": false, "md5_digest": "183743a96b6ec37fcfbbde4959492937", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47162, "upload_time": "2012-02-29T01:17:51", "url": "https://files.pythonhosted.org/packages/4f/17/cb646a7fbb7885bf28b54ff7566e5aeb83be1c2c243224cc5f5e1c966a36/bug-repo-syncer-0.1.0.tar.gz" }, { "comment_text": "", "digests": { "md5": "d81a3638a645e00cec8f58e2a39276c2", "sha256": "d797e421043e0a0487070d38303e9dd9de56b248643e5e6b84590e2a09992b78" }, "downloads": -1, "filename": "bug-repo-syncer-0.1.0.zip", "has_sig": false, "md5_digest": "d81a3638a645e00cec8f58e2a39276c2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 57634, "upload_time": "2012-02-29T01:17:52", "url": "https://files.pythonhosted.org/packages/df/c5/3e08558cdc0ebae412844c3e2888cf9947e6b7c8047fca9082bac25c931c/bug-repo-syncer-0.1.0.zip" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "436e33fd6514178beb69d7157e1573f8", "sha256": "977d88b07482e7f23ea4cb34f14d83cad33e4e67f64f8b98448a462f3e62b561" }, "downloads": -1, "filename": "bug-repo-syncer-0.2.0.tar.gz", "has_sig": false, "md5_digest": "436e33fd6514178beb69d7157e1573f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 61806, "upload_time": "2012-03-09T19:57:33", "url": "https://files.pythonhosted.org/packages/a2/fc/05dcb21c335138846a876503af880a82483e273140b776317bd2a16fd1d3/bug-repo-syncer-0.2.0.tar.gz" }, { "comment_text": "", "digests": { "md5": "0b0b8981bc0e2c440476fdae839ce762", "sha256": "3e94127f9c43a3c9f1aed0213ded4fd107c19b94b7ce7c27cc6febb7de794e10" }, "downloads": -1, "filename": "bug-repo-syncer-0.2.0.zip", "has_sig": false, "md5_digest": "0b0b8981bc0e2c440476fdae839ce762", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72756, "upload_time": "2012-03-09T19:57:34", "url": "https://files.pythonhosted.org/packages/3a/28/67203d987e3748d3d599fea578c878e78139f5267b89b858cc0948ce1a9c/bug-repo-syncer-0.2.0.zip" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "109f51fde43ce51c4bf17ab360e4cf71", "sha256": "7253d23fd731a06ca9e96e74f55e57c48aa939317fd8c543d00ba54d7c1b8958" }, "downloads": -1, "filename": "bug-repo-syncer-0.3.0.tar.gz", "has_sig": false, "md5_digest": "109f51fde43ce51c4bf17ab360e4cf71", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 74961, "upload_time": "2012-04-02T21:13:57", "url": "https://files.pythonhosted.org/packages/b5/4c/7362db6131d5ecf8b9d5bcc27ae1da586d39704bbb7c8ef85904b453e544/bug-repo-syncer-0.3.0.tar.gz" }, { "comment_text": "", "digests": { "md5": "0bb775cffe343551d8d380ac8dfcf0e7", "sha256": "0f9f3ed534fd8853b3791523802c0db7bce69b1f4f1502275ad0f74dedbb68e6" }, "downloads": -1, "filename": "bug-repo-syncer-0.3.0.zip", "has_sig": false, "md5_digest": "0bb775cffe343551d8d380ac8dfcf0e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 86127, "upload_time": "2012-04-02T21:13:58", "url": "https://files.pythonhosted.org/packages/35/81/b5f407b981a3896333226f288a855fa5f9ebe318d31405a43496b6ef8555/bug-repo-syncer-0.3.0.zip" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "109f51fde43ce51c4bf17ab360e4cf71", "sha256": "7253d23fd731a06ca9e96e74f55e57c48aa939317fd8c543d00ba54d7c1b8958" }, "downloads": -1, "filename": "bug-repo-syncer-0.3.0.tar.gz", "has_sig": false, "md5_digest": "109f51fde43ce51c4bf17ab360e4cf71", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 74961, "upload_time": "2012-04-02T21:13:57", "url": "https://files.pythonhosted.org/packages/b5/4c/7362db6131d5ecf8b9d5bcc27ae1da586d39704bbb7c8ef85904b453e544/bug-repo-syncer-0.3.0.tar.gz" }, { "comment_text": "", "digests": { "md5": "0bb775cffe343551d8d380ac8dfcf0e7", "sha256": "0f9f3ed534fd8853b3791523802c0db7bce69b1f4f1502275ad0f74dedbb68e6" }, "downloads": -1, "filename": "bug-repo-syncer-0.3.0.zip", "has_sig": false, "md5_digest": "0bb775cffe343551d8d380ac8dfcf0e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 86127, "upload_time": "2012-04-02T21:13:58", "url": "https://files.pythonhosted.org/packages/35/81/b5f407b981a3896333226f288a855fa5f9ebe318d31405a43496b6ef8555/bug-repo-syncer-0.3.0.zip" } ] }