Bug 245709 - www/py-boto3: devel/py-botocore upgrade broken the dependency check in port Makefile
Summary: www/py-boto3: devel/py-botocore upgrade broken the dependency check in port M...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: Bradley T. Hughes
URL:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2020-04-17 20:40 UTC by Henrik Hudson
Modified: 2020-06-12 01:46 UTC (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Henrik Hudson 2020-04-17 20:40:58 UTC
The latest bump of devel/py-botocore to 1.15.9 broke the Makefile dependency check for py37-botocore>=1.13.6,<1.14.0


Removing the '<1.14.0' lets it build. Also had to remove the 'net/py-s3transfer' version less than check. 


Any particular reason to have the '<' to begin with?
Comment 1 Kubilay Kocak freebsd_committer freebsd_triage 2020-04-18 02:35:26 UTC
Thanks for the report Hendrik. ben and I were aware of the issue, and its great to have it tracked here now.

Python ports dependencies must match upstream (setup.py, et al) declared dependency version-spec's exactly [1], otherwise, the dependency versions are not satisfied at runtime, and produce errors.

The < in this and other similar ports cases is there, beyond the above, to ensure that anyone modifying related ports can easily grep the tree (or automatically build dependents) and find ports that will break accordingly.

I'll update py-boto3 to match the botocore port version shortly, and should also note that Ben had emailed me after the regression was reported by pkg-fallout, at which pint approval was provided to update boto3 to match, both in this case, and in the future.

[1] https://wiki.freebsd.org/Python/PortsPolicy#Dependencies
Comment 2 Kubilay Kocak freebsd_committer freebsd_triage 2020-04-18 02:55:43 UTC
Note: latest boto3 is 1.12.41 which required equivalent botocore .41, but the port is only .39.

Will only be able to update boto3 to .39 for now.

Ben and I will have to sort out the best way forward for these two ports to remain in sync in the future, as this is not the first time we've had the same regression
Comment 3 Kubilay Kocak freebsd_committer freebsd_triage 2020-04-18 04:16:00 UTC
QA:

portlint: OK (looks fine.)
testport: OK (poudriere: 12amd64, Python 3.7
maketest: OK (Ran 1499 tests in 1692.294s OK)
Comment 4 commit-hook freebsd_committer freebsd_triage 2020-04-18 04:19:39 UTC
A commit references this bug:

Author: koobs
Date: Sat Apr 18 04:19:11 UTC 2020
New revision: 531997
URL: https://svnweb.freebsd.org/changeset/ports/531997

Log:
  www/py-boto3: Update to 1.12.39

  Update to 1.12.39 (not the latest versions 1.12.41) to match
  devel/py-botocore, updated in ports r531560 which caused a regression
  due to mismatched version-spec (>=1.13.6,<1.14.0).

  PR:		245709
  Reported by:	Henrik Hudson <ports thelanman net>, pkg-fallout

Changes:
  head/www/py-boto3/Makefile
  head/www/py-boto3/distinfo
Comment 5 Kubilay Kocak freebsd_committer freebsd_triage 2020-04-18 04:20:32 UTC
Committed, thank you Hendrik
Comment 6 Juraj Lutter freebsd_committer freebsd_triage 2020-06-11 19:30:50 UTC
And again:

===>  Cleaning for py37-boto3-1.12.39
build of www/py-boto3 | py37-boto3-1.12.39 ended at Thu Jun 11 21:11:05 CEST 2020

This will need updating, too, although the changes are more complex (changes in build system).
Comment 7 Juraj Lutter freebsd_committer freebsd_triage 2020-06-11 19:32:21 UTC
(In reply to Juraj Lutter from comment #6)

The actual error is:
===>   py37-boto3-1.12.39 depends on package: py37-botocore>=1.15.39,<1.16.0 - not found
*** Error code 1
Comment 8 Kubilay Kocak freebsd_committer freebsd_triage 2020-06-12 01:08:29 UTC
Have already reported the issue on the mailing lists in reply to the botocore commit update. I'll sort this out if Ben can't in short order.
Comment 9 Kubilay Kocak freebsd_committer freebsd_triage 2020-06-12 01:46:24 UTC
Resolved in ports r538543

Author: bhughes
Date: Thu Jun 11 21:05:07 2020
New Revision: 538543
URL: https://svnweb.freebsd.org/changeset/ports/538543

Log:
  www/py-boto3: Update 1.12.39 -> 1.14.1
  
  Reported by:	koobs
  Approved by:	koobs (implicit)
  Sponsored by:	Miles AS

Modified:
  head/www/py-boto3/Makefile
  head/www/py-boto3/distinfo

Modified: head/www/py-boto3/Makefile
==============================================================================
--- head/www/py-boto3/Makefile	Thu Jun 11 21:03:13 2020	(r538542)
+++ head/www/py-boto3/Makefile	Thu Jun 11 21:05:07 2020	(r538543)
@@ -2,7 +2,7 @@
 # $FreeBSD$
 
 PORTNAME=	boto3
-PORTVERSION=	1.12.39
+PORTVERSION=	1.14.1
 CATEGORIES=	www python devel
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
 
@@ -12,7 +12,7 @@ COMMENT=	AWS SDK for Python
 LICENSE=	APACHE20
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
-RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}botocore>=1.15.39,<1.16.0:devel/py-botocore@${PY_FLAVOR} \
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}botocore>=1.17.1,<1.18.0:devel/py-botocore@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}jmespath>=0.7.1,<1.0.0:devel/py-jmespath@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}s3transfer>=0.3.0,<0.4.0:net/py-s3transfer@${PY_FLAVOR}