From 1a9d6babb35cc5fffa0c272d7f753969e6935256 Mon Sep 17 00:00:00 2001 From: James Bradbury Date: Wed, 30 Mar 2022 10:47:04 +0100 Subject: [PATCH] [Release] 1.0.0-beta6 (#28) * Add missing methods to CLIBufferAdaptor * Update wrapper to take concrete Client type * Update BufStats client name * Untag FetchContent to track HEAD of deps * add fluid chroma object (#17) * add BufSTFT (#15) * Don't, I say don't, bake the architecture into the CMake * nightly releases (#16) * add action to generate nightlies based on dev branch * also run on enhance/cli for testing * correct indentation * correct indentation again * see whats going on at the release stage * change file glob (its not detecting anything) * try emulating flucoma-sc syntax which works... * try a different approach to archiving * upload the artefacts for the final build * give correct name for winbuild upload * try quotations * download artefacts to here, rather than in a zip * use specific tags for FetchDeclare * try compiling docs * use dev docs * run docs on macos-11 * setup python environment for docs * merge docs at end * see whats inside linux folder * fix paths for combining docs * zip correct location * caching * cleanup CLI CI * run on enhance/ci branch * fix indentation * simple tester dispatch * shorten name * build flucoma in workflow * use version 4 actions (#20) * [CI] Nested Folder Fix (#22) * upload release-packaging rather than internal dir * copy docs internally * try printing version string * try to get the version * get the right thing from outputs * use new docs api * run on ubuntu 20.04 * remove checkout@v2 from docs job * [CI] Reliable Releasing (#23) * use softprops release * use files not file * [CI] Fix upload permissions (#24) * test tarring up files before uploading them * see what is in linux * recursive ls * properly untar * try again * why wont you tar * untar to here * get paths right * update all paths * fix incorrect path * [Feature] Feature Curve Objects (#27) * add new cpp for feature objects * Fix slicer feature build --- .github/workflows/nightly.yaml | 2 +- .github/workflows/release.yaml | 129 ++++++++++++++++++ src/fluid-ampfeature/CMakeLists.txt | 19 +++ src/fluid-ampfeature/fluid-ampfeature.cpp | 19 +++ src/fluid-noveltyfeature/CMakeLists.txt | 19 +++ .../fluid-noveltyfeature.cpp | 19 +++ src/fluid-onsetfeature/CMakeLists.txt | 19 +++ src/fluid-onsetfeature/fluid-onsetfeature.cpp | 19 +++ 8 files changed, 244 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/release.yaml create mode 100644 src/fluid-ampfeature/CMakeLists.txt create mode 100644 src/fluid-ampfeature/fluid-ampfeature.cpp create mode 100644 src/fluid-noveltyfeature/CMakeLists.txt create mode 100644 src/fluid-noveltyfeature/fluid-noveltyfeature.cpp create mode 100644 src/fluid-onsetfeature/CMakeLists.txt create mode 100644 src/fluid-onsetfeature/fluid-onsetfeature.cpp diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index 4d9c946..70713af 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -1,9 +1,9 @@ name: Nightly Releases on: - workflow_dispatch: push: branches: [ dev, ci/** ] + workflow_dispatch: jobs: docs: diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml new file mode 100644 index 0000000..54145fa --- /dev/null +++ b/.github/workflows/release.yaml @@ -0,0 +1,129 @@ +name: Release +on: + workflow_dispatch: + inputs: + name: + description: 'Release name' + required: false + default: '' + +jobs: + # docs: + # runs-on: macos-11 + # steps: + # - uses: actions/checkout@v2 + # - uses: flucoma/actions/env@v4 + # - uses: flucoma/actions/pddocs@v4 + + # - uses: actions/upload-artifact@v2 + # with: + # name: docs + # path: build/pd_ref + + # macbuild: + # runs-on: macos-11 + # steps: + # - uses: actions/checkout@v2 + # - uses: flucoma/actions/env@v4 + # - uses: flucoma/actions/pd@v4 + + # - uses: actions/upload-artifact@v2 + # with: + # name: macbuild + # path: release-packaging + + # winbuild: + # runs-on: windows-latest + # steps: + # - uses: actions/checkout@v2 + # - uses: flucoma/actions/env@v4 + # - uses: flucoma/actions/pd@v4 + + # - uses: actions/upload-artifact@v2 + # with: + # name: winbuild + # path: "release-packaging" + + linuxbuild: + runs-on: ubuntu-18.04 + steps: + - uses: actions/checkout@v2 + - uses: flucoma/actions/env@v5 + - uses: flucoma/actions/cli@v4 + + - id: version + uses: flucoma/actions/getversion@v5 + - run: echo ${{ steps.version.outputs.version }} + # - uses: actions/upload-artifact@v2 + # with: + # name: linuxbuild + # path: release-packaging + + # release: + # runs-on: ubuntu-latest + # needs: [macbuild, winbuild, linuxbuild, docs] + + # steps: + # - uses: actions/download-artifact@v2 + # with: + # name: docs + # path: docs + + # #### LINUX #### + # - uses: actions/download-artifact@v2 + # with: + # name: linuxbuild + # path: linux + + # - name: copy docs to linux + # run: cp -r docs linux/FluidCorpusManipulation + + # - name: compress linux + # run: zip -r ../FluCoMa-PD-Linux-nightly.zip . + # working-directory: linux + + # #### MAC #### + # - uses: actions/download-artifact@v2 + # with: + # name: macbuild + # path: mac + + # - name: copy docs to mac + # run: cp -r docs mac/FluidCorpusManipulation + + # - name: compress mac + # run: zip -r ../FluCoMa-PD-Mac-nightly.zip . + # working-directory: mac + + # #### WINDOWS #### + # - uses: actions/download-artifact@v2 + # with: + # name: winbuild + # path: win + + # - name: copy docs to windows + # run: cp -r docs win/FluidCorpusManipulation + + # - name: compress windows + # run: zip -r ../FluCoMa-PD-Windows-nightly.zip . + # working-directory: win + + # #### UPLOAD RELEASE #### + # - uses: dev-drprasad/delete-tag-and-release@v0.2.0 + # with: + # delete_release: true + # tag_name: nightly + # env: + # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + # - name: package and upload + # uses: svenstaro/upload-release-action@v2 + # with: + # release_name: FluCoMa PureData Nightly Build + # prerelease: true + # body: "This is a nightly build of the FluCoMa PureData package. As such, be warned there may be bugs or other unexpected behaviour. The build hash is ${{ github.sha }}" + # repo_token: ${{ secrets.GITHUB_TOKEN }} + # file: FluCoMa-PD-*.zip + # file_glob: true + # tag: nightly + # overwrite: true \ No newline at end of file diff --git a/src/fluid-ampfeature/CMakeLists.txt b/src/fluid-ampfeature/CMakeLists.txt new file mode 100644 index 0000000..06a5e8e --- /dev/null +++ b/src/fluid-ampfeature/CMakeLists.txt @@ -0,0 +1,19 @@ +# Part of the Fluid Corpus Manipulation Project (http://www.flucoma.org/) +# Copyright 2017-2019 University of Huddersfield. +# Licensed under the BSD-3 License. +# See license.md file in the project root for full license information. +# This project has received funding from the European Research Council (ERC) +# under the European Union’s Horizon 2020 research and innovation programme +# (grant agreement No 725899). + +cmake_minimum_required(VERSION 3.11) +get_filename_component(PROG ${CMAKE_CURRENT_LIST_DIR} NAME_WE) +message("Configuring ${PROG}") +set(FILENAME ${PROG}.cpp) + +add_executable( + ${PROG} + ${FILENAME} +) + +include(${CMAKE_CURRENT_LIST_DIR}/../../scripts/target_post.cmake) diff --git a/src/fluid-ampfeature/fluid-ampfeature.cpp b/src/fluid-ampfeature/fluid-ampfeature.cpp new file mode 100644 index 0000000..2dac15f --- /dev/null +++ b/src/fluid-ampfeature/fluid-ampfeature.cpp @@ -0,0 +1,19 @@ + +/* +Part of the Fluid Corpus Manipulation Project (http://www.flucoma.org/) +Copyright 2017-2019 University of Huddersfield. +Licensed under the BSD-3 License. +See license.md file in the project root for full license information. +This project has received funding from the European Research Council (ERC) +under the European Union’s Horizon 2020 research and innovation programme +(grant agreement No 725899). +*/ + +#include +#include + +int main(int argc, const char* argv[]) +{ + using namespace fluid::client; + return CLIWrapper::run(argc, argv); +} diff --git a/src/fluid-noveltyfeature/CMakeLists.txt b/src/fluid-noveltyfeature/CMakeLists.txt new file mode 100644 index 0000000..06a5e8e --- /dev/null +++ b/src/fluid-noveltyfeature/CMakeLists.txt @@ -0,0 +1,19 @@ +# Part of the Fluid Corpus Manipulation Project (http://www.flucoma.org/) +# Copyright 2017-2019 University of Huddersfield. +# Licensed under the BSD-3 License. +# See license.md file in the project root for full license information. +# This project has received funding from the European Research Council (ERC) +# under the European Union’s Horizon 2020 research and innovation programme +# (grant agreement No 725899). + +cmake_minimum_required(VERSION 3.11) +get_filename_component(PROG ${CMAKE_CURRENT_LIST_DIR} NAME_WE) +message("Configuring ${PROG}") +set(FILENAME ${PROG}.cpp) + +add_executable( + ${PROG} + ${FILENAME} +) + +include(${CMAKE_CURRENT_LIST_DIR}/../../scripts/target_post.cmake) diff --git a/src/fluid-noveltyfeature/fluid-noveltyfeature.cpp b/src/fluid-noveltyfeature/fluid-noveltyfeature.cpp new file mode 100644 index 0000000..a0e4b41 --- /dev/null +++ b/src/fluid-noveltyfeature/fluid-noveltyfeature.cpp @@ -0,0 +1,19 @@ + +/* +Part of the Fluid Corpus Manipulation Project (http://www.flucoma.org/) +Copyright 2017-2019 University of Huddersfield. +Licensed under the BSD-3 License. +See license.md file in the project root for full license information. +This project has received funding from the European Research Council (ERC) +under the European Union’s Horizon 2020 research and innovation programme +(grant agreement No 725899). +*/ + +#include +#include + +int main(int argc, const char* argv[]) +{ + using namespace fluid::client; + return CLIWrapper::run(argc, argv); +} diff --git a/src/fluid-onsetfeature/CMakeLists.txt b/src/fluid-onsetfeature/CMakeLists.txt new file mode 100644 index 0000000..06a5e8e --- /dev/null +++ b/src/fluid-onsetfeature/CMakeLists.txt @@ -0,0 +1,19 @@ +# Part of the Fluid Corpus Manipulation Project (http://www.flucoma.org/) +# Copyright 2017-2019 University of Huddersfield. +# Licensed under the BSD-3 License. +# See license.md file in the project root for full license information. +# This project has received funding from the European Research Council (ERC) +# under the European Union’s Horizon 2020 research and innovation programme +# (grant agreement No 725899). + +cmake_minimum_required(VERSION 3.11) +get_filename_component(PROG ${CMAKE_CURRENT_LIST_DIR} NAME_WE) +message("Configuring ${PROG}") +set(FILENAME ${PROG}.cpp) + +add_executable( + ${PROG} + ${FILENAME} +) + +include(${CMAKE_CURRENT_LIST_DIR}/../../scripts/target_post.cmake) diff --git a/src/fluid-onsetfeature/fluid-onsetfeature.cpp b/src/fluid-onsetfeature/fluid-onsetfeature.cpp new file mode 100644 index 0000000..e0e6e15 --- /dev/null +++ b/src/fluid-onsetfeature/fluid-onsetfeature.cpp @@ -0,0 +1,19 @@ + +/* +Part of the Fluid Corpus Manipulation Project (http://www.flucoma.org/) +Copyright 2017-2019 University of Huddersfield. +Licensed under the BSD-3 License. +See license.md file in the project root for full license information. +This project has received funding from the European Research Council (ERC) +under the European Union’s Horizon 2020 research and innovation programme +(grant agreement No 725899). +*/ + +#include +#include + +int main(int argc, const char* argv[]) +{ + using namespace fluid::client; + return CLIWrapper::run(argc, argv); +}