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

Version 6.2.0 have too strict urllib3 requirements #807

Closed
jaraco opened this Issue Jun 13, 2018 · 3 comments

Comments

Projects
None yet
3 participants
@jaraco
Copy link

commented Jun 13, 2018

Much like in #667, the elasticsearch library now conflicts with other libraries pulling in later versions of urllib3 1.23 or later (as was released last week).

~ $ rwt requests elasticsearch -- -c "import pkg_resources; pkg_resources.require('elasticsearch')"
Collecting requests
  Using cached https://files.pythonhosted.org/packages/cc/15/e1c318dbc20032ffbe5628837ca0de2d5b116ffd1b849c699634010f6a5d/requests-2.19.0-py2.py3-none-any.whl
Collecting elasticsearch
  Using cached https://files.pythonhosted.org/packages/c3/e3/146b675e6d0138a49c4b817b4e68170eb9b75cee7e71fa3ec69624c4f467/elasticsearch-6.2.0-py2.py3-none-any.whl
Collecting chardet<3.1.0,>=3.0.2 (from requests)
  Using cached https://files.pythonhosted.org/packages/bc/a9/01ffebfb562e4274b6487b4bb1ddec7ca55ec7510b22e4c51f14098443b8/chardet-3.0.4-py2.py3-none-any.whl
Collecting urllib3<1.24,>=1.21.1 (from requests)
  Using cached https://files.pythonhosted.org/packages/bd/c9/6fdd990019071a4a32a5e7cb78a1d92c53851ef4f56f62a3486e6a7d8ffb/urllib3-1.23-py2.py3-none-any.whl
Collecting certifi>=2017.4.17 (from requests)
  Using cached https://files.pythonhosted.org/packages/7c/e6/92ad559b7192d846975fc916b65f667c7b8c3a32bea7372340bfe9a15fa5/certifi-2018.4.16-py2.py3-none-any.whl
Collecting idna<2.8,>=2.5 (from requests)
  Using cached https://files.pythonhosted.org/packages/4b/2a/0276479a4b3caeb8a8c1af2f8e4355746a97fab05a372e4a2c6a6b876165/idna-2.7-py2.py3-none-any.whl
Installing collected packages: chardet, urllib3, certifi, idna, requests, elasticsearch
elasticsearch 6.2.0 has requirement urllib3<1.23,>=1.21.1, but you'll have urllib3 1.23 which is incompatible.
Successfully installed certifi-2018.4.16 chardet-3.0.4 elasticsearch-6.2.0 idna-2.7 requests-2.19.0 urllib3-1.23
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pkg_resources/__init__.py", line 888, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/pkg_resources/__init__.py", line 779, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (urllib3 1.23 (/private/var/folders/c6/v7hnmq453xb6p2dbz1gqc6rr0000gn/T/rwt-vmmfz3tr), Requirement.parse('urllib3<1.23,>=1.21.1'), {'elasticsearch'})

It's bad practice to pin the upper bound for dependencies on a library, except in cases where there's a known or expected incompatibility to arise with that version.

@jaraco jaraco changed the title Version 6.2.0 have too strict urllib2 requirements Version 6.2.0 have too strict urllib3 requirements Jun 13, 2018

@fxdgear

This comment has been minimized.

Copy link
Member

commented Jun 19, 2018

closed via #4352e56

@fxdgear fxdgear closed this Jun 19, 2018

@slint

This comment has been minimized.

Copy link

commented Jun 20, 2018

@fxdgear Will this also be included in the next release of the 5.x branch?

Also, (I feel terrible for being that guy) do you have a rough estimate on when the next versions (i.e. v6.2.1 and v5.5.3) will be released on PyPI?

@fxdgear

This comment has been minimized.

Copy link
Member

commented Jun 20, 2018

@slint it's ok.

I was on holiday for the last 2 weeks and an just catching up on things. I'm going to be rolling our releases this week for -py and -async-py.

I am just trying to get some other things cleared up today wrt to CA's on a different project with Elastic (TMI I just moved teams and am doing a bit of ramp up as well so my time is pretty well split across a lotta things).

uqs pushed a commit to freebsd/freebsd-ports that referenced this issue Apr 16, 2019

koobs
textproc/py-elasticsearch5: Remove pinned urllib3 version
elasticsearch5 (this port) unnecessarily pins its urllib dependency to
< 1.23, which blocks updating urllib3 to 1.24 [1]:

