{ "info": { "author": "4teamwork AG", "author_email": "mailto:info@4teamwork.ch", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "Framework :: Plone", "Framework :: Plone :: 4.3", "Framework :: Plone :: 5.1", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License (GPL)", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "ftw.profilehook\n===============\n\nftw.profilehook provides a hook for executing custom code after a\ngeneric setup profile is installed.\n\n\nMotivation\n----------\n\nWe often use import steps for executing code after import a generic\nsetup profile.\nRegistering a lot of setup handlers is bad because it extends the\nimport duration of every profile and the amount of import steps are\nlimited in generic setup, causing bad effects when exceeded.\nImport steps are meant to import things from any profile, not for\nexecuting code after importing a specific profile.\nBecause of these reasons ``ftw.profilehook`` exists and provides an\neasy method to solve this issue.\n\n\n\nUsage\n-----\n\nAdd ``ftw.profilehook`` as dependency in your ``setup.py``:\n\n.. code:: python\n\n setup(...\n install_requires=['ftw.profilehook'])\n\nRegister your hook function in ZCML (configure.zcml):\n\n.. code:: xml\n\n \n\n \n\n \n\n \n\n \n\nDo things in your hook (``hooks.py``):\n\n.. code:: python\n\n from my.package.interfaces import IMyRoot\n from zope.component import alsoProvides\n\n\n def default_profile_installed(site):\n mark_site_as_my_root(site)\n\n\n def mark_site_as_my_root(site)\n if not IMyRoot.providedBy(site):\n alsoProvides(site, IMyRoot)\n\nAfter your profile (``my.package:default``) is installed, your hook is executed.\n\n\nBefore-Import Hook\n------------------\n\nThe standard hook (``profilehook:hook``) is executed *after* importing the profile.\nBy using the ``profilehook:before_import_hook`` directive, you can register hooks\nwhich are executed *before* importing the profile.\n\n.. code:: xml\n\n \n\n\n\nLinks\n=====\n\n- Github: https://github.com/4teamwork/ftw.profilehook\n- Pypi: http://pypi.python.org/pypi/ftw.profilehook\n- Tests: https://jenkins.4teamwork.ch/search?q=ftw.profilehook\n\n\nCopyright\n=========\n\nThis package is copyright by `4teamwork `_.\n\n``ftw.profilehook`` is licensed under GNU General Public License, version 2.\n\nChangelog\n=========\n\n1.3.0 (2018-09-28)\n------------------\n\n- Fix error when uploading a tarball in portal_setup. [jone]\n- Add plone 5.1.x test cfg. [mathias.leimgruber]\n\n\n1.2.1 (2016-05-12)\n------------------\n\n- Fix compatibility with ftw.inflator. [jone]\n\n\n1.2.0 (2016-05-11)\n------------------\n\n- Support before-import hooks. [jone]\n\n\n1.0.0 (2014-08-15)\n------------------\n\n- Initial implementation.\n [jone]", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/4teamwork/ftw.profilehook", "keywords": "ftw generic setup profile hook", "license": "GPL2", "maintainer": "", "maintainer_email": "", "name": "ftw.profilehook", "package_url": "https://pypi.org/project/ftw.profilehook/", "platform": "", "project_url": "https://pypi.org/project/ftw.profilehook/", "project_urls": { "Homepage": "https://github.com/4teamwork/ftw.profilehook" }, "release_url": "https://pypi.org/project/ftw.profilehook/1.3.0/", "requires_dist": null, "requires_python": "", "summary": "A Plone addon providing a hook for executing code when a generic setup profile is installed.", "version": "1.3.0" }, "last_serial": 5823467, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "ad54dede5175005d7ff487c4786ba01d", "sha256": "0b1850fae35197faf4122f228a65dfed37e4a32f121284e53c8aad2c99311f67" }, "downloads": -1, "filename": "ftw.profilehook-1.0.0.zip", "has_sig": false, "md5_digest": "ad54dede5175005d7ff487c4786ba01d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20582, "upload_time": "2014-08-15T10:51:04", "url": "https://files.pythonhosted.org/packages/1d/4d/4a9481264ab5859bf93f7d72b3ede37c3606a35cb86dd55cb399e57ff484/ftw.profilehook-1.0.0.zip" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "4abe7067eedc58dfd04ca601bbdea4fd", "sha256": "9c06f8c7cac7392484997c1476e18101a3dc4c247360a0e7f25e0495ac4fcfb6" }, "downloads": -1, "filename": "ftw.profilehook-1.2.0.tar.gz", "has_sig": false, "md5_digest": "4abe7067eedc58dfd04ca601bbdea4fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12462, "upload_time": "2016-05-11T10:19:26", "url": "https://files.pythonhosted.org/packages/65/3a/e6c1cc8fba08d3fe83b192473ad08c4c527374982a84f1e8058a6760ff94/ftw.profilehook-1.2.0.tar.gz" } ], "1.2.1": [ { "comment_text": "", "digests": { "md5": "5ab94198102477c050f1914ee68141ae", "sha256": "e51cb15820c0e4d8fe6f3a40c5537a9c8b91359667433390a0c8c95b32debee6" }, "downloads": -1, "filename": "ftw.profilehook-1.2.1.tar.gz", "has_sig": false, "md5_digest": "5ab94198102477c050f1914ee68141ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12499, "upload_time": "2016-05-12T08:38:29", "url": "https://files.pythonhosted.org/packages/b0/15/50a80da88785885a5dee868bca04c3e88700ef5322fbb37e8849ce40058b/ftw.profilehook-1.2.1.tar.gz" } ], "1.3.0": [ { "comment_text": "", "digests": { "md5": "785f05b0d81ea7726c82b6dda8ccd49b", "sha256": "99e1b984b7ac9e242a558da17608a5d0fcbc92bc16e6461900e8feb7806661d3" }, "downloads": -1, "filename": "ftw.profilehook-1.3.0.tar.gz", "has_sig": false, "md5_digest": "785f05b0d81ea7726c82b6dda8ccd49b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13936, "upload_time": "2018-09-28T14:02:00", "url": "https://files.pythonhosted.org/packages/ba/25/e2b3c9666e212942494816b521f2aeb198e24f499bb06c3fe97f2ac55cf6/ftw.profilehook-1.3.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "785f05b0d81ea7726c82b6dda8ccd49b", "sha256": "99e1b984b7ac9e242a558da17608a5d0fcbc92bc16e6461900e8feb7806661d3" }, "downloads": -1, "filename": "ftw.profilehook-1.3.0.tar.gz", "has_sig": false, "md5_digest": "785f05b0d81ea7726c82b6dda8ccd49b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13936, "upload_time": "2018-09-28T14:02:00", "url": "https://files.pythonhosted.org/packages/ba/25/e2b3c9666e212942494816b521f2aeb198e24f499bb06c3fe97f2ac55cf6/ftw.profilehook-1.3.0.tar.gz" } ] }