Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] master from plantuml:master #91

Merged
merged 86 commits into from
Feb 21, 2024
Merged
Changes from 1 commit
Commits
Show all changes
86 commits
Select commit Hold shift + click to select a range
35505fd
chore(deps): bump actions/setup-java from 3 to 4
dependabot[bot] Nov 30, 2023
7b1f67a
test: Use XMLUnit to compare XMI
DaumAlexande Dec 4, 2023
de5d791
docs: improve `@deprecated` description
The-Lum Dec 4, 2023
6c593c4
Merge pull request #1619 from The-Lum/ImproveDoc
arnaudroques Dec 4, 2023
db6567c
Merge pull request #1618 from DaumAlexande/use_xmlunit
arnaudroques Dec 4, 2023
3a4c614
Merge pull request #1617 from plantuml/dependabot/github_actions/acti…
arnaudroques Dec 4, 2023
cb5b881
chore(deps): bump actions/labeler from 4 to 5
dependabot[bot] Dec 5, 2023
1cb61d5
fix: allow different type inside array for `GetJsonKey` builtin fct
The-Lum Dec 8, 2023
3f836a4
fix: allow (`int` corresponding of) unicode value for `Chr` builtin fct
The-Lum Dec 8, 2023
5c72456
test refactor: simplify test using `TimTestUtils`
The-Lum Dec 8, 2023
c20153a
Merge pull request #1624 from The-Lum/PatchBranch
arnaudroques Dec 8, 2023
c20b3d9
feat: work on chronology
arnaudroques Dec 11, 2023
428381c
Merge branch 'tmp2'
arnaudroques Dec 11, 2023
a061b11
chore: formatting issue
arnaudroques Dec 11, 2023
a87f844
fix: missing label in activity diagrams
arnaudroques Dec 11, 2023
5128891
chore: version 1.2023.13
arnaudroques Dec 11, 2023
cc80d86
chore: prepare next development cycle
arnaudroques Dec 12, 2023
371bafa
chore(deps): bump actions/upload-artifact from 3 to 4
dependabot[bot] Dec 15, 2023
b65aaff
fix: improve local style for activity diagrams
arnaudroques Dec 18, 2023
26189b1
fix: improve local style management for activity diagrams
arnaudroques Dec 19, 2023
533c27c
feat: adding edgy tools in stdlib
arnaudroques Jan 3, 2024
d07cda5
feat: adding action and process keywords
arnaudroques Jan 6, 2024
6c73caa
fix: minor issues about multiples stereotype and improve new shapes a…
arnaudroques Jan 8, 2024
48dc07d
fix: note placement in listfiles
arnaudroques Jan 9, 2024
9502ed8
add: Language Descriptor Improvement (adding `action` and `process`)
The-Lum Jan 16, 2024
24d7e94
Merge pull request #1643 from The-Lum/PatchBranch
arnaudroques Jan 16, 2024
bf2312a
feat: edgy standard library improvement
arnaudroques Jan 16, 2024
4217882
chore(deps): bump actions/cache from 3 to 4
dependabot[bot] Jan 18, 2024
4026878
perf: stop recompiling pattern at runtime
arnaudroques Jan 18, 2024
f805d98
docs: add `readme.md` on `chronology`
The-Lum Jan 24, 2024
6d158d1
docs: add `package-info.java` on `chronology`
The-Lum Jan 24, 2024
dbb5354
fix: clear cache when StringBounder has changed
arnaudroques Jan 27, 2024
e9139c8
fix: Restore missing file `HelpTest.java` on an accurate folder.
The-Lum Jan 27, 2024
de6316c
Merge pull request #1655 from The-Lum/PatchBranch
arnaudroques Jan 27, 2024
5fae97f
fix: Gantt Layout issue when Print between is used with Printscale we…
arnaudroques Feb 1, 2024
7a20001
Merge branch 'master' of https://github.com/plantuml/plantuml
arnaudroques Feb 1, 2024
dbbdf12
chore: version 1.2024.0
arnaudroques Feb 1, 2024
dbaf8ac
feat: add some %random function
arnaudroques Feb 1, 2024
9e18d34
Update and rename Random.java to RandomFunction.java
The-Lum Feb 1, 2024
376ee9d
Update `TContext.java` with `RandomFunction`
The-Lum Feb 1, 2024
c10ac17
fix: import the file `RandomFunction`
The-Lum Feb 1, 2024
23c86ba
Improve `Chronology diagram` management
The-Lum Feb 1, 2024
80acb87
Merge pull request #1668 from The-Lum/Random
arnaudroques Feb 1, 2024
ad383d2
Merge pull request #1669 from The-Lum/PatchBranch
arnaudroques Feb 2, 2024
3bd3edb
feat: `Random` function: add test and private declaration
The-Lum Feb 3, 2024
c447e44
Merge pull request #1673 from The-Lum/Random
arnaudroques Feb 4, 2024
1690ca3
chore(deps): bump org.assertj:assertj-core from 3.24.2 to 3.25.3
dependabot[bot] Feb 5, 2024
81e1c96
feat: add eip in standard library
arnaudroques Feb 6, 2024
306f8b2
feat: improve standard library
arnaudroques Feb 7, 2024
1c0c7d8
Add files via upload
theavege Feb 8, 2024
6d035c3
Merge pull request #1677 from theavege/add/sunlust
arnaudroques Feb 8, 2024
68fdb66
chore: version 1.2024.1
arnaudroques Feb 8, 2024
0ba45e0
Update puml-theme-sunlust.puml
theavege Feb 9, 2024
d443d23
Merge branch 'plantuml:master' into add/sunlust
theavege Feb 9, 2024
d65951f
feat: Update C4-PlantUML to v2.9.0
arnaudroques Feb 11, 2024
0975502
fix: update graphviz version check pattern
chenrui333 Feb 11, 2024
a65935c
Merge pull request #1684 from chenrui333/update-graphviz-version-dete…
arnaudroques Feb 11, 2024
36b1fe5
Merge pull request #1681 from theavege/add/sunlust
arnaudroques Feb 11, 2024
e11d974
refactor: place `net.sourceforge.plantuml.test` on `test.utils`
The-Lum Feb 12, 2024
29f90e5
Merge pull request #1620 from plantuml/dependabot/github_actions/acti…
arnaudroques Feb 13, 2024
75b00f0
Merge pull request #1626 from plantuml/dependabot/github_actions/acti…
arnaudroques Feb 13, 2024
e70f23b
refactor: Change `HelpTest` to `CommandHelpThemeTest` on a more accur…
The-Lum Feb 13, 2024
956e23c
Merge pull request #1644 from plantuml/dependabot/github_actions/acti…
arnaudroques Feb 13, 2024
7be4804
fix: emergency change to be compatible with `actions/labeler` v5
The-Lum Feb 13, 2024
af3c49c
docs: fix links _(due to emoji)_
The-Lum Feb 13, 2024
cfd3ad2
Merge pull request #1687 from The-Lum/ImproveDoc
arnaudroques Feb 13, 2024
4e5bf03
Merge branch 'master' into PatchBranch
arnaudroques Feb 13, 2024
17d317e
Merge pull request #1686 from The-Lum/PatchBranch
arnaudroques Feb 13, 2024
76d1daf
Merge pull request #1674 from plantuml/dependabot/gradle/org.assertj-…
arnaudroques Feb 13, 2024
ababa00
chore(deps): bump org.junit.jupiter:junit-jupiter from 5.10.1 to 5.10.2
dependabot[bot] Feb 13, 2024
ab60639
Merge pull request #1675 from plantuml/dependabot/gradle/org.junit.ju…
arnaudroques Feb 13, 2024
ab09e2e
feat: add `%get_all_theme` builtin function
The-Lum Feb 14, 2024
53bcc02
fix: typo on `GetAllThemeTest` filename
The-Lum Feb 14, 2024
ac8e785
Merge pull request #1689 from The-Lum/Random
arnaudroques Feb 14, 2024
cfa16d0
chore: version 1.2024.2
arnaudroques Feb 14, 2024
ad4a1bd
feat: adding undocumented support for gzip URL
arnaudroques Feb 15, 2024
c6f150f
chore: version 1.2024.3
arnaudroques Feb 15, 2024
4ce77d3
fix: suppress `@[start|end]uml` on `sunlust` theme
The-Lum Feb 16, 2024
99698d9
Merge pull request #1691 from The-Lum/PatchBranch
arnaudroques Feb 16, 2024
04f7187
refactor: remove dead code
arnaudroques Feb 16, 2024
ee43dd0
chore: fix some tests on Windows
arnaudroques Feb 16, 2024
8fe9fae
tests: add not working example about stdlib
The-Lum Feb 16, 2024
415886e
docs: add "PlantUML package and PlantUML on the GNU/Linux distributio…
The-Lum Feb 17, 2024
5fe5caf
Merge pull request #1692 from The-Lum/PatchBranch
arnaudroques Feb 20, 2024
2a96112
chore: improve error message when missing stdlib
arnaudroques Feb 20, 2024
c6f9684
Merge pull request #1693 from The-Lum/docs
arnaudroques Feb 20, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
feat: adding undocumented support for gzip URL
  • Loading branch information
