diff options
author | Bartek IwaĆczuk <biwanczuk@gmail.com> | 2024-08-15 20:59:16 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-08-15 21:59:16 +0200 |
commit | e8d57cd3feb169c6a8e9cb11d96c0f2d0b7d50f8 (patch) | |
tree | aaaa9aa09a41888d2b09167c30eda3e0b07d4036 /cli/version.rs | |
parent | 8749d651fb5e0964cdb8e62be7a59a603cbc3c7c (diff) |
refactor: remove version::is_canary(), use ReleaseChannel instead (#25053)
In preparation for https://github.com/denoland/deno/pull/25014, this
commit removes public `is_canary()` method and instead uses an enum
`ReleaseChannel` to be able to designate more "kinds" of builds.
Diffstat (limited to 'cli/version.rs')
-rw-r--r-- | cli/version.rs | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/cli/version.rs b/cli/version.rs index aa3e5168e..e4801e108 100644 --- a/cli/version.rs +++ b/cli/version.rs @@ -1,10 +1,19 @@ // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. +use crate::shared::ReleaseChannel; + pub const GIT_COMMIT_HASH: &str = env!("GIT_COMMIT_HASH"); pub const TYPESCRIPT: &str = env!("TS_VERSION"); +// TODO(bartlomieju): ideally we could remove this const. +const IS_CANARY: bool = option_env!("DENO_CANARY").is_some(); +pub const RELEASE_CHANNEL: ReleaseChannel = if IS_CANARY { + ReleaseChannel::Canary +} else { + ReleaseChannel::Stable +}; pub fn deno() -> &'static str { - if is_canary() { + if IS_CANARY { concat!( env!("CARGO_PKG_VERSION"), "+", @@ -17,7 +26,7 @@ pub fn deno() -> &'static str { // Keep this in sync with `deno()` above pub fn get_user_agent() -> &'static str { - if is_canary() { + if IS_CANARY { concat!( "Deno/", env!("CARGO_PKG_VERSION"), @@ -29,12 +38,8 @@ pub fn get_user_agent() -> &'static str { } } -pub fn is_canary() -> bool { - option_env!("DENO_CANARY").is_some() -} - pub fn release_version_or_canary_commit_hash() -> &'static str { - if is_canary() { + if IS_CANARY { GIT_COMMIT_HASH } else { env!("CARGO_PKG_VERSION") |