diff --git a/README.md b/README.md index 232f5f6..cd99bbd 100644 --- a/README.md +++ b/README.md @@ -49,6 +49,9 @@ This project is part of the research activities of the [IBOIS lab](https://www.e * [IBOIS GitHub organization](https://github.com/ibois-epfl) * [IBOIS lab page](https://www.epfl.ch/labs/ibois/) +# For code maintainers +Follow the instructions in [RELEASE.md](RELEASE.md) to release a new version of the package. + ## Roadmap - [x] publish yak package + auto pipeline - [x] publish on tools website lab diff --git a/RELEASE.md b/RELEASE.md new file mode 100644 index 0000000..e08efe3 --- /dev/null +++ b/RELEASE.md @@ -0,0 +1,68 @@ +# Guide for releasing a new version of the package (for code maintainers) + +--- +## For Rhino plug-in +Script-sync is released as a `.yak` package via the Yak executable provided by McNeel. + +### Build the Rhino plug-in +Start by building the Rhino plug-in as described in the [contribution guideline](#contribution-guideline). OR, grab the latest version of the plug-in from the artifacts of the latest successful build on the latest e.g., [CI](https://github.com/ibois-epfl/script-sync/actions/runs/7349030258). + +### Create the `.yak` package +Create a folder with the following structure: +``` +script_sync-1.0.2-rh8-win/ +├───logo.png <--64x64px +├───ScriptSync.rhp +├─── +├───manifest.yml +└───misc/ + ├───LICENSE.md + └───README.md +``` +The `manifest.yml` file should look like this: +```yml +name: script-sync +version: 1.0.2 +authors: + - Andrea Settimi +description: Script-sync is a Rhino plug-in to run C# and Python (IronPython or CPython) in RhinoV8. +url: https://github.com/ibois-epfl/script-sync +keywords: + - Rhino + - Cs + - Python + - IronPython + - CPython + - VScode + - Utility +icon: logo.png +``` +Now, create the `.yak` package by running the following command in the terminal: +```terminal +yak build script_sync-1.0.2-rh8-win +``` +The `.yak` package is created in the folder `script_sync-1.0.2-rh8-win.yak`. + +### Publish the `.yak` package to the Yak server + +To upload the package to the Yak server, run the following command in the terminal: +```terminal +yak login +yak push script_sync-1.0.2-rh8-win.yak +``` +--- + +## For VSCode extension +Script-sync is released as a `.vsix` package via the VSCE executable provided by Microsoft. + +### Build the VSCode extension +Start by building the VSCode extension as described in the [contribution guideline](#contribution-guideline). OR, grab the latest version of the extension from the artifacts of the latest successful build on the latest e.g., [CI](https://github.com/ibois-epfl/script-sync/actions/runs/7349030262). + +### Publish the `.vsix` package to the VSCode marketplace +To upload the package to the VSCode marketplace, run the following command in the terminal in the folder containing the `.vsix` file: +```terminal +vsce login ibois-epfl +vsce publish +``` + +