{ "info": { "author": "Jarn", "author_email": "info@jarn.com", "bugtrack_url": null, "classifiers": [ "Framework :: Plone" ], "description": "Transmogrifier\n==============\n\nTransmogrifier provides support for building pipelines that turn one thing\ninto another. Specifically, transmogrifier pipelines are used to convert and\nimport legacy content into a Plone site. It provides the tools to construct\npipelines from multiple sections, where each section processes the data\nflowing through the pipe.\n\nA \"transmogrifier pipeline\" refers to a description of a set of pipe sections,\nslotted together in a set order. The stated goal is for these sections to\ntransform data and ultimately add content to a Plone site based on this data.\nSections deal with tasks such as sourcing the data (from textfiles, databases,\netc.) and characterset conversion, through to determining portal type,\nlocation and workflow state.\n\nNote that a transmogrifier pipeline can be used to process any number of\nthings, and is not specific to Plone content import. However, it's original\nintent is to provide a pluggable way to import legacy content.\n\nCredits\n=======\n\nDevelopment sponsored by\n Elkj\u00f8p Nordic AS\n\nDesign and development\n `Martijn Pieters`_ at Jarn_\n\nProject name\n A transmogrifier_ is fictional device used for transforming one object\n into another object. The term was coined by Bill Waterson of Calvin and\n Hobbes fame.\n\n.. _Martijn Pieters: mailto:mj@jarn.com\n.. _Jarn: http://www.jarn.com/\n.. _Transmogrifier: http://en.wikipedia.org/wiki/Transmogrifier\n\n\nChange History\n**************\n\n(name of developer listed in brackets)\n\n1.5.2 (2018-02-27)\n==================\n\n- pep 8, utf-8 headers, whitespace strip and sorted imports.\n [thet]\n\n- Ignore - but log - rare cases of construction errors. Usually this\n happens for objects you do not want to migrate, but a detailed log entry is\n written.\n [sunew]\n\n\n1.5.1 (2015-11-26)\n==================\n\n- Fix broken distribution.\n [hvelarde]\n\n\n1.5 (2015-10-22)\n================\n\n- Allow csvsource to read files from GS import context\n [lentinj]\n\n- Don't use traversal to avoid problems with acquisition or views.\n [rpatterson]\n\n- Add csvsource support for taking the filename from an item key.\n [rpatterson]\n\n- Add csvsource restkey handling for rows with more keys than fieldnames.\n [rpatterson]\n\n- Add a blueprint for opening and caching URLs with `urllib2`_.\n [rpatterson]\n\n- Add a source for walking a directory with `os.walk`_.\n [rpatterson]\n\n- Add support for arbitrary csvsource fmtparam options.\n [rpatterson]\n\n- Add DEBUG logging for expressions, useful for tracking changes to\n items as they move through the pipeline.\n [rpatterson]\n\n- Add an XML walker source section for walking a tree of elements.\n [rpatterson]\n\n- Add a list source section for adding recursion and/or looping to pipelines.\n [rpatterson]\n\n- Add pprint support to the logger section, moved from the pprint\n section used in tests to make it more useful and available in actual\n pipelines.\n [rpatterson]\n\n1.4 (2013-04-07)\n================\n\n- Fix the import location of the pagetemplate engine for newer Zope versions.\n [leorochael]\n\n- Bug fix to load ZCML for GS when Products.GenericSetup is installed.\n [aclark]\n\n1.3 (2011-03-17)\n================\n\n- Added the GenericSetup import context as an annotation to the transmogrifier.\n [elro]\n\n- Added a logger to log the value of a particular key for all items. Handy\n when debugging, you can see which path is failing, and good if you want\n to show progress in a long import.\n [regebro]\n\n- Added a breakpoint section to break on a particular expression, which is\n handy for debugging.\n [regebro]\n\n1.2 (2010-03-30)\n================\n\n- Bug fix: the constructor promises to encode paths to ASCII, but failed to\n do so. Thanks to gyst for finding the discrepancy.\n [mj]\n\n1.1 (2010-03-17)\n================\n\n- Allow the CSV source to load its file from a package as well as from an\n absolute or relative file path. To load from a package, pass\n ``package.name:filename.csv`` to the ``filename`` option.\n [optilude]\n\n- Add CMF 2.2/Plone 4 compatibility for the content constructor\n [optilude]\n\n- Use an explicit provides attribute to register the transmogrifier adapter.\n Fixes the \"Missing 'provides' attribute\" errors when loading with\n zope.annotation installed.\n [mj]\n\n- Add a required flag to the content constructor, which causes it to raise\n a KeyError if the container where to construct the new item doesn't exist.\n [regebro]\n\n- Add an optional condition to the manipulator section.\n [regebro]\n\n1.0 (2009-08-07)\n================\n\n- Initial transmogrifier architecture.\n [mj]", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://pypi.python.org/pypi/collective.transmogrifier", "keywords": "content import filtering", "license": "GPL", "maintainer": "", "maintainer_email": "", "name": "collective.transmogrifier", "package_url": "https://pypi.org/project/collective.transmogrifier/", "platform": "", "project_url": "https://pypi.org/project/collective.transmogrifier/", "project_urls": { "Homepage": "http://pypi.python.org/pypi/collective.transmogrifier" }, "release_url": "https://pypi.org/project/collective.transmogrifier/1.5.2/", "requires_dist": null, "requires_python": "", "summary": "A configurable pipeline, aimed at transforming content for import and export", "version": "1.5.2" }, "last_serial": 5353678, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "72de3f27f0835ad7cdc53a0672469dfd", "sha256": "f7df7ca7e9ed13174e4d60f128a0e007f41e723f86bbcfad8be8eb065ba6ea78" }, "downloads": -1, "filename": "collective.transmogrifier-1.0.zip", "has_sig": false, "md5_digest": "72de3f27f0835ad7cdc53a0672469dfd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79617, "upload_time": "2009-08-07T19:48:05", "url": "https://files.pythonhosted.org/packages/4c/e7/65136111aff91a10c8a0e4c3b6c2a46bfad1f9ceb6f2ae7ed9b4a0fce20a/collective.transmogrifier-1.0.zip" } ], "1.1": [ { "comment_text": "", "digests": { "md5": "a2f4276850c1ac5543021ca2f1aea752", "sha256": "2addd16b0044bd1a3824ec3ccf46966fbf9044ae9896862dfbb404603a73f330" }, "downloads": -1, "filename": "collective.transmogrifier-1.1.zip", "has_sig": false, "md5_digest": "a2f4276850c1ac5543021ca2f1aea752", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 88221, "upload_time": "2010-03-19T16:53:39", "url": "https://files.pythonhosted.org/packages/b2/d8/2f8ba333e11d5ef9b38f77513beda64c4f8d59c07e058831874ca928cd0d/collective.transmogrifier-1.1.zip" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "532cb30f005bbe94077326adad75a84a", "sha256": "8ba62a502ead5d445227cdaf16a8c62447e9691dbefef2c17567911cc0e6de4e" }, "downloads": -1, "filename": "collective.transmogrifier-1.2.zip", "has_sig": false, "md5_digest": "532cb30f005bbe94077326adad75a84a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 88558, "upload_time": "2010-03-30T14:04:32", "url": "https://files.pythonhosted.org/packages/f9/5a/78ef5e260d3a29186c15b039e96a7542a377702963b39c2a505dcb039608/collective.transmogrifier-1.2.zip" } ], "1.3": [ { "comment_text": "", "digests": { "md5": "caf7c6ee869571b6a6858321d3b0db82", "sha256": "b31604475a1b30fd9141e271101c0ef05440a2b83a1566ddd53877edcd53692d" }, "downloads": -1, "filename": "collective.transmogrifier-1.3.zip", "has_sig": false, "md5_digest": "caf7c6ee869571b6a6858321d3b0db82", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 93374, "upload_time": "2011-03-17T18:38:31", "url": "https://files.pythonhosted.org/packages/9a/6d/395af1e00f7dbcda7644fcbeedc2e73ec251687f2856defaddbcdf37b61b/collective.transmogrifier-1.3.zip" } ], "1.4": [ { "comment_text": "", "digests": { "md5": "f8ea922363b28f001f94444fdd45cecd", "sha256": "011b7649d6cd63fb3b857c6fa65a3177b6232f472eafde3c72f2b7394a9591a3" }, "downloads": -1, "filename": "collective.transmogrifier-1.4.zip", "has_sig": false, "md5_digest": "f8ea922363b28f001f94444fdd45cecd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 93730, "upload_time": "2013-04-07T11:06:54", "url": "https://files.pythonhosted.org/packages/86/3c/d5f44c93f14653d0c8d3edfc4f800fa6ef7d7d88636ffc1a8d1bfd1e7962/collective.transmogrifier-1.4.zip" } ], "1.5": [ { "comment_text": "", "digests": { "md5": "c679d03d75f4677fabd006f550c46f15", "sha256": "698cefdfe9f3628abf5da0fc11d8b03e5e63dc2acf55270e549ec9516ff63c54" }, "downloads": -1, "filename": "collective.transmogrifier-1.5.tar.gz", "has_sig": false, "md5_digest": "c679d03d75f4677fabd006f550c46f15", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 60937, "upload_time": "2015-10-22T22:13:13", "url": "https://files.pythonhosted.org/packages/55/2d/20588530b83ab2e21b82d9f0f29a3c95b1eebb0f78567ca3bdedd393b3e8/collective.transmogrifier-1.5.tar.gz" } ], "1.5.1": [ { "comment_text": "", "digests": { "md5": "33e82a378004d887b041a550e999d162", "sha256": "529834464c317636370364193628b4ee38584291ea8ced171b968077959f79f6" }, "downloads": -1, "filename": "collective.transmogrifier-1.5.1.tar.gz", "has_sig": false, "md5_digest": "33e82a378004d887b041a550e999d162", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 58607, "upload_time": "2015-11-26T22:34:22", "url": "https://files.pythonhosted.org/packages/fe/4b/18c17cd682618e8e7565ba8e584d0d36dad41a345cf89c60651116a0fc07/collective.transmogrifier-1.5.1.tar.gz" } ], "1.5.2": [ { "comment_text": "", "digests": { "md5": "823c40cf0ccd8ef559b5e523fe9d1161", "sha256": "12792fad3c0ef70318e466b45719b1a13159a0109532b979636ec24c7cc3c54e" }, "downloads": -1, "filename": "collective.transmogrifier-1.5.2.tar.gz", "has_sig": false, "md5_digest": "823c40cf0ccd8ef559b5e523fe9d1161", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55413, "upload_time": "2018-02-27T16:04:16", "url": "https://files.pythonhosted.org/packages/c2/df/64077f2321da9faddc2853d66b39669d6557bd5c00f35eea2b6a6683a7ee/collective.transmogrifier-1.5.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "823c40cf0ccd8ef559b5e523fe9d1161", "sha256": "12792fad3c0ef70318e466b45719b1a13159a0109532b979636ec24c7cc3c54e" }, "downloads": -1, "filename": "collective.transmogrifier-1.5.2.tar.gz", "has_sig": false, "md5_digest": "823c40cf0ccd8ef559b5e523fe9d1161", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55413, "upload_time": "2018-02-27T16:04:16", "url": "https://files.pythonhosted.org/packages/c2/df/64077f2321da9faddc2853d66b39669d6557bd5c00f35eea2b6a6683a7ee/collective.transmogrifier-1.5.2.tar.gz" } ] }