{ "info": { "author": "Jon Miller", "author_email": "jonEbird@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Plugins", "Framework :: Paste", "Intended Audience :: Developers", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Code Generators" ], "description": "Paster Template for new Python Modules\n======================================\n\nPaster_ is a command line tool that aims to be able to do many things,\noften related to web frameworks, but we are specifically using its template\ncreation abilities. It supports externally developed templates and that is\nwhat this project is.\n\nThis project defines a paster template for Python modules that I would\nconsider a \"standard\" layout. Once you the paster template installed, you\nare able to run::\n\n paster create -t standard [ProjectName]\n\nThat will guide you through a few questions about the name of your project,\nyour email, etc and then creates the skeleton Python module setup for you.\nThe rest of this help is about other developers contributing to updating\nthis template.\n\n\nDevelopment Work\n-----------------\n\nFor development, we recommend you setup a virtualenv and use the\n`requirements.txt` file for installing necessary modules. I have also found\nthat I'll need to uninstall any system wide copy of the this package before\ndoing my development work. While I'm using a virtualenv, it still seems to\nfind the template::\n\n python setup.py develop\n\nFor most modifications, you'll just be concerned with updating the\nstructure down the `python_template/templates/` directory. That is the\ndirectory structure that is used as the template basis for what we\ninstall. E.g. If you need to tweak how a default `setup.py` looks, you\nwould edit `python_template/templates/setup.py_tmpl`\n\nThe files ending with a `_tmpl` extension are templates_ that are\nimplemented via the cheetah_ template engine. Variables are substituted\ninside of those files via a `${variable}` syntax. If a file does not have a\n`_tmpl` extension, then it will be treated as a static file and copied\nverbatim.\n\nSometimes you need to actually name a file or a directory after a variable\nand to do that, you end up putting plus signs around the variable\nname. That is why you see a `+package+` directory there because we want to\ncreate a directory named after the package name you've picked.\n\nIf you need to introduce new variables to be prompted to the user, which\nyou intend to use in template files, then you need to update the\n`python_template/newmodule.py` file. To prompt the person invoking the\nscript, add your variable to the `vars` list whereas if you need to define\na non-prompted variable, you can update the `vars` dictionary within the\n`PyTemplate.pre` function.\n\nTesting\n-------\n\nTesting can be a bit complicated with this package. While other modules you\ncan issue a `python setup.py develop` this seems to have a bit of magic\ngoing on in that the new template is still only seen if you are sitting in\nthe base directory. As a result, I've found the following routine to be\nhelpful::\n\n python setup.py sdist\n P=\"$(pwd)/dist/python_template-$(python setup.py --version).tar.gz\"\n mktmpenv -i $P\n\nThen you can try creating a new project::\n\n paster create -t standard NewProject\n\n.. _Paster: http://pythonpaste.org/script/\n.. _nose: https://nose.readthedocs.org/en/latest/\n.. _templates: http://lucasmanual.com/mywiki/PythonPaste#Templates\n.. _cheetah: http://www.cheetahtemplate.org/docs/users_guide_html/", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jonEbird/standard-paster", "keywords": "paster bootstrap", "license": "Apache", "maintainer": null, "maintainer_email": null, "name": "standard.paster", "package_url": "https://pypi.org/project/standard.paster/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/standard.paster/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/jonEbird/standard-paster" }, "release_url": "https://pypi.org/project/standard.paster/1.0/", "requires_dist": null, "requires_python": null, "summary": "Quickly create a standard Python module layout", "version": "1.0" }, "last_serial": 1649834, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "e9e8fcae1d866b0fbc6a2e8ca550a289", "sha256": "89a35041f641badd55be06a77507b09fd08440160085f551c35170ebb186086d" }, "downloads": -1, "filename": "standard.paster-1.0.tar.gz", "has_sig": false, "md5_digest": "e9e8fcae1d866b0fbc6a2e8ca550a289", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13076, "upload_time": "2015-07-26T05:38:04", "url": "https://files.pythonhosted.org/packages/2c/5a/5c2a1c0f571c2df6e469feb8409e33bb9c55367ada8b86728d0bf5cfcbd7/standard.paster-1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e9e8fcae1d866b0fbc6a2e8ca550a289", "sha256": "89a35041f641badd55be06a77507b09fd08440160085f551c35170ebb186086d" }, "downloads": -1, "filename": "standard.paster-1.0.tar.gz", "has_sig": false, "md5_digest": "e9e8fcae1d866b0fbc6a2e8ca550a289", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13076, "upload_time": "2015-07-26T05:38:04", "url": "https://files.pythonhosted.org/packages/2c/5a/5c2a1c0f571c2df6e469feb8409e33bb9c55367ada8b86728d0bf5cfcbd7/standard.paster-1.0.tar.gz" } ] }