{ "info": { "author": "Reinout and Maurits van Rees", "author_email": "reinout@vanrees.org", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Zest buildout stabilizer\n========================\n\n**Goal of this product**: zest.stabilizer helps moving the trunk checkouts in\nyour development buildout to tag checkouts in your production buildout. It\ndetects the latest tag and changes stable.cfg accordingly.\n\nIt is at the moment quite `Zest software `_ specific\nin the sense that it is hardcoded to two assumptions/requirements that are\ntrue for us.\n\n\nRequirement 1: split buildout configs\n-------------------------------------\n\nAt Zest software, we've settled on a specific buildout.cfg setup that\nseparates the buildout.cfg into five files:\n\nunstable.cfg\n Trunk checkouts, development eggs, development settings.\n\nstable.cfg\n Tag checkouts, released eggs. No development products.\n\ndevel.cfg/preview.cfg/production.cfg\n Symlinked as production.cfg. The parts of the configuration that differ on\n development laptops, the preview and the production system. Port numbers,\n varnish installation, etc. Devel extends unstable, preview and production\n extend stable. \n\nzest.stabilizer thus moves the trunk checkouts in unstable.cfg to tag\ncheckouts in stable.cfg.\n\n\nRequirement 2: infrae.subversion instead of svn:externals\n---------------------------------------------------------\n\nOur internal policy is to keep as much configuration in the buildout\nconfig. So we've switched from svn:externals in ``src/`` to\ninfrae.subversion. We extended infrae.subversion to support development eggs\nand to support placement in a different directory from the default\n``parts/[partname]/``.\n\nZest.stabilizer expects a specific name (\"ourpackages\"). Such a part looks\nlike this::\n\n [ourpackages]\n recipe = infrae.subversion >= 1.4\n urls =\n https://svn.vanrees.org/svn/reinout/anker/anker.theme/trunk anker.theme\n http://codespeak.net/svn/z3/deliverance/trunk Deliverance\n as_eggs = true\n location = src\n\n\nWhat zest.stabilizer does\n-------------------------\n\nWhen you run ``stabilize``, zest.stabilizer does the following:\n\n* Detect the ``[ourpackages]`` section in unstable.cfg and read in the urls.\n\n* Remove \"trunk\" from each url and add \"tags\" and look up the available tags in\n svn.\n\n* Grab the highest number for each.\n\n* Remove existing ``[ourpackages]`` in stable.cfg if it exists.\n\n* Add ``[ourpackages]`` part into stable.cfg with those highest available tag\n checkouts in it.\n\n* Show the \"svn diff\" and ask you whether to commit the change.\n\n\nHelper command: ``needrelease``\n-------------------------------\n\nBefore stabilization, often a set of products first needs to be released. If\nyou have multiple packages, it is a chore to check all the svn logs to see if\nthere's a change since the last release.\n\nRun ``needrelease`` and you'll get the last svn log message of every detected package.\n\n\nInstallation\n------------\n\nInstallation is a simple ``easy_install zest.stabilizer``.\n\nzest.stabilizer requires zest.releaser, which is installed automatically as a\ndependency. Wow, more goodies!\n\n\nIncluded programs\n-----------------\n\nTwo programs are installed globally:\n\n* ``unstable_fixup`` which currently only assists with moving ``src/*``\n development eggs to an infrae.subversion part. At the end it prints\n instructions for further work that you have to do manually.\n\n* ``stabilize`` which takes the infrae.subversion part of ``unstable.cfg``\n and finds out the latest tags for each of those development packages. It\n then adds a similar part to ``stable.cfg``.\n\nThe development version of zest.stabilizer can be found at\nhttps://svn.plone.org/svn/collective/zest.stabilizer/trunk .\n\n\nChangelog zest.stabilizer\n=========================\n\n1.4 (2009-04-01)\n----------------\n\n- Depend on zest.releaser 2.0 or higher. [maurits]\n\n\n1.3 (2009-04-01)\n----------------\n\n- Fixed our code to work with the refactored zest.releaser (with more\n vcs support). [maurits]\n\n\n1.2.2 (2009-02-16)\n------------------\n\n- Typo fixed. [reinout]\n\n\n1.2.1 (2009-02-16)\n------------------\n\n- Moved to the collective svn. [reinout]\n\n\n1.2 (2009-02-16)\n----------------\n\n- Logging changes in history file now. [reinout]\n\n\n1.1.1 (2009-02-11)\n------------------\n\n- Small fix. -l doesn't exist everywhere, but --limit does. [reinout]\n\n\n1.1 (2009-02-11)\n----------------\n\n- Added ``needrelease`` command that shows the last log message of every\n detected development package. Easy to see if one or more still need\n releasing. [reinout]\n\n\n1.0 (2009-02-08)\n----------------\n\n- First release on pypi. [reinout]\n\n- Fixed up documentation to make the product usable outside Zest. [reinout]\n\n\n0.2 (2008-11-06)\n----------------\n\n- Change the lines that are added in stable.cfg now that\n infrae.subversion 1.4 has been released. [maurits+reinout]\n\n- Add newline at end of contents before saving stable.cfg or\n unstable.cfg. [maurits]\n\n\n0.1 (2008-10-23)\n----------------\n\n- Extracting unstable eggs from [ourpackages] instead of develop section now.\n [reinout]\n\n- unstable_fixup adds [ourpackages] section in place of 'develop =' section.\n [reinout]\n\n- Added unstable_fixup script to check/perform common fixups that need to\n happen in unstable.cfg. [reinout]\n\n- Copied stabilize script out of zest.releaser. [reinout]\n\n\nCredits\n=======\n\n* `Reinout van Rees `_ (Zest software) is the\n originator and main author.\n\n* `Maurits van Rees `_ (Zest software) added\n several fixes and the unstable_fixup utility.\n\n\nTODO tasks\n==========\n\n- Get a prettier message to add to the history file.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://pypi.python.org/pypi/zest.stabilizer", "keywords": "", "license": "GPL", "maintainer": null, "maintainer_email": null, "name": "zest.stabilizer", "package_url": "https://pypi.org/project/zest.stabilizer/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/zest.stabilizer/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://pypi.python.org/pypi/zest.stabilizer" }, "release_url": "https://pypi.org/project/zest.stabilizer/1.4/", "requires_dist": null, "requires_python": null, "summary": "Script to help move a buildout from unstable to stable", "version": "1.4" }, "last_serial": 748567, "releases": { "0.3.dev": [], "1.0": [ { "comment_text": "", "digests": { "md5": "f7bdcea01265b24bec0e020b9bd967fe", "sha256": "ecab2a318a75acb3fc92e27cdad873d1d1bfcd96891efa99fb19a87c4ba63469" }, "downloads": -1, "filename": "zest.stabilizer-1.0.tar.gz", "has_sig": false, "md5_digest": "f7bdcea01265b24bec0e020b9bd967fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7431, "upload_time": "2009-02-08T16:23:07", "url": "https://files.pythonhosted.org/packages/cd/d4/be39b98d0cc3fbb907704c25ee3ef49c4602d8d80d6234be2a4009aacf09/zest.stabilizer-1.0.tar.gz" } ], "1.0.dev": [], "1.1": [ { "comment_text": "", "digests": { "md5": "ac1cff461cf5a42b0af406d7a074583a", "sha256": "0dabbddcfc6b36371b6478e5791d7e4ce0713e8d3bcd3eaf270fd152ce905539" }, "downloads": -1, "filename": "zest.stabilizer-1.1.tar.gz", "has_sig": false, "md5_digest": "ac1cff461cf5a42b0af406d7a074583a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7936, "upload_time": "2009-02-11T16:29:00", "url": "https://files.pythonhosted.org/packages/37/a9/fbcff390452befac400a6369dc32ee8ea1714b4e596586e0cade4e46635f/zest.stabilizer-1.1.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "1666391edba82e9f644587f69f02b031", "sha256": "b72cff669ae1f88a86e0e22297c855ffd46a4eb23eba352925268c0c362dde35" }, "downloads": -1, "filename": "zest.stabilizer-1.1.1.tar.gz", "has_sig": false, "md5_digest": "1666391edba82e9f644587f69f02b031", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7998, "upload_time": "2009-02-11T16:37:35", "url": "https://files.pythonhosted.org/packages/b6/22/0ded809bafbd8b87f309be8691175d0425faa6f25714c26b3d5561e1b25b/zest.stabilizer-1.1.1.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "33724507fb1a9c2283b45ae55f44fcd9", "sha256": "9534610719b3e6e9f2d9e02ad605db375cd087265dcb9084240044e4113d7208" }, "downloads": -1, "filename": "zest.stabilizer-1.2.tar.gz", "has_sig": false, "md5_digest": "33724507fb1a9c2283b45ae55f44fcd9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8355, "upload_time": "2009-02-16T20:44:03", "url": "https://files.pythonhosted.org/packages/83/b0/f72d351c8c0ec9714a0627d8c15129435e26209d4f21037c647ca780b7d5/zest.stabilizer-1.2.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "14ceafa4ccf05e0361d4ef33c9f8226e", "sha256": "317f39a1faf10a8cc0c46eea2f2af150b2e392ae9e0768465e7b71155e6c9381" }, "downloads": -1, "filename": "zest.stabilizer-1.2.1.tar.gz", "has_sig": false, "md5_digest": "14ceafa4ccf05e0361d4ef33c9f8226e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8460, "upload_time": "2009-02-16T21:17:03", "url": "https://files.pythonhosted.org/packages/ba/cb/a22ebde344110cc738fec71714c348b21eb9be95c9d8275a510b5f327929/zest.stabilizer-1.2.1.tar.gz" } ], "1.2.2": [ { "comment_text": "", "digests": { "md5": "ffcd322367cc36d4351b2fbaa33b8724", "sha256": "1c3f71813c234f622930cba4f797a5140fb4c3b6234a8a559d2a707daeab13ac" }, "downloads": -1, "filename": "zest.stabilizer-1.2.2.tar.gz", "has_sig": false, "md5_digest": "ffcd322367cc36d4351b2fbaa33b8724", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8499, "upload_time": "2009-02-16T21:20:09", "url": "https://files.pythonhosted.org/packages/a7/b3/2688b5669964d996e343f1e2931290c4da774268682bbbab27697d8e6d00/zest.stabilizer-1.2.2.tar.gz" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "617b3f6804bdd8fd6f018370b76e69a4", "sha256": "dfcb353a175764b655a71cd7986b4f5c3df830ee421333e88afa41f6a86453a1" }, "downloads": -1, "filename": "zest.stabilizer-1.4.tar.gz", "has_sig": false, "md5_digest": "617b3f6804bdd8fd6f018370b76e69a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8734, "upload_time": "2009-04-01T13:41:16", "url": "https://files.pythonhosted.org/packages/1b/9d/96e906da3dafd8cda0393a4cd1818015d38a8d1241ad7d85132f49b7004c/zest.stabilizer-1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "617b3f6804bdd8fd6f018370b76e69a4", "sha256": "dfcb353a175764b655a71cd7986b4f5c3df830ee421333e88afa41f6a86453a1" }, "downloads": -1, "filename": "zest.stabilizer-1.4.tar.gz", "has_sig": false, "md5_digest": "617b3f6804bdd8fd6f018370b76e69a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8734, "upload_time": "2009-04-01T13:41:16", "url": "https://files.pythonhosted.org/packages/1b/9d/96e906da3dafd8cda0393a4cd1818015d38a8d1241ad7d85132f49b7004c/zest.stabilizer-1.4.tar.gz" } ] }