{ "info": { "author": "Jonas Grimfelt", "author_email": "grimen@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: POSIX", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries" ], "description": "# Easy Package - for Python [![Build Status](https://travis-ci.org/grimen/python-easypackage.svg?branch=master)](https://travis-ci.org/grimen/python-easypackage) [![PyPI version](https://badge.fury.io/py/easypackage.svg)](https://badge.fury.io/py/easypackage)\n\nPython packages - the simple way.\n\n\n## Background\n\n**Had to code Python** so ended up abstracting out these Python package related utilities to be able to deal with Python packages which is in a sad state in comparison to most other language environments.\n\n\n## Features\n\n- **Easy package (system) load paths** - because package imports and load paths in Python makes adults cry.\n\n- **Easy package tag/release** - because package tag/release management should not be done by hand, fallback on conventions.\n\n\n## Install\n\nInstall using **pip**:\n\n```sh\npip install easypackage\n```\n\n\n## Usage\n\nHow to to make use of `easypackage` in various ways:\n\n\n### Required\n\nCreate a `package.json` in package root folder (e.g. `mypackage`) - see **Node.js** specification, in lack of such for Python.\n\n\n\n## Easy package load paths\n\nIn any package source file:\n\n```python\n# e.g. `~/dev/projects/mypackage/foo/foo.py`\n\ndef hello:\n print('hello!')\n\n```\n\nIn any other package source file:\n\n```python\n# e.g. `~/dev/projects/mypackage/bar/bar.py`\n\nfrom easypackage import syspath as easysyspath\n\n# add `~/dev/projects/mypackage` to Python system path unless already added\neasysyspath.syspath()\n\nfrom mypackage.utils.foo import foo\n\nfoo.hello()\n\n```\n\nAnd so on.\n\n\n## Easy package tag/release (WIP/TBA)\n\nIn file `release.py` in package project root:\n\n```python\nfrom easypackage import release as easyrelease\n\neasyrelease.release()\n```\n\nTo tag/release a new version to Git, simply add/update a valid **semver** version tag in `package.json` - according to **Node.js** specification - and then run `python release.py`.\n\nCurrently not submitted to any Python package register, but will probably be added soon.\n\n\n## License\n\nReleased under the MIT license.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://github.com/grimen/python-easypackage", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/grimen/python-easypackage", "keywords": "python,package,module,easy,automatic,syspath,setup,release,root", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "easypackage", "package_url": "https://pypi.org/project/easypackage/", "platform": "", "project_url": "https://pypi.org/project/easypackage/", "project_urls": { "Download": "https://github.com/grimen/python-easypackage", "Homepage": "https://github.com/grimen/python-easypackage", "bugs": "https://github.com/grimen/python-easypackage/issues", "repository": "https://github.com/grimen/python-easypackage" }, "release_url": "https://pypi.org/project/easypackage/0.1.8/", "requires_dist": null, "requires_python": "", "summary": "Python packages - the simple way.", "version": "0.1.8" }, "last_serial": 4013122, "releases": { "0.1.5": [ { "comment_text": "", "digests": { "md5": "e1cc53407d5375542ba74b63edc06308", "sha256": "3fa59216a1d33140cc1ff848b94f2d57a5e94de6cb52cc023123f68da9896065" }, "downloads": -1, "filename": "easypackage-0.1.5-py2-none-any.whl", "has_sig": false, "md5_digest": "e1cc53407d5375542ba74b63edc06308", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 19739, "upload_time": "2018-06-22T04:20:40", "url": "https://files.pythonhosted.org/packages/32/9d/45ba26a2dcc5b7f7293a7cd52767fd5272ae25f9e1f39c12afe781ae411d/easypackage-0.1.5-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1c1ae2da5e478242ff0bc1accb667b1a", "sha256": "b27ad1131f17727e29ae29cb863bf5a8b2cf33a4160a4d484dc9a6bd62a8bdba" }, "downloads": -1, "filename": "easypackage-0.1.5.tar.gz", "has_sig": false, "md5_digest": "1c1ae2da5e478242ff0bc1accb667b1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11607, "upload_time": "2018-06-22T04:20:41", "url": "https://files.pythonhosted.org/packages/7a/dd/aee8996391b2760f961b3330c65fef3fd6c363645774d04feeea05cc2cf9/easypackage-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "c9ad83a17e83161f3907f2d04f19fdd4", "sha256": "bce997a5a50dae0b1b0847f24dcacdf0d91c224c78e5e4c7a6a0ece08915d0c3" }, "downloads": -1, "filename": "easypackage-0.1.6-py2-none-any.whl", "has_sig": false, "md5_digest": "c9ad83a17e83161f3907f2d04f19fdd4", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 19737, "upload_time": "2018-06-22T04:23:32", "url": "https://files.pythonhosted.org/packages/6b/fa/5dcd1e4c9c55b5363d26ca45d3998eddb709acad523a5eef7d30b7b50ecf/easypackage-0.1.6-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f076eae03e85a8be70560d770cb28c75", "sha256": "4a7be2940958a8f2b154cc6c6acf2860564418c241bbe4610ff9f97427ae1f70" }, "downloads": -1, "filename": "easypackage-0.1.6.tar.gz", "has_sig": false, "md5_digest": "f076eae03e85a8be70560d770cb28c75", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11605, "upload_time": "2018-06-22T04:23:33", "url": "https://files.pythonhosted.org/packages/3f/a1/941963f4f2b638ddbb09d9fadd9817e15715f1694bd76c112b0ba676cbf1/easypackage-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "1562d09f2732242dacd1e6d7c9c27b11", "sha256": "c0040f96bd9651addd1d6a76476dd7b1fa45053ad94f4d1a05bcbba4aab163c6" }, "downloads": -1, "filename": "easypackage-0.1.7-py2-none-any.whl", "has_sig": false, "md5_digest": "1562d09f2732242dacd1e6d7c9c27b11", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 19942, "upload_time": "2018-06-27T07:39:25", "url": "https://files.pythonhosted.org/packages/86/d2/763c32c4e044dbeac08bd1551f6f64889a951cbce8b42152cf7bb29e6a06/easypackage-0.1.7-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "af175e440af9e25e24461bea95df13b4", "sha256": "34e8c2b8e889dda8d904fecf8b6aba319ee31bd3a2aa847a09c48b4ed2345ea0" }, "downloads": -1, "filename": "easypackage-0.1.7.tar.gz", "has_sig": false, "md5_digest": "af175e440af9e25e24461bea95df13b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11924, "upload_time": "2018-06-27T07:39:26", "url": "https://files.pythonhosted.org/packages/7f/6c/d8e6a1233dbcb7f2f172d5b44de0b6975b72b62f6951e56ac6286bf57751/easypackage-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "9b99015af399e08dddd2e1d6ca9f4e72", "sha256": "6e7bb635544b6144e5d2347071df7c14f26807099623f263c6591c568e5588a4" }, "downloads": -1, "filename": "easypackage-0.1.8-py2-none-any.whl", "has_sig": false, "md5_digest": "9b99015af399e08dddd2e1d6ca9f4e72", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 20516, "upload_time": "2018-06-28T22:29:10", "url": "https://files.pythonhosted.org/packages/a8/d6/12ee0c3d41835fab1f5b329534b4237d13f829d895c033c081ecaf938533/easypackage-0.1.8-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "305e71df1ed632afe9c6404238dcbbaf", "sha256": "c719aa5dc4513d3239959d3dbfcd6bcad2cbb1c45d021ac82c3a00d79a2a7182" }, "downloads": -1, "filename": "easypackage-0.1.8.tar.gz", "has_sig": false, "md5_digest": "305e71df1ed632afe9c6404238dcbbaf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13223, "upload_time": "2018-06-28T22:29:12", "url": "https://files.pythonhosted.org/packages/94/ae/858e97891b7b27f958a2fbc4fb42aacaa56f8c083e0e8043e713dea9bb5f/easypackage-0.1.8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9b99015af399e08dddd2e1d6ca9f4e72", "sha256": "6e7bb635544b6144e5d2347071df7c14f26807099623f263c6591c568e5588a4" }, "downloads": -1, "filename": "easypackage-0.1.8-py2-none-any.whl", "has_sig": false, "md5_digest": "9b99015af399e08dddd2e1d6ca9f4e72", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 20516, "upload_time": "2018-06-28T22:29:10", "url": "https://files.pythonhosted.org/packages/a8/d6/12ee0c3d41835fab1f5b329534b4237d13f829d895c033c081ecaf938533/easypackage-0.1.8-py2-none-any.whl" }, { "comment_text": "", "digests": { "md5": "305e71df1ed632afe9c6404238dcbbaf", "sha256": "c719aa5dc4513d3239959d3dbfcd6bcad2cbb1c45d021ac82c3a00d79a2a7182" }, "downloads": -1, "filename": "easypackage-0.1.8.tar.gz", "has_sig": false, "md5_digest": "305e71df1ed632afe9c6404238dcbbaf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13223, "upload_time": "2018-06-28T22:29:12", "url": "https://files.pythonhosted.org/packages/94/ae/858e97891b7b27f958a2fbc4fb42aacaa56f8c083e0e8043e713dea9bb5f/easypackage-0.1.8.tar.gz" } ] }