arnaudroques committed Feb 15, 2024
commit ad4a1bde571a90492a6b75be79c689714e1dea61
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -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.2
version = 1.2024.3beta1
org.gradle.workers.max = 3
71 changes: 71 additions & 0 deletions src/net/sourceforge/plantuml/code/CompressionGZip.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
/* ========================================================================
* PlantUML : a free UML diagram generator
* ========================================================================
*
* (C) Copyright 2009-2024, Arnaud Roques
*
* Project Info: https://plantuml.com
*
* If you like this project or if you find it useful, you can support us at:
*
* https://plantuml.com/patreon (only 1$ per month!)
* https://plantuml.com/paypal
*
* This file is part of PlantUML.
*
* PlantUML is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* PlantUML distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
* or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
* License for more details.
*
* You should have received a copy of the GNU General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
* USA.
*
*
* Original Author: Arnaud Roques
*
*
*/
package net.sourceforge.plantuml.code;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.zip.GZIPInputStream;

public class CompressionGZip implements Compression {
// ::remove file when __CORE__

public byte[] compress(byte[] in) {
throw new UnsupportedOperationException();
}

public ByteArray decompress(byte[] input) throws NoPlantumlCompressionException {
try {
try (final GZIPInputStream gzip = new GZIPInputStream(new ByteArrayInputStream(input))) {
final byte[] buffer = new byte[10_000];

try (final ByteArrayOutputStream baos = new ByteArrayOutputStream()) {
int len;
while ((len = gzip.read(buffer)) > 0) {
baos.write(buffer, 0, len);
if (baos.size() > 200_000)
throw new NoPlantumlCompressionException("Gzip error");
}
return ByteArray.from(baos.toByteArray());
}
}
} catch (IOException e) {
throw new NoPlantumlCompressionException(e);
}

}

}
5 changes: 5 additions & 0 deletions src/net/sourceforge/plantuml/code/TranscoderSmart.java
Original file line number Diff line number Diff line change
@@ -49,6 +49,8 @@ public class TranscoderSmart implements Transcoder {
new CompressionHuffman());
private final Transcoder zip = TranscoderImpl.utf8(new AsciiEncoder(), new ArobaseStringCompressor(),
new CompressionZip());
private final Transcoder gzip = TranscoderImpl.utf8(new AsciiEncoder(), new ArobaseStringCompressor(),
new CompressionGZip());
// ::done

