From 1def23f7be2619bb5c6bb74926ddcf7d38148ae4 Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Mon, 2 Jan 2023 18:23:12 +0100 Subject: [PATCH 01/11] Update pom for next version --- core/pom.xml | 2 +- driver/pom.xml | 2 +- pom.xml | 2 +- web-ui/pom.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/pom.xml b/core/pom.xml index 1fa3c4729..2d17173bd 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -13,7 +13,7 @@ studio-parent studio - 1.0.0 + 1.0.1-SNAPSHOT studio-core diff --git a/driver/pom.xml b/driver/pom.xml index ac305cf43..b840ccf7d 100644 --- a/driver/pom.xml +++ b/driver/pom.xml @@ -11,7 +11,7 @@ studio-parent studio - 1.0.0 + 1.0.1-SNAPSHOT 4.0.0 diff --git a/pom.xml b/pom.xml index f01a20234..2fab8b3a0 100644 --- a/pom.xml +++ b/pom.xml @@ -12,7 +12,7 @@ studio studio-parent - 1.0.0 + 1.0.1-SNAPSHOT pom diff --git a/web-ui/pom.xml b/web-ui/pom.xml index c0125369c..9ceb3205b 100644 --- a/web-ui/pom.xml +++ b/web-ui/pom.xml @@ -10,7 +10,7 @@ studio-parent studio - 1.0.0 + 1.0.1-SNAPSHOT 4.0.0 From 293bd8d4fd6ad94a53ae96c475865dedf86d2eef Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Tue, 3 Jan 2023 23:06:37 +0100 Subject: [PATCH 02/11] Fix logging to file --- web-ui/src/main/resources/application.properties | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/web-ui/src/main/resources/application.properties b/web-ui/src/main/resources/application.properties index 117f8b9e9..aeded2385 100644 --- a/web-ui/src/main/resources/application.properties +++ b/web-ui/src/main/resources/application.properties @@ -12,6 +12,16 @@ studio.library=${studio.home}/library/ studio.tmpdir=${studio.home}/tmp/ studio.mock.device=${studio.home}/device/ +# Log config +quarkus.log.file.enable=true +quarkus.log.file.level=INFO +quarkus.log.file.path=${studio.home}/log/studio.log +quarkus.log.file.format=%d{HH:mm:ss} %-5p [%c{2.}]] (%t) %s%e%n +quarkus.log.file.rotation.rotate-on-boot=true +quarkus.log.file.rotation.max-backup-index=10 +#quarkus.log.file.rotation.max-file-size=20M +quarkus.log.file.rotation.file-suffix=.yyyy-MM-dd + # HTTP config quarkus.http.host=${studio.host} quarkus.http.port=${studio.port} @@ -45,5 +55,6 @@ quarkus.vertx.prefer-native-transport=true quarkus.test.native-image-profile=test # quarkus.native.headless=false quarkus.native.enable-reports=false -quarkus.native.resources.includes=log4j2.xml,blank.mp3,javazoom/jl/decoder/* +# log4j2.xml +quarkus.native.resources.includes=blank.mp3,javazoom/jl/decoder/* # quarkus.native.additional-build-args=--trace-class-initialization=java.awt.Font From e109dbfd4f4be03bed6d9374c04bda4708c26607 Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Tue, 3 Jan 2023 21:32:19 +0100 Subject: [PATCH 03/11] Add release action and better compatibility (downgrade Ubuntu and upgrade MacOS) --- .github/workflows/native.yml | 65 ++++++++++++++++++++++++++---------- 1 file changed, 47 insertions(+), 18 deletions(-) diff --git a/.github/workflows/native.yml b/.github/workflows/native.yml index 8a0d9c6aa..2efc6f695 100644 --- a/.github/workflows/native.yml +++ b/.github/workflows/native.yml @@ -37,6 +37,8 @@ jobs: build-jar: needs: build-front runs-on: ubuntu-latest + env: + zip-name: studio-${{github.ref_name}}-Java.zip steps: - uses: actions/checkout@v3 @@ -56,19 +58,34 @@ jobs: - name: Build Maven Jar run: mvn install -B -Pide - - name: Copy start scripts + - name: Copy startup scripts run: cp web-ui/src/main/scripts/java/* web-ui/target/quarkus-app/ - - name: Upload Quarkus app + - name: Create zip + uses: thedoctor0/zip-release@main + with: + filename: ${{env.zip-name}} + directory: web-ui/target/quarkus-app + + - name: Upload artifact uses: actions/upload-artifact@v3 with: - name: studio-app - path: web-ui/target/quarkus-app + name: ${{env.zip-name}} + path: web-ui/target/quarkus-app/${{env.zip-name}} + + - name: Upload release artifact + uses: softprops/action-gh-release@v1 + if: startsWith(github.ref, 'refs/tags/') + with: + generate_release_notes: true + files: web-ui/target/quarkus-app/${{env.zip-name}} build-native: needs: build-front - runs-on: ${{ matrix.os }} + runs-on: ${{ matrix.runner }} continue-on-error: true + env: + zip-name: studio-${{github.ref_name}}-${{matrix.os}}.zip strategy: fail-fast: false matrix: @@ -77,11 +94,15 @@ jobs: # Mandrel (mac): no support # Upx support (win): only<22, see https://github.com/oracle/graal/issues/4340 # AWT support (win & mac): only Liberica>22 see https://bell-sw.com/announcements/2022/08/05/liberica-native-image-kit-22-2-0-and-21-3-3-builds-are-out/#create-a-native-image-for-swingset2-app-linux-and-macos - - os: ubuntu-latest + # Runner: no latest for better compatibility + - runner: ubuntu-20.04 + os: Linux jdk-suffix: linux-amd64.tar.gz - - os: macOS-latest + - runner: macOS-12 + os: MacOS jdk-suffix: macos-amd64.tar.gz - - os: windows-latest + - runner: windows-latest + os: Windows jdk-suffix: windows-amd64.zip steps: @@ -124,14 +145,14 @@ jobs: name: studio-front path: web-ui/javascript/build/ - - name: Build native (*nix) + - name: (*nix) Build native run: | mvn verify -B -Pnative -Pide -DskipTests echo "artifact_name=$(ls web-ui/target/*runner)" >> $GITHUB_ENV cp web-ui/src/main/scripts/native/*.sh web-ui/target/ if: ${{ runner.os != 'Windows' }} - - name: Build native (win) + - name: (Windows) Build native run: | mvn verify -B -Pnative -Pide -DskipTests "artifact_name=$((ls web-ui/target/*.exe).FullName)" >> $env:GITHUB_ENV @@ -147,16 +168,18 @@ jobs: strip: false if: ${{ runner.os != 'Windows' }} + - name: Create zip + uses: thedoctor0/zip-release@main + with: + filename: ${{env.zip-name}} + directory: web-ui/target + path: '*runner *.exe *.dll *.sh *.bat' + - name: Upload artifact uses: actions/upload-artifact@v3 with: - name: studio-1.0-${{runner.os}} - path: | - web-ui/target/*runner - web-ui/target/*.exe - web-ui/target/*.dll - web-ui/target/*.sh - web-ui/target/*.bat + name: ${{env.zip-name}} + path: web-ui/target/${{env.zip-name}} - name: Test native run: mvn test-compile failsafe:integration-test -B -Pnative -Pide -DskipITs=false @@ -165,5 +188,11 @@ jobs: uses: mikepenz/action-junit-report@v3 with: report_paths: '**/failsafe-reports/TEST-*.xml' - check_name: IT (${{ matrix.os }}) + check_name: IT (${{ matrix.runner }}) if: always() + + - name: Upload release artifact + uses: softprops/action-gh-release@v1 + if: startsWith(github.ref, 'refs/tags/') + with: + files: web-ui/target/${{env.zip-name}} From 6c331d77e8bae96244d7f195e2d07e492424f48b Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Sat, 7 Jan 2023 17:41:32 +0100 Subject: [PATCH 04/11] Rename Sonar GitHub workflow --- .github/workflows/{maven.yml => sonarcloud.yml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{maven.yml => sonarcloud.yml} (100%) diff --git a/.github/workflows/maven.yml b/.github/workflows/sonarcloud.yml similarity index 100% rename from .github/workflows/maven.yml rename to .github/workflows/sonarcloud.yml From 05db6747418a50995fe2219ae8da8481e01b8eae Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Sat, 7 Jan 2023 18:32:19 +0100 Subject: [PATCH 05/11] Fix Windows start script --- web-ui/src/main/scripts/native/studio.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-ui/src/main/scripts/native/studio.bat b/web-ui/src/main/scripts/native/studio.bat index 2e0447c6d..708033def 100644 --- a/web-ui/src/main/scripts/native/studio.bat +++ b/web-ui/src/main/scripts/native/studio.bat @@ -6,4 +6,4 @@ set CWD=%~dp0 set STUDIO_HOME=%CWD% :: batch args as command args -%CWD%\studio*runner.exe %* +for %%i in (%CWD%\studio*runner.exe) do "%%~i" %* From bb03bffaf6c7c57e5282cde81703b2c50235281b Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Sat, 7 Jan 2023 20:14:32 +0000 Subject: [PATCH 06/11] Fix active USB polling --- .../driver/usb/LibUsbActivePollingWorker.java | 4 +- .../driver/usb/LibUsbDetectionHelper.java | 37 +++++++++---------- 2 files changed, 20 insertions(+), 21 deletions(-) diff --git a/driver/src/main/java/studio/driver/usb/LibUsbActivePollingWorker.java b/driver/src/main/java/studio/driver/usb/LibUsbActivePollingWorker.java index 41a9c8555..007af532e 100644 --- a/driver/src/main/java/studio/driver/usb/LibUsbActivePollingWorker.java +++ b/driver/src/main/java/studio/driver/usb/LibUsbActivePollingWorker.java @@ -3,7 +3,6 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ - package studio.driver.usb; import java.util.concurrent.CompletableFuture; @@ -42,6 +41,8 @@ public LibUsbActivePollingWorker(Context context, UsbDeviceVersion deviceVersion @Override public void run() { + LOGGER.debug("Active polling for USB device"); + // List available devices DeviceList devices = new DeviceList(); int result = LibUsb.getDeviceList(context, devices); @@ -78,5 +79,4 @@ public void run() { LibUsb.freeDeviceList(devices, false); // Do NOT unref devices } } - } diff --git a/driver/src/main/java/studio/driver/usb/LibUsbDetectionHelper.java b/driver/src/main/java/studio/driver/usb/LibUsbDetectionHelper.java index 6cd184a40..2f5158965 100644 --- a/driver/src/main/java/studio/driver/usb/LibUsbDetectionHelper.java +++ b/driver/src/main/java/studio/driver/usb/LibUsbDetectionHelper.java @@ -3,13 +3,12 @@ * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at https://mozilla.org/MPL/2.0/. */ - package studio.driver.usb; import java.util.concurrent.CompletableFuture; import java.util.concurrent.Executors; -import java.util.concurrent.Future; import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; import org.apache.logging.log4j.LogManager; @@ -28,11 +27,10 @@ public class LibUsbDetectionHelper { private static final Logger LOGGER = LogManager.getLogger(LibUsbDetectionHelper.class); - private static final long POLL_DELAY = 5000L; + private static final long POLL_DELAY = 5L; // Scheduled task to actively poll device when hotplug is not supported private static ScheduledExecutorService scheduledExecutor = null; - private static Future activePollingTask = null; private LibUsbDetectionHelper() { throw new IllegalArgumentException("Utility class"); @@ -60,10 +58,12 @@ public static void initializeLibUsb(UsbDeviceVersion deviceVersion, DevicePlugge // Uncomment for trace : LibUsb.setOption(context, LibUsb.OPTION_LOG_LEVEL, LibUsb.LOG_LEVEL_DEBUG) // Worker thread to handle libusb async events - LibUsbAsyncEventsWorker asyncEventHandlerWorker = new LibUsbAsyncEventsWorker(context); + var asyncEvtWorker = new LibUsbAsyncEventsWorker(context); // Start worker thread to handle libusb async events - asyncEventHandlerWorker.start(); - + asyncEvtWorker.start(); + // Future when polling + ScheduledFuture pollTask = null; + // Hotplug detection if (LibUsb.hasCapability(LibUsb.CAP_HAS_HOTPLUG)) { LOGGER.info("Hotplug is supported. Registering hotplug callback(s)..."); @@ -78,35 +78,35 @@ public static void initializeLibUsb(UsbDeviceVersion deviceVersion, DevicePlugge LOGGER.info("Hotplug is NOT supported. Scheduling task to actively poll USB device..."); if (scheduledExecutor == null) { scheduledExecutor = Executors.newSingleThreadScheduledExecutor(); - activePollingTask = scheduledExecutor.scheduleAtFixedRate( - new LibUsbActivePollingWorker(context, deviceVersion, pluggedlistener, unpluggedlistener), 0, - POLL_DELAY, TimeUnit.MILLISECONDS); } + Runnable r = new LibUsbActivePollingWorker(context, deviceVersion, pluggedlistener, unpluggedlistener); + pollTask = scheduledExecutor.scheduleAtFixedRate(r, 0, POLL_DELAY, TimeUnit.SECONDS); } // Add shutdown hook - registerHook(context, asyncEventHandlerWorker); + registerHook(context, asyncEvtWorker, pollTask); } /** * De-initialize libusb context and stop worker threads when JVM exits * - * @param asyncEventHandlerWorker + * @param asyncEvtWorker + * @param pollTask */ - private static void registerHook(Context context, LibUsbAsyncEventsWorker asyncEventHandlerWorker) { + private static void registerHook(Context context, LibUsbAsyncEventsWorker asyncEvtWorker, ScheduledFuture pollTask) { Runtime.getRuntime().addShutdownHook(new Thread(() -> { - if (activePollingTask != null && !activePollingTask.isDone()) { + if (pollTask != null && !pollTask.isDone()) { LOGGER.info("Stopping active polling worker task"); - activePollingTask.cancel(true); + pollTask.cancel(true); } if (scheduledExecutor != null) { LOGGER.info("Shutting down active polling executor"); scheduledExecutor.shutdown(); } - if (asyncEventHandlerWorker != null) { + if (asyncEvtWorker != null) { LOGGER.info("Stopping async event handling worker thread"); - asyncEventHandlerWorker.abort(); + asyncEvtWorker.abort(); try { - asyncEventHandlerWorker.join(); + asyncEvtWorker.join(); } catch (InterruptedException e) { LOGGER.error("Failed to stop async event handling worker thread", e); Thread.currentThread().interrupt(); @@ -132,5 +132,4 @@ private static void registerCallback(Context context, UsbDeviceFirmware df, Devi return 0; // Do not deregister the callback }, null, null); } - } From ab7ab5926556e6fed4584a03ff576a2eaf18bce4 Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Sat, 7 Jan 2023 23:01:22 +0100 Subject: [PATCH 07/11] Remove log4j2.xml --- .../src/main/resources/application.properties | 5 +- web-ui/src/main/resources/log4j2.xml | 47 ------------------- 2 files changed, 2 insertions(+), 50 deletions(-) delete mode 100644 web-ui/src/main/resources/log4j2.xml diff --git a/web-ui/src/main/resources/application.properties b/web-ui/src/main/resources/application.properties index aeded2385..5bc4653a0 100644 --- a/web-ui/src/main/resources/application.properties +++ b/web-ui/src/main/resources/application.properties @@ -17,8 +17,8 @@ quarkus.log.file.enable=true quarkus.log.file.level=INFO quarkus.log.file.path=${studio.home}/log/studio.log quarkus.log.file.format=%d{HH:mm:ss} %-5p [%c{2.}]] (%t) %s%e%n -quarkus.log.file.rotation.rotate-on-boot=true -quarkus.log.file.rotation.max-backup-index=10 +quarkus.log.file.rotation.rotate-on-boot=false +#quarkus.log.file.rotation.max-backup-index=10 #quarkus.log.file.rotation.max-file-size=20M quarkus.log.file.rotation.file-suffix=.yyyy-MM-dd @@ -55,6 +55,5 @@ quarkus.vertx.prefer-native-transport=true quarkus.test.native-image-profile=test # quarkus.native.headless=false quarkus.native.enable-reports=false -# log4j2.xml quarkus.native.resources.includes=blank.mp3,javazoom/jl/decoder/* # quarkus.native.additional-build-args=--trace-class-initialization=java.awt.Font diff --git a/web-ui/src/main/resources/log4j2.xml b/web-ui/src/main/resources/log4j2.xml deleted file mode 100644 index c315ae803..000000000 --- a/web-ui/src/main/resources/log4j2.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From 071b91e2048ea1128e082abea53acb35c61f8c4e Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Sun, 8 Jan 2023 09:57:00 +0000 Subject: [PATCH 08/11] Update Readme --- README.md | 33 +++++++++++---------------------- README_fr.md | 33 +++++++++++---------------------- 2 files changed, 22 insertions(+), 44 deletions(-) diff --git a/README.md b/README.md index 9e8ff3a3c..1ebefdf10 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ -[![Build](https://github.com/kairoh/studio/actions/workflows/maven.yml/badge.svg)](https://github.com/kairoh/studio/actions/workflows/maven.yml) [![Release](https://img.shields.io/github/v/release/kairoh/studio)](https://github.com/kairoh/studio/releases/latest) +[![Sonar Build](https://github.com/kairoh/studio/actions/workflows/sonarcloud.yml/badge.svg)](https://github.com/kairoh/studio/actions/workflows/sonarcloud.yml) +[![Native Build](https://github.com/kairoh/studio/actions/workflows/native.yml/badge.svg)](https://github.com/kairoh/studio/actions/workflows/native.yml) [![Quality Scale](https://sonarcloud.io/api/project_badges/measure?project=kairoh_studio&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=kairoh_studio) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=kairoh_studio&metric=reliability_rating)](https://sonarcloud.io/dashboard?id=kairoh_studio) @@ -15,7 +16,6 @@ STUdio - Story Teller Unleashed Create and transfer your own story packs to and from the Lunii[^1] story teller device. - DISCLAIMER ---------- @@ -26,30 +26,22 @@ This software relies on reverse engineering research, which is limited to gather [^1]: Lunii and Luniistore are registered trademarks of Lunii SAS. This work is in no way affiliated with Lunii SAS. - USAGE ----- ### Choose your edition -"Native edition" is faster and doesn't need java to be installed. +:rocket: "Native edition" is faster and doesn't need java to be installed. Few architecture are available (depending on available Github Host Runners), but you may [build your own](#build-native-edition). -| CPU/OS | Linux | Windows | MacOS | -| :---: | :---: | :---: | :---: | -| x86_64 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| x86 | | | | -| arm | | | | -| aarch64 | | | | - -"Java edition" needs java and supports almost any architecture (restricted by [usb4java](http://usb4java.org) ) +:hotsprings: "Java edition" needs java and supports almost any architecture (restricted by [usb4java](http://usb4java.org) ) -| CPU/OS | Linux | Windows | MacOS | -| :---: | :---: | :---: | :---: | -| x86_64 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| x86 | :heavy_check_mark: | :heavy_check_mark: | | -| arm | :heavy_check_mark: | | | -| aarch64 | :heavy_check_mark: | | :heavy_check_mark: | +| CPU/OS | Linux | Windows | MacOS | +| :---: | :---: | :---: | :---: | +| x86_64 | :hotsprings: :rocket: | :hotsprings: :rocket: | :hotsprings: :rocket: | +| x86 | :hotsprings: | :hotsprings: | | +| arm | :hotsprings: | | | +| aarch64 | :hotsprings: | | :hotsprings: | ### Prerequisite @@ -58,7 +50,7 @@ Few architecture are available (depending on available Github Host Runners), but ### Installation -* **Download** [the latest release](../releases/latest) (or [build the application](#for-developers)). +* **Download** [the latest release](https://github.com/kairoh/studio/releases/latest) (or [build the application](#for-developers)). * **Unzip** the distribution archive * **Run the launcher script**: either `studio.sh` or `studio.bat` according to your platform. You may need to make them executable first. * If it does not open automatically, **open a browser** and type the url `http://localhost:8080` to load the web UI. @@ -151,7 +143,6 @@ MP3 and OGG files are expected to be sampled at 44100Hz. More information, including an illustrated usage guide courtesy of [@appenzellois](https://github.com/appenzellois), available [in the project wiki](https://github.com/marian-m12l/studio/wiki/Documentation). - FOR DEVELOPERS -------------- @@ -199,7 +190,6 @@ If you liked STUdio, you will also like: * [Moiki](https://moiki.fr/) is an online tool to create interactive stories that can be exported for STUdio (courtesy of [@kaelhem](https://github.com/kaelhem)) - LICENSE ------- @@ -208,4 +198,3 @@ This project is licensed under the terms of the **Mozilla Public License 2.0**. The `jvorbis` library, as well as the `VorbisEncoder` class are licensed by the Xiph.org Foundation. The terms of the license can be found in the [LICENSE-jvorbis.md](LICENSE-jvorbis.md) file. The `com.jhlabs.image` package is licensed by Jerry Huxtable under the terms of the Apache License 2.0. The terms of the license can be found in the [LICENSE-jhlabs.md](LICENSE-jhlabs.md) file. - diff --git a/README_fr.md b/README_fr.md index c78d51a42..9da9a49e7 100644 --- a/README_fr.md +++ b/README_fr.md @@ -1,5 +1,6 @@ -[![Build](https://github.com/kairoh/studio/actions/workflows/maven.yml/badge.svg)](https://github.com/kairoh/studio/actions/workflows/maven.yml) [![Release](https://img.shields.io/github/v/release/kairoh/studio)](https://github.com/kairoh/studio/releases/latest) +[![Sonar Build](https://github.com/kairoh/studio/actions/workflows/sonarcloud.yml/badge.svg)](https://github.com/kairoh/studio/actions/workflows/sonarcloud.yml) +[![Native Build](https://github.com/kairoh/studio/actions/workflows/native.yml/badge.svg)](https://github.com/kairoh/studio/actions/workflows/native.yml) [![Quality Scale](https://sonarcloud.io/api/project_badges/measure?project=kairoh_studio&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=kairoh_studio) [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=kairoh_studio&metric=reliability_rating)](https://sonarcloud.io/dashboard?id=kairoh_studio) @@ -15,7 +16,6 @@ STUdio - Story Teller Unleashed Créez et transférez vos propres packs d'histoires de et vers la Fabrique à Histoires Lunii[^1]. - PRÉAMBULE --------- @@ -25,31 +25,23 @@ Ce logiciel s'appuie sur des recherches de rétro-ingénierie, limitées à la c [^1]: Lunii, Luniistore et "ma fabrique à histoires" sont des marques enregistrées de Lunii SAS. Ce travail n'est en aucun cas affilié à Lunii SAS. - UTILISATION ----------- ### Choisir son édition -L'édition "Native" est plus rapide et n'a pas besoin d'avoir Java installé. +:rocket: L'édition "Native" est plus rapide et n'a pas besoin d'avoir Java installé. Peu d'architecture sont disponibles (dépend des hôtes Github), mais vous pouvez [compiler la vôtre](#compiler-l%C3%A9dition-native). -| CPU/OS | Linux | Windows | MacOS | -| :---: | :---: | :---: | :---: | -| x86_64 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| x86 | | | | -| arm | | | | -| aarch64 | | | | - -L'édition "Java" a besoin d'avoir Java 11+ installé. +:hotsprings: L'édition "Java" a besoin d'avoir Java 11+ installé. Elle supporte presque toutes les architectures (selon la compatibilité de [usb4java](http://usb4java.org]) ). -| CPU/OS | Linux | Windows | MacOS | -| :---: | :---: | :---: | :---: | -| x86_64 | :heavy_check_mark: | :heavy_check_mark: | :heavy_check_mark: | -| x86 | :heavy_check_mark: | :heavy_check_mark: | | -| arm | :heavy_check_mark: | | | -| aarch64 | :heavy_check_mark: | | :heavy_check_mark: | +| CPU/OS | Linux | Windows | MacOS | +| :---: | :---: | :---: | :---: | +| x86_64 | :hotsprings: :rocket: | :hotsprings: :rocket: | :hotsprings: :rocket: | +| x86 | :hotsprings: | :hotsprings: | | +| arm | :hotsprings: | | | +| aarch64 | :hotsprings: | | :hotsprings: | ### Prérequis @@ -58,7 +50,7 @@ Elle supporte presque toutes les architectures (selon la compatibilité de [usb4 ### Installation -* **Téléchargez** [la dernière release](../releases/latest) (ou [construisez l'application](#pour-les-développeurs)). +* **Téléchargez** [la dernière release](https://github.com/kairoh/studio/releases/latest) (ou [construisez l'application](#pour-les-développeurs)). * **Décompressez** l'archive de distribution * **Exécutez le script de lancement** : `studio.sh` ou `studio.bat` selon votre plate-forme. Vous devrez probablement rendre ce fichier exécutable d'abord. * S'il ne s'ouvre pas automatiquement, **ouvrez un navigateur** et saisissez l'url `http://localhost:8080` pour charger l'interface web. @@ -155,7 +147,6 @@ Les fichiers MP3 et OGG doivent, eux, être échantillonnés à 44100Hz. Pour plus d'informations, y compris un guide d'utilisation illustré (merci à [@appenzellois](https://github.com/appenzellois)), consultez [le wiki du projet](https://github.com/marian-m12l/studio/wiki/Documentation). - POUR LES DÉVELOPPEURS --------------------- @@ -204,7 +195,6 @@ d'histoires interactives (développé par [@sebbelese](https://github.com/sebbel * [Moiki](https://moiki.fr/) est un outil en ligne de création d'histoires interactives, qui peuvent être exportées vers STUdio (développé par [@kaelhem](https://github.com/kaelhem)) - LICENCE ------- @@ -216,4 +206,3 @@ de la licence se trouvent dans le fichier [LICENSE-jvorbis.md](LICENSE-jvorbis.m Le package `com.jhlabs.image` est distribué par Jerry Huxtable sous la licence Apache License 2.0. Les termes de la licence se trouvent dans le fichier [LICENSE-jhlabs.md](LICENSE-jhlabs.md). - From e50b761ed7699f26fe9f093557e114a0bb50ba01 Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Sun, 8 Jan 2023 11:18:35 +0000 Subject: [PATCH 09/11] Fix pom.xml --- driver/pom.xml | 4 +++- pom.xml | 11 ++++------- web-ui/pom.xml | 8 +++++--- 3 files changed, 12 insertions(+), 11 deletions(-) diff --git a/driver/pom.xml b/driver/pom.xml index b840ccf7d..fe9f68030 100644 --- a/driver/pom.xml +++ b/driver/pom.xml @@ -8,12 +8,14 @@ + + 4.0.0 + studio-parent studio 1.0.1-SNAPSHOT - 4.0.0 studio-driver diff --git a/pom.xml b/pom.xml index 2fab8b3a0..deebd671f 100644 --- a/pom.xml +++ b/pom.xml @@ -38,11 +38,8 @@ kairoh https://sonarcloud.io - - quarkus-bom - io.quarkus - 2.14.2.Final + 2.14.2.Final 1.18.24 2.18.0 5.9.0 @@ -51,9 +48,9 @@ - ${quarkus.platform.group-id} - ${quarkus.platform.artifact-id} - ${quarkus.platform.version} + io.quarkus + quarkus-bom + ${quarkus.version} pom import diff --git a/web-ui/pom.xml b/web-ui/pom.xml index 9ceb3205b..4c1d04d88 100644 --- a/web-ui/pom.xml +++ b/web-ui/pom.xml @@ -7,12 +7,14 @@ + + 4.0.0 + studio-parent studio 1.0.1-SNAPSHOT - 4.0.0 studio-web-ui @@ -149,9 +151,9 @@ - ${quarkus.platform.group-id} + io.quarkus quarkus-maven-plugin - ${quarkus.platform.version} + ${quarkus.version} true From 047d72251fb0ee492f96aa2fb8cc5a2c3136400a Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Sun, 8 Jan 2023 14:42:16 +0100 Subject: [PATCH 10/11] Github workflows on tags --- .github/workflows/native.yml | 1 - .github/workflows/sonarcloud.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.github/workflows/native.yml b/.github/workflows/native.yml index 2efc6f695..496778722 100644 --- a/.github/workflows/native.yml +++ b/.github/workflows/native.yml @@ -2,7 +2,6 @@ name: Native on: push: paths-ignore: [ '*.md' ] - branches: [ '*' ] pull_request: types: [ opened, synchronize, reopened ] concurrency: diff --git a/.github/workflows/sonarcloud.yml b/.github/workflows/sonarcloud.yml index ccc50c912..b3df48939 100644 --- a/.github/workflows/sonarcloud.yml +++ b/.github/workflows/sonarcloud.yml @@ -2,7 +2,6 @@ name: Sonar on: push: paths-ignore: [ '*.md' ] - branches: [ '*' ] repository_dispatch: types: [ trigger-nightly ] concurrency: From ac0b110013442003218bdfc3d1c340ace23fd18c Mon Sep 17 00:00:00 2001 From: kairoh <3878594+kairoh@users.noreply.github.com> Date: Sun, 8 Jan 2023 14:35:37 +0100 Subject: [PATCH 11/11] Version 1.0.1 --- core/pom.xml | 2 +- driver/pom.xml | 2 +- pom.xml | 2 +- web-ui/pom.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/pom.xml b/core/pom.xml index 2d17173bd..979092e74 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -13,7 +13,7 @@ studio-parent studio - 1.0.1-SNAPSHOT + 1.0.1 studio-core diff --git a/driver/pom.xml b/driver/pom.xml index fe9f68030..79552075e 100644 --- a/driver/pom.xml +++ b/driver/pom.xml @@ -14,7 +14,7 @@ studio-parent studio - 1.0.1-SNAPSHOT + 1.0.1 studio-driver diff --git a/pom.xml b/pom.xml index deebd671f..c4a495783 100644 --- a/pom.xml +++ b/pom.xml @@ -12,7 +12,7 @@ studio studio-parent - 1.0.1-SNAPSHOT + 1.0.1 pom diff --git a/web-ui/pom.xml b/web-ui/pom.xml index 4c1d04d88..50eaa0fb6 100644 --- a/web-ui/pom.xml +++ b/web-ui/pom.xml @@ -13,7 +13,7 @@ studio-parent studio - 1.0.1-SNAPSHOT + 1.0.1 studio-web-ui