From cb5b881e46403237d8891c7939fd86a7c931ec26 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 5 Dec 2023 02:46:52 +0000 Subject: [PATCH 1/8] chore(deps): bump actions/labeler from 4 to 5 Bumps [actions/labeler](https://github.com/actions/labeler) from 4 to 5. - [Release notes](https://github.com/actions/labeler/releases) - [Commits](https://github.com/actions/labeler/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/labeler dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/labeler.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml index 07b21837d..2a340279e 100644 --- a/.github/workflows/labeler.yml +++ b/.github/workflows/labeler.yml @@ -9,4 +9,4 @@ jobs: pull-requests: write runs-on: ubuntu-latest steps: - - uses: actions/labeler@v4 + - uses: actions/labeler@v5 From 371bafaade0a51030c3cb7b86d49d5e14bef5a6d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 15 Dec 2023 02:43:21 +0000 Subject: [PATCH 2/8] chore(deps): bump actions/upload-artifact from 3 to 4 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 3 to 4. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ec444f245..88dde8a0e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -115,7 +115,7 @@ jobs: run: gradle test --no-daemon -i - name: Upload test reports - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: needs.workflow_config.outputs.do_test_linux == 'true' with: # Using github.run_number here to reduce confusion when downloading & comparing from several builds @@ -244,7 +244,7 @@ jobs: enableCrossOsArchive: true - name: Upload artifacts - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: # Using github.run_number here to reduce confusion when downloading & comparing artifacts from several builds name: ${{ github.run_number }}-artifacts From 4217882d8a8c71cf8b4b71e44e7e606da0abb57b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 18 Jan 2024 02:11:38 +0000 Subject: [PATCH 3/8] chore(deps): bump actions/cache from 3 to 4 Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v3...v4) --- updated-dependencies: - dependency-name: actions/cache dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/ci.yml | 4 ++-- .github/workflows/native-image.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ec444f245..a8ad22dc1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -172,7 +172,7 @@ jobs: run: | echo "release_version=$(gradle properties -q | grep "version:" | awk '{print $2}')" >> $GITHUB_OUTPUT - name: Cache libs - uses: actions/cache/save@v3 + uses: actions/cache/save@v4 with: path: | build/libs @@ -228,7 +228,7 @@ jobs: cache: gradle - name: Restore Libs cache - uses: actions/cache/restore@v3 + uses: actions/cache/restore@v4 with: path: | build/libs diff --git a/.github/workflows/native-image.yml b/.github/workflows/native-image.yml index de3990925..7db154b09 100644 --- a/.github/workflows/native-image.yml +++ b/.github/workflows/native-image.yml @@ -32,7 +32,7 @@ jobs: components: 'native-image' github-token: ${{ secrets.GITHUB_TOKEN }} - - uses: actions/cache/restore@v3 + - uses: actions/cache/restore@v4 with: path: | build/libs @@ -57,7 +57,7 @@ jobs: native-image -H:ConfigurationFileDirectories=native-image-config-dir --no-fallback --report-unsupported-elements-at-runtime -jar "build/libs/plantuml-${{ inputs.release-version }}.jar" -H:Path="build/libs" -H:Name="plantuml-${{ matrix.platform }}-${{ inputs.release-version }}" - name: Cache native image - uses: actions/cache/save@v3 + uses: actions/cache/save@v4 with: path: "build/libs/plantuml-${{ matrix.platform }}-*" key: "native-image-${{ matrix.platform }}-${{ github.run_id }}" From 0ba45e079687bc360c8c5a2d65f41eb38e05e857 Mon Sep 17 00:00:00 2001 From: "Artem V. Ageev" Date: Fri, 9 Feb 2024 11:28:11 +0200 Subject: [PATCH 4/8] Update puml-theme-sunlust.puml add Description theme --- themes/puml-theme-sunlust.puml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/themes/puml-theme-sunlust.puml b/themes/puml-theme-sunlust.puml index 9f80e9b3e..8ea47681d 100644 --- a/themes/puml-theme-sunlust.puml +++ b/themes/puml-theme-sunlust.puml @@ -1,4 +1,9 @@ @startuml +'' NAME = Sunlust +'' DESCRIPTION = sunlust theme based off of the [solarized theme](https://ethanschoonover.com/solarized) +'' AUTHOR = Artem V. Ageev +'' LICENCE = GPL 3+ + !$THEME = 'sunlust' !if %not(%variable_exists("$BGCOLOR")) !$BGCOLOR = '#fdf6e3' From d65951f520bc9c92c5644147e47146c9731c7536 Mon Sep 17 00:00:00 2001 From: Arnaud Roques Date: Sun, 11 Feb 2024 12:20:28 +0100 Subject: [PATCH 5/8] feat: Update C4-PlantUML to v2.9.0 https://github.com/plantuml/plantuml-stdlib/pull/93 --- gradle.properties | 2 +- .../sourceforge/plantuml/version/Version.java | 2 +- stdlib/c4-abx.repx | Bin 15559 -> 16046 bytes 3 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gradle.properties b/gradle.properties index a6470a4d8..faafaa448 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ # Warning, "version" should be the same in gradle.properties and Version.java # Any idea anyone how to magically synchronize those :-) ? -version = 1.2024.1 +version = 1.2024.2beta1 org.gradle.workers.max = 3 \ No newline at end of file diff --git a/src/net/sourceforge/plantuml/version/Version.java b/src/net/sourceforge/plantuml/version/Version.java index c7ebef382..9dc1f8365 100644 --- a/src/net/sourceforge/plantuml/version/Version.java +++ b/src/net/sourceforge/plantuml/version/Version.java @@ -46,7 +46,7 @@ public class Version { // Warning, "version" should be the same in gradle.properties and Version.java // Any idea anyone how to magically synchronize those :-) ? - private static final String version = "1.2024.1"; + private static final String version = "1.2024.2beta1"; public static String versionString() { return version; diff --git a/stdlib/c4-abx.repx b/stdlib/c4-abx.repx index 24cd069abddb08baa9352d5793a58c3994da624f..10ef9117eb1b11a42125947a9d41157896ee4f4e 100644 GIT binary patch literal 16046 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 literal 15559 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 Date: Sun, 11 Feb 2024 19:43:14 +0100 Subject: [PATCH 6/8] fix: update graphviz version check pattern Right now, the `graphviz` version detection failed to match with `10.x.x`, thus relaxing the version check regex. Signed-off-by: Rui Chen --- src/net/sourceforge/plantuml/dot/GraphvizUtils.java | 2 +- src/net/sourceforge/plantuml/dot/GraphvizVersionFinder.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/net/sourceforge/plantuml/dot/GraphvizUtils.java b/src/net/sourceforge/plantuml/dot/GraphvizUtils.java index 803023cbc..23261f328 100644 --- a/src/net/sourceforge/plantuml/dot/GraphvizUtils.java +++ b/src/net/sourceforge/plantuml/dot/GraphvizUtils.java @@ -197,7 +197,7 @@ public class GraphvizUtils { if (s == null) return -1; - final Pattern p = Pattern.compile("\\s(\\d)\\.(\\d\\d?)\\D"); + final Pattern p = Pattern.compile("\\s(\\d+)\\.(\\d\\d?)\\D"); final Matcher m = p.matcher(s); if (m.find() == false) return -1; diff --git a/src/net/sourceforge/plantuml/dot/GraphvizVersionFinder.java b/src/net/sourceforge/plantuml/dot/GraphvizVersionFinder.java index 8a58e7b25..706bb5f0a 100644 --- a/src/net/sourceforge/plantuml/dot/GraphvizVersionFinder.java +++ b/src/net/sourceforge/plantuml/dot/GraphvizVersionFinder.java @@ -73,7 +73,7 @@ public class GraphvizVersionFinder { public GraphvizVersion getVersion() { final String dotVersion = dotVersion(); - final Pattern p = Pattern.compile("(\\d)\\.(\\d\\d?)"); + final Pattern p = Pattern.compile("(\\d+)\\.(\\d\\d?)"); final Matcher m = p.matcher(dotVersion); final boolean find = m.find(); if (find == false) From 7be48049ff8b059447eadecddbfd6eb29e914c64 Mon Sep 17 00:00:00 2001 From: The-Lum <86879521+The-Lum@users.noreply.github.com> Date: Tue, 13 Feb 2024 13:11:30 +0100 Subject: [PATCH 7/8] fix: emergency change to be compatible with `actions/labeler` v5 Emergency change to be compatible with `actions/labeler` v5 Observed on: - #1620 --- .github/labeler.yml | 58 +++++++++++++++++++++++++++++---------------- 1 file changed, 38 insertions(+), 20 deletions(-) diff --git a/.github/labeler.yml b/.github/labeler.yml index 4f260b7ec..3924b988d 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -1,37 +1,55 @@ 'm:release': -- 'CHANGELOG.md' -- 'gradle.properties' +- changed-files: + - any-glob-to-any-file: + - 'CHANGELOG.md' + - 'gradle.properties' 'm:docs': -- '*.md' -- 'docs/**/*' +- changed-files: + - any-glob-to-any-file: + - '*.md' + - 'docs/**/*' 'm:workflow': -- .github/** +- changed-files: + - any-glob-to-any-file: + - .github/** 'm:gradle': -- 'gradle*' -- 'gradle/**' -- '**/settings.gradle.*' -- '**/build.gradle.*' -- 'sjpp.jar' +- changed-files: + - any-glob-to-any-file: + - 'gradle*' + - 'gradle/**' + - '**/settings.gradle.*' + - '**/build.gradle.*' + - 'sjpp.jar' 'm:source': -- 'skin/**/*' -- 'src/**/*' -- 'stdlib/**/*' -- 'svg/**/*' -- 'themes/**/*' -- 'manifest.txt' +- changed-files: + - any-glob-to-any-file: + - 'skin/**/*' + - 'src/**/*' + - 'stdlib/**/*' + - 'svg/**/*' + - 'themes/**/*' + - 'manifest.txt' 'm:test': -- 'test/**/*' +- changed-files: + - any-glob-to-any-file: + - 'test/**/*' 'm:license': -- '**/*license.txt' +- changed-files: + - any-glob-to-any-file: + - '**/*license.txt' 'm:docker': -- Dockerfile +- changed-files: + - any-glob-to-any-file: + - Dockerfile 'm:native': -- .github/workflows/native-image.yml +- changed-files: + - any-glob-to-any-file: + - .github/workflows/native-image.yml From af3c49c2aa29c903c89c6a1adaef58c7bdfe8188 Mon Sep 17 00:00:00 2001 From: The-Lum <86879521+The-Lum@users.noreply.github.com> Date: Tue, 13 Feb 2024 14:19:22 +0100 Subject: [PATCH 8/8] docs: fix links _(due to emoji)_ --- BUILDING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/BUILDING.md b/BUILDING.md index 3c436bdb5..be2856729 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -2,7 +2,7 @@ Thank you for your interest in contributing to PlantUML! This guide will help you build the PlantUML project. -PlantUML can be built using either [Gradle](#building-plantuml-with-gradle) or [Ant](#building-plantuml-with-ant-alternative-method). It's recommended to use Gradle as the primary build tool for this project. You will find instructions for both methods, starting with Gradle. +PlantUML can be built using either [Gradle](#-building-plantuml-with-gradle) or [Ant](#-building-plantuml-with-ant-alternative-method). It's recommended to use Gradle as the primary build tool for this project. You will find instructions for both methods, starting with Gradle. ## ☕ Java Compatibility and Development Notes