linkedin / linkedin/shiv

shiv version 1.0.4 reports the incorrect version of 1.0.3

Open
#239 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
1.9k
Forks
114
PR merge metrics
No merged PRs in 30d

Description

I installed `shiv` with `pip` and noticed the version, published as 1.0.4, was reported to be 1.0.3 via `shiv --version`. This is reproducible following the steps for developing in the Readme. Ultimately, the `__version__` needs to be changed in `src/shiv/cli.py`. I considered a Pull Request for this issue, but settled on a bug report in case there are other changes in progress that would make a pull request bumping the version moot.

Below find all the output from the build process, but here is the piece highlighting the issue:
```
...SNIP...
Successfully installed click-8.1.7 shiv-1.0.4
(venv) collins-computer:shiv collin$ shiv --version
shiv, version 1.0.3
```

Full output from building `shiv`.
```
collins-computer:scripts collin$ git clone https://github.com/linkedin/shiv.git
Cloning into 'shiv'...
remote: Enumerating objects: 1370, done.
remote: Counting objects: 100% (254/254), done.
remote: Compressing objects: 100% (107/107), done.
remote: Total 1370 (delta 140), reused 213 (delta 116), pack-reused 1116
Receiving objects: 100% (1370/1370), 285.85 KiB | 1.92 MiB/s, done.
Resolving deltas: 100% (809/809), done.
collins-computer:scripts collin$ cd shiv/
collins-computer:shiv collin$ python3 -m venv venv
collins-computer:shiv collin$ source ./venv/bin/activate
(venv) collins-computer:shiv collin$ python3 -m pip install --upgrade build
Collecting build
Using cached build-1.0.3-py3-none-any.whl (18 kB)
Collecting packaging>=19.0
Using cached packaging-23.1-py3-none-any.whl (48 kB)
Collecting pyproject_hooks
Using cached pyproject_hooks-1.0.0-py3-none-any.whl (9.3 kB)
Collecting tomli>=1.1.0
Using cached tomli-2.0.1-py3-none-any.whl (12 kB)
Collecting importlib-metadata>=4.6
Using cached importlib_metadata-6.8.0-py3-none-any.whl (22 kB)
Collecting zipp>=0.5
Using cached zipp-3.16.2-py3-none-any.whl (7.2 kB)
Installing collected packages: zipp, tomli, pyproject-hooks, packaging, importlib-metadata, build
Successfully installed build-1.0.3 importlib-metadata-6.8.0 packaging-23.1 pyproject-hooks-1.0.0 tomli-2.0.1 zipp-3.16.2
WARNING: You are using pip version 21.1.1; however, version 23.2.1 is available.
You should consider upgrading via the '/Users/collin/scripts/shiv/venv/bin/python3 -m pip install --upgrade pip' command.
(venv) collins-computer:shiv collin$ python3 -m build
* Creating venv isolated environment...
* Installing packages in isolated environment... (setuptools, wheel)
* Getting build dependencies for sdist...
/private/var/folders/11/lfp7th5s6q70f92pw0cx7zwm0000gn/T/build-env-cayq84ob/lib/python3.9/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
!!

********************************************************************************
The license_file parameter is deprecated, use license_files instead.

By 2023-Oct-30, you need to update your project and remove deprecated calls
or your builds will no longer be supported.

See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
********************************************************************************

!!
parsed = self.parsers.get(option_name, lambda x: x)(value)
running egg_info
creating src/shiv.egg-info
writing src/shiv.egg-info/PKG-INFO
writing dependency_links to src/shiv.egg-info/dependency_links.txt
writing entry points to src/shiv.egg-info/entry_points.txt
writing requirements to src/shiv.egg-info/requires.txt
writing top-level names to src/shiv.egg-info/top_level.txt
writing manifest file 'src/shiv.egg-info/SOURCES.txt'
reading manifest file 'src/shiv.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'src/shiv.egg-info/SOURCES.txt'
* Building sdist...
/private/var/folders/11/lfp7th5s6q70f92pw0cx7zwm0000gn/T/build-env-cayq84ob/lib/python3.9/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
!!

********************************************************************************
The license_file parameter is deprecated, use license_files instead.

By 2023-Oct-30, you need to update your project and remove deprecated calls
or your builds will no longer be supported.

See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
********************************************************************************

!!
parsed = self.parsers.get(option_name, lambda x: x)(value)
running sdist
running egg_info
writing src/shiv.egg-info/PKG-INFO
writing dependency_links to src/shiv.egg-info/dependency_links.txt
writing entry points to src/shiv.egg-info/entry_points.txt
writing requirements to src/shiv.egg-info/requires.txt
writing top-level names to src/shiv.egg-info/top_level.txt
reading manifest file 'src/shiv.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'src/shiv.egg-info/SOURCES.txt'
running check
creating shiv-1.0.4
creating shiv-1.0.4/docs
creating shiv-1.0.4/src
creating shiv-1.0.4/src/shiv
creating shiv-1.0.4/src/shiv.egg-info
creating shiv-1.0.4/src/shiv/bootstrap
creating shiv-1.0.4/test
creating shiv-1.0.4/test/package
creating shiv-1.0.4/test/package/hello
copying files to shiv-1.0.4...
copying LICENSE -> shiv-1.0.4
copying MANIFEST.in -> shiv-1.0.4
copying NOTICE -> shiv-1.0.4
copying README.md -> shiv-1.0.4
copying pyproject.toml -> shiv-1.0.4
copying setup.cfg -> shiv-1.0.4
copying docs/api.rst -> shiv-1.0.4/docs
copying docs/cli-reference.rst -> shiv-1.0.4/docs
copying docs/django.rst -> shiv-1.0.4/docs
copying docs/history.rst -> shiv-1.0.4/docs
copying docs/index.rst -> shiv-1.0.4/docs
copying src/shiv/__init__.py -> shiv-1.0.4/src/shiv
copying src/shiv/__main__.py -> shiv-1.0.4/src/shiv
copying src/shiv/builder.py -> shiv-1.0.4/src/shiv
copying src/shiv/cli.py -> shiv-1.0.4/src/shiv
copying src/shiv/constants.py -> shiv-1.0.4/src/shiv
copying src/shiv/info.py -> shiv-1.0.4/src/shiv
copying src/shiv/pip.py -> shiv-1.0.4/src/shiv
copying src/shiv.egg-info/PKG-INFO -> shiv-1.0.4/src/shiv.egg-info
copying src/shiv.egg-info/SOURCES.txt -> shiv-1.0.4/src/shiv.egg-info
copying src/shiv.egg-info/dependency_links.txt -> shiv-1.0.4/src/shiv.egg-info
copying src/shiv.egg-info/entry_points.txt -> shiv-1.0.4/src/shiv.egg-info
copying src/shiv.egg-info/requires.txt -> shiv-1.0.4/src/shiv.egg-info
copying src/shiv.egg-info/top_level.txt -> shiv-1.0.4/src/shiv.egg-info
copying src/shiv/bootstrap/__init__.py -> shiv-1.0.4/src/shiv/bootstrap
copying src/shiv/bootstrap/environment.py -> shiv-1.0.4/src/shiv/bootstrap
copying src/shiv/bootstrap/filelock.py -> shiv-1.0.4/src/shiv/bootstrap
copying src/shiv/bootstrap/interpreter.py -> shiv-1.0.4/src/shiv/bootstrap
copying test/conftest.py -> shiv-1.0.4/test
copying test/test.zip -> shiv-1.0.4/test
copying test/test_bootstrap.py -> shiv-1.0.4/test
copying test/test_builder.py -> shiv-1.0.4/test
copying test/test_cli.py -> shiv-1.0.4/test
copying test/test_pip.py -> shiv-1.0.4/test
copying test/package/setup.py -> shiv-1.0.4/test/package
copying test/package/hello/__init__.py -> shiv-1.0.4/test/package/hello
copying test/package/hello/script.sh -> shiv-1.0.4/test/package/hello
Writing shiv-1.0.4/setup.cfg
Creating tar archive
removing 'shiv-1.0.4' (and everything under it)
* Building wheel from sdist
* Creating venv isolated environment...
* Installing packages in isolated environment... (setuptools, wheel)
* Getting build dependencies for wheel...
/private/var/folders/11/lfp7th5s6q70f92pw0cx7zwm0000gn/T/build-env-rjkfschy/lib/python3.9/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
!!

********************************************************************************
The license_file parameter is deprecated, use license_files instead.

By 2023-Oct-30, you need to update your project and remove deprecated calls
or your builds will no longer be supported.

See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
********************************************************************************

!!
parsed = self.parsers.get(option_name, lambda x: x)(value)
running egg_info
writing src/shiv.egg-info/PKG-INFO
writing dependency_links to src/shiv.egg-info/dependency_links.txt
writing entry points to src/shiv.egg-info/entry_points.txt
writing requirements to src/shiv.egg-info/requires.txt
writing top-level names to src/shiv.egg-info/top_level.txt
reading manifest file 'src/shiv.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'src/shiv.egg-info/SOURCES.txt'
* Installing packages in isolated environment... (wheel)
* Building wheel...
/private/var/folders/11/lfp7th5s6q70f92pw0cx7zwm0000gn/T/build-env-rjkfschy/lib/python3.9/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
!!

********************************************************************************
The license_file parameter is deprecated, use license_files instead.

By 2023-Oct-30, you need to update your project and remove deprecated calls
or your builds will no longer be supported.

See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
********************************************************************************

!!
parsed = self.parsers.get(option_name, lambda x: x)(value)
running bdist_wheel
running build
running build_py
creating build
creating build/lib
creating build/lib/shiv
copying src/shiv/constants.py -> build/lib/shiv
copying src/shiv/__init__.py -> build/lib/shiv
copying src/shiv/builder.py -> build/lib/shiv
copying src/shiv/cli.py -> build/lib/shiv
copying src/shiv/pip.py -> build/lib/shiv
copying src/shiv/info.py -> build/lib/shiv
copying src/shiv/__main__.py -> build/lib/shiv
creating build/lib/shiv/bootstrap
copying src/shiv/bootstrap/__init__.py -> build/lib/shiv/bootstrap
copying src/shiv/bootstrap/filelock.py -> build/lib/shiv/bootstrap
copying src/shiv/bootstrap/interpreter.py -> build/lib/shiv/bootstrap
copying src/shiv/bootstrap/environment.py -> build/lib/shiv/bootstrap
running egg_info
writing src/shiv.egg-info/PKG-INFO
writing dependency_links to src/shiv.egg-info/dependency_links.txt
writing entry points to src/shiv.egg-info/entry_points.txt
writing requirements to src/shiv.egg-info/requires.txt
writing top-level names to src/shiv.egg-info/top_level.txt
reading manifest file 'src/shiv.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'src/shiv.egg-info/SOURCES.txt'
installing to build/bdist.macosx-10.9-x86_64/wheel
running install
running install_lib
creating build/bdist.macosx-10.9-x86_64
creating build/bdist.macosx-10.9-x86_64/wheel
creating build/bdist.macosx-10.9-x86_64/wheel/shiv
creating build/bdist.macosx-10.9-x86_64/wheel/shiv/bootstrap
copying build/lib/shiv/bootstrap/__init__.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv/bootstrap
copying build/lib/shiv/bootstrap/filelock.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv/bootstrap
copying build/lib/shiv/bootstrap/interpreter.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv/bootstrap
copying build/lib/shiv/bootstrap/environment.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv/bootstrap
copying build/lib/shiv/constants.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv
copying build/lib/shiv/__init__.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv
copying build/lib/shiv/builder.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv
copying build/lib/shiv/cli.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv
copying build/lib/shiv/pip.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv
copying build/lib/shiv/info.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv
copying build/lib/shiv/__main__.py -> build/bdist.macosx-10.9-x86_64/wheel/shiv
running install_egg_info
Copying src/shiv.egg-info to build/bdist.macosx-10.9-x86_64/wheel/shiv-1.0.4-py3.9.egg-info
running install_scripts
creating build/bdist.macosx-10.9-x86_64/wheel/shiv-1.0.4.dist-info/WHEEL
creating '/Users/collin/scripts/shiv/dist/.tmp-ztdxbspl/shiv-1.0.4-py2.py3-none-any.whl' and adding 'build/bdist.macosx-10.9-x86_64/wheel' to it
adding 'shiv/__init__.py'
adding 'shiv/__main__.py'
adding 'shiv/builder.py'
adding 'shiv/cli.py'
adding 'shiv/constants.py'
adding 'shiv/info.py'
adding 'shiv/pip.py'
adding 'shiv/bootstrap/__init__.py'
adding 'shiv/bootstrap/environment.py'
adding 'shiv/bootstrap/filelock.py'
adding 'shiv/bootstrap/interpreter.py'
adding 'shiv-1.0.4.dist-info/LICENSE'
adding 'shiv-1.0.4.dist-info/METADATA'
adding 'shiv-1.0.4.dist-info/WHEEL'
adding 'shiv-1.0.4.dist-info/entry_points.txt'
adding 'shiv-1.0.4.dist-info/top_level.txt'
adding 'shiv-1.0.4.dist-info/RECORD'
removing build/bdist.macosx-10.9-x86_64/wheel
Successfully built shiv-1.0.4.tar.gz and shiv-1.0.4-py2.py3-none-any.whl
(venv) collins-computer:shiv collin$ python3 -m pip install -e .
Obtaining file:///Users/collin/scripts/shiv
Installing build dependencies ... done
Getting requirements to build wheel ... done
Preparing wheel metadata ... done
Requirement already satisfied: pip>=9.0.3 in ./venv/lib/python3.9/site-packages (from shiv==1.0.4) (21.1.1)
Requirement already satisfied: setuptools in ./venv/lib/python3.9/site-packages (from shiv==1.0.4) (56.0.0)
Collecting click!=7.0,>=6.7
Using cached click-8.1.7-py3-none-any.whl (97 kB)
Installing collected packages: click, shiv
Running setup.py develop for shiv
Successfully installed click-8.1.7 shiv-1.0.4
WARNING: You are using pip version 21.1.1; however, version 23.2.1 is available.
You should consider upgrading via the '/Users/collin/scripts/shiv/venv/bin/python3 -m pip install --upgrade pip' command.
(venv) collins-computer:shiv collin$ shiv --version
shiv, version 1.0.3
```

Contributor guide

Open the contributing guide

Research direction

The issue identifies src/shiv/cli.py as the location of the incorrect __version__ value. Start by following the README development build steps and inspect how shiv --version obtains its value. Done means an installed 1.0.4 build reports shiv, version 1.0.4.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Bug
Difficulty
1/5
Estimated time
Under an hour
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.