./textproc/py-elasticsearch5: setup.py: 'urllib3<1.23,>=1.21.1',

The package had a history of issues/conflicts/bugs with the urllib3
dependency, ultimately resulting in the maximum version pin being
removed [2]:

  elastic/elasticsearch-py#807
  elastic/elasticsearch-py#667
  elastic/elasticsearch-py#634

This commit backports that change, a functional noop and sweeping change
in advance required for a urllib3 update, and adds TEST_DEPENDS and
a test target to support rigorous and confident QA. Switching to GitHub
sources was required as the PyPI sdist does not package tests.

The packages tests all pass with/against urllib3 1.24 installed, with an
intermittent and non-deterministic off-by-one failure in one test:

FAIL: test_all_chunks_sent (test_elasticsearch.test_helpers.TestParallelBulk)

The issue exists independent of urllib3 version. The flaky test issue was
reported upstream [3], but was not resolved.

[2] elastic/elasticsearch-py@4352e56
[3] elastic/elasticsearch-py#701

PR:		229322 [1]
Approved by:	portmgr (blanket: framework compliance, runtime bugfix)


git-svn-id: svn+ssh://svn.freebsd.org/ports/head@499073 35697150-7ecd-e111-bb59-0022644237b5

uqs pushed a commit to freebsd/freebsd-ports that referenced this issue Apr 16, 2019

textproc/py-elasticsearch5: Remove pinned urllib3 version
elasticsearch5 (this port) unnecessarily pins its urllib dependency to
< 1.23, which blocks updating urllib3 to 1.24 [1]:

./textproc/py-elasticsearch5: setup.py: 'urllib3<1.23,>=1.21.1',

The package had a history of issues/conflicts/bugs with the urllib3
dependency, ultimately resulting in the maximum version pin being
removed [2]:

  elastic/elasticsearch-py#807
  elastic/elasticsearch-py#667
  elastic/elasticsearch-py#634

This commit backports that change, a functional noop and sweeping change
in advance required for a urllib3 update, and adds TEST_DEPENDS and
a test target to support rigorous and confident QA. Switching to GitHub
sources was required as the PyPI sdist does not package tests.

The packages tests all pass with/against urllib3 1.24 installed, with an
intermittent and non-deterministic off-by-one failure in one test:

FAIL: test_all_chunks_sent (test_elasticsearch.test_helpers.TestParallelBulk)

The issue exists independent of urllib3 version. The flaky test issue was
reported upstream [3], but was not resolved.

[2] elastic/elasticsearch-py@4352e56
[3] elastic/elasticsearch-py#701

PR:		229322 [1]
Approved by:	portmgr (blanket: framework compliance, runtime bugfix)

Jehops pushed a commit to Jehops/freebsd-ports that referenced this issue Apr 16, 2019

textproc/py-elasticsearch5: Remove pinned urllib3 version
elasticsearch5 (this port) unnecessarily pins its urllib dependency to
< 1.23, which blocks updating urllib3 to 1.24 [1]:

./textproc/py-elasticsearch5: setup.py: 'urllib3<1.23,>=1.21.1',

The package had a history of issues/conflicts/bugs with the urllib3
dependency, ultimately resulting in the maximum version pin being
removed [2]:

  elastic/elasticsearch-py#807
  elastic/elasticsearch-py#667
  elastic/elasticsearch-py#634

This commit backports that change, a functional noop and sweeping change
in advance required for a urllib3 update, and adds TEST_DEPENDS and
a test target to support rigorous and confident QA. Switching to GitHub
sources was required as the PyPI sdist does not package tests.

The packages tests all pass with/against urllib3 1.24 installed, with an
intermittent and non-deterministic off-by-one failure in one test:

FAIL: test_all_chunks_sent (test_elasticsearch.test_helpers.TestParallelBulk)

The issue exists independent of urllib3 version. The flaky test issue was
reported upstream [3], but was not resolved.

[2] elastic/elasticsearch-py@4352e56
[3] elastic/elasticsearch-py#701

PR:		229322 [1]
Approved by:	portmgr (blanket: framework compliance, runtime bugfix)


git-svn-id: svn+ssh://svn.freebsd.org/ports/head@499073 35697150-7ecd-e111-bb59-0022644237b5

mat813 pushed a commit to mat813/freebsd-ports that referenced this issue Apr 18, 2019

