From 24bdab7293b8493ddd5f87f7d2a4455d69c07a8a Mon Sep 17 00:00:00 2001 From: messense Date: Fri, 11 Nov 2022 19:40:08 +0800 Subject: [PATCH 1/2] Release v0.14.0 --- Cargo.lock | 57 ++++++++++++++++++++++++++-------------------------- Cargo.toml | 4 ++-- Changelog.md | 5 ++++- 3 files changed, 34 insertions(+), 32 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 21a661c00..d04006b98 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -313,7 +313,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6755badfe5e0224c6e2ae710d82cd7dce5866e8ebcb22e5f3eced8f25fbd1ace" dependencies = [ - "clap 4.0.22", + "clap 4.0.26", ] [[package]] @@ -333,7 +333,7 @@ checksum = "fff9dcba0018e9156cfb5802be23e5e1e4edf228e7b09034dcf0f4fb4b9a2d2a" dependencies = [ "anyhow", "cargo-options", - "clap 4.0.22", + "clap 4.0.26", "dirs", "fs-err", "indicatif", @@ -351,7 +351,7 @@ dependencies = [ "anyhow", "cargo-options", "cargo_metadata", - "clap 4.0.22", + "clap 4.0.26", "dirs", "fs-err", "path-slash", @@ -409,7 +409,7 @@ checksum = "d38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f" dependencies = [ "byteorder", "fnv", - "uuid 1.2.1", + "uuid 1.2.2", ] [[package]] @@ -472,9 +472,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.0.22" +version = "4.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91b9970d7505127a162fdaa9b96428d28a479ba78c9ec7550a63a5d9863db682" +checksum = "2148adefda54e14492fb9bddcc600b4344c5d1a3123bd666dcb939c6f0e0e57e" dependencies = [ "atty", "bitflags", @@ -492,7 +492,7 @@ version = "4.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96b0fba905b035a30d25c1b585bf1171690712fbb0ad3ac47214963aa4acc36c" dependencies = [ - "clap 4.0.22", + "clap 4.0.26", ] [[package]] @@ -501,7 +501,7 @@ version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b36d1abc7184a737efc9f589e6e783e8b56c72e71fca748cf9947ed0a6f46d44" dependencies = [ - "clap 4.0.22", + "clap 4.0.26", "clap_complete", ] @@ -802,9 +802,9 @@ dependencies = [ [[package]] name = "digest" -version = "0.10.5" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adfbc57365a37acbd2ebf2b64d7e69bb766e2fea813521ed536f5d0520dcf86c" +checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" dependencies = [ "block-buffer 0.10.3", "crypto-common", @@ -1322,9 +1322,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.9.1" +version = "1.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a35a97730320ffe8e2d410b5d3b69279b98d2c14bdb8b70ea89ecf7888d41e" +checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" dependencies = [ "autocfg", "hashbrown", @@ -1475,7 +1475,7 @@ dependencies = [ [[package]] name = "maturin" -version = "0.14.0-beta.7" +version = "0.14.0" dependencies = [ "anyhow", "base64", @@ -1486,7 +1486,7 @@ dependencies = [ "cargo_metadata", "cbindgen", "cc", - "clap 4.0.22", + "clap 4.0.26", "clap_complete", "clap_complete_fig", "configparser", @@ -1570,9 +1570,9 @@ dependencies = [ [[package]] name = "minijinja" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8602d7e47eed0a7026af5666ff0d4500548afe1f7567a351ada0bb61bd250a9e" +checksum = "f78c517692dfb929b49ee56ad11293107a26ec18d025ceffcccf995ff33739a9" dependencies = [ "serde", ] @@ -1601,7 +1601,7 @@ dependencies = [ "byteorder", "cfb", "encoding", - "uuid 1.2.1", + "uuid 1.2.2", ] [[package]] @@ -2161,11 +2161,10 @@ dependencies = [ [[package]] name = "rayon" -version = "1.5.3" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d" +checksum = "1e060280438193c554f654141c9ea9417886713b7acd75974c85b18a69a88e0b" dependencies = [ - "autocfg", "crossbeam-deque", "either", "rayon-core", @@ -2173,9 +2172,9 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.9.3" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f" +checksum = "cac410af5d00ab6884528b4ab69d1e8e146e8d471201800fa1b4524126de6ad3" dependencies = [ "crossbeam-channel", "crossbeam-deque", @@ -2465,9 +2464,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.87" +version = "1.0.88" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce777b7b150d76b9cf60d28b55f5847135a003f7d7350c6be7a773508ce7d45" +checksum = "8e8b3801309262e8184d9687fb697586833e939767aea0dda89f5a8e650e8bd7" dependencies = [ "itoa", "ryu", @@ -2506,7 +2505,7 @@ checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.5", + "digest 0.10.6", ] [[package]] @@ -2526,9 +2525,9 @@ checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" [[package]] name = "similar" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62ac7f900db32bf3fd12e0117dd3dc4da74bc52ebaac97f39668446d89694803" +checksum = "420acb44afdae038210c99e69aae24109f32f15500aa708e81d46c9f29d55fcf" [[package]] name = "slab" @@ -3051,9 +3050,9 @@ dependencies = [ [[package]] name = "uuid" -version = "1.2.1" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "feb41e78f93363bb2df8b0e86a2ca30eed7806ea16ea0c790d757cf93f79be83" +checksum = "422ee0de9031b5b948b97a8fc04e3aa35230001a722ddd27943e0be31564ce4c" [[package]] name = "valuable" diff --git a/Cargo.toml b/Cargo.toml index e71507bbe..57a002607 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] authors = ["konstin ", "messense "] name = "maturin" -version = "0.14.0-beta.7" +version = "0.14.0" description = "Build and publish crates with pyo3, rust-cpython and cffi bindings as well as rust binaries as python packages" exclude = ["test-crates/**/*", "sysconfig/*", "test-data/*", "ci/*", "tests/*", "guide/*", ".github/*"] homepage = "https://github.com/pyo3/maturin" @@ -57,7 +57,7 @@ ignore = "0.4.18" itertools = "0.10.5" dialoguer = { version = "0.10.2", default-features = false } console = "0.15.2" -minijinja = "0.25.0" +minijinja = "0.26.0" lddtree = "0.3.2" cc = "1.0.72" clap = { version = "4.0.0", features = ["derive", "env", "wrap_help"] } diff --git a/Changelog.md b/Changelog.md index ceb3b6508..696548d85 100644 --- a/Changelog.md +++ b/Changelog.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.14.0] - 2022-11-?? + * **Breaking Change**: Remove support for specifying python package metadata in `Cargo.toml` in [#1200](https://github.com/PyO3/maturin/pull/1200). Python package metadata should be specified in the `project` section of `pyproject.toml` instead as [PEP 621](https://peps.python.org/pep-0621/) specifies. * Initial support for shipping bin targets as wasm32-wasi binaries that are run through wasmtime in [#1107](https://github.com/PyO3/maturin/pull/1107). @@ -742,7 +744,8 @@ points-0.1.0-py2.py3-none-manylinux1_x86_64.whl | 2,8M | 752K | 85K * Initial Release -[Unreleased]: https://github.com/pyo3/maturin/compare/v0.13.7...HEAD +[Unreleased]: https://github.com/pyo3/maturin/compare/v0.14.0...HEAD +[0.14.0]: https://github.com/pyo3/maturin/compare/v0.13.7...v0.14.0 [0.13.7]: https://github.com/pyo3/maturin/compare/v0.13.6...v0.13.7 [0.13.6]: https://github.com/pyo3/maturin/compare/v0.13.5...v0.13.6 [0.13.5]: https://github.com/pyo3/maturin/compare/v0.13.4...v0.13.5 From 464cbd1f992ddcd16416bd3fddea941428a47ae4 Mon Sep 17 00:00:00 2001 From: messense Date: Fri, 11 Nov 2022 19:47:23 +0800 Subject: [PATCH 2/2] Update command output in user guide --- Changelog.md | 2 +- guide/src/develop.md | 111 ++++++++++++------------ guide/src/distribution.md | 162 +++++++++++++++++------------------ test-crates/update_readme.py | 6 +- 4 files changed, 140 insertions(+), 141 deletions(-) diff --git a/Changelog.md b/Changelog.md index 696548d85..b42d26b8b 100644 --- a/Changelog.md +++ b/Changelog.md @@ -7,7 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [0.14.0] - 2022-11-?? +## [0.14.0] - 2022-11-19 * **Breaking Change**: Remove support for specifying python package metadata in `Cargo.toml` in [#1200](https://github.com/PyO3/maturin/pull/1200). Python package metadata should be specified in the `project` section of `pyproject.toml` instead as [PEP 621](https://peps.python.org/pep-0621/) specifies. diff --git a/guide/src/develop.md b/guide/src/develop.md index c040c3c00..5804f9011 100644 --- a/guide/src/develop.md +++ b/guide/src/develop.md @@ -6,89 +6,88 @@ For local development, the `maturin develop` command can be used to quickly build a package in debug mode by default and install it to virtualenv. ``` -USAGE: - maturin develop [OPTIONS] [--] [ARGS]... +Usage: maturin develop [OPTIONS] [ARGS]... -ARGS: - ... - Rustc flags +Arguments: + [ARGS]... + Rustc flags -OPTIONS: - -b, --bindings - Which kind of bindings to use. Possible values are pyo3, rust-cpython, cffi and bin +Options: + -b, --bindings + Which kind of bindings to use. Possible values are pyo3, rust-cpython, cffi and bin - -r, --release - Pass --release to cargo + -r, --release + Pass --release to cargo - --strip - Strip the library for minimum file size + --strip + Strip the library for minimum file size - -E, --extras - Install extra requires aka. optional dependencies + -E, --extras + Install extra requires aka. optional dependencies - Use as `--extras=extra1,extra2` + Use as `--extras=extra1,extra2` - -q, --quiet - Do not print cargo log messages + -q, --quiet + Do not print cargo log messages - -j, --jobs - Number of parallel jobs, defaults to # of CPUs + -j, --jobs + Number of parallel jobs, defaults to # of CPUs - --profile - Build artifacts with the specified Cargo profile + --profile + Build artifacts with the specified Cargo profile - -F, --features - Space or comma separated list of features to activate + -F, --features + Space or comma separated list of features to activate - --all-features - Activate all available features + --all-features + Activate all available features - --no-default-features - Do not activate the `default` feature + --no-default-features + Do not activate the `default` feature - --target - Build for the target triple + --target + Build for the target triple - [env: CARGO_BUILD_TARGET=] + [env: CARGO_BUILD_TARGET=] - --target-dir - Directory for all generated artifacts + --target-dir + Directory for all generated artifacts - -m, --manifest-path - Path to Cargo.toml + -m, --manifest-path + Path to Cargo.toml - --ignore-rust-version - Ignore `rust-version` specification in packages + --ignore-rust-version + Ignore `rust-version` specification in packages - -v, --verbose - Use verbose output (-vv very verbose/build.rs output) + -v, --verbose... + Use verbose output (-vv very verbose/build.rs output) - --color - Coloring: auto, always, never + --color + Coloring: auto, always, never - --frozen - Require Cargo.lock and cache are up to date + --frozen + Require Cargo.lock and cache are up to date - --locked - Require Cargo.lock is up to date + --locked + Require Cargo.lock is up to date - --offline - Run without accessing the network + --offline + Run without accessing the network - --config - Override a configuration value (unstable) + --config + Override a configuration value (unstable) - -Z - Unstable (nightly-only) flags to Cargo, see 'cargo -Z help' for details + -Z + Unstable (nightly-only) flags to Cargo, see 'cargo -Z help' for details - --timings[=...] - Timing output formats (unstable) (comma separated): html, json + --timings= + Timing output formats (unstable) (comma separated): html, json - --future-incompat-report - Outputs a future incompatibility report at the end of the build (unstable) + --future-incompat-report + Outputs a future incompatibility report at the end of the build (unstable) - -h, --help - Print help information + -h, --help + Print help information (use `-h` for a summary) ``` ## PEP 660 Editable Installs diff --git a/guide/src/distribution.md b/guide/src/distribution.md index 421bc9521..1a92e1b13 100644 --- a/guide/src/distribution.md +++ b/guide/src/distribution.md @@ -70,126 +70,126 @@ or [nanoporetech/fast-ctc-decode](https://github.com/nanoporetech/fast-ctc-decod ``` -USAGE: - maturin build [OPTIONS] [--] [ARGS]... +Usage: maturin build [OPTIONS] [ARGS]... -ARGS: - ... - Rustc flags +Arguments: + [ARGS]... + Rustc flags -OPTIONS: - -r, --release - Build artifacts in release mode, with optimizations +Options: + -r, --release + Build artifacts in release mode, with optimizations - --strip - Strip the library for minimum file size + --strip + Strip the library for minimum file size - --sdist - Build a source distribution + --sdist + Build a source distribution - --compatibility ... - Control the platform tag on linux. + --compatibility [...] + Control the platform tag on linux. - Options are `manylinux` tags (for example `manylinux2014`/`manylinux_2_24`) or - `musllinux` tags (for example `musllinux_1_2`) and `linux` for the native linux tag. + Options are `manylinux` tags (for example `manylinux2014`/`manylinux_2_24`) or `musllinux` + tags (for example `musllinux_1_2`) and `linux` for the native linux tag. - Note that `manylinux1` and `manylinux2010` is unsupported by the rust compiler. Wheels - with the native `linux` tag will be rejected by pypi, unless they are separately - validated by `auditwheel`. + Note that `manylinux1` and `manylinux2010` is unsupported by the rust compiler. Wheels + with the native `linux` tag will be rejected by pypi, unless they are separately validated + by `auditwheel`. - The default is the lowest compatible `manylinux` tag, or plain `linux` if nothing - matched + The default is the lowest compatible `manylinux` tag, or plain `linux` if nothing matched - This option is ignored on all non-linux platforms + This option is ignored on all non-linux platforms - -i, --interpreter ... - The python versions to build wheels for, given as the names of the interpreters + -i, --interpreter [...] + The python versions to build wheels for, given as the names of the interpreters - -f, --find-interpreter - Find interpreters from the host machine + -f, --find-interpreter + Find interpreters from the host machine - -b, --bindings - Which kind of bindings to use. Possible values are pyo3, rust-cpython, cffi and bin + -b, --bindings + Which kind of bindings to use - -o, --out - The directory to store the built wheels in. Defaults to a new "wheels" directory in the - project's target directory + [possible values: pyo3, pyo3-ffi, rust-cpython, cffi, bin] - --skip-auditwheel - Don't check for manylinux compliance + -o, --out + The directory to store the built wheels in. Defaults to a new "wheels" directory in the + project's target directory - --zig - For manylinux targets, use zig to ensure compliance for the chosen manylinux version + --skip-auditwheel + Don't check for manylinux compliance - Default to manylinux2014/manylinux_2_17 if you do not specify an `--compatibility` + --zig + For manylinux targets, use zig to ensure compliance for the chosen manylinux version - Make sure you installed zig with `pip install maturin[zig]` + Default to manylinux2014/manylinux_2_17 if you do not specify an `--compatibility` - --universal2 - Control whether to build universal2 wheel for macOS or not. Only applies to macOS - targets, do nothing otherwise + Make sure you installed zig with `pip install maturin[zig]` - -q, --quiet - Do not print cargo log messages + --universal2 + Control whether to build universal2 wheel for macOS or not. Only applies to macOS targets, + do nothing otherwise - -j, --jobs - Number of parallel jobs, defaults to # of CPUs + -q, --quiet + Do not print cargo log messages - --profile - Build artifacts with the specified Cargo profile + -j, --jobs + Number of parallel jobs, defaults to # of CPUs - -F, --features - Space or comma separated list of features to activate + --profile + Build artifacts with the specified Cargo profile - --all-features - Activate all available features + -F, --features + Space or comma separated list of features to activate - --no-default-features - Do not activate the `default` feature + --all-features + Activate all available features - --target - Build for the target triple + --no-default-features + Do not activate the `default` feature - [env: CARGO_BUILD_TARGET=] + --target + Build for the target triple - --target-dir - Directory for all generated artifacts + [env: CARGO_BUILD_TARGET=] - -m, --manifest-path - Path to Cargo.toml + --target-dir + Directory for all generated artifacts - --ignore-rust-version - Ignore `rust-version` specification in packages + -m, --manifest-path + Path to Cargo.toml - -v, --verbose - Use verbose output (-vv very verbose/build.rs output) + --ignore-rust-version + Ignore `rust-version` specification in packages - --color - Coloring: auto, always, never + -v, --verbose... + Use verbose output (-vv very verbose/build.rs output) - --frozen - Require Cargo.lock and cache are up to date + --color + Coloring: auto, always, never - --locked - Require Cargo.lock is up to date + --frozen + Require Cargo.lock and cache are up to date - --offline - Run without accessing the network + --locked + Require Cargo.lock is up to date - --config - Override a configuration value (unstable) + --offline + Run without accessing the network - -Z - Unstable (nightly-only) flags to Cargo, see 'cargo -Z help' for details + --config + Override a configuration value (unstable) - --timings[=...] - Timing output formats (unstable) (comma separated): html, json + -Z + Unstable (nightly-only) flags to Cargo, see 'cargo -Z help' for details - --future-incompat-report - Outputs a future incompatibility report at the end of the build (unstable) + --timings= + Timing output formats (unstable) (comma separated): html, json - -h, --help - Print help information + --future-incompat-report + Outputs a future incompatibility report at the end of the build (unstable) + + -h, --help + Print help information (use `-h` for a summary) ``` ### Cross Compiling diff --git a/test-crates/update_readme.py b/test-crates/update_readme.py index 7b1578c95..ae31d5603 100644 --- a/test-crates/update_readme.py +++ b/test-crates/update_readme.py @@ -23,7 +23,7 @@ def main(): content = root.joinpath(path).read_text() matcher = re.compile( - r"```\nUSAGE:\n maturin (\w+) (.*?)```", re.MULTILINE | re.DOTALL + r"```\nUsage: maturin (\w+) (.*?)```", re.MULTILINE | re.DOTALL ) replaces = {} @@ -31,10 +31,10 @@ def main(): command_output = subprocess.check_output( ["cargo", "run", "--", command.lower(), "--help"], text=True ) - new = "USAGE:" + command_output.strip().split("USAGE:")[1] + "\n" + new = "Usage:" + command_output.strip().split("Usage:")[1] + "\n" # Remove trailing whitespace new = re.sub(" +\n", "\n", new) - old = "USAGE:\n maturin " + command + " " + old + old = "Usage: maturin " + command + " " + old replaces[old] = new for old, new in replaces.items():