diff --git a/.github/workflows/build-binaries.yml b/.github/workflows/build-binaries.yml index e13e5c17..1b745879 100644 --- a/.github/workflows/build-binaries.yml +++ b/.github/workflows/build-binaries.yml @@ -14,22 +14,26 @@ jobs: include: - os: ubuntu-latest package-suffix: linux-amd64 - - os: macos-latest - package-suffix: macos-amd64 - - os: windows-latest - package-suffix: windows-amd64 - os: ubuntu-arm package-suffix: linux-aarch64 # Need the 8 CPU version that has 12GB of RAM, the 4 CPU version # only has 6 GB. runsOn: buildjet-8vcpu-ubuntu-2204-arm + - os: macos-intel + package-suffix: macos-amd64 + runsOn: macos-12 + - os: macos-arm + package-suffix: macos-aarch64 + runsOn: macos-14 + - os: windows-latest + package-suffix: windows-amd64 runs-on: ${{ matrix.runsOn || matrix.os }} steps: - uses: actions/checkout@v2 with: submodules: recursive - # actions/setup-python doesn't yet support ARM - - if: ${{ !endsWith(matrix.os, '-arm') }} + # actions/setup-python doesn't yet support Linux ARM + - if: ${{ matrix.os != 'ubuntu-arm' }} uses: actions/setup-python@v4 with: python-version: "3.12" diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f40387cd..677889cf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ jobs: fail-fast: true matrix: python: ["3.8", "3.12"] - os: [ubuntu-latest, macos-latest, windows-latest, ubuntu-arm] + os: [ubuntu-latest, ubuntu-arm, macos-intel, macos-arm, windows-latest] include: - os: ubuntu-latest python: "3.12" @@ -23,6 +23,17 @@ jobs: protoCheckTarget: true - os: ubuntu-arm runsOn: buildjet-4vcpu-ubuntu-2204-arm + - os: macos-intel + runsOn: macos-12 + - os: macos-arm + runsOn: macos-14 + # macOS ARM 3.8 does not have an available Python build at + # https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json. + # See https://github.com/actions/setup-python/issues/808 and + # https://github.com/actions/python-versions/pull/259. + exclude: + - os: macos-arm + python: "3.8" runs-on: ${{ matrix.runsOn || matrix.os }} steps: - uses: actions/checkout@v2 @@ -34,8 +45,8 @@ jobs: - uses: Swatinem/rust-cache@v1 with: working-directory: temporalio/bridge - # actions/setup-python doesn't yet support ARM - - if: ${{ !endsWith(matrix.os, '-arm') }} + # actions/setup-python doesn't yet support Linux ARM + - if: ${{ matrix.os != 'ubuntu-arm' }} uses: actions/setup-python@v4 with: python-version: ${{ matrix.python }} diff --git a/poetry.lock b/poetry.lock index 01f4ac96..96b7c858 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,9 +1,10 @@ -# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. +# This file is automatically @generated by Poetry and should not be changed by hand. [[package]] name = "appdirs" version = "1.4.4" description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +category = "dev" optional = false python-versions = "*" files = [ @@ -15,6 +16,7 @@ files = [ name = "astor" version = "0.8.1" description = "Read/rewrite/write Python ASTs" +category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7" files = [ @@ -26,6 +28,7 @@ files = [ name = "attrs" version = "22.1.0" description = "Classes Without Boilerplate" +category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -43,6 +46,7 @@ tests-no-zope = ["cloudpickle", "coverage[toml] (>=5.0.2)", "hypothesis", "mypy name = "Automat" version = "20.2.0" description = "Self-service finite-state machines for the programmer on the go." +category = "dev" optional = false python-versions = "*" files = [ @@ -61,6 +65,7 @@ visualize = ["Twisted (>=16.1.1)", "graphviz (>0.5.1)"] name = "bashlex" version = "0.16" description = "Python parser for bash" +category = "dev" optional = false python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4" files = [ @@ -72,6 +77,7 @@ files = [ name = "black" version = "23.1.0" description = "The uncompromising code formatter." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -121,6 +127,7 @@ uvloop = ["uvloop (>=0.15.2)"] name = "bleach" version = "5.0.1" description = "An easy safelist-based HTML-sanitizing tool." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -140,6 +147,7 @@ dev = ["Sphinx (==4.3.2)", "black (==22.3.0)", "build (==0.8.0)", "flake8 (==4.0 name = "bracex" version = "2.3.post1" description = "Bash style brace expander." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -151,6 +159,7 @@ files = [ name = "CacheControl" version = "0.12.11" description = "httplib2 caching for requests" +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -171,6 +180,7 @@ redis = ["redis (>=2.10.5)"] name = "certifi" version = "2022.9.14" description = "Python package for providing Mozilla's CA Bundle." +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -182,6 +192,7 @@ files = [ name = "cffi" version = "1.15.1" description = "Foreign Function Interface for Python calling C code." +category = "dev" optional = false python-versions = "*" files = [ @@ -258,6 +269,7 @@ pycparser = "*" name = "charset-normalizer" version = "2.1.1" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +category = "dev" optional = false python-versions = ">=3.6.0" files = [ @@ -270,13 +282,14 @@ unicode-backport = ["unicodedata2"] [[package]] name = "cibuildwheel" -version = "2.16.2" +version = "2.17.0" description = "Build Python wheels on CI with minimal configuration." +category = "dev" optional = false python-versions = ">=3.8" files = [ - {file = "cibuildwheel-2.16.2-py3-none-any.whl", hash = "sha256:bbc86ca937d81745f43ab28fd378bff1c1eaf390370c2f3a6e8224290a50127e"}, - {file = "cibuildwheel-2.16.2.tar.gz", hash = "sha256:0f3472a1b927786f74ed3843e78d7cb368a2daeb904503b2129276a23b22f7be"}, + {file = "cibuildwheel-2.17.0-py3-none-any.whl", hash = "sha256:62ddd06179269b9da111bf9e97aca8ecb7b9642e1151a0bac702dd46429b52bf"}, + {file = "cibuildwheel-2.17.0.tar.gz", hash = "sha256:889510a7d974da855a8b793f8dbe718ce18189a42c2560741868e68900e02be2"}, ] [package.dependencies] @@ -299,6 +312,7 @@ test = ["build", "jinja2", "pytest (>=6)", "pytest-timeout", "pytest-xdist", "to name = "click" version = "8.1.3" description = "Composable command line interface toolkit" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -313,6 +327,7 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""} name = "colorama" version = "0.4.5" description = "Cross-platform colored terminal text." +category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -324,6 +339,7 @@ files = [ name = "commonmark" version = "0.9.1" description = "Python parser for the CommonMark Markdown spec" +category = "dev" optional = false python-versions = "*" files = [ @@ -338,6 +354,7 @@ test = ["flake8 (==3.7.8)", "hypothesis (==3.55.3)"] name = "ConfigArgParse" version = "1.5.3" description = "A drop-in replacement for argparse that allows options to also be set via config files and/or environment variables." +category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -353,6 +370,7 @@ yaml = ["PyYAML"] name = "constantly" version = "15.1.0" description = "Symbolic constants in Python" +category = "dev" optional = false python-versions = "*" files = [ @@ -364,6 +382,7 @@ files = [ name = "cryptography" version = "38.0.1" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -410,6 +429,7 @@ test = ["hypothesis (>=1.11.4,!=3.79.2)", "iso8601", "pretend", "pytest (>=6.2.0 name = "Deprecated" version = "1.2.13" description = "Python @deprecated decorator to deprecate old python classes, functions or methods." +category = "main" optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -427,6 +447,7 @@ dev = ["PyTest", "PyTest (<5)", "PyTest-Cov", "PyTest-Cov (<2.6)", "bump2version name = "docutils" version = "0.19" description = "Docutils -- Python Documentation Utilities" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -438,6 +459,7 @@ files = [ name = "exceptiongroup" version = "1.1.3" description = "Backport of PEP 654 (exception groups)" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -452,6 +474,7 @@ test = ["pytest (>=6)"] name = "filelock" version = "3.8.0" description = "A platform independent file lock." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -467,6 +490,7 @@ testing = ["covdefaults (>=2.2)", "coverage (>=6.4.2)", "pytest (>=7.1.2)", "pyt name = "grpcio" version = "1.59.2" description = "HTTP/2-based RPC framework" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -533,6 +557,7 @@ protobuf = ["grpcio-tools (>=1.59.2)"] name = "grpcio-tools" version = "1.59.2" description = "Protobuf code generator for gRPC" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -601,6 +626,7 @@ setuptools = "*" name = "hyperlink" version = "21.0.0" description = "A featureful, immutable, and correct URL for Python." +category = "dev" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -615,6 +641,7 @@ idna = ">=2.5" name = "idna" version = "3.4" description = "Internationalized Domain Names in Applications (IDNA)" +category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -626,6 +653,7 @@ files = [ name = "importlib-metadata" version = "4.12.0" description = "Read metadata from Python packages" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -645,6 +673,7 @@ testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs name = "importlib-resources" version = "5.9.0" description = "Read resources from Python packages" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -663,6 +692,7 @@ testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", name = "incremental" version = "21.3.0" description = "A small library that versions your Python projects." +category = "dev" optional = false python-versions = "*" files = [ @@ -677,6 +707,7 @@ scripts = ["click (>=6.0)", "twisted (>=16.4.0)"] name = "iniconfig" version = "1.1.1" description = "iniconfig: brain-dead simple config-ini parsing" +category = "dev" optional = false python-versions = "*" files = [ @@ -688,6 +719,7 @@ files = [ name = "isort" version = "5.11.5" description = "A Python utility / library to sort Python imports." +category = "dev" optional = false python-versions = ">=3.7.0" files = [ @@ -705,6 +737,7 @@ requirements-deprecated-finder = ["pip-api", "pipreqs"] name = "jaraco.classes" version = "3.2.2" description = "Utility functions for Python class constructs" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -723,6 +756,7 @@ testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", name = "jeepney" version = "0.8.0" description = "Low-level, pure Python DBus protocol wrapper." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -738,6 +772,7 @@ trio = ["async_generator", "trio"] name = "keyring" version = "23.9.1" description = "Store and access your passwords safely." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -760,6 +795,7 @@ testing = ["flake8 (<5)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-chec name = "lockfile" version = "0.12.2" description = "Platform-independent file locking module" +category = "dev" optional = false python-versions = "*" files = [ @@ -771,6 +807,7 @@ files = [ name = "lunr" version = "0.6.2" description = "A Python implementation of Lunr.js" +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -785,6 +822,7 @@ languages = ["nltk"] name = "more-itertools" version = "8.14.0" description = "More routines for operating on iterables, beyond itertools" +category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -796,6 +834,7 @@ files = [ name = "msgpack" version = "1.0.4" description = "MessagePack serializer" +category = "dev" optional = false python-versions = "*" files = [ @@ -857,6 +896,7 @@ files = [ name = "mypy" version = "1.4.1" description = "Optional static typing for Python" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -903,6 +943,7 @@ reports = ["lxml"] name = "mypy-extensions" version = "1.0.0" description = "Type system extensions for programs checked with the mypy type checker." +category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -914,6 +955,7 @@ files = [ name = "mypy-protobuf" version = "3.3.0" description = "Generate mypy stub files from protobuf specs" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -929,6 +971,7 @@ types-protobuf = ">=3.19.12" name = "opentelemetry-api" version = "1.12.0" description = "OpenTelemetry Python API" +category = "main" optional = true python-versions = ">=3.6" files = [ @@ -944,6 +987,7 @@ setuptools = ">=16.0" name = "opentelemetry-sdk" version = "1.12.0" description = "OpenTelemetry Python SDK" +category = "main" optional = true python-versions = ">=3.6" files = [ @@ -961,6 +1005,7 @@ typing-extensions = ">=3.7.4" name = "opentelemetry-semantic-conventions" version = "0.33b0" description = "OpenTelemetry Semantic Conventions" +category = "main" optional = true python-versions = ">=3.6" files = [ @@ -972,6 +1017,7 @@ files = [ name = "packaging" version = "23.0" description = "Core utilities for Python packages" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -983,6 +1029,7 @@ files = [ name = "pathspec" version = "0.10.1" description = "Utility library for gitignore style pattern matching of file paths." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -994,6 +1041,7 @@ files = [ name = "pkginfo" version = "1.8.3" description = "Query metadatdata from sdists / bdists / installed packages." +category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" files = [ @@ -1008,6 +1056,7 @@ testing = ["coverage", "nose"] name = "platformdirs" version = "2.5.2" description = "A small Python module for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1023,6 +1072,7 @@ test = ["appdirs (==1.4.4)", "pytest (>=6)", "pytest-cov (>=2.7)", "pytest-mock name = "pluggy" version = "1.0.0" description = "plugin and hook calling mechanisms for python" +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1038,6 +1088,7 @@ testing = ["pytest", "pytest-benchmark"] name = "protobuf" version = "4.21.12" description = "" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1061,6 +1112,7 @@ files = [ name = "protoc-wheel-0" version = "21.5" description = "Google Protocol buffers compiler" +category = "dev" optional = false python-versions = "*" files = [ @@ -1076,6 +1128,7 @@ files = [ name = "psutil" version = "5.9.3" description = "Cross-platform lib for process and system monitoring in Python." +category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1124,6 +1177,7 @@ test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] name = "pycparser" version = "2.21" description = "C parser in Python" +category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1135,6 +1189,7 @@ files = [ name = "pydantic" version = "1.10.2" description = "Data validation and settings management using python type hints" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1187,6 +1242,7 @@ email = ["email-validator (>=1.0.3)"] name = "pydocstyle" version = "6.1.1" description = "Python docstring style checker" +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1204,6 +1260,7 @@ toml = ["toml"] name = "pydoctor" version = "23.4.1" description = "API doc generator." +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1234,6 +1291,7 @@ test = ["Sphinx (>=3.5)", "bs4", "coverage", "cython-test-exception-raiser (==1. name = "Pygments" version = "2.13.0" description = "Pygments is a syntax highlighting package written in Python." +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1248,6 +1306,7 @@ plugins = ["importlib-metadata"] name = "pytest" version = "7.4.3" description = "pytest: simple powerful testing with Python" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1270,6 +1329,7 @@ testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "no name = "pytest-asyncio" version = "0.21.1" description = "Pytest support for asyncio" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1288,6 +1348,7 @@ testing = ["coverage (>=6.2)", "flaky (>=3.5.0)", "hypothesis (>=5.7.1)", "mypy name = "pytest-timeout" version = "2.2.0" description = "pytest plugin to abort hanging tests" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1302,6 +1363,7 @@ pytest = ">=5.0.0" name = "python-dateutil" version = "2.8.2" description = "Extensions to the standard Python datetime module" +category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ @@ -1316,6 +1378,7 @@ six = ">=1.5" name = "pywin32-ctypes" version = "0.2.0" description = "" +category = "dev" optional = false python-versions = "*" files = [ @@ -1327,6 +1390,7 @@ files = [ name = "readme-renderer" version = "37.1" description = "readme_renderer is a library for rendering \"readme\" descriptions for Warehouse" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1346,6 +1410,7 @@ md = ["cmarkgfm (>=0.8.0)"] name = "requests" version = "2.28.1" description = "Python HTTP for Humans." +category = "dev" optional = false python-versions = ">=3.7, <4" files = [ @@ -1367,6 +1432,7 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] name = "requests-toolbelt" version = "0.9.1" description = "A utility belt for advanced users of python-requests" +category = "dev" optional = false python-versions = "*" files = [ @@ -1381,6 +1447,7 @@ requests = ">=2.0.1,<3.0.0" name = "rfc3986" version = "2.0.0" description = "Validating URI References per RFC 3986" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1395,6 +1462,7 @@ idna2008 = ["idna"] name = "rich" version = "12.5.1" description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" +category = "dev" optional = false python-versions = ">=3.6.3,<4.0.0" files = [ @@ -1414,6 +1482,7 @@ jupyter = ["ipywidgets (>=7.5.1,<8.0.0)"] name = "SecretStorage" version = "3.3.3" description = "Python bindings to FreeDesktop.org Secret Service API" +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1429,6 +1498,7 @@ jeepney = ">=0.6" name = "semantic-version" version = "2.10.0" description = "A library implementing the 'SemVer' scheme." +category = "dev" optional = false python-versions = ">=2.7" files = [ @@ -1444,6 +1514,7 @@ doc = ["Sphinx", "sphinx-rtd-theme"] name = "setuptools" version = "68.2.2" description = "Easily download, build, install, upgrade, and uninstall Python packages" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1460,6 +1531,7 @@ testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jar name = "setuptools-rust" version = "1.5.2" description = "Setuptools Rust extension plugin" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1476,6 +1548,7 @@ typing-extensions = ">=3.7.4.3" name = "six" version = "1.16.0" description = "Python 2 and 3 compatibility utilities" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -1487,6 +1560,7 @@ files = [ name = "snowballstemmer" version = "2.2.0" description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." +category = "dev" optional = false python-versions = "*" files = [ @@ -1498,6 +1572,7 @@ files = [ name = "toml" version = "0.10.2" description = "Python Library for Tom's Obvious, Minimal Language" +category = "dev" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -1509,6 +1584,7 @@ files = [ name = "tomli" version = "2.0.1" description = "A lil' TOML parser" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1520,6 +1596,7 @@ files = [ name = "twine" version = "4.0.1" description = "Collection of utilities for publishing packages on PyPI" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1542,6 +1619,7 @@ urllib3 = ">=1.26.0" name = "Twisted" version = "22.4.0" description = "An asynchronous networking framework written in Python" +category = "dev" optional = false python-versions = ">=3.6.7" files = [ @@ -1579,6 +1657,7 @@ windows-platform = ["PyHamcrest (>=1.9.0)", "appdirs (>=1.4.0)", "bcrypt (>=3.0. name = "twisted-iocpsupport" version = "1.0.2" description = "An extension for use in the twisted I/O Completion Ports reactor." +category = "dev" optional = false python-versions = "*" files = [ @@ -1600,6 +1679,7 @@ files = [ name = "types-protobuf" version = "4.21.0.6" description = "Typing stubs for protobuf" +category = "main" optional = false python-versions = "*" files = [ @@ -1611,6 +1691,7 @@ files = [ name = "typing-extensions" version = "4.3.0" description = "Backported and Experimental Type Hints for Python 3.7+" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1622,6 +1703,7 @@ files = [ name = "urllib3" version = "1.26.12" description = "HTTP library with thread-safe connection pooling, file post, and more." +category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, <4" files = [ @@ -1638,6 +1720,7 @@ socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] name = "webencodings" version = "0.5.1" description = "Character encoding aliases for legacy web content" +category = "dev" optional = false python-versions = "*" files = [ @@ -1649,6 +1732,7 @@ files = [ name = "wheel" version = "0.42.0" description = "A built-package format for Python" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1663,6 +1747,7 @@ test = ["pytest (>=6.0.0)", "setuptools (>=65)"] name = "wrapt" version = "1.14.1" description = "Module for decorators, wrappers and monkey patching." +category = "main" optional = true python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" files = [ @@ -1746,6 +1831,7 @@ files = [ name = "zipp" version = "3.8.1" description = "Backport of pathlib-compatible object wrapper for zip files" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1761,6 +1847,7 @@ testing = ["func-timeout", "jaraco.itertools", "pytest (>=6)", "pytest-black (>= name = "zope.interface" version = "5.4.0" description = "Interfaces for Python" +category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -1832,4 +1919,4 @@ opentelemetry = ["opentelemetry-api", "opentelemetry-sdk"] [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "b4bbf7e44096b2e4f81b502d6a0974da7722182f4488020dc2db38fb8d51b95d" +content-hash = "8f0c924ca5a46babe0117ac2d195a82db5579b7e10f0889b50645ad46ec16ac7" diff --git a/pyproject.toml b/pyproject.toml index ed98f0e8..f3a3ed65 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -42,7 +42,7 @@ typing-extensions = "^4.2.0" [tool.poetry.dev-dependencies] black = "^23.1.0" -cibuildwheel = "^2.16.0" +cibuildwheel = "^2.17.0" grpcio-tools = "^1.48.0" isort = "^5.11.5" mypy = "^1.0.0" @@ -110,8 +110,11 @@ timeout = 600 timeout_func_only = true [tool.cibuildwheel] -# We only want the 3.8 64-bit build of each type -build = "cp38-win_amd64 cp38-manylinux_x86_64 cp38-manylinux_aarch64 cp38-macosx_x86_64 cp38-macosx_arm64" +# We only want the 3.8 64-bit build of each type. However, due to +# https://github.com/pypa/cibuildwheel/issues/1278, we have to build macOS as +# 3.9 until that is fixed. Our fix-wheel process will rename it to 3.8 and we +# have manually confirmed this works with 3.8. +build = "cp38-win_amd64 cp38-manylinux_x86_64 cp38-manylinux_aarch64 cp38-macosx_x86_64 cp39-macosx_arm64" build-verbosity = "1" [tool.cibuildwheel.linux]