Skip to content

Instantly share code, notes, and snippets.

@Gankra
Created February 1, 2023 19:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Gankra/165ea768fd8e6d1a7acd3fbc4db1c24c to your computer and use it in GitHub Desktop.
Save Gankra/165ea768fd8e6d1a7acd3fbc4db1c24c to your computer and use it in GitHub Desktop.
{
"dist_version": "0.0.2-prerelease01",
"releases": [
{
"app_name": "cargo-dist",
"app_version": "0.0.2",
"artifacts": [
{
"name": "cargo-dist-v0.0.2-x86_64-unknown-linux-gnu.tar.xz",
"kind": "executable-zip",
"target_triples": [
"x86_64-unknown-linux-gnu"
],
"assets": [
{
"name": "LICENSE-APACHE",
"path": "LICENSE-APACHE",
"kind": "license"
},
{
"name": "LICENSE-MIT",
"path": "LICENSE-MIT",
"kind": "license"
},
{
"name": "README.md",
"path": "README.md",
"kind": "readme"
},
{
"name": "RELEASES.md",
"path": "RELEASES.md",
"kind": "changelog"
},
{
"name": "cargo-dist",
"path": "cargo-dist",
"kind": "executable"
}
]
},
{
"name": "cargo-dist-v0.0.2-x86_64-apple-darwin.tar.xz",
"kind": "executable-zip",
"target_triples": [
"x86_64-apple-darwin"
],
"assets": [
{
"name": "LICENSE-APACHE",
"path": "LICENSE-APACHE",
"kind": "license"
},
{
"name": "LICENSE-MIT",
"path": "LICENSE-MIT",
"kind": "license"
},
{
"name": "README.md",
"path": "README.md",
"kind": "readme"
},
{
"name": "RELEASES.md",
"path": "RELEASES.md",
"kind": "changelog"
},
{
"name": "cargo-dist",
"path": "cargo-dist",
"kind": "executable"
}
]
},
{
"name": "cargo-dist-v0.0.2-x86_64-pc-windows-msvc.pdb",
"kind": "symbols",
"target_triples": [
"x86_64-pc-windows-msvc"
]
},
{
"name": "cargo-dist-v0.0.2-x86_64-pc-windows-msvc.zip",
"kind": "executable-zip",
"target_triples": [
"x86_64-pc-windows-msvc"
],
"assets": [
{
"name": "LICENSE-APACHE",
"path": "LICENSE-APACHE",
"kind": "license"
},
{
"name": "LICENSE-MIT",
"path": "LICENSE-MIT",
"kind": "license"
},
{
"name": "README.md",
"path": "README.md",
"kind": "readme"
},
{
"name": "RELEASES.md",
"path": "RELEASES.md",
"kind": "changelog"
},
{
"name": "cargo-dist",
"path": "cargo-dist.exe",
"kind": "executable",
"symbols_artifact": "cargo-dist-v0.0.2-x86_64-pc-windows-msvc.pdb"
}
]
},
{
"name": "installer.sh",
"kind": "installer",
"target_triples": [
"x86_64-unknown-linux-gnu",
"x86_64-apple-darwin"
],
"install_hint": "# WARNING: this installer is experimental\ncurl --proto '=https' --tlsv1.2 -L -sSf https://github.com/axodotdev/cargo-dist/releases/download/v0.0.2/installer.sh | sh",
"description": "Install prebuilt binaries via shell script"
},
{
"name": "installer.ps1",
"kind": "installer",
"target_triples": [
"x86_64-pc-windows-msvc"
],
"install_hint": "# WARNING: this installer is experimental\nirm 'https://github.com/axodotdev/cargo-dist/releases/download/v0.0.2/installer.ps1' | iex",
"description": "Install prebuilt binaries via powershell script"
}
],
"changelog_title": "Version 0.0.2 (2023-01-31)",
"changelog_body": "## Install\n\n### Install prebuilt binaries via shell script\n\n```shell\n# WARNING: this installer is experimental\ncurl --proto '=https' --tlsv1.2 -L -sSf https://github.com/axodotdev/cargo-dist/releases/download/v0.0.2/installer.sh | sh\n```\n\n### Install prebuilt binaries via powershell script\n\n```shell\n# WARNING: this installer is experimental\nirm 'https://github.com/axodotdev/cargo-dist/releases/download/v0.0.2/installer.ps1' | iex\n```\n\n## Download\n\n| target | kind | download |\n|--------|------|----------|\n| x86_64-unknown-linux-gnu | tarball | [cargo-dist-v0.0.2-x86_64-unknown-linux-gnu.tar.xz](https://github.com/axodotdev/cargo-dist/releases/download/v0.0.2/cargo-dist-v0.0.2-x86_64-unknown-linux-gnu.tar.xz) |\n| x86_64-apple-darwin | tarball | [cargo-dist-v0.0.2-x86_64-apple-darwin.tar.xz](https://github.com/axodotdev/cargo-dist/releases/download/v0.0.2/cargo-dist-v0.0.2-x86_64-apple-darwin.tar.xz) |\n| x86_64-pc-windows-msvc | tarball | [cargo-dist-v0.0.2-x86_64-pc-windows-msvc.zip](https://github.com/axodotdev/cargo-dist/releases/download/v0.0.2/cargo-dist-v0.0.2-x86_64-pc-windows-msvc.zip) |\n| x86_64-pc-windows-msvc | symbols | [cargo-dist-v0.0.2-x86_64-pc-windows-msvc.pdb](https://github.com/axodotdev/cargo-dist/releases/download/v0.0.2/cargo-dist-v0.0.2-x86_64-pc-windows-msvc.pdb) |\n\n## Release Notes\n\ncargo-dist:\r\n\r\n* Added proper detection of README/LICENSE/RELEASES/CHANGELOG files, which are now copied to the root of executable-zips.\r\n * We will defer to Cargo fields like \"readme\" and \"license-file\" if present\r\n * Otherwise we will search the root directory of the package and the root directory of the workspace (preferring results from the former)\r\n* Release note handling:\r\n * --ci=github will manually set the title and body of the Github Release\r\n * The body is a generated listing of installers/downloads\r\n * If your RELEASES/CHANGELOG parses with parse_changelog library we'll append the current release's notes to the body, and use the heading for the title\r\n * If we don't parse your RELEASES/CHANGELOG we will default to a title of \"v{VERSION}\"\r\n\r\ncargo-dist-schema:\r\n\r\n* Changed PathBufs to Strings since the paths may be from a different OS and Rust Paths are generally platform-specific. Seemed like a ticking timebomb for some weird corner case.\r\n* Added \"changelog\" as a valid AssetKind\r\n* Added \"changelog_title\" and \"changelog_body\" to Release\r\n * These are used to populate a Github Release\r\n* Added \"description\" to Artifact\r\n * Currently just used to describe some installers\r\n* Made Artifact::name Optional to futureproof\r\n * If None this indicates the artifact is purely informative and no file exists (i.e. \"you can install with cargo-binstall\")"
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment