eolang 0.28.0 → 0.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.yamllint.yml +2 -21
- package/LICENSE.txt +1 -1
- package/LICENSES/MIT.txt +19 -0
- package/README.md +2 -2
- package/REUSE.toml +39 -0
- package/eo-version.txt +1 -1
- package/eodocs.html +0 -0
- package/home-tag.txt +1 -1
- package/mvnw/.mvn/wrapper/maven-wrapper.properties +2 -21
- package/mvnw/dependency-reduced-pom.xml +107 -0
- package/mvnw/mvnw +18 -14
- package/mvnw/mvnw.cmd +4 -0
- package/mvnw/pom.xml +48 -27
- package/package.json +30 -30
- package/src/commands/assemble.js +28 -24
- package/src/commands/audit.js +22 -21
- package/src/commands/clean.js +22 -21
- package/src/commands/docs.js +27 -22
- package/src/commands/foreign.js +22 -21
- package/src/commands/java/compile.js +26 -21
- package/src/commands/java/dataize.js +22 -21
- package/src/commands/java/link.js +23 -22
- package/src/commands/java/resolve.js +46 -0
- package/src/commands/java/test.js +22 -21
- package/src/commands/java/transpile.js +22 -21
- package/src/commands/jeo/assemble.js +22 -21
- package/src/commands/jeo/disassemble.js +22 -21
- package/src/commands/js/compile.js +22 -21
- package/src/commands/js/dataize.js +22 -21
- package/src/commands/js/link.js +22 -21
- package/src/commands/js/resolve.js +36 -0
- package/src/commands/js/test.js +22 -21
- package/src/commands/js/transpile.js +22 -21
- package/src/commands/lint.js +28 -21
- package/src/commands/parse.js +22 -21
- package/src/commands/phi.js +22 -21
- package/src/commands/print.js +22 -21
- package/src/commands/register.js +22 -21
- package/src/commands/sodg.js +22 -21
- package/src/commands/unphi.js +22 -21
- package/src/demand.js +25 -21
- package/src/elapsed.js +61 -0
- package/src/eo2jsw.js +22 -21
- package/src/eoc.js +36 -34
- package/src/mvnw.js +28 -28
- package/src/parser-version.js +23 -22
- package/src/tinted-console.js +22 -21
- package/src/version.js +24 -23
package/.yamllint.yml
CHANGED
|
@@ -1,24 +1,5 @@
|
|
|
1
|
-
#
|
|
2
|
-
#
|
|
3
|
-
# Copyright (c) 2022-2024 Objectionary.com
|
|
4
|
-
#
|
|
5
|
-
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
# of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
# in the Software without restriction, including without limitation the rights
|
|
8
|
-
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
# copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
# furnished to do so, subject to the following conditions:
|
|
11
|
-
#
|
|
12
|
-
# The above copyright notice and this permission notice shall be included
|
|
13
|
-
# in all copies or substantial portions of the Software.
|
|
14
|
-
#
|
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
# SOFTWARE.
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2022-2025 Objectionary.com
|
|
2
|
+
# SPDX-License-Identifier: MIT
|
|
22
3
|
---
|
|
23
4
|
extends: default
|
|
24
5
|
rules:
|
package/LICENSE.txt
CHANGED
package/LICENSES/MIT.txt
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
Copyright (c) 2022-2025 Objectionary.com
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
in the Software without restriction, including without limitation the rights
|
|
6
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
furnished to do so, subject to the following conditions:
|
|
9
|
+
|
|
10
|
+
The above copyright notice and this permission notice shall be included
|
|
11
|
+
in all copies or substantial portions of the Software.
|
|
12
|
+
|
|
13
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
19
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -18,7 +18,7 @@ First, you install [npm][npm-install] and [Java SE][java-se].
|
|
|
18
18
|
Then, you install [eolang][npm] package:
|
|
19
19
|
|
|
20
20
|
```bash
|
|
21
|
-
npm install -g eolang@0.
|
|
21
|
+
npm install -g eolang@0.28.0
|
|
22
22
|
```
|
|
23
23
|
|
|
24
24
|
Then, you write a simple [EO](https://www.eolang.org) program in `hello.eo` file
|
|
@@ -34,7 +34,7 @@ in the current directory:
|
|
|
34
34
|
Then, you run it:
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
|
-
eoc dataize hello
|
|
37
|
+
eoc --easy dataize hello
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
That's it.
|
package/REUSE.toml
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2025 Yegor Bugayenko
|
|
2
|
+
# SPDX-License-Identifier: MIT
|
|
3
|
+
|
|
4
|
+
version = 1
|
|
5
|
+
[[annotations]]
|
|
6
|
+
path = [
|
|
7
|
+
"**.csv",
|
|
8
|
+
"**.json",
|
|
9
|
+
"**.md",
|
|
10
|
+
"**.png",
|
|
11
|
+
"**.txt",
|
|
12
|
+
"**/*.csv",
|
|
13
|
+
"**/*.jpg",
|
|
14
|
+
"**/*.json",
|
|
15
|
+
"**/*.md",
|
|
16
|
+
"**/*.pdf",
|
|
17
|
+
"**/*.png",
|
|
18
|
+
"**/*.svg",
|
|
19
|
+
"**/*.txt",
|
|
20
|
+
"**/*.vm",
|
|
21
|
+
"**/.DS_Store",
|
|
22
|
+
"**/.gitignore",
|
|
23
|
+
"**/.pdd",
|
|
24
|
+
"**/CITATION.cff",
|
|
25
|
+
"**/CNAME",
|
|
26
|
+
"**/MANIFEST.MF",
|
|
27
|
+
".DS_Store",
|
|
28
|
+
".gitattributes",
|
|
29
|
+
".gitignore",
|
|
30
|
+
".npmignore",
|
|
31
|
+
".pdd",
|
|
32
|
+
"CITATION.cff",
|
|
33
|
+
"MANIFEST.MF",
|
|
34
|
+
"README.md",
|
|
35
|
+
"renovate.json",
|
|
36
|
+
]
|
|
37
|
+
precedence = "override"
|
|
38
|
+
SPDX-FileCopyrightText = "Copyright (c) 2025 Yegor Bugayenko"
|
|
39
|
+
SPDX-License-Identifier = "MIT"
|
package/eo-version.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.
|
|
1
|
+
0.55.0
|
package/eodocs.html
ADDED
|
File without changes
|
package/home-tag.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.
|
|
1
|
+
0.55.0
|
|
@@ -1,23 +1,4 @@
|
|
|
1
|
-
#
|
|
2
|
-
#
|
|
3
|
-
# Copyright (c) 2022-2024 Objectionary.com
|
|
4
|
-
#
|
|
5
|
-
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
# of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
# in the Software without restriction, including without limitation the rights
|
|
8
|
-
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
# copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
# furnished to do so, subject to the following conditions:
|
|
11
|
-
#
|
|
12
|
-
# The above copyright notice and this permission notice shall be included
|
|
13
|
-
# in all copies or substantial portions of the Software.
|
|
14
|
-
#
|
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
# SOFTWARE.
|
|
1
|
+
# SPDX-FileCopyrightText: Copyright (c) 2022-2025 Objectionary.com
|
|
2
|
+
# SPDX-License-Identifier: MIT
|
|
22
3
|
|
|
23
4
|
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.9/apache-maven-3.9.9-bin.zip
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
|
3
|
+
<modelVersion>4.0.0</modelVersion>
|
|
4
|
+
<groupId>org.eolang</groupId>
|
|
5
|
+
<artifactId>eoc</artifactId>
|
|
6
|
+
<version>0.0.0</version>
|
|
7
|
+
<build>
|
|
8
|
+
<sourceDirectory>${eo.generatedDir}</sourceDirectory>
|
|
9
|
+
<outputDirectory>${eo.targetDir}/classes</outputDirectory>
|
|
10
|
+
<testOutputDirectory>${eo.targetDir}/classes</testOutputDirectory>
|
|
11
|
+
<directory>${eo.targetDir}</directory>
|
|
12
|
+
<finalName>eoc</finalName>
|
|
13
|
+
<plugins>
|
|
14
|
+
<plugin>
|
|
15
|
+
<artifactId>maven-enforcer-plugin</artifactId>
|
|
16
|
+
<version>3.5.0</version>
|
|
17
|
+
<executions>
|
|
18
|
+
<execution>
|
|
19
|
+
<goals>
|
|
20
|
+
<goal>enforce</goal>
|
|
21
|
+
</goals>
|
|
22
|
+
<configuration>
|
|
23
|
+
<rules>
|
|
24
|
+
<requireJavaVersion>
|
|
25
|
+
<version>[11,)</version>
|
|
26
|
+
</requireJavaVersion>
|
|
27
|
+
</rules>
|
|
28
|
+
</configuration>
|
|
29
|
+
</execution>
|
|
30
|
+
</executions>
|
|
31
|
+
</plugin>
|
|
32
|
+
<plugin>
|
|
33
|
+
<groupId>org.eolang</groupId>
|
|
34
|
+
<artifactId>eo-maven-plugin</artifactId>
|
|
35
|
+
<version>${eo.version}</version>
|
|
36
|
+
<configuration>
|
|
37
|
+
<excludeSources>**/.eoc/**</excludeSources>
|
|
38
|
+
<sodgIncludes>${eo.sodgIncludes}</sodgIncludes>
|
|
39
|
+
<sodgExcludes>${eo.sodgExcludes}</sodgExcludes>
|
|
40
|
+
<foreign>${project.build.directory}/eo-foreign.json</foreign>
|
|
41
|
+
<foreignFormat>json</foreignFormat>
|
|
42
|
+
</configuration>
|
|
43
|
+
</plugin>
|
|
44
|
+
<plugin>
|
|
45
|
+
<groupId>org.eolang</groupId>
|
|
46
|
+
<artifactId>jeo-maven-plugin</artifactId>
|
|
47
|
+
<version>${jeo.version}</version>
|
|
48
|
+
<configuration>
|
|
49
|
+
<skipVerification>true</skipVerification>
|
|
50
|
+
</configuration>
|
|
51
|
+
</plugin>
|
|
52
|
+
<plugin>
|
|
53
|
+
<artifactId>maven-compiler-plugin</artifactId>
|
|
54
|
+
<version>3.8.1</version>
|
|
55
|
+
<configuration>
|
|
56
|
+
<release>11</release>
|
|
57
|
+
<source>11</source>
|
|
58
|
+
<target>11</target>
|
|
59
|
+
<compilerArgs>
|
|
60
|
+
<arg>-Xpkginfo:always</arg>
|
|
61
|
+
</compilerArgs>
|
|
62
|
+
</configuration>
|
|
63
|
+
</plugin>
|
|
64
|
+
<plugin>
|
|
65
|
+
<artifactId>maven-jar-plugin</artifactId>
|
|
66
|
+
<version>3.4.2</version>
|
|
67
|
+
<configuration>
|
|
68
|
+
<archive>
|
|
69
|
+
<manifest>
|
|
70
|
+
<addClasspath>true</addClasspath>
|
|
71
|
+
<mainClass>org.eolang.Main</mainClass>
|
|
72
|
+
</manifest>
|
|
73
|
+
</archive>
|
|
74
|
+
</configuration>
|
|
75
|
+
</plugin>
|
|
76
|
+
<plugin>
|
|
77
|
+
<artifactId>maven-shade-plugin</artifactId>
|
|
78
|
+
<version>3.6.0</version>
|
|
79
|
+
</plugin>
|
|
80
|
+
<plugin>
|
|
81
|
+
<artifactId>maven-surefire-plugin</artifactId>
|
|
82
|
+
<version>3.5.2</version>
|
|
83
|
+
<configuration>
|
|
84
|
+
<failIfNoTests>true</failIfNoTests>
|
|
85
|
+
<useFile>false</useFile>
|
|
86
|
+
<trimStackTrace>false</trimStackTrace>
|
|
87
|
+
<runOrder>random</runOrder>
|
|
88
|
+
<argLine>-Xmx${heap-size} -Xss${stack-size}</argLine>
|
|
89
|
+
<forkNode />
|
|
90
|
+
<properties>
|
|
91
|
+
<configurationParameters>junit.jupiter.execution.parallel.enabled = true
|
|
92
|
+
junit.jupiter.execution.parallel.mode.default = concurrent
|
|
93
|
+
junit.jupiter.execution.parallel.mode.classes.default = concurrent</configurationParameters>
|
|
94
|
+
</properties>
|
|
95
|
+
</configuration>
|
|
96
|
+
</plugin>
|
|
97
|
+
</plugins>
|
|
98
|
+
</build>
|
|
99
|
+
<properties>
|
|
100
|
+
<eo.version>undefined</eo.version>
|
|
101
|
+
<stack-size>undefined</stack-size>
|
|
102
|
+
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
103
|
+
<heap-size>undefined</heap-size>
|
|
104
|
+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
105
|
+
<jeo.version>0.6.26</jeo.version>
|
|
106
|
+
</properties>
|
|
107
|
+
</project>
|
package/mvnw/mvnw
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
#!/bin/sh
|
|
2
|
+
|
|
3
|
+
# SPDX-FileCopyrightText: Copyright (c) 2022-2025 Objectionary.com
|
|
4
|
+
# SPDX-License-Identifier: MIT
|
|
5
|
+
|
|
2
6
|
# ----------------------------------------------------------------------------
|
|
3
7
|
# Licensed to the Apache Software Foundation (ASF) under one
|
|
4
8
|
# or more contributor license agreements. See the NOTICE file
|
|
@@ -189,20 +193,20 @@ elif set_java_home; then
|
|
|
189
193
|
verbose "Falling back to use Java to download"
|
|
190
194
|
javaSource="$TMP_DOWNLOAD_DIR/Downloader.java"
|
|
191
195
|
targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName"
|
|
192
|
-
cat >"$javaSource" <<-END
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
196
|
+
cat > "$javaSource" <<-END
|
|
197
|
+
public class Downloader extends java.net.Authenticator
|
|
198
|
+
{
|
|
199
|
+
protected java.net.PasswordAuthentication getPasswordAuthentication()
|
|
200
|
+
{
|
|
201
|
+
return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() );
|
|
202
|
+
}
|
|
203
|
+
public static void main( String[] args ) throws Exception
|
|
204
|
+
{
|
|
205
|
+
setDefault( new Downloader() );
|
|
206
|
+
java.nio.file.Files.copy( new java.net.URL( args[0] ).openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() );
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
END
|
|
206
210
|
# For Cygwin/MinGW, switch paths to Windows format before running javac and java
|
|
207
211
|
verbose " - Compiling Downloader.java ..."
|
|
208
212
|
"$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java"
|
package/mvnw/mvnw.cmd
CHANGED
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
<# : batch portion
|
|
2
|
+
|
|
3
|
+
@REM SPDX-FileCopyrightText: Copyright (c) 2022-2025 Objectionary.com
|
|
4
|
+
@REM SPDX-License-Identifier: MIT
|
|
5
|
+
|
|
2
6
|
@REM ----------------------------------------------------------------------------
|
|
3
7
|
@REM Licensed to the Apache Software Foundation (ASF) under one
|
|
4
8
|
@REM or more contributor license agreements. See the NOTICE file
|
package/mvnw/pom.xml
CHANGED
|
@@ -1,37 +1,21 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
2
|
<!--
|
|
3
|
-
Copyright (c) 2022-
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included
|
|
13
|
-
in all copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
3
|
+
* SPDX-FileCopyrightText: Copyright (c) 2022-2025 Objectionary.com
|
|
4
|
+
* SPDX-License-Identifier: MIT
|
|
22
5
|
-->
|
|
23
6
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
24
7
|
<modelVersion>4.0.0</modelVersion>
|
|
25
8
|
<groupId>org.eolang</groupId>
|
|
26
9
|
<artifactId>eoc</artifactId>
|
|
27
10
|
<version>0.0.0</version>
|
|
11
|
+
<packaging>jar</packaging>
|
|
28
12
|
<properties>
|
|
13
|
+
<jeo.version>0.6.26</jeo.version>
|
|
29
14
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
30
15
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
31
16
|
<eo.version>undefined</eo.version>
|
|
32
|
-
<
|
|
33
|
-
<
|
|
34
|
-
<stack-size>64M</stack-size>
|
|
17
|
+
<heap-size>undefined</heap-size>
|
|
18
|
+
<stack-size>undefined</stack-size>
|
|
35
19
|
</properties>
|
|
36
20
|
<dependencies>
|
|
37
21
|
<dependency>
|
|
@@ -42,12 +26,14 @@ SOFTWARE.
|
|
|
42
26
|
<dependency>
|
|
43
27
|
<groupId>org.junit.jupiter</groupId>
|
|
44
28
|
<artifactId>junit-jupiter-api</artifactId>
|
|
45
|
-
<version>5.11.
|
|
29
|
+
<version>5.11.4</version>
|
|
30
|
+
<scope>compile</scope>
|
|
46
31
|
</dependency>
|
|
47
32
|
<dependency>
|
|
48
33
|
<groupId>org.junit.jupiter</groupId>
|
|
49
34
|
<artifactId>junit-jupiter-engine</artifactId>
|
|
50
|
-
<version>5.11.
|
|
35
|
+
<version>5.11.4</version>
|
|
36
|
+
<scope>compile</scope>
|
|
51
37
|
</dependency>
|
|
52
38
|
</dependencies>
|
|
53
39
|
<build>
|
|
@@ -57,12 +43,30 @@ SOFTWARE.
|
|
|
57
43
|
<outputDirectory>${eo.targetDir}/classes</outputDirectory>
|
|
58
44
|
<testOutputDirectory>${eo.targetDir}/classes</testOutputDirectory>
|
|
59
45
|
<plugins>
|
|
46
|
+
<plugin>
|
|
47
|
+
<artifactId>maven-enforcer-plugin</artifactId>
|
|
48
|
+
<version>3.5.0</version>
|
|
49
|
+
<executions>
|
|
50
|
+
<execution>
|
|
51
|
+
<goals>
|
|
52
|
+
<goal>enforce</goal>
|
|
53
|
+
</goals>
|
|
54
|
+
<configuration>
|
|
55
|
+
<rules>
|
|
56
|
+
<requireJavaVersion>
|
|
57
|
+
<version>[11,)</version>
|
|
58
|
+
</requireJavaVersion>
|
|
59
|
+
</rules>
|
|
60
|
+
</configuration>
|
|
61
|
+
</execution>
|
|
62
|
+
</executions>
|
|
63
|
+
</plugin>
|
|
60
64
|
<plugin>
|
|
61
65
|
<groupId>org.eolang</groupId>
|
|
62
66
|
<artifactId>eo-maven-plugin</artifactId>
|
|
63
67
|
<version>${eo.version}</version>
|
|
64
68
|
<configuration>
|
|
65
|
-
<excludeSources
|
|
69
|
+
<excludeSources>**/.eoc/**</excludeSources>
|
|
66
70
|
<sodgIncludes>${eo.sodgIncludes}</sodgIncludes>
|
|
67
71
|
<sodgExcludes>${eo.sodgExcludes}</sodgExcludes>
|
|
68
72
|
<foreign>${project.build.directory}/eo-foreign.json</foreign>
|
|
@@ -81,8 +85,12 @@ SOFTWARE.
|
|
|
81
85
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
82
86
|
<version>3.8.1</version>
|
|
83
87
|
<configuration>
|
|
84
|
-
<
|
|
85
|
-
<
|
|
88
|
+
<release>11</release>
|
|
89
|
+
<source>11</source>
|
|
90
|
+
<target>11</target>
|
|
91
|
+
<compilerArgs>
|
|
92
|
+
<arg>-Xpkginfo:always</arg>
|
|
93
|
+
</compilerArgs>
|
|
86
94
|
</configuration>
|
|
87
95
|
</plugin>
|
|
88
96
|
<plugin>
|
|
@@ -91,11 +99,16 @@ SOFTWARE.
|
|
|
91
99
|
<configuration>
|
|
92
100
|
<archive>
|
|
93
101
|
<manifest>
|
|
102
|
+
<addClasspath>true</addClasspath>
|
|
94
103
|
<mainClass>org.eolang.Main</mainClass>
|
|
95
104
|
</manifest>
|
|
96
105
|
</archive>
|
|
97
106
|
</configuration>
|
|
98
107
|
</plugin>
|
|
108
|
+
<plugin>
|
|
109
|
+
<artifactId>maven-shade-plugin</artifactId>
|
|
110
|
+
<version>3.6.0</version>
|
|
111
|
+
</plugin>
|
|
99
112
|
<plugin>
|
|
100
113
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
101
114
|
<version>3.5.2</version>
|
|
@@ -105,6 +118,14 @@ SOFTWARE.
|
|
|
105
118
|
<trimStackTrace>false</trimStackTrace>
|
|
106
119
|
<runOrder>random</runOrder>
|
|
107
120
|
<argLine>-Xmx${heap-size} -Xss${stack-size}</argLine>
|
|
121
|
+
<forkNode implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory"/>
|
|
122
|
+
<properties>
|
|
123
|
+
<configurationParameters>
|
|
124
|
+
junit.jupiter.execution.parallel.enabled = true
|
|
125
|
+
junit.jupiter.execution.parallel.mode.default = concurrent
|
|
126
|
+
junit.jupiter.execution.parallel.mode.classes.default = concurrent
|
|
127
|
+
</configurationParameters>
|
|
128
|
+
</properties>
|
|
108
129
|
</configuration>
|
|
109
130
|
</plugin>
|
|
110
131
|
</plugins>
|
package/package.json
CHANGED
|
@@ -1,55 +1,55 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "eolang",
|
|
3
|
-
"version": "0.28.0",
|
|
4
2
|
"author": "Yegor Bugayenko <yegor256@gmail.com> (https://www.yegor256.com/)",
|
|
5
|
-
"license": "MIT",
|
|
6
|
-
"repository": "objectionary/eoc",
|
|
7
|
-
"description": "A collection of command line tools for EOLANG: compiling, parsing, transpiling to other languages, optimizing, and analyzing",
|
|
8
|
-
"homepage": "https://github.com/objectionary/eoc",
|
|
9
|
-
"keywords": [
|
|
10
|
-
"cli",
|
|
11
|
-
"command",
|
|
12
|
-
"compiler",
|
|
13
|
-
"console",
|
|
14
|
-
"terminal",
|
|
15
|
-
"eoc",
|
|
16
|
-
"objectionary",
|
|
17
|
-
"oop"
|
|
18
|
-
],
|
|
19
|
-
"main": "eoc",
|
|
20
3
|
"bin": {
|
|
21
4
|
"eoc": "./src/eoc.js"
|
|
22
5
|
},
|
|
23
|
-
"engines": {
|
|
24
|
-
"node": ">6.0",
|
|
25
|
-
"npm": ">8.0"
|
|
26
|
-
},
|
|
27
|
-
"os": [
|
|
28
|
-
"darwin",
|
|
29
|
-
"linux",
|
|
30
|
-
"win32"
|
|
31
|
-
],
|
|
32
6
|
"dependencies": {
|
|
33
7
|
"colors": "1.4.0",
|
|
34
8
|
"commander": "12.1.0",
|
|
35
|
-
"eo2js": "0.0.
|
|
9
|
+
"eo2js": "0.0.8",
|
|
36
10
|
"fast-xml-parser": "4.5.1",
|
|
37
|
-
"node": "23.
|
|
11
|
+
"node": "23.5.0",
|
|
38
12
|
"relative": "3.0.2",
|
|
39
13
|
"semver": "7.6.3",
|
|
40
14
|
"sync-request": "6.1.0",
|
|
41
15
|
"xmlhttprequest": "1.8.0"
|
|
42
16
|
},
|
|
17
|
+
"description": "A collection of command line tools for EOLANG: compiling, parsing, transpiling to other languages, optimizing, and analyzing",
|
|
43
18
|
"devDependencies": {
|
|
44
19
|
"eslint": "9.17.0",
|
|
45
20
|
"eslint-config-google": "0.14.0",
|
|
46
21
|
"grunt": "1.6.1",
|
|
47
22
|
"grunt-contrib-clean": "2.0.1",
|
|
48
23
|
"grunt-eslint": "24.3.0",
|
|
49
|
-
"grunt-mocha-cli": "^
|
|
24
|
+
"grunt-mocha-cli": "^4.0.0",
|
|
50
25
|
"mocha": "^10.8.2"
|
|
51
26
|
},
|
|
27
|
+
"engines": {
|
|
28
|
+
"node": ">6.0",
|
|
29
|
+
"npm": ">8.0"
|
|
30
|
+
},
|
|
31
|
+
"homepage": "https://github.com/objectionary/eoc",
|
|
32
|
+
"keywords": [
|
|
33
|
+
"cli",
|
|
34
|
+
"command",
|
|
35
|
+
"compiler",
|
|
36
|
+
"console",
|
|
37
|
+
"terminal",
|
|
38
|
+
"eoc",
|
|
39
|
+
"objectionary",
|
|
40
|
+
"oop"
|
|
41
|
+
],
|
|
42
|
+
"license": "MIT",
|
|
43
|
+
"main": "eoc",
|
|
44
|
+
"name": "eolang",
|
|
45
|
+
"os": [
|
|
46
|
+
"darwin",
|
|
47
|
+
"linux",
|
|
48
|
+
"win32"
|
|
49
|
+
],
|
|
50
|
+
"repository": "objectionary/eoc",
|
|
52
51
|
"scripts": {
|
|
53
52
|
"test": "mocha --timeout 1200000"
|
|
54
|
-
}
|
|
53
|
+
},
|
|
54
|
+
"version": "0.29.0"
|
|
55
55
|
}
|
package/src/commands/assemble.js
CHANGED
|
@@ -1,30 +1,32 @@
|
|
|
1
|
+
// Copyright (c) 2022-2025 Objectionary.com
|
|
2
|
+
//
|
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
// in the Software without restriction, including without limitation the rights
|
|
6
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
// furnished to do so, subject to the following conditions:
|
|
9
|
+
//
|
|
10
|
+
// The above copyright notice and this permission notice shall be included
|
|
11
|
+
// in all copies or substantial portions of the Software.
|
|
12
|
+
//
|
|
13
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
19
|
+
// SOFTWARE.
|
|
20
|
+
|
|
1
21
|
/*
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
* Copyright (c) 2022-2024 Objectionary.com
|
|
5
|
-
*
|
|
6
|
-
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
7
|
-
* of this software and associated documentation files (the "Software"), to deal
|
|
8
|
-
* in the Software without restriction, including without limitation the rights
|
|
9
|
-
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
10
|
-
* copies of the Software, and to permit persons to whom the Software is
|
|
11
|
-
* furnished to do so, subject to the following conditions:
|
|
12
|
-
*
|
|
13
|
-
* The above copyright notice and this permission notice shall be included
|
|
14
|
-
* in all copies or substantial portions of the Software.
|
|
15
|
-
*
|
|
16
|
-
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
17
|
-
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
18
|
-
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
19
|
-
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
20
|
-
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
21
|
-
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
22
|
-
* SOFTWARE.
|
|
22
|
+
* SPDX-FileCopyrightText: Copyright (c) 2022-2025 Objectionary.com
|
|
23
|
+
* SPDX-License-Identifier: MIT
|
|
23
24
|
*/
|
|
24
25
|
|
|
25
26
|
const rel = require('relative');
|
|
26
27
|
const path = require('path');
|
|
27
28
|
const {mvnw, flags} = require('../mvnw');
|
|
29
|
+
const {elapsed} = require('../elapsed');
|
|
28
30
|
|
|
29
31
|
/**
|
|
30
32
|
* Command to assemble .XMIR files.
|
|
@@ -33,8 +35,10 @@ const {mvnw, flags} = require('../mvnw');
|
|
|
33
35
|
*/
|
|
34
36
|
module.exports = function(opts) {
|
|
35
37
|
const target = path.resolve(opts.target);
|
|
36
|
-
return
|
|
37
|
-
|
|
38
|
-
|
|
38
|
+
return elapsed((tracked) => {
|
|
39
|
+
return mvnw(['eo:assemble'].concat(flags(opts)), opts.target, opts.batch).then((r) => {
|
|
40
|
+
tracked.print('EO program assembled in %s', rel(target));
|
|
41
|
+
return r;
|
|
42
|
+
});
|
|
39
43
|
});
|
|
40
44
|
};
|
package/src/commands/audit.js
CHANGED
|
@@ -1,25 +1,26 @@
|
|
|
1
|
+
// Copyright (c) 2022-2025 Objectionary.com
|
|
2
|
+
//
|
|
3
|
+
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
// of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
// in the Software without restriction, including without limitation the rights
|
|
6
|
+
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
// copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
// furnished to do so, subject to the following conditions:
|
|
9
|
+
//
|
|
10
|
+
// The above copyright notice and this permission notice shall be included
|
|
11
|
+
// in all copies or substantial portions of the Software.
|
|
12
|
+
//
|
|
13
|
+
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
// FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
19
|
+
// SOFTWARE.
|
|
20
|
+
|
|
1
21
|
/*
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
* Copyright (c) 2022-2024 Objectionary.com
|
|
5
|
-
*
|
|
6
|
-
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
7
|
-
* of this software and associated documentation files (the "Software"), to deal
|
|
8
|
-
* in the Software without restriction, including without limitation the rights
|
|
9
|
-
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
10
|
-
* copies of the Software, and to permit persons to whom the Software is
|
|
11
|
-
* furnished to do so, subject to the following conditions:
|
|
12
|
-
*
|
|
13
|
-
* The above copyright notice and this permission notice shall be included
|
|
14
|
-
* in all copies or substantial portions of the Software.
|
|
15
|
-
*
|
|
16
|
-
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
17
|
-
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
18
|
-
* FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
|
19
|
-
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
20
|
-
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
21
|
-
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
22
|
-
* SOFTWARE.
|
|
22
|
+
* SPDX-FileCopyrightText: Copyright (c) 2022-2025 Objectionary.com
|
|
23
|
+
* SPDX-License-Identifier: MIT
|
|
23
24
|
*/
|
|
24
25
|
|
|
25
26
|
const {mvnw} = require('../mvnw');
|