pypa / pipenv

Python Development Workflow for Humans.
https://pipenv.pypa.io
MIT License
24.86k stars 1.86k forks source link

add pipenv install dev-only #5589

Closed gschnellOnera closed 1 year ago

gschnellOnera commented 1 year ago

I propose to add a new install option for install only dev packages and there dendendenties.

Is your feature request related to a problem? Please describe.

In CI job, I want to use only dev package to verify or create something, by example: the wheel, and it's a very long time if I do install all packages (default and dev). Then I install whit pip necessary package, and the version of this package aren't manage by pipenv.

Describe the solution you'd like

Add option --dev-only For example: pipenv install --dev-only

Additional context

My GitLab-ci job

Linux wheels:
  stage: Build
  image: pyton-builder
  tags:
  - docker_linux
  script:
    - pipenv requirements --exclude-markers > src/requirements.txt
  - cd src 
  - pip3 install --upgrade --user --trusted-host ${WHEELS_SERVER%:*} -i http://${WHEELS_SERVER}/simple twine Cython numpy==1.22.4 incremental 
  - PYTHONPATH=$(pwd) python3 setup.py bdist_wheel
  - cp src/dist/*.whl .
  artifacts:
    paths:
    - src/dist/*.whl

Add any other context or screenshots about the feature request here. It may be a good idea to mention that platform and Python version you are on.


Please run $ pipenv --support, and paste the results here. Don't put backticks (`) around it! The output already contains Markdown formatting.

$ pipenv --support Pipenv version: `'2022.11.25'` Pipenv location: `'/usr/local/lib/python3.8/site-packages/pipenv'` Python location: `'/usr/local/bin/python3'` OS Name: `'posix'` User pip version: `'22.3'` user Python installations found: - `3.8.13`: `/usr/local/bin/python` - `3.8.13`: `/usr/local/bin/python3` - `3.8.13`: `/usr/local/bin/python3.8` PEP 508 Information: ``` {'implementation_name': 'cpython', 'implementation_version': '3.8.13', 'os_name': 'posix', 'platform_machine': 'x86_64', 'platform_python_implementation': 'CPython', 'platform_release': '3.10.0-1160.59.1.el7.x86_64', 'platform_system': 'Linux', 'platform_version': '#1 SMP Wed Feb 23 16:47:03 UTC 2022', 'python_full_version': '3.8.13', 'python_version': '3.8', 'sys_platform': 'linux'} ``` System environment variables: - `PIPENV_VENV_IN_PROJECT` - `PIP_ONLY_BINARY` - `HOSTNAME` - `PYTHON_VERSION` - `PWD` - `PYTHON_SETUPTOOLS_VERSION` - `TZ` - `HOME` - `LANG` - `GPG_KEY` - `TERM` - `SHLVL` - `PYTHON_PIP_VERSION` - `PYTHON_GET_PIP_SHA256` - `PIP_CERT` - `PYTHON_GET_PIP_URL` - `PATH` - `DEBIAN_FRONTEND` - `_` - `PIP_DISABLE_PIP_VERSION_CHECK` - `PIP_PYTHON_PATH` - `PYTHONDONTWRITEBYTECODE` - `PYTHONFINDER_IGNORE_UNSUPPORTED` Pipenv–specific environment variables: - `PIPENV_VENV_IN_PROJECT`: `1` Debug–specific environment variables: - `PATH`: `/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin` - `LANG`: `C.UTF-8` - `PWD`: `/builds/morpho/PyGMT` --------------------------- Contents of `Pipfile` ('/builds/morpho/PyGMT/Pipfile'): ```toml [[source]] url = "https://nexus-dsfm.onecert.fr/repository/pypi/simple" verify_ssl = false name = "pypi" [packages] cython = "*" numpy = "==1.22.4" uncertainties = "*" WMI = "*" dicttoxml = "*" xlrd = "*" xlwt = "*" requests = "*" six = "*" Pillow = "*" reportlab = "*" openpyxl = "*" configparser = "*" paho-mqtt = "*" jsonpickle = "*" PyPDF2 = "*" GitPython = "*" incremental = "*" click = "*" twisted = "*" pyyaml = "*" XlsXwriter = "*" Jinja2 = "*" python-consul = "*" python-redmine = "*" python-dateutil = "*" numexpr = "*" Pympler = "*" pygame = "*" pymediainfo = "==5.1.0" cftime = "*" PySide2 = "~=5.15" PyQt5 = "~=5.15" PythonQwt = "*" pymodbus3 = "*" NetCDF4 = "*" comtypes = "*" sqlalchemy = "*" pyzmq = "*" matplotlib = "*" scipy = "*" h5py = "==3.7.0" icalendar = "*" simplejson = "*" pyRXP = "*" quantities = "*" pandas = "*" pyqtgraph = "*" Pyro4 = "*" pytango = "==9.3.4" taurus = "==5.1.4" python-ldap = "==3.4.0" OpenOPC = "*" dpath = "~=1.4" pip = "*" importlib-metadata = "*" cx-logging = "*" packaging = "*" pywin32 = {version="*", markers="platform_system == 'Windows'"} pyvisa = "*" psycopg2-binary = "*" chaco = "*" automat = "*" enable = "==5.3.0" lock = "*" [dev-packages] pytest = "*" pytest-cov = "*" coverage = "*" nose-exclude = "*" mock = "*" check-manifest = "*" cx_Freeze = "*" configparser = "*" twine = "*" Sphinx = "*" sphinx-rtd-theme = "*" sphinx_bootstrap_theme = "*" numpydoc = "*" nose = "*" lxml = "*" alembic = "*" httpretty = "*" vcrpy = "*" pytest-recording = "*" [requires] python_version = "3.8" ``` Contents of `Pipfile.lock` ('/builds/morpho/PyGMT/Pipfile.lock'): ```json { "_meta": { "hash": { "sha256": "21e22a9a039148ef5906b816745e562ce1b5e116d37f24935b45842b59be2dd7" }, "pipfile-spec": 6, "requires": { "python_version": "3.8" }, "sources": [ { "name": "pypi", "url": "https://xxxxxxxxxx/repository/pypi/simple", "verify_ssl": false } ] }, "default": { "attrs": { "hashes": [ "sha256:29e95c7f6778868dbd49170f98f8818f78f3dc5e0e37c0b1f474e3561b240836", "sha256:c9227bfc2f01993c03f68db37d1d15c9690188323c067c641f1a35ca58185f99" ], "markers": "python_version >= '3.6'", "version": "==22.2.0" }, "automat": { "hashes": [ "sha256:c3164f8742b9dc440f3682482d32aaff7bb53f71740dd018533f9de286b64180" ], "index": "pypi", "version": "==22.10.0" }, "backports.zoneinfo": { "hashes": [ "sha256:17746bd546106fa389c51dbea67c8b7c8f0d14b5526a579ca6ccf5ed72c526cf", "sha256:1b13e654a55cd45672cb54ed12148cd33628f672548f373963b0bff67b217328", "sha256:1c5742112073a563c81f786e77514969acb58649bcdf6cdf0b4ed31a348d4546", "sha256:4a0f800587060bf8880f954dbef70de6c11bbe59c673c3d818921f042f9954a6", "sha256:5c144945a7752ca544b4b78c8c41544cdfaf9786f25fe5ffb10e838e19a27570", "sha256:7b0a64cda4145548fed9efc10322770f929b944ce5cee6c0dfe0c87bf4c0c8c9", "sha256:8439c030a11780786a2002261569bdf362264f605dfa4d65090b64b05c9f79a7", "sha256:8961c0f32cd0336fb8e8ead11a1f8cd99ec07145ec2931122faaac1c8f7fd987", "sha256:89a48c0d158a3cc3f654da4c2de1ceba85263fafb861b98b59040a5086259722", "sha256:a76b38c52400b762e48131494ba26be363491ac4f9a04c1b7e92483d169f6582", "sha256:da6013fd84a690242c310d77ddb8441a559e9cb3d3d59ebac9aca1a57b2e18bc", "sha256:e55b384612d93be96506932a786bbcde5a2db7a9e6a4bb4bffe8b733f5b9036b", "sha256:e81b76cace8eda1fca50e345242ba977f9be6ae3945af8d46326d776b4cf78d1", "sha256:e8236383a20872c0cdf5a62b554b27538db7fa1bbec52429d8d106effbaeca08", "sha256:f04e857b59d9d1ccc39ce2da1021d196e47234873820cbeaad210724b1ee28ac", "sha256:fadbfe37f74051d024037f223b8e001611eac868b5c5b06144ef4d8b799862f2" ], "markers": "python_version in '3.7, 3.8'", "version": "==0.2.1" }, .............................. "yarl": { "hashes": [ "sha256:009a028127e0a1755c38b03244c0bea9d5565630db9c4cf9572496e947137a87", "sha256:0414fd91ce0b763d4eadb4456795b307a71524dbacd015c657bb2a39db2eab89", "sha256:0978f29222e649c351b173da2b9b4665ad1feb8d1daa9d971eb90df08702668a", "sha256:0ef8fb25e52663a1c85d608f6dd72e19bd390e2ecaf29c17fb08f730226e3a08", "sha256:10b08293cda921157f1e7c2790999d903b3fd28cd5c208cf8826b3b508026996", "sha256:1684a9bd9077e922300ecd48003ddae7a7474e0412bea38d4631443a91d61077", "sha256:1b372aad2b5f81db66ee7ec085cbad72c4da660d994e8e590c997e9b01e44901", "sha256:1e21fb44e1eff06dd6ef971d4bdc611807d6bd3691223d9c01a18cec3677939e", "sha256:2305517e332a862ef75be8fad3606ea10108662bc6fe08509d5ca99503ac2aee", "sha256:24ad1d10c9db1953291f56b5fe76203977f1ed05f82d09ec97acb623a7976574", "sha256:272b4f1599f1b621bf2aabe4e5b54f39a933971f4e7c9aa311d6d7dc06965165", "sha256:2a1fca9588f360036242f379bfea2b8b44cae2721859b1c56d033adfd5893634", "sha256:2b4fa2606adf392051d990c3b3877d768771adc3faf2e117b9de7eb977741229", "sha256:3150078118f62371375e1e69b13b48288e44f6691c1069340081c3fd12c94d5b", "sha256:326dd1d3caf910cd26a26ccbfb84c03b608ba32499b5d6eeb09252c920bcbe4f", "sha256:34c09b43bd538bf6c4b891ecce94b6fa4f1f10663a8d4ca589a079a5018f6ed7", "sha256:388a45dc77198b2460eac0aca1efd6a7c09e976ee768b0d5109173e521a19daf", "sha256:3adeef150d528ded2a8e734ebf9ae2e658f4c49bf413f5f157a470e17a4a2e89", "sha256:3edac5d74bb3209c418805bda77f973117836e1de7c000e9755e572c1f7850d0", "sha256:3f6b4aca43b602ba0f1459de647af954769919c4714706be36af670a5f44c9c1", "sha256:3fc056e35fa6fba63248d93ff6e672c096f95f7836938241ebc8260e062832fe", "sha256:418857f837347e8aaef682679f41e36c24250097f9e2f315d39bae3a99a34cbf", "sha256:42430ff511571940d51e75cf42f1e4dbdded477e71c1b7a17f4da76c1da8ea76", "sha256:44ceac0450e648de86da8e42674f9b7077d763ea80c8ceb9d1c3e41f0f0a9951", "sha256:47d49ac96156f0928f002e2424299b2c91d9db73e08c4cd6742923a086f1c863", "sha256:48dd18adcf98ea9cd721a25313aef49d70d413a999d7d89df44f469edfb38a06", "sha256:49d43402c6e3013ad0978602bf6bf5328535c48d192304b91b97a3c6790b1562", "sha256:4d04acba75c72e6eb90745447d69f84e6c9056390f7a9724605ca9c56b4afcc6", "sha256:57a7c87927a468e5a1dc60c17caf9597161d66457a34273ab1760219953f7f4c", "sha256:58a3c13d1c3005dbbac5c9f0d3210b60220a65a999b1833aa46bd6677c69b08e", "sha256:5df5e3d04101c1e5c3b1d69710b0574171cc02fddc4b23d1b2813e75f35a30b1", "sha256:63243b21c6e28ec2375f932a10ce7eda65139b5b854c0f6b82ed945ba526bff3", "sha256:64dd68a92cab699a233641f5929a40f02a4ede8c009068ca8aa1fe87b8c20ae3", "sha256:6604711362f2dbf7160df21c416f81fac0de6dbcf0b5445a2ef25478ecc4c778", "sha256:6c4fcfa71e2c6a3cb568cf81aadc12768b9995323186a10827beccf5fa23d4f8", "sha256:6d88056a04860a98341a0cf53e950e3ac9f4e51d1b6f61a53b0609df342cc8b2", "sha256:705227dccbe96ab02c7cb2c43e1228e2826e7ead880bb19ec94ef279e9555b5b", "sha256:728be34f70a190566d20aa13dc1f01dc44b6aa74580e10a3fb159691bc76909d", "sha256:74dece2bfc60f0f70907c34b857ee98f2c6dd0f75185db133770cd67300d505f", "sha256:75c16b2a900b3536dfc7014905a128a2bea8fb01f9ee26d2d7d8db0a08e7cb2c", "sha256:77e913b846a6b9c5f767b14dc1e759e5aff05502fe73079f6f4176359d832581", "sha256:7a66c506ec67eb3159eea5096acd05f5e788ceec7b96087d30c7d2865a243918", "sha256:8c46d3d89902c393a1d1e243ac847e0442d0196bbd81aecc94fcebbc2fd5857c", "sha256:93202666046d9edadfe9f2e7bf5e0782ea0d497b6d63da322e541665d65a044e", "sha256:97209cc91189b48e7cfe777237c04af8e7cc51eb369004e061809bcdf4e55220", "sha256:a48f4f7fea9a51098b02209d90297ac324241bf37ff6be6d2b0149ab2bd51b37", "sha256:a783cd344113cb88c5ff7ca32f1f16532a6f2142185147822187913eb989f739", "sha256:ae0eec05ab49e91a78700761777f284c2df119376e391db42c38ab46fd662b77", "sha256:ae4d7ff1049f36accde9e1ef7301912a751e5bae0a9d142459646114c70ecba6", "sha256:b05df9ea7496df11b710081bd90ecc3a3db6adb4fee36f6a411e7bc91a18aa42", "sha256:baf211dcad448a87a0d9047dc8282d7de59473ade7d7fdf22150b1d23859f946", "sha256:bb81f753c815f6b8e2ddd2eef3c855cf7da193b82396ac013c661aaa6cc6b0a5", "sha256:bcd7bb1e5c45274af9a1dd7494d3c52b2be5e6bd8d7e49c612705fd45420b12d", "sha256:bf071f797aec5b96abfc735ab97da9fd8f8768b43ce2abd85356a3127909d146", "sha256:c15163b6125db87c8f53c98baa5e785782078fbd2dbeaa04c6141935eb6dab7a", "sha256:cb6d48d80a41f68de41212f3dfd1a9d9898d7841c8f7ce6696cf2fd9cb57ef83", "sha256:ceff9722e0df2e0a9e8a79c610842004fa54e5b309fe6d218e47cd52f791d7ef", "sha256:cfa2bbca929aa742b5084fd4663dd4b87c191c844326fcb21c3afd2d11497f80", "sha256:d617c241c8c3ad5c4e78a08429fa49e4b04bedfc507b34b4d8dceb83b4af3588", "sha256:d881d152ae0007809c2c02e22aa534e702f12071e6b285e90945aa3c376463c5", "sha256:da65c3f263729e47351261351b8679c6429151ef9649bba08ef2528ff2c423b2", "sha256:de986979bbd87272fe557e0a8fcb66fd40ae2ddfe28a8b1ce4eae22681728fef", "sha256:df60a94d332158b444301c7f569659c926168e4d4aad2cfbf4bce0e8fb8be826", "sha256:dfef7350ee369197106805e193d420b75467b6cceac646ea5ed3049fcc950a05", "sha256:e59399dda559688461762800d7fb34d9e8a6a7444fd76ec33220a926c8be1516", "sha256:e6f3515aafe0209dd17fb9bdd3b4e892963370b3de781f53e1746a521fb39fc0", "sha256:e7fd20d6576c10306dea2d6a5765f46f0ac5d6f53436217913e952d19237efc4", "sha256:ebb78745273e51b9832ef90c0898501006670d6e059f2cdb0e999494eb1450c2", "sha256:efff27bd8cbe1f9bd127e7894942ccc20c857aa8b5a0327874f30201e5ce83d0", "sha256:f37db05c6051eff17bc832914fe46869f8849de5b92dc4a3466cd63095d23dfd", "sha256:f8ca8ad414c85bbc50f49c0a106f951613dfa5f948ab69c10ce9b128d368baf8", "sha256:fb742dcdd5eec9f26b61224c23baea46c9055cf16f62475e11b9b15dfd5c117b", "sha256:fc77086ce244453e074e445104f0ecb27530d6fd3a46698e33f6c38951d5a0f1", "sha256:ff205b58dc2929191f68162633d5e10e8044398d7a45265f90a0f1d51f85f72c" ], "markers": "python_version >= '3.7'", "version": "==1.8.2" }, "zipp": { "hashes": [ "sha256:83a28fcb75844b5c0cdaf5aa4003c2d728c77e05f5aeabe8e95e56727005fbaa", "sha256:a7a22e05929290a67401440b39690ae6563279bced5f314609d9d03798f56766" ], "markers": "python_version >= '3.7'", "version": "==3.11.0" } } } ```
matteius commented 1 year ago

There already is an option to do this -- the same as pipenv install --categories=dev-packages
No interest here in supporting a dev-only flag when its just another named category like any other.

gschnellOnera commented 1 year ago

Sorry, I didn't realize that was possible by reading the documentation. I therefore close the issue