{ "info": { "author": "Lucas Cimon", "author_email": "lucas.cimon+pypi@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Archiving :: Packaging", "Topic :: Utilities" ], "description": "|pypi_version_img| |pypi_license_img| |travis_build_status|\n\nPython tools to help with the development & deployment of\ncompany-private Python packages.\n\nIt was developped to use Sonatype Nexus as a private Pypi mirror (until\n`it supports this\nnatively `__), but should\nbe adaptable to any repository supporting artifact upload with HTTP.\n\nIt is composed of 2 distincts tools :\n\n- ``nexus_uploader`` : a simple module to be used as a\n ``setup_requires`` entry in ``setup.py``, in order to easily upload\n Python packages onto a Nexus.\n- ``pyRequirements2nexus`` : a CLI tool to convert standard Python\n ``requirements.txt`` into ``nexus-requirements.txt`` files, made of\n URLs pointing to installable packages that ``pyRequirements2nexus``\n mirrored on your Nexus.\n\nTable of Contents\n================\n\n.. contents::\n\nWorkflow diagram\n================\n\n.. figure:: https://raw.githubusercontent.com/voyages-sncf-technologies/nexus_uploader/master/docs/PythonPackaging.png\n :alt:\n\nFeatures\n========\n\n- fully compatible Python 2 & 3\n\nnexus\\_uploader features\n------------------------\n\n- easy integration in ``setup.py``\n- HTTP BasicAuth to connect to Sonatype Nexus\n\npyRequirements2nexus features\n-----------------------------\n\n- full dependency resolution of Python packages, working with both Pypi\n public ones & private ones on a Nexus\n- to install packages, the end machine only require a connexion to the\n Nexus host, not to the Internet\n- support ``-e`` editable packages in ``requirements.txt``\n- support package URL fallbacks as comments in ``requirements.txt``\n- can select only Python 2 packages with `--allowed-pkg-classifiers py2.py3-none-any,py2-none-any`\n- a list of packages already included in the base environment can be\n specified (e.g. if you are using Anaconda), so that they will be\n excluded from the final ``nexus-requirements.txt``\n\nLimitations\n\n- only support ``==`` version locking in ``requirements.txt`` (not\n ``>=``). This is intentional, to ensure package versions do not\n change unexpectedly.\n\nHow to upload home-made Python packages to my Nexus ?\n=====================================================\n\nHere is a handy recipe you can put in your ``setup.py`` :\n\n::\n\n setup(\n ...\n setup_requires=['nexus_uploader']\n )\n\nUsage:\n\n::\n\n $ python setup.py sdist nexus_upload --repository http://nexus/content/repositories/Snapshots/com/vsct/my_project --username $REPOSITORY_USER --password $REPOSITORY_PASSWORD\n\nImportant note\n--------------\n\nContrary to ``requirements.txt`` files, there is no way to include URLs\nto dependencies in ``setup.py`` ``install_requires`` (nor\n``setup_requires``). To work around this limitation,\n``pyrequirements2nexus`` takes advantage of the deprecated\n\"dependency\\_links\" mechanism. Using them, it is able to discover the\nfull chain of Python packages dependencies, both from Pypi **AND** from\nyour local Nexus.\n\nTo easily generate the \"dependency\\_links.txt\" in your Nexus-hosted\nprivate package out of your ``requirements.txt``, use the following\nrecipe in your its ``setup.py`` :\n\n::\n\n with open(os.path.join(os.path.dirname(os.path.realpath(__file__)), 'requirements.txt')) as requirements_file:\n requirements = requirements_file.readlines()\n dependency_links = [req for req in requirements if req.startswith('http')]\n install_requires = [req for req in requirements if not req.startswith('http')]\n\n setup(\n ...\n install_requires=install_requires,\n dependency_links=dependency_links,\n )\n\nBecause \"dependency\\_links\" are not supported since `pip\n1.6 `__,\nthey will **NOT** be installed by ``pip install`` normal recursive\ndependency-retrieval algorithm. You should always use the flat\n``nexus-requirements.txt`` with ``pip install``.\n\npyRequirements2nexus usage\n==========================\n\n::\n\n pip install nexus_uploader\n pyRequirements2nexus --help\n\nAlso take a look at ``jenkins-install-python-requirements.sh`` for an\nexample of how we use it on our Jenkins.\n\nInstallation of nexus-requirements.txt on an end machine\n========================================================\n\n::\n\n pip install --user --no-index --no-deps --no-cache-dir --upgrade --requirement nexus-requirements.txt\n\nSupported requirements.txt format\n=================================\n\n::\n\n http://nexus/content/repositories/repo_id/my/project/group/mypkgname/1.0/mypkgname-1.0-py2.py3-none-any.tar.gz\n nose==1.3.7 # -> transformed into an URL like this: http://nexus/content/repositories/repo_id/my/project/group/...\n -e ../my/relative/path # http://nexus/content/repositories/...fallback_url...\n\nContributing\n============\n\n`pre-commit hooks `__ installation:\n\n::\n\n pip install -r dev-requirements\n pre-commit install\n\nUnit tests:\n\n::\n\n py.test tests/\n\nSmoke tests using Pypi:\n\n::\n\n ipython3 --pdb tests/smoke_test_extract_classifier_and_extension.py 200\n\nFAQ\n===\n\npip install - Download error on https://pypi.python.org / Couldn't find index page for\n--------------------------------------------------------------------------------------\n\nThe stack trace :\n\n::\n\n Collecting http://nexus/content/repositories/pip/com/vsct/pip/jsonschema/2.5.1/jsonschema-2.5.1-py2.py3-none-any.tar.gz (from -r scripts/requirements.pip (line 12))\n Downloading http://nexus/content/repositories/pip/com/vsct/pip/jsonschema/2.5.1/jsonschema-2.5.1-py2.py3-none-any.tar.gz (50kB)\n Complete output from command python setup.py egg_info:\n Download error on https://pypi.python.org/simple/vcversioner/: [Errno -2] Name or service not known -- Some packages may not be found!\n Couldn't find index page for 'vcversioner' (maybe misspelled?)\n Download error on https://pypi.python.org/simple/: [Errno -2] Name or service not known -- Some packages may not be found!\n No local packages or download links found for vcversioner\n\nExplanation : https://github.com/Julian/jsonschema/issues/276\n\nSolution :\n\n::\n\n $ cat < ~/.pydistutils.cfg\n [easy_install]\n allow_hosts = nexus\n find_links = http://nexus/content/repositories/pip/com/vsct/pip/vcversioner/2.14.0.0/\n EOF\n\nHow to generate a \"--default-packages\" file out of an Anaconda .sh installer\n----------------------------------------------------------------------------\n\n::\n\n grep -aF 'extract_dist ' Anaconda3-2.4.1-Linux-x86_64.sh \\\n | perl -p -e 's/extract_dist (.+?[0-9])[^.]*$/\\1\\n/;' -e 's/^(.+)-(.+)$/\\1 == \\2/;' \\\n | grep -vE '^(_cache|_license|anaconda|python) ' > anaconda3-2.4.1_included_packages.txt\n\nTip for easily removing packages from your nexus\n------------------------------------------------\n\n::\n\n pip install --user repositorytools\n export REPOSITORY_USER=...\n export REPOSITORY_PASSWORD=\n artifact delete http://nexus/content/repositories/pip/com/vsct/pip/ultrajson/1.35/ultrajson-1.35-macosx-10.6-intel.tar.gz\n\nToDo\n====\n\n- detect if package releases on Pypi require gcc compilation (are they\n using setuptools/distutils ``Extension`` in ``setup.py`` ?)\n- classifier-based selection of Python packages\n- add support for md5 & sha1 upload/checks\n\n.. |pypi_version_img| image:: https://img.shields.io/pypi/v/nexus_uploader.svg?style=flat\n :target: https://pypi.python.org/pypi/nexus_uploader\n.. |pypi_license_img| image:: https://img.shields.io/pypi/l/nexus_uploader.svg?style=flat\n :target: https://pypi.python.org/pypi/nexus_uploader\n.. |travis_build_status| image:: https://travis-ci.org/voyages-sncf-technologies/nexus_uploader.svg?branch=master\n :target: https://travis-ci.org/voyages-sncf-technologies/nexus_uploader\n\n\nChange Log\n==========\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](http://keepachangelog.com/)\nand this project adheres to [Semantic Versioning](http://semver.org/).\n\n[1.0.17] - 2018-05-16\n---------------------\nFixed\n~~~~~\n- Using HTTPS url to connect to Pypi by default to avoid \"HTTPError: 403 Client Error: SSL is required\"\n\n[1.0.16] - 2018-04-09\n---------------------\nFixed\n~~~~~\n- support for X.Y.Z-SNAPSHOT (uppercase) package versions\n\n[1.0.15] - 2018-02-21\n---------------------\nAdded\n~~~~~\n- Now supporting unlocked versions using `>=` / `<=` / `>` / `<` specifiers\n\n[1.0.14] - 2017-07-12\n---------------------\nFixed\n~~~~~\n- Tuple unpacking issue on py3.5 for fixed-version requirements\n\n[1.0.13] - 2017-07-03\n---------------------\nFixed\n~~~~~\n- The resolver now handles properly uppercase versions (like X.Y-SNAPSHOT)\n\n[1.0.12] - 2017-07-03\n---------------------\nFixed\n~~~~~\n- `Changelog.md` wasn't included in tarball (due to `MANIFEST.in`)\n\n[1.0.10] - 2017-07-03\n---------------------\nFixed\n~~~~~\n- a bug introduced in v1.0.9: `piptools.exceptions.UnsupportedConstraint: pip-compile does not support URLs as packages, unless they are editable`\n- changelog rendering in Pypi rst description\n\n[1.0.9] - 2017-06-30\n--------------------\nFixed\n~~~~~\n- Upgrading pip-tools dependency to 1.9.0 to include commit b8043be (support for pip 8.1.2) -> https://github.com/voyages-sncf-technologies/nexus_uploader/commit/38f031b\n- Fixing support for classifiers to be able to only retrieve Python2-compatible pkgs -> https://github.com/voyages-sncf-technologies/nexus_uploader/commit/35e78fc\n- Fixing repository files permissions -> https://github.com/voyages-sncf-technologies/nexus_uploader/commit/38f031b\n\nAdded\n~~~~~\n- Made the lib compatible for Python 2.7 -> https://github.com/voyages-sncf-technologies/nexus_uploader/commit/5833c5f\n- More tests\n\n[1.0.8] - 2016-12-13\n--------------------\nAdded\n~~~~~\n- `--pypi-json-api-url` parameter : source of Python packages to feed the Nexus with\n- `--allowed-pkg-classifiers` parameter : when no `source` release is available for a given `package==version`,\n select a package matching on of those classifiers as a 2nd choice\n (introduced to handle `docutils==0.13.1` that only exist as a wheel).\n\nChanged\n~~~~~~~\n- The `--allowed-pkg-classifiers` comes with a default value of `py3-none-any` changing the existing behaviour.\n To keep the previous behaviour you'll need to pass an empty value to this parameter.\n An `PypiQueryError` will then be raised if no `source` package is available.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/voyages-sncf-technologies/nexus_uploader", "keywords": "nexus artifacts packages upload requirements pip-compile", "license": "Apache License 2.0", "maintainer": "", "maintainer_email": "", "name": "nexus_uploader", "package_url": "https://pypi.org/project/nexus_uploader/", "platform": "", "project_url": "https://pypi.org/project/nexus_uploader/", "project_urls": { "Homepage": "http://github.com/voyages-sncf-technologies/nexus_uploader" }, "release_url": "https://pypi.org/project/nexus_uploader/1.0.17/", "requires_dist": null, "requires_python": "", "summary": "CLI tool to upload Python packages listed in a requirements.txt file into a Sonatype Nexus (from Pypi), and return the list of the artifact URLs", "version": "1.0.17" }, "last_serial": 3869219, "releases": { "1.0": [], "1.0.0": [ { "comment_text": "", "digests": { "md5": "d7a44f1633b14e079c210b7cc55bf6b6", "sha256": "83dea46116914f81c0a22723cab1bde7e9cd4433cf7bd5fa8cc395d98c560ea3" }, "downloads": -1, "filename": "nexus_uploader-1.0.0.tar.gz", "has_sig": false, "md5_digest": "d7a44f1633b14e079c210b7cc55bf6b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11214, "upload_time": "2016-08-16T13:18:40", "url": "https://files.pythonhosted.org/packages/7a/58/668e7b367607b3ff1e94a1ce9bf2eab62e4e6589207269aecce0d452e478/nexus_uploader-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "af058d03266ea2ee146c0762b3570290", "sha256": "82af66512f235e3430b034ba6dccdd6ea4a8255d7ec56bef4e5d3ae9f388e876" }, "downloads": -1, "filename": "nexus_uploader-1.0.1.tar.gz", "has_sig": false, "md5_digest": "af058d03266ea2ee146c0762b3570290", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11325, "upload_time": "2016-08-16T15:56:10", "url": "https://files.pythonhosted.org/packages/8e/f9/1be3d64175b84520a43a8ba125e9304e7521d05a6275eda6e5e1a75a0cdb/nexus_uploader-1.0.1.tar.gz" } ], "1.0.10": [ { "comment_text": "", "digests": { "md5": "0700a91d486fa783429d729bae09eeaa", "sha256": "90a8782d67844af97ae7bdcd9d70703ad4262bb47cc8b69d20533b0cbc2db195" }, "downloads": -1, "filename": "nexus_uploader-1.0.10.tar.gz", "has_sig": false, "md5_digest": "0700a91d486fa783429d729bae09eeaa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17718, "upload_time": "2017-07-03T08:50:19", "url": "https://files.pythonhosted.org/packages/b2/96/3031b0442286229328b782426b2c26dee3639a643222321941530ec2475e/nexus_uploader-1.0.10.tar.gz" } ], "1.0.12": [ { "comment_text": "", "digests": { "md5": "06f5bc573c8455fb0dda1202deedfac7", "sha256": "76d31e9bf985d1ddb0261e2e417451208f13922738b8a6f7d48ffc8a92394fd2" }, "downloads": -1, "filename": "nexus_uploader-1.0.12.tar.gz", "has_sig": false, "md5_digest": "06f5bc573c8455fb0dda1202deedfac7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18759, "upload_time": "2017-07-03T09:36:31", "url": "https://files.pythonhosted.org/packages/6a/2d/f5c9102305b75999d9ddc7014d29041f6e56228208410058d2e5286ca494/nexus_uploader-1.0.12.tar.gz" } ], "1.0.13": [ { "comment_text": "", "digests": { "md5": "d672f992f147bff79a003fd70c297696", "sha256": "cbaa41627d6a769b16a564169feb92bb47c8b2d15a75c399a7285f55d7f935a8" }, "downloads": -1, "filename": "nexus_uploader-1.0.13.tar.gz", "has_sig": false, "md5_digest": "d672f992f147bff79a003fd70c297696", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18863, "upload_time": "2017-07-03T11:04:49", "url": "https://files.pythonhosted.org/packages/87/d8/81962123c9db81c3041154e4709e83b8ea68278bf522a891c36c32e0697f/nexus_uploader-1.0.13.tar.gz" } ], "1.0.14": [ { "comment_text": "", "digests": { "md5": "77b3b9074194c4b366c73f4fc7226e65", "sha256": "331a40279eada9ff0a6c38ab57eb63e2c4b41d81678f1d3032aaf72b80af64b6" }, "downloads": -1, "filename": "nexus_uploader-1.0.14-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "77b3b9074194c4b366c73f4fc7226e65", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 29716, "upload_time": "2017-07-12T15:19:12", "url": "https://files.pythonhosted.org/packages/6e/04/62d3ac508ef332bf1aee95983310592ed59d2dd7f2035af96b2fdae3f4d8/nexus_uploader-1.0.14-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7cfe92d1af05563132e215af0058ee4b", "sha256": "b29abbfff81f133f5c504862c1f6e066ad3bef37d4b58b6ac60bb4d6b9006e68" }, "downloads": -1, "filename": "nexus_uploader-1.0.14.tar.gz", "has_sig": false, "md5_digest": "7cfe92d1af05563132e215af0058ee4b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19149, "upload_time": "2017-07-12T15:19:11", "url": "https://files.pythonhosted.org/packages/3f/27/18f5325d15e940ab39c39a90cf116b78737572bf7ae4a7b5d4885e4d7ca1/nexus_uploader-1.0.14.tar.gz" } ], "1.0.15": [ { "comment_text": "", "digests": { "md5": "fc5d93595cf4b4adbc0f73c88e4223c1", "sha256": "0ea477d9ca5b523065df815250de361d2ea2bef1c8ae5a743fae31c2175ca1b6" }, "downloads": -1, "filename": "nexus_uploader-1.0.15-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fc5d93595cf4b4adbc0f73c88e4223c1", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 30203, "upload_time": "2018-02-22T08:56:28", "url": "https://files.pythonhosted.org/packages/07/f0/071b50f6cb31ad3d71812dd5b8ab028e4632d55a120ec60077b5596899e4/nexus_uploader-1.0.15-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d4f2c678d244237362bffd6a270d08c8", "sha256": "382463ba0fee0fde922ad3ec2c4887424d61e2250ec22b6db65780093febcbf0" }, "downloads": -1, "filename": "nexus_uploader-1.0.15.tar.gz", "has_sig": false, "md5_digest": "d4f2c678d244237362bffd6a270d08c8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19316, "upload_time": "2018-02-22T08:56:26", "url": "https://files.pythonhosted.org/packages/32/b3/4e868d1e41c483d448e86d1c7658d79e5b7d24b417eafa2e7f8d9578f2f5/nexus_uploader-1.0.15.tar.gz" } ], "1.0.16": [ { "comment_text": "", "digests": { "md5": "1aceaa8a025feb7edb79ae1bf2c204b9", "sha256": "ee61772edd88b34bd77bb0bd8aff91ca15214cf65823b69a35ab30fd41314856" }, "downloads": -1, "filename": "nexus_uploader-1.0.16-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1aceaa8a025feb7edb79ae1bf2c204b9", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 30610, "upload_time": "2018-04-09T16:04:13", "url": "https://files.pythonhosted.org/packages/c4/47/f00f53d6aae57242d90b5d31258196bd320529405b13d7f1464ae31dfd7c/nexus_uploader-1.0.16-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b01ab12a871ef32cf9232faf0f01d06b", "sha256": "5607713915acf90bdb3f6c1a5b34e4c3958714412314fbaeab584070c85a5a81" }, "downloads": -1, "filename": "nexus_uploader-1.0.16.tar.gz", "has_sig": false, "md5_digest": "b01ab12a871ef32cf9232faf0f01d06b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19726, "upload_time": "2018-04-09T16:04:12", "url": "https://files.pythonhosted.org/packages/bc/17/763122bcc01133d911c1525f9f4762c073d8d51626918037cbf4e702c35c/nexus_uploader-1.0.16.tar.gz" } ], "1.0.17": [ { "comment_text": "", "digests": { "md5": "6c6acd65b07b461b3d6417ea4cc9a43e", "sha256": "0a4a5e3fac05f38c3d48889f4e3716712b69269dfb85748a480996979f655512" }, "downloads": -1, "filename": "nexus_uploader-1.0.17-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6c6acd65b07b461b3d6417ea4cc9a43e", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 30774, "upload_time": "2018-05-16T15:43:04", "url": "https://files.pythonhosted.org/packages/5a/59/913dc18f7bd182316fd57cca977a037d424a4a10903c37ff84bfdf05fef8/nexus_uploader-1.0.17-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "497fd2c096e91c7d16e726b03a44ff74", "sha256": "c207336bd334dfb216b6bed4a6314949a24a3713e538f20887b4c363b05dcac4" }, "downloads": -1, "filename": "nexus_uploader-1.0.17.tar.gz", "has_sig": false, "md5_digest": "497fd2c096e91c7d16e726b03a44ff74", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19971, "upload_time": "2018-05-16T15:43:02", "url": "https://files.pythonhosted.org/packages/39/11/eff7f6bec4f4fa567bac1cdca06b7026d230ed8f478ec4a4d4142aa24f47/nexus_uploader-1.0.17.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "e3820cc431da3a6d02aeba9c80990508", "sha256": "17a050093c9e23677c6adefdf2e916f46030cdf9935b58751343d3c1ae7b8fa6" }, "downloads": -1, "filename": "nexus_uploader-1.0.2.tar.gz", "has_sig": false, "md5_digest": "e3820cc431da3a6d02aeba9c80990508", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11802, "upload_time": "2016-08-16T15:59:14", "url": "https://files.pythonhosted.org/packages/60/29/38cb21136b1c2d3809c80dc63839f5bf67bf49da4bb0ebd9ef870a75a773/nexus_uploader-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "199cf332aa8ac2e823866d699bb16d99", "sha256": "135dedaa69b9669c58bf449df61f58d0c153f10ffde3d5d2d1fabedd6cb96c07" }, "downloads": -1, "filename": "nexus_uploader-1.0.3.tar.gz", "has_sig": false, "md5_digest": "199cf332aa8ac2e823866d699bb16d99", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14508, "upload_time": "2016-09-23T08:41:57", "url": "https://files.pythonhosted.org/packages/d2/df/d2d685415b971f05778e1e4115f2b8889630ea2a3df5fd2e44b0f40fb1c3/nexus_uploader-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "5f7b0b59729b34dd5bf54d2fb74e35eb", "sha256": "fba1b09a60ba31573f604708055fcd256ab229057bb420bf610370c153dddcf8" }, "downloads": -1, "filename": "nexus_uploader-1.0.4.tar.gz", "has_sig": false, "md5_digest": "5f7b0b59729b34dd5bf54d2fb74e35eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13453, "upload_time": "2016-10-05T08:23:58", "url": "https://files.pythonhosted.org/packages/14/9d/c20613d752009ab53025bda916aa9b722d6319e214452a9e29bc7a560e4b/nexus_uploader-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "61bb34ffa65e7be9bf56bf15b401364f", "sha256": "7b7996919eec92dec84fa1976c8a119588185f96c3de33d2116b566df8beb0ca" }, "downloads": -1, "filename": "nexus_uploader-1.0.5.tar.gz", "has_sig": false, "md5_digest": "61bb34ffa65e7be9bf56bf15b401364f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14497, "upload_time": "2016-10-05T09:01:31", "url": "https://files.pythonhosted.org/packages/d5/2c/bae5b3519ccfca0a2ccfc2c8b42e1b5343729ebb5eb2895fc519efe57b2b/nexus_uploader-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "0cf7679dc17c12fe1ee78e803d835892", "sha256": "382449e810ba8833750f45629d2afcb70c842f0339147cb2f9ce7825b4086518" }, "downloads": -1, "filename": "nexus_uploader-1.0.6.tar.gz", "has_sig": false, "md5_digest": "0cf7679dc17c12fe1ee78e803d835892", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14502, "upload_time": "2016-10-05T09:44:50", "url": "https://files.pythonhosted.org/packages/9a/55/f926cb5bd4c6c2053e3025c16d72535555eeb3e7792ed6890520fe1b2cc9/nexus_uploader-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "3087ed42106e1112827720a8443583ea", "sha256": "851c8ffab2ee41baa39cf774ae40ffe364057e660aa58c366decd0ab992d9078" }, "downloads": -1, "filename": "nexus_uploader-1.0.7.tar.gz", "has_sig": false, "md5_digest": "3087ed42106e1112827720a8443583ea", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14521, "upload_time": "2016-10-05T15:35:02", "url": "https://files.pythonhosted.org/packages/bb/dd/34ea27050c71d26efd20100c6ef9f05ede8e1761d944eb2799c86253a8e3/nexus_uploader-1.0.7.tar.gz" } ], "1.0.8": [ { "comment_text": "", "digests": { "md5": "7b2ce8f1958f70cb9c12cee5a12fbf9c", "sha256": "841195b9b86424ad85a32d399093a085a1c7d5c598da870631a08fc15f83a147" }, "downloads": -1, "filename": "nexus_uploader-1.0.8.tar.gz", "has_sig": false, "md5_digest": "7b2ce8f1958f70cb9c12cee5a12fbf9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14927, "upload_time": "2016-12-13T14:30:47", "url": "https://files.pythonhosted.org/packages/88/d1/efba72d4ab0af0c25c4cb2031474c8ba05e3ba30bf59e6a0cbc464419327/nexus_uploader-1.0.8.tar.gz" } ], "1.0.9": [ { "comment_text": "", "digests": { "md5": "90d8d9775021b557cc97f38540efd697", "sha256": "71a9a5998efe6f8e78126da9a9a3daf60c3329c51dcac24a7aa0f5085be8349a" }, "downloads": -1, "filename": "nexus_uploader-1.0.9.tar.gz", "has_sig": false, "md5_digest": "90d8d9775021b557cc97f38540efd697", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17038, "upload_time": "2017-06-30T10:26:10", "url": "https://files.pythonhosted.org/packages/07/48/ace52b7ac424af5148a158d19328a89ff3876dfea7c97eae05fd49525e98/nexus_uploader-1.0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6c6acd65b07b461b3d6417ea4cc9a43e", "sha256": "0a4a5e3fac05f38c3d48889f4e3716712b69269dfb85748a480996979f655512" }, "downloads": -1, "filename": "nexus_uploader-1.0.17-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6c6acd65b07b461b3d6417ea4cc9a43e", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 30774, "upload_time": "2018-05-16T15:43:04", "url": "https://files.pythonhosted.org/packages/5a/59/913dc18f7bd182316fd57cca977a037d424a4a10903c37ff84bfdf05fef8/nexus_uploader-1.0.17-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "497fd2c096e91c7d16e726b03a44ff74", "sha256": "c207336bd334dfb216b6bed4a6314949a24a3713e538f20887b4c363b05dcac4" }, "downloads": -1, "filename": "nexus_uploader-1.0.17.tar.gz", "has_sig": false, "md5_digest": "497fd2c096e91c7d16e726b03a44ff74", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19971, "upload_time": "2018-05-16T15:43:02", "url": "https://files.pythonhosted.org/packages/39/11/eff7f6bec4f4fa567bac1cdca06b7026d230ed8f478ec4a4d4142aa24f47/nexus_uploader-1.0.17.tar.gz" } ] }