Page MenuHomeFreeBSD

D55616.id173015.diff
No OneTemporary

D55616.id173015.diff

Index: devel/py-awscli2/Makefile
===================================================================
--- /dev/null
+++ devel/py-awscli2/Makefile
@@ -0,0 +1,86 @@
+PORTNAME= awscli
+DISTVERSION= 2.34.0
+CATEGORIES= devel python
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+PKGNAMESUFFIX= 2
+
+MAINTAINER= nork@FreeBSD.org
+COMMENT= Universal Command Line Interface for Amazon Web Services V2
+WWW= https://aws.amazon.com/cli
+
+LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}awscrt>=0.31.1:devel/py-awscrt@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}colorama>=0.2.5:devel/py-colorama@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}distro>=1.5.0:sysutils/py-distro@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}docutils>=0.10:textproc/py-docutils@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}flit-core>=3.9.0:devel/py-flit-core@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}jmespath>=0.7.1:devel/py-jmespath@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pip>=22.0.0<24.0.0:devel/py-pip@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}prompt-toolkit>=3.0.24:devel/py-prompt-toolkit@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}python-dateutil>=2.1:devel/py-python-dateutil@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ruamel.yaml.clib>=0.2.0:devel/py-ruamel.yaml.clib@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ruamel.yaml>=0.15.0:devel/py-ruamel.yaml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}sqlite3>=3.8.13:databases/py-sqlite3@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}urllib3>=1.25.4,1:net/py-urllib3@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wcwidth>=0.2.8:devel/py-wcwidth@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}awscrt>=0.31.1:devel/py-awscrt@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}colorama>=0.2.5:devel/py-colorama@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}distro>=1.5.0:sysutils/py-distro@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}docutils>=0.10:textproc/py-docutils@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}jmespath>=0.7.1:devel/py-jmespath@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}prompt-toolkit>=3.0.24:devel/py-prompt-toolkit@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}python-dateutil>=2.1:devel/py-python-dateutil@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ruamel.yaml.clib>=0.2.0:devel/py-ruamel.yaml.clib@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}ruamel.yaml>=0.15.0:devel/py-ruamel.yaml@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}sqlite3>=3.8.13:databases/py-sqlite3@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}urllib3>=1.25.4,1:net/py-urllib3@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wcwidth>=0.2.8:devel/py-wcwidth@${PY_FLAVOR}
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}attrs>=23.2.0:devel/py-attrs@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}coverage>=7.0.1:devel/py-coverage@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}jsonschema>=4.7.2:devel/py-jsonschema@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}packaging>=24.1:devel/py-packaging@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pip-tools>=7.5.2:devel/py-pip-tools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest-cov>=4.1.0:devel/py-pytest-cov@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest-xdist>=3.1.0:devel/py-pytest-xdist@${PY_FLAVOR}
+
+USES= gettext-runtime pytest python:3.10+ shebangfix
+USE_GITHUB= yes
+GH_ACCOUNT= aws
+GH_PROJECT= aws-cli
+PYTEST_ARGS= -n auto --tb=long -W ignore::DeprecationWarning tests/unit \
+ --ignore=tests/unit/customizations/configure/test_sso.py \
+ --ignore=tests/unit/customizations/wizard \
+ --ignore=tests/unit/s3transfer/test_utils.py
+#CONFLICTS= awscli py*-awscli*
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --with-install-type=system-sandbox \
+ --without-download-deps
+ALL_TARGET= build
+INSTALL_TARGET= install
+
+SHEBANG_FIXES= ${STAGEDIR}${PREFIX}/lib/aws-cli/bin/aws \
+ ${STAGEDIR}${PREFIX}/lib/aws-cli/bin/aws_completer
+UNWANTED_FILES= ${STAGEDIR}${PREFIX}/lib/aws-cli/bin/pip3 \
+ ${STAGEDIR}${PREFIX}/lib/aws-cli/bin/pip3.* \
+ ${STAGEDIR}${PREFIX}/lib/aws-cli/bin/pip
+
+post-patch:
+ ${REINPLACE_CMD} -i '' -e "s|%%PYTHON_CMD%%|${PYTHON_CMD}|" ${WRKSRC}/tests/unit/customizations/emr/test_emr_utils.py
+
+post-install:
+ @${ECHO_CMD} "shebang fixes for generated files"
+ ${REINPLACE_CMD} -i '' -e "1s|^\#![[:space:]]*${STAGEDIR}|\#!|" ${SHEBANG_FIXES}
+ ${LN} -fs ../lib/aws-cli/bin/aws ${STAGEDIR}${PREFIX}/bin/aws
+ ${LN} -fs ../lib/aws-cli/bin/aws_completer ${STAGEDIR}${PREFIX}/bin/aws_completer
+ ${RM} ${UNWANTED_FILES}
+
+ @${ECHO_CMD} "generating plist"
+ cd ${STAGEDIR}${PREFIX} ; ( \
+ ${FIND} -s bin lib \! -type d ; \
+ ${FIND} bin lib -type d -empty | ${SORT} -r | \
+ ${SED} -e 's/^/@dir /' ; \
+ ) >> ${TMPPLIST}
+
+.include <bsd.port.mk>
Index: devel/py-awscli2/distinfo
===================================================================
--- /dev/null
+++ devel/py-awscli2/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1772290502
+SHA256 (aws-aws-cli-2.34.0_GH0.tar.gz) = c51f72d6272f6748c874ae395c66b06433922f7399e6b9e4f4aa4ed5806d5331
+SIZE (aws-aws-cli-2.34.0_GH0.tar.gz) = 17688555
Index: devel/py-awscli2/files/patch-awscli_customizations_sso_utils.py
===================================================================
--- /dev/null
+++ devel/py-awscli2/files/patch-awscli_customizations_sso_utils.py
@@ -0,0 +1,20 @@
+--- awscli/customizations/sso/utils.py.orig 2025-11-24 19:05:22 UTC
++++ awscli/customizations/sso/utils.py
+@@ -46,7 +46,7 @@ LOGIN_ARGS = [
+ {
+ 'name': 'no-browser',
+ 'action': 'store_true',
+- 'default': False,
++ 'default': True,
+ 'help_text': (
+ 'Disables automatically opening the verification URL in the '
+ 'default browser.'
+@@ -55,7 +55,7 @@ LOGIN_ARGS = [
+ {
+ 'name': 'use-device-code',
+ 'action': 'store_true',
+- 'default': False,
++ 'default': True,
+ 'help_text': (
+ 'Uses the Device Code authorization grant and login flow '
+ 'instead of the Authorization Code flow.'
Index: devel/py-awscli2/files/patch-pyproject.toml
===================================================================
--- /dev/null
+++ devel/py-awscli2/files/patch-pyproject.toml
@@ -0,0 +1,43 @@
+--- pyproject.toml.orig 2026-02-27 19:05:56 UTC
++++ pyproject.toml
+@@ -1,6 +1,6 @@ requires = [
+ [build-system]
+ requires = [
+-"flit_core>=3.7.1,<3.9.1",
++"flit_core>=3.7.1",
+ ]
+ build-backend = "pep517"
+ backend-path = ["backends"]
+@@ -30,21 +30,21 @@ dependencies = [
+ "Programming Language :: Python :: 3.13",
+ ]
+ dependencies = [
+- "colorama>=0.2.5,<0.4.7",
+- "docutils>=0.10,<0.20",
+- "ruamel.yaml>=0.15.0,<=0.17.21",
++ "colorama>=0.2.5",
++ "docutils>=0.10",
++ "ruamel.yaml>=0.15.0",
+ # ruamel.yaml only requires ruamel.yaml.clib for Python versions
+ # less than or equal to Python 3.10. In order to ensure we have
+ # a consistent dependency closure across all Python versions,
+ # we explicitly include ruamel.yaml.clib as a dependency.
+- "ruamel.yaml.clib>=0.2.0,<=0.2.12",
+- "prompt-toolkit>=3.0.24,<3.0.52",
+- "distro>=1.5.0,<1.9.0",
+- "awscrt==0.31.2",
+- "python-dateutil>=2.1,<=2.9.0",
+- "jmespath>=0.7.1,<1.1.0",
+- "urllib3>=1.25.4,<=2.6.3",
+- "wcwidth<0.3.0",
++ "ruamel.yaml.clib>=0.2.0",
++ "prompt-toolkit>=3.0.24",
++ "distro>=1.5.0",
++ "awscrt>=0.31.1",
++ "python-dateutil>=2.1",
++ "jmespath>=0.7.1",
++ "urllib3>=1.25.4",
++ "wcwidth>=0.2.8",
+ ]
+ dynamic = ["version"]
+
Index: devel/py-awscli2/files/patch-requirements-base.txt
===================================================================
--- /dev/null
+++ devel/py-awscli2/files/patch-requirements-base.txt
@@ -0,0 +1,7 @@
+--- requirements-base.txt.orig 2026-02-27 19:05:56 UTC
++++ requirements-base.txt
+@@ -1,2 +1,2 @@
+-wheel==0.46.3
+-flit_core==3.9.0
++wheel>=0.46.3
++flit_core>=3.9.0
Index: devel/py-awscli2/files/patch-tests_markers.py
===================================================================
--- /dev/null
+++ devel/py-awscli2/files/patch-tests_markers.py
@@ -0,0 +1,15 @@
+--- tests/markers.py.orig 2026-02-27 19:05:56 UTC
++++ tests/markers.py
+@@ -3,10 +3,10 @@ skip_if_windows = pytest.mark.skipif(
+ import pytest
+
+ skip_if_windows = pytest.mark.skipif(
+- platform.system() not in ['Darwin', 'Linux'],
++ platform.system() not in ['Darwin', 'Linux', 'FreeBSD'],
+ reason="This test does not run on windows.",
+ )
+ if_windows = pytest.mark.skipif(
+- platform.system() in ['Darwin', 'Linux'],
++ platform.system() in ['Darwin', 'Linux', 'FreeBSD'],
+ reason="This test only runs on windows.",
+ )
Index: devel/py-awscli2/files/patch-tests_unit_autocomplete_local_test__indexer.py
===================================================================
--- /dev/null
+++ devel/py-awscli2/files/patch-tests_unit_autocomplete_local_test__indexer.py
@@ -0,0 +1,11 @@
+--- tests/unit/autocomplete/local/test_indexer.py.orig 2026-02-27 19:05:56 UTC
++++ tests/unit/autocomplete/local/test_indexer.py
+@@ -237,7 +237,7 @@ class TestGeneratesIndex(BaseIndexerTest):
+
+ def test_generates_indexes_for_tables(self):
+ self.indexer.generate_index(self.aws_command)
+- index_info = 'SELECT name from pragma_index_info("%s");'
++ index_info = "SELECT name from pragma_index_info('%s');"
+ index = self.db_conn.execute(index_info % 'parent_index').fetchall()
+ self.assertEqual([('parent',)], index)
+ index = self.db_conn.execute(
Index: devel/py-awscli2/files/patch-tests_unit_customizations_emr_test__emr__utils.py
===================================================================
--- /dev/null
+++ devel/py-awscli2/files/patch-tests_unit_customizations_emr_test__emr__utils.py
@@ -0,0 +1,11 @@
+--- tests/unit/customizations/emr/test_emr_utils.py.orig 2026-02-27 19:05:56 UTC
++++ tests/unit/customizations/emr/test_emr_utils.py
+@@ -16,7 +16,7 @@ class TestEMRutils:
+
+ class TestEMRutils:
+ def test_which_with_existing_command(self):
+- pythonPath = which('python') or which('python.exe')
++ pythonPath = which('%%PYTHON_CMD%%') or which('python.exe')
+ assert pythonPath is not None
+
+ def test_which_with_non_existing_command(self):
Index: devel/py-awscli2/files/patch-tests_unit_customizations_logs_test__startlivetail.py
===================================================================
--- /dev/null
+++ devel/py-awscli2/files/patch-tests_unit_customizations_logs_test__startlivetail.py
@@ -0,0 +1,11 @@
+--- tests/unit/customizations/logs/test_startlivetail.py.orig 2026-02-27 19:05:56 UTC
++++ tests/unit/customizations/logs/test_startlivetail.py
+@@ -377,6 +377,8 @@ class LiveTailKeyBindingsTest(unittest.TestCase):
+ class LiveTailKeyBindingsTest(unittest.TestCase):
+ def setUp(self) -> None:
+ self.ui = mock.Mock(InteractiveUI)
++ self.ui.highlight_term_in_buffer = mock.Mock()
++ self.ui.remove_term_from_buffer = mock.Mock()
+ self.prompt_buffer = Buffer()
+ self.output_buffer = Buffer()
+ self.ui._application = mock.Mock(Application)
Index: devel/py-awscli2/pkg-descr
===================================================================
--- /dev/null
+++ devel/py-awscli2/pkg-descr
@@ -0,0 +1,5 @@
+The AWS Command Line Interface (AWS CLI) is a unified tool to manage
+your AWS services.
+
+This package uses the PyInstaller-based V2 branch of the AWS CLI code
+for minimal external run-time dependencies.
Index: devel/py-awscli2/pkg-message
===================================================================
--- /dev/null
+++ devel/py-awscli2/pkg-message
@@ -0,0 +1,22 @@
+[
+{
+type: install message: <<EOM
+To add completions for the aws command,
+add the line(s) below to the appropriate shell rc file
+
+For zsh:
+
+ autoload -Uz bashcompinit
+ bashcompinit -i
+ complete -C aws_completer aws
+
+For tcsh:
+
+ complete aws 'p/*/`aws_completer`/'
+
+For bash:
+
+ complete -C aws_completer aws
+EOM
+}
+]

File Metadata

Mime Type
text/plain
Expires
Wed, Jul 22, 3:02 PM (5 h, 27 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35368473
Default Alt Text
D55616.id173015.diff (11 KB)

Event Timeline