public String decode(String code) throws NoPlantumlCompressionException {
@@ -66,6 +68,9 @@ public String decode(String code) throws NoPlantumlCompressionException {
if (code.startsWith("~h"))
return hexOnly.decode(code.substring(2));

if (code.startsWith("~g"))
return gzip.decode(code.substring(2));

// ::comment when __CORE__
if (code.startsWith("~zip~"))
return zip.decode(code.substring(5));
Original file line number Diff line number Diff line change
@@ -49,6 +49,8 @@ public class TranscoderSmartProtected implements Transcoder {
new CompressionNone());
private final Transcoder zip = TranscoderImpl.utf8(new AsciiEncoder(), new ArobaseStringCompressor(),
new CompressionZip());
private final Transcoder gzip = TranscoderImpl.utf8(new AsciiEncoder(), new ArobaseStringCompressor(),
new CompressionGZip());

public String decode(String code) throws NoPlantumlCompressionException {
// Work in progress
@@ -63,6 +65,9 @@ public String decode(String code) throws NoPlantumlCompressionException {
if (code.startsWith("~h"))
return hexOnly.decode(code.substring(2));

if (code.startsWith("~g"))
return gzip.decode(code.substring(2));

if (code.startsWith("~zip~"))
return zip.decode(code.substring(5));

2 changes: 1 addition & 1 deletion src/net/sourceforge/plantuml/version/Version.java
Original file line number Diff line number Diff line change
@@ -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.2";
private static final String version = "1.2024.3beta1";

public static String versionString() {
return version;
Loading