{ "info": { "author": "CERN", "author_email": "info@inveniosoftware.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 1 - Planning", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Topic :: Internet :: WWW/HTTP :: Dynamic Content", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "=======\n PyNPM\n=======\n\n.. image:: https://img.shields.io/travis/inveniosoftware/pynpm.svg\n :target: https://travis-ci.org/inveniosoftware/pynpm\n\n.. image:: https://img.shields.io/coveralls/inveniosoftware/pynpm.svg\n :target: https://coveralls.io/r/inveniosoftware/pynpm\n\n.. image:: https://img.shields.io/github/tag/inveniosoftware/pynpm.svg\n :target: https://github.com/inveniosoftware/pynpm/releases\n\n.. image:: https://img.shields.io/pypi/dm/pynpm.svg\n :target: https://pypi.python.org/pypi/pynpm\n\n.. image:: https://img.shields.io/github/license/inveniosoftware/pynpm.svg\n :target: https://github.com/inveniosoftware/pynpm/blob/master/LICENSE\n\nPython interface to your NPM and package.json.\n\nFurther documentation is available on https://pynpm.readthedocs.io/.\n\nInstallation\n============\n\nPyNPM is on PyPI so all you need is:\n\n.. code-block:: console\n\n $ pip install pynpm\n\nUsage\n=====\n\nFirst point PyNPM to your ``package.json``:\n\n.. code-block:: python\n\n from pynpm import NPMPackage\n pkg = NPMPackage('path/to/package.json')\n\nNow you can run e.g. ``npm install`` from within Python:\n\n.. code-block:: python\n\n pkg.install()\n\nArguments are also support so you can run e.g. ``npm run build --report``:\n\n.. code-block:: python\n\n pkg.run_script('build', '--report')\n\nWant to use ``yarn`` instead?\n\n.. code-block:: python\n\n from pynpm import YarnPackage\n pkg = YarnPackage('path/to/package.json')\n pkg.install()\n\nBy default NPM output is piped through and the function call will wait for NPM\nto finish. If you want to silence the output or interact with process pass\n``wait=False`` and you will get a subprocess.POpen object back:\n\n.. code-block:: python\n\n p = pkg.install(wait=False)\n p.wait()\n\nBy default you can run the following NPM commands:\n\n* ``build``\n* ``init``\n* ``install``\n* ``link``\n* ``run-script``\n* ``start``\n* ``stop``\n* ``test``\n\nYou can also run other NPM commands or restrict which commands you can run:\n\n.. code-block:: python\n\n pkg = NPMPackage('path/to/package.json', commands=['install'])\n\n\nChanges\n=======\n\nVersion 0.1.1 (released 2017-05-16)\n\n- Fix problem with testing click CLI output.\n\nVersion 0.1.0 (released 2017-05-12)\n\n- Initial public release.", "description_content_type": null, "docs_url": "https://pythonhosted.org/pynpm/", "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/inveniosoftware/pynpm", "keywords": "npm node package.json", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "pynpm", "package_url": "https://pypi.org/project/pynpm/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pynpm/", "project_urls": { "Homepage": "https://github.com/inveniosoftware/pynpm" }, "release_url": "https://pypi.org/project/pynpm/0.1.1/", "requires_dist": [ "Sphinx (>=1.5.1); extra == 'all'", "check-manifest (>=0.25); extra == 'all'", "coverage (>=4.0); extra == 'all'", "isort (>=4.2.2); extra == 'all'", "pydocstyle (>=1.0.0); extra == 'all'", "pytest-cache (>=1.0); extra == 'all'", "pytest-cov (>=1.8.0); extra == 'all'", "pytest-pep8 (>=1.0.6); extra == 'all'", "pytest (>=2.8.0); extra == 'all'", "Sphinx (>=1.5.1); extra == 'all'", "check-manifest (>=0.25); extra == 'all'", "coverage (>=4.0); extra == 'all'", "isort (>=4.2.2); extra == 'all'", "pydocstyle (>=1.0.0); extra == 'all'", "pytest-cache (>=1.0); extra == 'all'", "pytest-cov (>=1.8.0); extra == 'all'", "pytest-pep8 (>=1.0.6); extra == 'all'", "pytest (>=2.8.0); extra == 'all'", "Sphinx (>=1.5.1); extra == 'docs'", "check-manifest (>=0.25); extra == 'tests'", "coverage (>=4.0); extra == 'tests'", "isort (>=4.2.2); extra == 'tests'", "pydocstyle (>=1.0.0); extra == 'tests'", "pytest-cache (>=1.0); extra == 'tests'", "pytest-cov (>=1.8.0); extra == 'tests'", "pytest-pep8 (>=1.0.6); extra == 'tests'", "pytest (>=2.8.0); extra == 'tests'" ], "requires_python": "", "summary": "Python interface to your NPM and package.json.", "version": "0.1.1" }, "last_serial": 2877613, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "6cf1d352f4fac3ba4722e93e4ff992c5", "sha256": "18183254af583f14c6b2008f3fbe54390ccaaf39228aa37cc3311427879c21db" }, "downloads": -1, "filename": "pynpm-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6cf1d352f4fac3ba4722e93e4ff992c5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9466, "upload_time": "2017-05-12T05:53:06", "url": "https://files.pythonhosted.org/packages/5c/d6/c3851139bd48e4386868d0e6b84505aadc25ad37a37586c5283f7f8e9de4/pynpm-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "027dc249d900ecd649d052a7010ab9fa", "sha256": "4e4020fe4c7fbf0f499423ce47ce7cb7230d83f09b96d0c0bd3249c7756d9593" }, "downloads": -1, "filename": "pynpm-0.1.0.tar.gz", "has_sig": false, "md5_digest": "027dc249d900ecd649d052a7010ab9fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22602, "upload_time": "2017-05-12T05:53:07", "url": "https://files.pythonhosted.org/packages/e8/3d/c1eaa6d38920dece4360fc9629e8a80aa82503de9156e25f7df7ecec4730/pynpm-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "ff521845a443755116e70a1764e52ac0", "sha256": "b3c2efafc15b0ca4f0a1cc819e55af4179c2b43a2f9bb7b1a1cc1763dc3daa52" }, "downloads": -1, "filename": "pynpm-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ff521845a443755116e70a1764e52ac0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6854, "upload_time": "2017-05-16T09:10:07", "url": "https://files.pythonhosted.org/packages/b1/4a/f6663584ff0118936498fc9f4652e981304e5bff1908da494deb4d72311c/pynpm-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c8c989b20f9f0878e279d72de849603b", "sha256": "e4df0427cd2357ca67d68a322af6873c5ce67e1625a45acfb9603e4448bf3464" }, "downloads": -1, "filename": "pynpm-0.1.1.tar.gz", "has_sig": false, "md5_digest": "c8c989b20f9f0878e279d72de849603b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16491, "upload_time": "2017-05-16T09:10:09", "url": "https://files.pythonhosted.org/packages/bd/24/6617142b5497c84f0991649e2c79ffe0d09c91d5459686e884c4b48141a9/pynpm-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ff521845a443755116e70a1764e52ac0", "sha256": "b3c2efafc15b0ca4f0a1cc819e55af4179c2b43a2f9bb7b1a1cc1763dc3daa52" }, "downloads": -1, "filename": "pynpm-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ff521845a443755116e70a1764e52ac0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6854, "upload_time": "2017-05-16T09:10:07", "url": "https://files.pythonhosted.org/packages/b1/4a/f6663584ff0118936498fc9f4652e981304e5bff1908da494deb4d72311c/pynpm-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c8c989b20f9f0878e279d72de849603b", "sha256": "e4df0427cd2357ca67d68a322af6873c5ce67e1625a45acfb9603e4448bf3464" }, "downloads": -1, "filename": "pynpm-0.1.1.tar.gz", "has_sig": false, "md5_digest": "c8c989b20f9f0878e279d72de849603b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16491, "upload_time": "2017-05-16T09:10:09", "url": "https://files.pythonhosted.org/packages/bd/24/6617142b5497c84f0991649e2c79ffe0d09c91d5459686e884c4b48141a9/pynpm-0.1.1.tar.gz" } ] }