textproc/py-elasticsearch5: Remove pinned urllib3 version
elasticsearch5 (this port) unnecessarily pins its urllib dependency to
< 1.23, which blocks updating urllib3 to 1.24 [1]:

./textproc/py-elasticsearch5: setup.py: 'urllib3<1.23,>=1.21.1',

The package had a history of issues/conflicts/bugs with the urllib3
dependency, ultimately resulting in the maximum version pin being
removed [2]:

  elastic/elasticsearch-py#807
  elastic/elasticsearch-py#667
  elastic/elasticsearch-py#634

This commit backports that change, a functional noop and sweeping change
in advance required for a urllib3 update, and adds TEST_DEPENDS and
a test target to support rigorous and confident QA. Switching to GitHub
sources was required as the PyPI sdist does not package tests.

The packages tests all pass with/against urllib3 1.24 installed, with an
intermittent and non-deterministic off-by-one failure in one test:

FAIL: test_all_chunks_sent (test_elasticsearch.test_helpers.TestParallelBulk)

The issue exists independent of urllib3 version. The flaky test issue was
reported upstream [3], but was not resolved.

[2] elastic/elasticsearch-py@4352e56
[3] elastic/elasticsearch-py#701

PR:		229322 [1]
Approved by:	portmgr (blanket: framework compliance, runtime bugfix)


git-svn-id: https://svn.freebsd.org/ports/head@499073 35697150-7ecd-e111-bb59-0022644237b5

swills pushed a commit to swills/freebsd-ports that referenced this issue Apr 19, 2019

textproc/py-elasticsearch5: Remove pinned urllib3 version
elasticsearch5 (this port) unnecessarily pins its urllib dependency to
< 1.23, which blocks updating urllib3 to 1.24 [1]:

./textproc/py-elasticsearch5: setup.py: 'urllib3<1.23,>=1.21.1',

The package had a history of issues/conflicts/bugs with the urllib3
dependency, ultimately resulting in the maximum version pin being
removed [2]:

  elastic/elasticsearch-py#807
  elastic/elasticsearch-py#667
  elastic/elasticsearch-py#634

This commit backports that change, a functional noop and sweeping change
in advance required for a urllib3 update, and adds TEST_DEPENDS and
a test target to support rigorous and confident QA. Switching to GitHub
sources was required as the PyPI sdist does not package tests.

The packages tests all pass with/against urllib3 1.24 installed, with an
intermittent and non-deterministic off-by-one failure in one test:

FAIL: test_all_chunks_sent (test_elasticsearch.test_helpers.TestParallelBulk)

The issue exists independent of urllib3 version. The flaky test issue was
reported upstream [3], but was not resolved.

[2] elastic/elasticsearch-py@4352e56
[3] elastic/elasticsearch-py#701

PR:		229322 [1]
Approved by:	portmgr (blanket: framework compliance, runtime bugfix)


git-svn-id: svn+ssh://svn.freebsd.org/ports/head@499073 35697150-7ecd-e111-bb59-0022644237b5

kwm81 pushed a commit to freebsd/freebsd-ports-gnome that referenced this issue Apr 22, 2019

textproc/py-elasticsearch5: Remove pinned urllib3 version
elasticsearch5 (this port) unnecessarily pins its urllib dependency to
< 1.23, which blocks updating urllib3 to 1.24 [1]:

./textproc/py-elasticsearch5: setup.py: 'urllib3<1.23,>=1.21.1',

The package had a history of issues/conflicts/bugs with the urllib3
dependency, ultimately resulting in the maximum version pin being
removed [2]:

  elastic/elasticsearch-py#807
  elastic/elasticsearch-py#667
  elastic/elasticsearch-py#634

This commit backports that change, a functional noop and sweeping change
in advance required for a urllib3 update, and adds TEST_DEPENDS and
a test target to support rigorous and confident QA. Switching to GitHub
sources was required as the PyPI sdist does not package tests.

The packages tests all pass with/against urllib3 1.24 installed, with an
intermittent and non-deterministic off-by-one failure in one test:

FAIL: test_all_chunks_sent (test_elasticsearch.test_helpers.TestParallelBulk)

The issue exists independent of urllib3 version. The flaky test issue was
reported upstream [3], but was not resolved.

[2] elastic/elasticsearch-py@4352e56
[3] elastic/elasticsearch-py#701

PR:		229322 [1]
Approved by:	portmgr (blanket: framework compliance, runtime bugfix)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.