From c10cd07adcda13017cbb4e86d9e0188e7e1d7c62 Mon Sep 17 00:00:00 2001 From: Thomas Braun Date: Mon, 14 Oct 2024 13:44:12 +0200 Subject: [PATCH 1/3] Installation: Bring back the release package This reverts commit 96460f9fc (Don't deploy the release package anymore, 2023-07-06). As it turns out for some use cases the release package is quite useful, so let's bring it back. --- .github/workflows/build-pr.yml | 3 ++- Packages/doc/developers.rst | 23 +++++++++++++++++++++ tools/upload-github-release-asset-helper.sh | 2 +- tools/upload-github-release-asset.sh | 11 +++++++--- 4 files changed, 34 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build-pr.yml b/.github/workflows/build-pr.yml index dab1983c42..58d5e6829a 100644 --- a/.github/workflows/build-pr.yml +++ b/.github/workflows/build-pr.yml @@ -83,7 +83,7 @@ jobs: fetch-depth: 0 # load all commits - name: Initial repo config run: tools/initial-repo-config.sh - - name: Create installer + - name: Create release package and installer run: tools/create-installer.sh ${{ fromJSON('["", "dev"]')[ matrix.kind == 'dev' ] }} - name: Sign installer run: tools/sign-installer.sh -p '${{ secrets.GHA_MIES_CERTIFICATE_PIN }}' @@ -93,6 +93,7 @@ jobs: with: name: BuildInstaller-${{ matrix.kind }}-assets path: | + *.zip tools/installer/MIES-*.exe if-no-files-found: error diff --git a/Packages/doc/developers.rst b/Packages/doc/developers.rst index 46af49f9a7..004fef942c 100644 --- a/Packages/doc/developers.rst +++ b/Packages/doc/developers.rst @@ -77,12 +77,35 @@ Cutting a new release - Create a new release on github and check that the Github Actions job correctly uploads the artifacts +Creating a release package manually +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- Open a git bash terminal by choosing Actions->"Open in terminal" in + SourceTree +- Checkout the release branch ``git checkout release/$myVersion`` +- If none exists create one with ``git checkout -b release/$myVersion`` +- Change to the ``tools`` directory in the worktree root folder +- Execute ``./create-release.sh`` +- The release package including the version information is then + available as zip file + Continuous integration server ----------------------------- Our `CI server `__, called Github Actions, provides the following services for MIES: +Automatic release package building +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- If a commit is added to the ``main`` or any ``release/*`` branch a CI + pipeline is started +- In this pipeline are some basic tests executed and a new installer is build. + The installer is uploaded to the corresponging release (``latest`` for + ``main``). +- If the commit is added to the ``main`` branch the CI will also create a new + version of the documentation and deploy it to Github Pages. + Compilation testing ~~~~~~~~~~~~~~~~~~~ diff --git a/tools/upload-github-release-asset-helper.sh b/tools/upload-github-release-asset-helper.sh index 7cf0402de8..866b0f46be 100755 --- a/tools/upload-github-release-asset-helper.sh +++ b/tools/upload-github-release-asset-helper.sh @@ -136,7 +136,7 @@ release_description=$(cat < Date: Mon, 14 Oct 2024 13:46:46 +0200 Subject: [PATCH 2/3] tools/upload-github-release-asset-helper.sh: Mention that the release package is windows only --- tools/upload-github-release-asset-helper.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/upload-github-release-asset-helper.sh b/tools/upload-github-release-asset-helper.sh index 866b0f46be..36fb863ba5 100755 --- a/tools/upload-github-release-asset-helper.sh +++ b/tools/upload-github-release-asset-helper.sh @@ -136,7 +136,7 @@ release_description=$(cat < Date: Mon, 14 Oct 2024 14:11:45 +0200 Subject: [PATCH 3/3] Documentation: Revise manual instructions We now explain how to get the source code, mention that we also have a release package and list the JSON configuration folder locations. --- Packages/doc/developers.rst | 12 ++++++++---- Packages/doc/installation.rst | 26 +++++++++++++++++++------- 2 files changed, 27 insertions(+), 11 deletions(-) diff --git a/Packages/doc/developers.rst b/Packages/doc/developers.rst index 004fef942c..45c73d06fd 100644 --- a/Packages/doc/developers.rst +++ b/Packages/doc/developers.rst @@ -1,15 +1,19 @@ Developer ========= +.. _getting MIES: + Getting MIES ------------ -Latest development version from main branch -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Cloning the MIES repository +~~~~~~~~~~~~~~~~~~~~~~~~~~~ - ``git clone --recurse-submodules https://github.com/AllenInstitute/MIES`` -- ``./tools/initial-repo-config.sh`` (Requires a Git Bash shell, named - Git terminal in SourceTree) +- ``./tools/initial-repo-config.sh`` (Requires a Git Bash/Terminal) + +If you only want to **use** MIES and not **develop** it, you can also get the source +code via the `release package `__ as zip file. Building the documentation ~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/Packages/doc/installation.rst b/Packages/doc/installation.rst index 7f266dd9eb..4cc05153bd 100644 --- a/Packages/doc/installation.rst +++ b/Packages/doc/installation.rst @@ -151,9 +151,9 @@ install via the Installer package. Windows (with hardware support) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Install the `Visual C++ Redistributable package` `__. - +- Install the `Visual C++ Redistributable package `__ - Quit Igor Pro +- Get the MIES source code, see :ref:`getting MIES` - Create the following shortcuts in ``C:\Users\$username\Documents\WaveMetrics\Igor Pro 9 User Files`` - In ``User Procedures`` a shortcut pointing to @@ -175,9 +175,9 @@ Windows (without hardware) In case you don't have the hardware connected/available which some XOPs require, you can also install MIES without any hardware related XOPs present. -Install the `Visual C++ Redistributable package` `__. - +- Install the `Visual C++ Redistributable package `__ - Quit Igor Pro +- Get the MIES source code, see :ref:`getting MIES` - Create the following shortcuts in ``C:\Users\$username\Documents\WaveMetrics\Igor Pro 9 User Files`` @@ -206,9 +206,7 @@ MacOSX (without hardware) Analysis support only. Data acquisition and NWBv2 export are not supported on MacOSx. - Quit Igor Pro -- Get the MIES source code, see - `here `__ - for instructions. +- Get the MIES source code, see :ref:`getting MIES` - Create the following symlinks in ``/Users/$username/Documents/WaveMetrics/Igor Pro 9 User Files`` @@ -226,3 +224,17 @@ Analysis support only. Data acquisition and NWBv2 export are not supported on Ma - In ``Igor Help Files`` a shortcut pointing to HelpFiles-IP9 - Start Igor Pro + +JSON Configuration folders +~~~~~~~~~~~~~~~~~~~~~~~~~~ + +MIES supports JSON files for loading and storing panel configurations. Although it is +possible to load files from arbitrary paths manually, one can also put the +files into one of the following folders + +- ``Packages/Settings`` in the installation location + +- ``C:/ProgramData/AllenInstitute/MIES/Settings`` + +to execute all of them via :menuselection:`MIES Panels --> Automation --> Load standard configuration` +or by pressing :kbd:`CONTROL-1`.