Skip to content

Commit

Permalink
feat: add beta-4 support (#480)
Browse files Browse the repository at this point in the history
* feat: add beta-4 support

* docs: update docs

* trigger CI

* add markdown-link-check-disable to channels.md

---------

Co-authored-by: JoshuaBatty <joshpbatty@gmail.com>
  • Loading branch information
kayagokalp and JoshuaBatty authored Sep 1, 2023
1 parent 5c73a23 commit 1f488b3
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 3 deletions.
10 changes: 10 additions & 0 deletions docs/src/concepts/channels.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@
| **[nightly]** | `master` branch || nightly (1:00 AM UTC) | ✔️ |
| **[beta-3]** | published bins || only when necessary | ✔️ |
| **[beta-4-rc]** | published bins || only when necessary | ✔️ |
| **[beta-4-rc2]** | published bins || only when necessary | ✔️ |
| **[beta-4]** | published bins || only when necessary | ✔️ |
<!-- channels:example:end -->

## The `beta-3` channel
Expand All @@ -24,6 +26,12 @@ The `beta-4-rc` channel offers developers an early opportunity to test out new f

The `beta-4-rc.2` channel offers developers an early opportunity to test out new features and improvements, including enhancements and bug fixes made since the beta-4-rc version. If maintaining compatibility with the beta-3 testnet is required for your project, we recommend you continue using the beta-3 toolchain. The components to be installed can be found [here](https://github.com/FuelLabs/fuelup/blob/gh-pages/channel-fuel-beta-4-rc-2.toml).

## The `beta-4` channel

<!-- markdown-link-check-disable -->
The `beta-4` channel is a published TOML file describing the toolchain that is compatible with our [beta-4 testnet](https://fuel-labs.ghost.io/announcing-beta-4-testnet/). This toolchain should be used to interact with and build on the testnet. The components to be installed can be found [here](https://github.com/FuelLabs/fuelup/blob/gh-pages/channel-fuel-beta-4.toml).
<!-- markdown-link-check-enable -->

## The `nightly` channel

<!-- This section should give an overview of the nightly channel -->
Expand Down Expand Up @@ -93,4 +101,6 @@ You may also use [nektos/act](https://github.com/nektos/act) to run the workflow
[nightly]: #the-nightly-channel
[beta-3]: #the-beta-3-channel
[beta-4-rc]: #the-beta-4-rc-channel
[beta-4-rc2]: #the-beta-4-rc2-channel
[beta-4]: #the-beta-4-channel
[gh-pages]: https://github.com/FuelLabs/fuelup/tree/gh-pages
14 changes: 11 additions & 3 deletions src/channel.rs
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
use crate::{
constants::{
CHANNEL_BETA_1_FILE_NAME, CHANNEL_BETA_2_FILE_NAME, CHANNEL_BETA_3_FILE_NAME,
CHANNEL_BETA_4_RC_2_FILE_NAME, CHANNEL_BETA_4_RC_FILE_NAME, CHANNEL_LATEST_FILE_NAME,
CHANNEL_NIGHTLY_FILE_NAME, DATE_FORMAT_URL_FRIENDLY, FUELUP_GH_PAGES,
CHANNEL_BETA_4_FILE_NAME, CHANNEL_BETA_4_RC_2_FILE_NAME, CHANNEL_BETA_4_RC_FILE_NAME,
CHANNEL_LATEST_FILE_NAME, CHANNEL_NIGHTLY_FILE_NAME, DATE_FORMAT_URL_FRIENDLY,
FUELUP_GH_PAGES,
},
download::{download, DownloadCfg},
toolchain::{DistToolchainDescription, DistToolchainName},
Expand All @@ -23,6 +24,7 @@ pub const BETA_2: &str = "beta-2";
pub const BETA_3: &str = "beta-3";
pub const BETA_4_RC: &str = "beta-4-rc";
pub const BETA_4_RC_2: &str = "beta-4-rc.2";
pub const BETA_4: &str = "beta-4";
pub const NIGHTLY: &str = "nightly";

#[derive(Debug, Deserialize, Serialize)]
Expand All @@ -44,7 +46,12 @@ pub struct Package {
}

pub fn is_beta_toolchain(name: &str) -> bool {
name == BETA_1 || name == BETA_2 || name == BETA_3 || name == BETA_4_RC || name == BETA_4_RC_2
name == BETA_1
|| name == BETA_2
|| name == BETA_3
|| name == BETA_4_RC
|| name == BETA_4_RC_2
|| name == BETA_4
}

fn format_nightly_url(date: &Date) -> Result<String> {
Expand Down Expand Up @@ -77,6 +84,7 @@ fn construct_channel_url(desc: &DistToolchainDescription) -> Result<String> {
DistToolchainName::Beta3 => url.push_str(CHANNEL_BETA_3_FILE_NAME),
DistToolchainName::Beta4Rc => url.push_str(CHANNEL_BETA_4_RC_FILE_NAME),
DistToolchainName::Beta4Rc2 => url.push_str(CHANNEL_BETA_4_RC_2_FILE_NAME),
DistToolchainName::Beta4 => url.push_str(CHANNEL_BETA_4_FILE_NAME),
};

Ok(url)
Expand Down
1 change: 1 addition & 0 deletions src/constants.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ pub const CHANNEL_BETA_2_FILE_NAME: &str = "channel-fuel-beta-2.toml";
pub const CHANNEL_BETA_3_FILE_NAME: &str = "channel-fuel-beta-3.toml";
pub const CHANNEL_BETA_4_RC_FILE_NAME: &str = "channel-fuel-beta-4-rc.toml";
pub const CHANNEL_BETA_4_RC_2_FILE_NAME: &str = "channel-fuel-beta-4-rc-2.toml";
pub const CHANNEL_BETA_4_FILE_NAME: &str = "channel-fuel-beta-4.toml";

pub const DATE_FORMAT: &[FormatItem] = format_description!("[year]-[month]-[day]");
pub const DATE_FORMAT_URL_FRIENDLY: &[FormatItem] = format_description!("[year]/[month]/[day]");
3 changes: 3 additions & 0 deletions src/toolchain.rs
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ pub enum DistToolchainName {
Beta3,
Beta4Rc,
Beta4Rc2,
Beta4,
Latest,
Nightly,
}
Expand All @@ -53,6 +54,7 @@ impl fmt::Display for DistToolchainName {
DistToolchainName::Beta3 => write!(f, "{}", channel::BETA_3),
DistToolchainName::Beta4Rc => write!(f, "{}", channel::BETA_4_RC),
DistToolchainName::Beta4Rc2 => write!(f, "{}", channel::BETA_4_RC_2),
DistToolchainName::Beta4 => write!(f, "{}", channel::BETA_4),
}
}
}
Expand All @@ -68,6 +70,7 @@ impl FromStr for DistToolchainName {
channel::BETA_3 => Ok(Self::Beta3),
channel::BETA_4_RC => Ok(Self::Beta4Rc),
channel::BETA_4_RC_2 => Ok(Self::Beta4Rc2),
channel::BETA_4 => Ok(Self::Beta4),
_ => bail!("Unknown name for toolchain: {}", s),
}
}
Expand Down

0 comments on commit 1f488b3

Please sign in to comment.