{ "info": { "author": "Zope Corporation and Contributors", "author_email": "zope-dev@zope.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Framework :: Zope3", "Intended Audience :: Developers", "License :: OSI Approved :: Zope Public License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP" ], "description": "===============================\nZope 3 Controlled Package Index\n===============================\n\nThis package has been developed to support the maintenance of a stable set of\nZope project distributions. It manages the controlled packages configuration\nfile and supports the generation of buildout configuration files that can be\nused by developers.\n\nAnother use of this package is to use it for testing new distributions against\nthe index. Here is the workflow for testing a new package against stable set:\n\n1. Install the correct version of this package.\n\n (a) Download the version of this package that manages the stable set that\n you are interested in. For the Zope 3.4 release, a 3.4 branch exists::\n\n $ svn co svn://svn.zope.org/repos/main/zope.release/branches/3.4 zope3.4\n $ cd zope3.4\n\n (b) Bootstrap the checkout::\n\n $ python ./bootstrap.py\n\n (c) Run buildout to create the scripts::\n\n $ ./bin/buildout\n\n (d) Run the ``buildout.cfg`` generation script to build a configuration\n file that can be used for testing:\n\n $ ./bin/generate-buildout\n\n2. From the generated configuration file, you can now build a testing\n environment.\n\n (a) Enter the test directory and create a buildout:\n\n $ cd test\n $ python ../bootstrap.py\n $ ./bin/buildout\n\n (b) Run all the tests to verify that all tests are initially passing:\n\n $ ./bin/test -vpc1\n\n3. Modify the ``buildout.cfg`` to look for your the new distribution to be\n tested:\n\n (a) Change the version number of the package of interest in the \"versions\"\n section.\n\n Alternative:\n\n (a) Check out the new distribution from SVN.\n\n (b) Add a \"develop path/to/my/package\" line in the \"buildout\" section of\n ``buildout.cfg``.\n\n4. Run the tests, making sure that they all pass.\n\n5. Modify ``controlled-packages.cfg`` to reference the new version.\n\n (a) Find the package that you are interested in and add the new of the\n package in the `versions` attribute of the package's section.\n\n (b) In the `[KGS]` section, increase the version number in the `version`\n attribute.\n\n6. Upload the new KGS release::\n\n $ cd ..\n $ ./bin/upload\n\n Once the files are uploaded, a crontab-job, running every minute, will\n detect the changes in ``controlled-pages.cfg`` and will generate the new\n controlled package pages.\n\n7. Update the svn:externals in the Zope3 3.4 branch:\n\n $ svn co svn+ssh://svn.zope.org/repos/main/Zope3/branches/3.4 Zope3-3.4\n $ ./bin/update-tree\n $ cd Zope3-3.4\n $ svn diff\n $ svn commit\n\nNote: I think the process is still a tiny bit too long. I probably write a\nscript that makes testing a new version of a package easier, but let's see\nwhether this process is workable first.\n\n\n==================\nZope Release Tools\n==================\n\nThis package provides some tools to manage Zope 3 releases. It extends the\nscripts provided by ``zope.kgs`` with Zope-specifc scripts, such as updating\nthe Zope 3 source tree and uploading files to the download location.\n\nHere is an examplatory controlled packages configuration file:\n\n >>> import tempfile\n >>> cfgFile = tempfile.mktemp('-controlled-packages.cfg')\n >>> open(cfgFile, 'w').write('''\\\n ... [DEFAULT]\n ... tested = true\n ...\n ... [KGS]\n ... name = zope-dev\n ... version = 1.0.0\n ... changelog = CHANGES.txt\n ... files = zope-dev-1.0.0.tgz\n ...\n ... [packageA]\n ... versions = 1.0.0\n ... 1.0.1\n ...\n ... [packageB]\n ... versions = 1.2.3\n ...\n ... [packageC]\n ... # Do not test this package.\n ... tested = false\n ... versions = 4.3.1\n ... ''')\n\n\n >>> import os\n >>> dir = os.path.dirname(cfgFile)\n\n >>> open(os.path.join(dir, 'CHANGES.txt'), 'w').write('Changes')\n >>> open(os.path.join(dir, 'zope-dev-1.0.0.tgz'), 'w').write('TGZ')\n\nUploading Files\n---------------\n\nOnce the generated files are tested and ready for upload, you can use the\nupload script to upload the files to the KGS. Since we do not actually want to\nupload files, we simply switch into dry-run mode:\n\n >>> from zope.release import upload\n >>> upload.DRY_RUN = True\n\nUsually we only need to upload the controlled packages file, since site script\nof the ``zope.kgs`` package will do the rest for us.\n\n >>> upload.main((cfgFile, 'download.zope.org:/zope-dev'))\n scp ...zope-dev-1.0.0.tgz download.zope.org:/zope-dev/zope-dev-1.0.0.tgz\n scp .../CHANGES.txt download.zope.org:/zope-dev/CHANGES.txt\n scp ...controlled-packages.cfg ...controlled-packages.cfg\n\nUpdating the Zope 3 Tree\n------------------------\n\nSince we still want to create a Zope 3 source tree release, we need to be able\nto update its externals using the information of the controlled packages\nfile. Since this script is clearly Zope3-specific, we need a new controlled\npackages config file that contains actual packages:\n\n >>> import tempfile\n >>> zopeCfgFile = tempfile.mktemp('-cp.cfg')\n >>> open(zopeCfgFile, 'w').write('''\\\n ... [DEFAULT]\n ... tested = true\n ...\n ... [KGS]\n ... name = zope\n ... version = dev\n ...\n ... [ZODB3]\n ... versions = 1.0.0\n ...\n ... [ZConfig]\n ... versions = 1.1.0\n ...\n ... [pytz]\n ... versions = 2007g\n ...\n ... [zope.interface]\n ... versions = 1.2.0\n ...\n ... [zope.app.container]\n ... versions = 1.3.0\n ... ''')\n\nWe also need to stub the command execution, since we do not have an actual Zope\n3 tree checked out:\n\n >>> cmdOutput = {\n ... 'svn propget svn:externals Zope3/src': '''\\\n ... docutils path/to/docutils\n ... pytz path/to/pytz\n ... twisted path/to/twisted\n ... ZConfig path/to/ZConfig\n ... ZODB path/to/ZODB''',\n ... 'svn propget svn:externals Zope3/src/zope': '''\\\n ... interface path/to/zope/interface''',\n ... 'svn propget svn:externals Zope3/src/zope/app': '''\\\n ... container path/to/zope/app/container''',\n ... }\n\n >>> def do(cmd):\n ... print cmd\n ... print '-----'\n ... return cmdOutput.get(cmd, '')\n\n >>> from zope.release import tree\n >>> tree.do = do\n\nLet's now run the tree update:\n\n >>> tree.main((zopeCfgFile, 'Zope3'))\n svn propget svn:externals Zope3/src\n -----\n svn propset svn:externals\n \"docutils svn://svn.zope.org/repos/main/docutils/tags/0.4.0/\n pytz svn://svn.zope.org/repos/main/pytz/tags/2007g/src/pytz\n twisted svn://svn.twistedmatrix.com/.../twisted-core-2.5.0/twisted\n ZConfig svn://svn.zope.org/repos/main/ZConfig/tags/1.1.0/ZConfig\n ZODB svn://svn.zope.org/repos/main/ZODB/tags/1.0.0/src/ZODB\"\n Zope3/src\n -----\n svn propget svn:externals Zope3/src/zope\n -----\n svn propset svn:externals\n \"interface svn://svn.zope.org/repos/main/zope.interface/tags/1.2.0/src/zope/interface\" Zope3/src/zope\n -----\n svn propget svn:externals Zope3/src/zope/app\n -----\n svn propset svn:externals\n \"container svn://svn.zope.org/repos/main/zope.app.container/tags/1.3.0/src/zope/app/container\" Zope3/src/zope/app\n -----\n\n\n================\nZope KGS History\n================\n\nNOTE: The releases of this package are synced with the Zope 3 releases.\n\n3.4.0 (2009-01-29)\n------------------\n\n- Upgraded setuptools to 0.6c9\n- Upgraded ZODB3 to 3.8.1\n- Upgraded zc.resourcelibrary to 1.0.1\n- Upgraded zope.app.authentication to 3.4.4\n\n3.4.0c7 (2008-09)\n-----------------\n\n- Upgraded zope.server to 3.4.3\n- Upgraded zope.app.server to 3.4.1 and 3.4.2\n- Upgraded zope.publisher to 3.4.5, 3.4.6\n- Upgraded zc.zope3recipes to 0.6.2\n- Upgraded zope.testing to 3.5.6\n- Upgraded z3c.form to 1.9.0\n- Upgraded z3c.formui to 1.4.1\n- Upgraded z3c.formdemo to 1.5.3\n- Upgraded z3c.formjs to 0.4.0\n- Upgraded z3c.formjsdemo to 0.3.1\n- Upgraded zdaemon to 2.0.2\n- Upgraded zope.app.locales to 3.4.2, 3.4.3, 3.4.4, 3.4.5\n- Upgraded z3c.traverser to 0.2.2, 0.2.3\n- Upgraded zope.annotation to 3.4.1\n- Upgraded zope.app.file to 3.4.3, 3.4.4\n- Upgraded zope.cachedescriptors to 3.4.1\n- Upgraded zope.securitypolicy to 3.4.1\n- Upgraded zc.buildout to 1.1.1\n\n - Fixed backwards incompatible change in handling of environment option.\n - Seems to have fixed sporadic test failures under high system load\n\n\n3.4.0c6 (2008-08-14)\n--------------------\n\n- Upgraded zope.publisher to 3.4.3.\n- Upgraded zope.app.authentication to 3.4.3. Removed previous versions,\n as they are not compatible with zope.app.container >= 3.5.4\n- Upgraded zope.app.container to 3.5.6\n- Upgraded zope.testing 3.5.1 to 3.5.4.\n- Upgraded zc.buildout 1.0.0 to 1.1.0.\n\n - New global buildout option, unzip\n - Recompiles pyc files to have correct paths.\n\n- Upgraded zope.proxy 3.4.0 to 3.4.2: fixes problems using Python 2.5 on\n AMD64.\n- Upgraded zope.security 3.4.0 to 3.4.1: fixes problems using Python 2.5 on\n AMD64.\n- Upgraded z3c.form 1.8.0 to 1.8.2: fixes error on Python 2.5.\n\n\n3.4.0c5 (2008-07-31)\n--------------------\n\n- Upgraded setuptools to 0.6c8.\n- Upgraded zope.app.security to 3.5.2. This is a major version bump, but the\n new feature in 3.5 should not interfere with existing code and 3.5.2 fixes a\n deprecation warning between Python 2.4 and 2.5.\n\n3.4.0c4 (2008-07-30)\n--------------------\n\n- no changes\n\n3.4.0c3 (2008-07-30)\n--------------------\n\n- Upgraded z3c.coverage to 1.1.2\n- Upgraded zope.app.applicationcontrol to 3.4.3\n- Upgraded zope.app.cache to 3.4.1\n- Upgraded zope.app.pagetemplate to 3.4.1\n- Upgraded zope.app.pythonpage to 3.4.1\n- Upgraded zope.app.renderer to 3.4.3\n- Upgraded zope.app.wsgi to 3.4.1\n- Upgraded zope.traversing to 3.4.1\n\n3.4.0c2 (2008-07-23)\n--------------------\n\n- Upgraded ClientForm to 0.2.9\n- Upgraded zope.app.debug to 3.4.1\n- Upgraded zope.app.testing to 3.4.2\n- Upgraded zope.app.twisted to 3.4.1\n- Upgraded zope.server to 3.4.2\n\n3.4.0c1 (2008-01-31)\n--------------------\n\n- Added a KGS section\n- Upgraded ZConfig to 2.5.1\n- Upgraded ZODB3 to 3.8.0c1 and 3.8.0\n- Upgraded pytz to 2007k\n- Upgraded z3c.coverage to 1.1.1 (major version change)\n- Upgraded z3c.form to 1.8.0 (major version change)\n- Upgraded z3c.formui to 1.4.1 (major version change)\n- Upgraded z3c.layer to 0.2.3\n- Upgraded z3c.pagelet to 1.0.2\n- Upgraded z3c.rml to 0.7.3 and removed version 0.7.1\n- Upgraded z3c.traverser to 0.2.1\n- Upgraded zc.buildout to 1.0.0\n- Upgraded zc.resourcelibrary to 0.8.2\n- Upgraded zc.zope3recipes to 0.6.1\n- Upgraded zope.app.apidoc to 3.4.3\n- Upgraded zope.app.container to 3.5.3\n- Upgraded zope.app.file to 3.4.2\n- Upgraded zope.app.locales to 3.4.1. Removed 3.4.0\n- Upgraded zope.app.onlinehelp to 3.4.1\n- Upgraded zope.app.publication to 3.4.3\n- Upgraded zope.app.securitypolicy to 3.4.6\n- Upgraded zope.interface to 3.4.1\n- Upgraded zope.minmax to 1.1.0 (major version change)\n- Upgraded zope.publisher to 3.4.2\n- Upgraded zope.tal to 3.4.1\n- Upgraded zope.viewlet to 3.4.2\n\nNo history was recorded before version 3.4.0c1", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://cheeseshop.python.org/pypi/zope.release", "keywords": "zope3 setuptools egg kgs release", "license": "ZPL 2.1", "maintainer": null, "maintainer_email": null, "name": "zope.release", "package_url": "https://pypi.org/project/zope.release/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/zope.release/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://cheeseshop.python.org/pypi/zope.release" }, "release_url": "https://pypi.org/project/zope.release/3.4.0/", "requires_dist": null, "requires_python": null, "summary": "Zope Release and Known-Good-Set (KGS) Support", "version": "3.4.0" }, "last_serial": 730750, "releases": { "3.4.0": [] }, "urls": [] }