From 1fc41053449f9dc97971b490c7744dcb5b92b9db Mon Sep 17 00:00:00 2001 From: Skyler Hawthorne Date: Mon, 27 Nov 2023 08:38:51 -0500 Subject: [PATCH] use workspace inheritance for common version --- Cargo.lock | 22 +++++++++++----------- Cargo.toml | 5 +++++ VERSION | 1 - docs/releases.md | 10 ++++++---- helix-core/Cargo.toml | 16 ++++++++-------- helix-dap/Cargo.toml | 15 ++++++++------- helix-event/Cargo.toml | 10 +++++----- helix-loader/Cargo.toml | 12 ++++++------ helix-loader/build.rs | 3 +-- helix-lsp/Cargo.toml | 18 +++++++++--------- helix-parsec/Cargo.toml | 14 +++++++------- helix-term/Cargo.toml | 30 +++++++++++++++--------------- helix-tui/Cargo.toml | 21 ++++++++++----------- helix-vcs/Cargo.toml | 16 ++++++++-------- helix-view/Cargo.toml | 25 +++++++++++++------------ xtask/Cargo.toml | 18 ++++++++++++------ 16 files changed, 124 insertions(+), 112 deletions(-) delete mode 100644 VERSION diff --git a/Cargo.lock b/Cargo.lock index 8901f99f98ce..004f5b7232d5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1088,7 +1088,7 @@ dependencies = [ [[package]] name = "helix-core" -version = "0.6.0" +version = "23.10.0" dependencies = [ "ahash", "arc-swap", @@ -1123,7 +1123,7 @@ dependencies = [ [[package]] name = "helix-dap" -version = "0.6.0" +version = "23.10.0" dependencies = [ "anyhow", "fern", @@ -1138,7 +1138,7 @@ dependencies = [ [[package]] name = "helix-event" -version = "0.6.0" +version = "23.10.0" dependencies = [ "parking_lot", "tokio", @@ -1146,7 +1146,7 @@ dependencies = [ [[package]] name = "helix-loader" -version = "0.6.0" +version = "23.10.0" dependencies = [ "anyhow", "cc", @@ -1165,7 +1165,7 @@ dependencies = [ [[package]] name = "helix-lsp" -version = "0.6.0" +version = "23.10.0" dependencies = [ "anyhow", "futures-executor", @@ -1187,11 +1187,11 @@ dependencies = [ [[package]] name = "helix-parsec" -version = "0.6.0" +version = "23.10.0" [[package]] name = "helix-term" -version = "0.6.0" +version = "23.10.0" dependencies = [ "anyhow", "arc-swap", @@ -1233,7 +1233,7 @@ dependencies = [ [[package]] name = "helix-tui" -version = "0.6.0" +version = "23.10.0" dependencies = [ "bitflags 2.4.1", "cassowary", @@ -1249,7 +1249,7 @@ dependencies = [ [[package]] name = "helix-vcs" -version = "0.6.0" +version = "23.10.0" dependencies = [ "anyhow", "arc-swap", @@ -1265,7 +1265,7 @@ dependencies = [ [[package]] name = "helix-view" -version = "0.6.0" +version = "23.10.0" dependencies = [ "anyhow", "arc-swap", @@ -2619,7 +2619,7 @@ dependencies = [ [[package]] name = "xtask" -version = "0.6.0" +version = "23.10.0" dependencies = [ "helix-core", "helix-loader", diff --git a/Cargo.toml b/Cargo.toml index f2cd9b766b32..6c006fbb4ff4 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -40,6 +40,11 @@ tree-sitter = { version = "0.20", git = "https://github.com/tree-sitter/tree-sit nucleo = "0.2.0" [workspace.package] +version = "23.10.0" edition = "2021" +authors = ["Blaž Hrastnik "] +categories = ["editor"] +repository = "https://github.com/helix-editor/helix" +homepage = "https://helix-editor.com" license = "MPL-2.0" rust-version = "1.70" diff --git a/VERSION b/VERSION deleted file mode 100644 index f5f8bffe42a5..000000000000 --- a/VERSION +++ /dev/null @@ -1 +0,0 @@ -23.10 \ No newline at end of file diff --git a/docs/releases.md b/docs/releases.md index 842886753ac6..c04c5361b22a 100644 --- a/docs/releases.md +++ b/docs/releases.md @@ -1,7 +1,7 @@ ## Checklist Helix releases are versioned in the Calendar Versioning scheme: -`YY.0M(.MICRO)`, for example, `22.05` for May of 2022. In these instructions +`YY.0M.MICRO`, for example, `22.05.0` for May of 2022. In these instructions we'll use `` as a placeholder for the tag being published. * Merge the changelog PR @@ -9,8 +9,10 @@ we'll use `` as a placeholder for the tag being published. * Tag and push * `git tag -s -m "" -a && git push` * Make sure to switch to master and pull first -* Edit the `VERSION` file and change the date to the next planned release - * Releases are planned to happen every two months, so `22.05` would change to `22.07` +* Edit the `Cargo.toml` file and change the date in the `version` field to the next planned release + * Releases are planned to happen every two months, so `22.05.0` would change to `22.07.0` + * If we are pushing a patch/bugfix release in the same month as the previous + release, bump the micro version, e.g. `22.07.0` to `22.07.1` * Wait for the Release CI to finish * It will automatically turn the git tag into a GitHub release when it uploads artifacts * Edit the new release @@ -57,4 +59,4 @@ versions for convenience: > release. For the full log, check out the git log. Typically, small changes like dependencies or documentation updates, refactors, -or meta changes like GitHub Actions work are left out. \ No newline at end of file +or meta changes like GitHub Actions work are left out. diff --git a/helix-core/Cargo.toml b/helix-core/Cargo.toml index 0fa550462964..dc5107dd74c0 100644 --- a/helix-core/Cargo.toml +++ b/helix-core/Cargo.toml @@ -1,22 +1,22 @@ [package] name = "helix-core" -version = "0.6.0" -authors = ["Blaž Hrastnik "] +description = "Helix editor core editing primitives" +include = ["src/**/*", "README.md"] +version.workspace = true +authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true -description = "Helix editor core editing primitives" -categories = ["editor"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" -include = ["src/**/*", "README.md"] +categories.workspace = true +repository.workspace = true +homepage.workspace = true [features] unicode-lines = ["ropey/unicode_lines"] integration = [] [dependencies] -helix-loader = { version = "0.6", path = "../helix-loader" } +helix-loader = { path = "../helix-loader" } ropey = { version = "1.6.1", default-features = false, features = ["simd"] } smallvec = "1.11" diff --git a/helix-dap/Cargo.toml b/helix-dap/Cargo.toml index b4dd5177e9ba..f7acb00323e0 100644 --- a/helix-dap/Cargo.toml +++ b/helix-dap/Cargo.toml @@ -1,19 +1,20 @@ [package] name = "helix-dap" -version = "0.6.0" -authors = ["Blaž Hrastnik "] +description = "DAP client implementation for Helix project" +version.workspace = true +authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true -description = "DAP client implementation for Helix project" -categories = ["editor"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" +categories.workspace = true +repository.workspace = true +homepage.workspace = true # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -helix-core = { version = "0.6", path = "../helix-core" } +helix-core = { path = "../helix-core" } + anyhow = "1.0" log = "0.4" serde = { version = "1.0", features = ["derive"] } diff --git a/helix-event/Cargo.toml b/helix-event/Cargo.toml index 2dd4b512da4c..c20328246fa3 100644 --- a/helix-event/Cargo.toml +++ b/helix-event/Cargo.toml @@ -1,13 +1,13 @@ [package] name = "helix-event" -version = "0.6.0" -authors = ["Blaž Hrastnik "] +version.workspace = true +authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true -categories = ["editor"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" +categories.workspace = true +repository.workspace = true +homepage.workspace = true # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/helix-loader/Cargo.toml b/helix-loader/Cargo.toml index b32318d0436e..1a98e94bea37 100644 --- a/helix-loader/Cargo.toml +++ b/helix-loader/Cargo.toml @@ -1,14 +1,14 @@ [package] name = "helix-loader" -version = "0.6.0" -description = "A post-modern text editor." -authors = ["Blaž Hrastnik "] +description = "Build bootstrapping for Helix crates" +version.workspace = true +authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true -categories = ["editor"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" +categories.workspace = true +repository.workspace = true +homepage.workspace = true [[bin]] name = "hx-loader" diff --git a/helix-loader/build.rs b/helix-loader/build.rs index 74ba2a2beb2a..b430c980c3cf 100644 --- a/helix-loader/build.rs +++ b/helix-loader/build.rs @@ -2,7 +2,7 @@ use std::borrow::Cow; use std::path::Path; use std::process::Command; -const VERSION: &str = include_str!("../VERSION"); +const VERSION: &str = env!("CARGO_PKG_VERSION"); fn main() { let git_hash = Command::new("git") @@ -22,7 +22,6 @@ fn main() { std::env::var("TARGET").unwrap() ); - println!("cargo:rerun-if-changed=../VERSION"); println!("cargo:rustc-env=VERSION_AND_GIT_HASH={}", version); if git_hash.is_none() { diff --git a/helix-lsp/Cargo.toml b/helix-lsp/Cargo.toml index 98ff5d0b9758..d6bd0370867a 100644 --- a/helix-lsp/Cargo.toml +++ b/helix-lsp/Cargo.toml @@ -1,21 +1,21 @@ [package] name = "helix-lsp" -version = "0.6.0" -authors = ["Blaž Hrastnik "] +description = "LSP client implementation for Helix project" +version.workspace = true +authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true -description = "LSP client implementation for Helix project" -categories = ["editor"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" +categories.workspace = true +repository.workspace = true +homepage.workspace = true # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -helix-core = { version = "0.6", path = "../helix-core" } -helix-loader = { version = "0.6", path = "../helix-loader" } -helix-parsec = { version = "0.6", path = "../helix-parsec" } +helix-core = { path = "../helix-core" } +helix-loader = { path = "../helix-loader" } +helix-parsec = { path = "../helix-parsec" } anyhow = "1.0" futures-executor = "0.3" diff --git a/helix-parsec/Cargo.toml b/helix-parsec/Cargo.toml index d2b6105e628c..217691219c20 100644 --- a/helix-parsec/Cargo.toml +++ b/helix-parsec/Cargo.toml @@ -1,14 +1,14 @@ [package] name = "helix-parsec" -version = "0.6.0" -authors = ["Blaž Hrastnik "] +description = "Parser combinators for Helix" +include = ["src/**/*", "README.md"] +version.workspace = true +authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true -description = "Parser combinators for Helix" -categories = ["editor"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" -include = ["src/**/*", "README.md"] +categories.workspace = true +repository.workspace = true +homepage.workspace = true [dependencies] diff --git a/helix-term/Cargo.toml b/helix-term/Cargo.toml index a11b4ae5dbd0..6665e072d96c 100644 --- a/helix-term/Cargo.toml +++ b/helix-term/Cargo.toml @@ -1,16 +1,16 @@ [package] name = "helix-term" -version = "0.6.0" description = "A post-modern text editor." -authors = ["Blaž Hrastnik "] -edition.workspace = true -license.workspace = true -categories = ["editor", "command-line-utilities"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" include = ["src/**/*", "README.md"] default-run = "hx" +version.workspace = true +authors.workspace = true +edition.workspace = true +license.workspace = true rust-version.workspace = true +categories.workspace = true +repository.workspace = true +homepage.workspace = true [features] default = ["git"] @@ -23,13 +23,13 @@ name = "hx" path = "src/main.rs" [dependencies] -helix-core = { version = "0.6", path = "../helix-core" } -helix-event = { version = "0.6", path = "../helix-event" } -helix-view = { version = "0.6", path = "../helix-view" } -helix-lsp = { version = "0.6", path = "../helix-lsp" } -helix-dap = { version = "0.6", path = "../helix-dap" } -helix-vcs = { version = "0.6", path = "../helix-vcs" } -helix-loader = { version = "0.6", path = "../helix-loader" } +helix-core = { path = "../helix-core" } +helix-event = { path = "../helix-event" } +helix-view = { path = "../helix-view" } +helix-lsp = { path = "../helix-lsp" } +helix-dap = { path = "../helix-dap" } +helix-vcs = { path = "../helix-vcs" } +helix-loader = { path = "../helix-loader" } anyhow = "1" once_cell = "1.18" @@ -79,7 +79,7 @@ libc = "0.2.150" crossterm = { version = "0.27", features = ["event-stream", "use-dev-tty"] } [build-dependencies] -helix-loader = { version = "0.6", path = "../helix-loader" } +helix-loader = { path = "../helix-loader" } [dev-dependencies] smallvec = "1.11" diff --git a/helix-tui/Cargo.toml b/helix-tui/Cargo.toml index 602fa3e5ff76..c6af90fc606a 100644 --- a/helix-tui/Cargo.toml +++ b/helix-tui/Cargo.toml @@ -1,22 +1,23 @@ [package] name = "helix-tui" -version = "0.6.0" -authors = ["Blaž Hrastnik "] -description = """ -A library to build rich terminal user interfaces or dashboards -""" +description = """A library to build rich terminal user interfaces or dashboards""" +include = ["src/**/*", "README.md"] +version.workspace = true +authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true -categories = ["editor"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" -include = ["src/**/*", "README.md"] +categories.workspace = true +repository.workspace = true +homepage.workspace = true [features] default = ["crossterm"] [dependencies] +helix-view = { path = "../helix-view", features = ["term"] } +helix-core = { path = "../helix-core" } + bitflags = "2.4" cassowary = "0.3" unicode-segmentation = "1.10" @@ -25,5 +26,3 @@ termini = "1.0" serde = { version = "1", "optional" = true, features = ["derive"]} once_cell = "1.18" log = "~0.4" -helix-view = { version = "0.6", path = "../helix-view", features = ["term"] } -helix-core = { version = "0.6", path = "../helix-core" } diff --git a/helix-vcs/Cargo.toml b/helix-vcs/Cargo.toml index 1152cf9abc03..ba38160fdfbf 100644 --- a/helix-vcs/Cargo.toml +++ b/helix-vcs/Cargo.toml @@ -1,19 +1,19 @@ [package] name = "helix-vcs" -version = "0.6.0" -authors = ["Blaž Hrastnik "] +version.workspace = true +authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true -categories = ["editor"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" +categories.workspace = true +repository.workspace = true +homepage.workspace = true # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -helix-core = { version = "0.6", path = "../helix-core" } -helix-event = { version = "0.6", path = "../helix-event" } +helix-core = { path = "../helix-core" } +helix-event = { path = "../helix-event" } tokio = { version = "1", features = ["rt", "rt-multi-thread", "time", "sync", "parking_lot", "macros"] } parking_lot = "0.12" @@ -29,4 +29,4 @@ log = "0.4" git = ["gix"] [dev-dependencies] -tempfile = "3.8" \ No newline at end of file +tempfile = "3.8" diff --git a/helix-view/Cargo.toml b/helix-view/Cargo.toml index 266abf5f50db..f1eddab446cc 100644 --- a/helix-view/Cargo.toml +++ b/helix-view/Cargo.toml @@ -1,29 +1,30 @@ [package] name = "helix-view" -version = "0.6.0" -authors = ["Blaž Hrastnik "] +description = "UI abstractions for use in backends" +version.workspace = true +authors.workspace = true edition.workspace = true license.workspace = true rust-version.workspace = true -description = "UI abstractions for use in backends" -categories = ["editor"] -repository = "https://github.com/helix-editor/helix" -homepage = "https://helix-editor.com" +categories.workspace = true +repository.workspace = true +homepage.workspace = true [features] default = [] term = ["crossterm"] [dependencies] +helix-core = { path = "../helix-core" } +helix-event = { path = "../helix-event" } +helix-loader = { path = "../helix-loader" } +helix-lsp = { path = "../helix-lsp" } +helix-dap = { path = "../helix-dap" } +helix-vcs = { path = "../helix-vcs" } + bitflags = "2.4" anyhow = "1" -helix-core = { version = "0.6", path = "../helix-core" } -helix-event = { version = "0.6", path = "../helix-event" } -helix-loader = { version = "0.6", path = "../helix-loader" } -helix-lsp = { version = "0.6", path = "../helix-lsp" } -helix-dap = { version = "0.6", path = "../helix-dap" } crossterm = { version = "0.27", optional = true } -helix-vcs = { version = "0.6", path = "../helix-vcs" } # Conversion traits once_cell = "1.18" diff --git a/xtask/Cargo.toml b/xtask/Cargo.toml index ed1182947b6f..0a61536fc7af 100644 --- a/xtask/Cargo.toml +++ b/xtask/Cargo.toml @@ -1,13 +1,19 @@ [package] name = "xtask" -version = "0.6.0" -edition = "2021" +version.workspace = true +authors.workspace = true +edition.workspace = true +license.workspace = true +rust-version.workspace = true +categories.workspace = true +repository.workspace = true +homepage.workspace = true # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] -helix-term = { version = "0.6", path = "../helix-term" } -helix-core = { version = "0.6", path = "../helix-core" } -helix-view = { version = "0.6", path = "../helix-view" } -helix-loader = { version = "0.6", path = "../helix-loader" } +helix-term = { path = "../helix-term" } +helix-core = { path = "../helix-core" } +helix-view = { path = "../helix-view" } +helix-loader = { path = "../helix-loader" } toml = "0.7"