diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index c2911aa8..5b56e5a0 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -12,7 +12,7 @@ jobs: runs-on: macos-latest strategy: matrix: - python-version: [3.6, 3.7, 3.8, 3.9] + python-version: ['3.6', '3.7', '3.8', '3.9', '3.10'] steps: - uses: actions/checkout@v2 - uses: actions/setup-python@v2 @@ -60,7 +60,7 @@ jobs: runs-on: windows-latest strategy: matrix: - python-version: [3.6, 3.7, 3.8, 3.9] + python-version: ['3.6', '3.7', '3.8', '3.9', '3.10'] target: [x64, x86] steps: - uses: actions/checkout@v2 @@ -104,7 +104,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [3.6, 3.7, 3.8, 3.9] + python-version: ['3.6', '3.7', '3.8', '3.9', '3.10'] target: [x86_64, i686] steps: - uses: actions/checkout@v2 @@ -159,6 +159,7 @@ jobs: { version: '3.7', abi: 'cp37-cp37m' }, { version: '3.8', abi: 'cp38-cp38' }, { version: '3.9', abi: 'cp39-cp39' }, + { version: '3.10', abi: 'cp310-cp310' }, ] target: [aarch64, armv7, s390x, ppc64le, ppc64] steps: @@ -184,16 +185,17 @@ jobs: --volume "${PWD}/dist:/artifacts" install: | apt-get update - apt-get install -y --no-install-recommends python3 python3-pip software-properties-common + apt-get install -y --no-install-recommends python3 python3-venv software-properties-common add-apt-repository ppa:deadsnakes/ppa apt-get update - apt-get install -y python3.6 python3.7 python3.9 + apt-get install -y curl python3.6-venv python3.7-venv python3.9-venv python3.10-venv run: | ls -lrth /artifacts PYTHON=python${{ matrix.python.version }} - $PYTHON -m pip install -U pip - $PYTHON -m pip install cramjam --no-index --find-links /artifacts --force-reinstall - $PYTHON -c 'import cramjam' + $PYTHON -m venv venv + venv/bin/pip install -U pip + venv/bin/pip install cramjam --no-index --find-links /artifacts --force-reinstall + venv/bin/python -c 'import cramjam' - name: Upload wheels uses: actions/upload-artifact@v2 with: diff --git a/Cargo.lock b/Cargo.lock index 65cc63c7..2a81f2c2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -63,9 +63,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.70" +version = "1.0.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d26a6ce4b6a484fa3edb70f7efa6fc430fd2b87285fe8b84304fd0936faa0dc0" +checksum = "79c2681d6594606957bbb8631c4b90a7fcaaa72cdb714743a437b156d6a7eedd" dependencies = [ "jobserver", ] @@ -108,9 +108,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80edafed416a46fb378521624fab1cfa2eb514784fd8921adbe8a8d8321da811" +checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f" dependencies = [ "cfg-if 1.0.0", "crc32fast", @@ -143,9 +143,9 @@ dependencies = [ [[package]] name = "instant" -version = "0.1.10" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bee0328b1209d157ef001c94dd85b4f8f64139adb0eac2659f4b08382b2f474d" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" dependencies = [ "cfg-if 1.0.0", ] @@ -161,9 +161,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.101" +version = "0.2.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cb00336871be5ed2c8ed44b60ae9959dc5b9f08539422ed43f09e34ecaeba21" +checksum = "a60553f9a9e039a333b4e9b20573b9e9b9c0bb3a11e201ccc48ef4283456d673" [[package]] name = "libmimalloc-sys" @@ -275,8 +275,7 @@ dependencies = [ [[package]] name = "numpy" version = "0.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09c15af63aa0c74e0f7230d4e95d9a3d71a23449905f30f50b055df9a6a6a3e6" +source = "git+https://github.com/PyO3/rust-numpy.git?branch=main#2cab9df30cf9cc1bb2f370cb069b87465308b1ea" dependencies = [ "cfg-if 0.1.10", "libc", @@ -338,9 +337,9 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.19" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c" +checksum = "12295df4f294471248581bc09bef3c38a5e46f1e36d6a37353621a0c6c357e1f" [[package]] name = "proc-macro-hack" @@ -350,18 +349,18 @@ checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" [[package]] name = "proc-macro2" -version = "1.0.29" +version = "1.0.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9f5105d4fdaab20335ca9565e106a5d9b82b6219b5ba735731124ac6711d23d" +checksum = "ba508cc11742c0dc5c1659771673afbab7a0efab23aa17e854cbab0837ed0b43" dependencies = [ "unicode-xid", ] [[package]] name = "pyo3" -version = "0.14.5" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35100f9347670a566a67aa623369293703322bb9db77d99d7df7313b575ae0c8" +checksum = "64664505ce285a59b8b7e940fbe54ad65b1758a0810eddc5bc26df6f6ec8c557" dependencies = [ "cfg-if 1.0.0", "indoc", @@ -375,18 +374,18 @@ dependencies = [ [[package]] name = "pyo3-build-config" -version = "0.14.5" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d12961738cacbd7f91b7c43bc25cfeeaa2698ad07a04b3be0aa88b950865738f" +checksum = "5f1e4a72de84cdcd69f62211b62f62753d0c11b7b5715f3467f3754dab22a7ca" dependencies = [ "once_cell", ] [[package]] name = "pyo3-macros" -version = "0.14.5" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc0bc5215d704824dfddddc03f93cb572e1155c68b6761c37005e1c288808ea8" +checksum = "244f21d0a3887a9c02018b94e3b78d693dc7eca5c56839b7796a499cc364deb4" dependencies = [ "pyo3-macros-backend", "quote", @@ -395,9 +394,9 @@ dependencies = [ [[package]] name = "pyo3-macros-backend" -version = "0.14.5" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71623fc593224afaab918aa3afcaf86ed2f43d34f6afde7f3922608f253240df" +checksum = "b3d3d18ac41d05199bb82645d56e39f8c8b4909a0137c6f2640f03685b29f672" dependencies = [ "proc-macro2", "pyo3-build-config", @@ -407,9 +406,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.9" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" +checksum = "38bc8cc6a5f2e3655e0899c1b848643b2562f853f114bfec7be120678e3ace05" dependencies = [ "proc-macro2", ] @@ -437,9 +436,9 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" [[package]] name = "smallvec" -version = "1.6.1" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e" +checksum = "1ecab6c735a6bb4139c0caafd0cc3635748bbb3acf4550e8138122099251f309" [[package]] name = "snap" @@ -449,9 +448,9 @@ checksum = "45456094d1983e2ee2a18fdfebce3189fa451699d0502cb8e3b49dba5ba41451" [[package]] name = "syn" -version = "1.0.75" +version = "1.0.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7f58f7e8eaa0009c5fec437aabf511bd9933e4b2d7407bd05273c01a8906ea7" +checksum = "f2afee18b8beb5a596ecb4a2dce128c719b4ba399d34126b9e4396e3f9860966" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index cfc1c405..28604412 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -23,14 +23,14 @@ codegen-units = 1 opt-level = 3 [dependencies] -pyo3 = { version = "0.14.1", default-features = false, features = ["macros"] } +pyo3 = { version = "0.15", default-features = false, features = ["macros"] } snap = "^1" brotli2 = "^0.3" bzip2 = "^0.4" lz4 = "^1" flate2 = "^1" zstd = "0.9.0+zstd.1.5.0" -numpy = "0.14.0" +numpy = "0.15" [dependencies.mimalloc] version = "0.1.24" diff --git a/benchmark-requirements.txt b/benchmark-requirements.txt index d8331363..5059b39c 100644 --- a/benchmark-requirements.txt +++ b/benchmark-requirements.txt @@ -2,6 +2,6 @@ pytest-benchmark==3.2.3 python-snappy==0.5.4 lz4==3.1.0 brotlipy==0.7.0 -zstd==1.4.5.1 +zstd==1.5.0.2 numpy memory-profiler