Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Note new dependencies prominently in release notes #2404

Closed
cdeil opened this issue Mar 30, 2016 · 1 comment
Closed

Note new dependencies prominently in release notes #2404

cdeil opened this issue Mar 30, 2016 · 1 comment

Comments

@cdeil
Copy link

cdeil commented Mar 30, 2016

My package manager, Macports, just updated to Sphinx 1.4 and now it fails like this:

$ sphinx-build --version
Traceback (most recent call last):
  File "/opt/local/bin/sphinx-build", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 3138, in <module>
    @_call_aside
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 3124, in _call_aside
    f(*args, **kwargs)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 3151, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 661, in _build_master
    ws.require(__requires__)
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 962, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/opt/local/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/pkg_resources/__init__.py", line 849, in resolve
    raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The 'imagesize' distribution was not found and is required by Sphinx

From the changelog

sphinx/CHANGES

Line 100 in 55a991e

* #2199: Use ``imagesize`` package to obtain size of images.

and
https://github.com/sphinx-doc/sphinx/blob/master/setup.py#L51
I was able to figure out that in Sphinx 1.4 imagesize was added as a required dependency.

Could you please mention new dependencies more prominently in the changelog, e.g. at the top add a sentence "Sphinx 1.4 introduced imagesize (link to PyPI) as a new dependency"?

I'll file an issue in the Macports tracker now, asking them to package imagesize and add it as a new dependency for Sphinx.

@shimizukawa
Copy link
Member

Sphinx (and all other python packages) defines dependencies in setup.py and the information is provided to other programs. For instance, https://pypi.python.org/pypi/pipdeptree read the dependency information and display a dependency tree as a human readable format.

In my opinion, package system maintainers (include for MacPorts) can/should detect "new dependencies" automatically. This is the information technology.
Otherwise, writing dependencies on the top of CHANGES might cause human errors like misreadings and overlooking . Because it is unformatted natural text. I believe the maintainers should refer setup.py on building the packages. It is very simple and less failure way.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 9, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants