eolang 0.27.0 → 0.28.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/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # EOLANG Command Line Took-Kit
1
+ # EOLANG Command Line Tool-Kit
2
2
 
3
3
  [![EO principles respected here](https://www.elegantobjects.org/badge.svg)](https://www.elegantobjects.org)
4
4
  [![We recommend IntelliJ IDEA](https://www.elegantobjects.org/intellij-idea.svg)](https://www.jetbrains.com/idea/)
@@ -9,6 +9,10 @@
9
9
  [![Hits-of-Code](https://hitsofcode.com/github/objectionary/eoc)](https://hitsofcode.com/view/github/objectionary/eoc)
10
10
  [![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/objectionary/eoc/blob/master/LICENSE.txt)
11
11
 
12
+ This is a command-line tool-kit for [EO](https://www.eolang.org)
13
+ programming languages, allowing you to compile EO programs, test, dataize,
14
+ and check for errors.
15
+
12
16
  First, you install [npm][npm-install] and [Java SE][java-se].
13
17
 
14
18
  Then, you install [eolang][npm] package:
@@ -50,6 +54,7 @@ to binaries (e.g., `.class`)
50
54
  * `link` puts all binaries together into a single executable binary
51
55
  * `dataize` dataizes a single object from the executable binary
52
56
  * `test` dataizes all visible unit tests
57
+ * `lint` finds style-related errors in EO and XMIR files
53
58
  * `jeo:disassemble` converts Java `.class` files to `.xmir`
54
59
  (via [jeo](https://github.com/objectionary/jeo-maven-plugin))
55
60
  * `jeo:assemble` converts `.xmir` files to Java `.class` files
package/eo-version.txt CHANGED
@@ -1 +1 @@
1
- 0.48.2
1
+ 0.49.1
package/home-tag.txt CHANGED
@@ -1 +1 @@
1
- 0.48.2
1
+ 0.49.1
package/mvnw/pom.xml CHANGED
@@ -30,6 +30,8 @@ SOFTWARE.
30
30
  <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
31
31
  <eo.version>undefined</eo.version>
32
32
  <jeo.version>0.6.22</jeo.version>
33
+ <heap-size>256M</heap-size>
34
+ <stack-size>64M</stack-size>
33
35
  </properties>
34
36
  <dependencies>
35
37
  <dependency>
@@ -101,6 +103,8 @@ SOFTWARE.
101
103
  <failIfNoTests>true</failIfNoTests>
102
104
  <useFile>false</useFile>
103
105
  <trimStackTrace>false</trimStackTrace>
106
+ <runOrder>random</runOrder>
107
+ <argLine>-Xmx${heap-size} -Xss${stack-size}</argLine>
104
108
  </configuration>
105
109
  </plugin>
106
110
  </plugins>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eolang",
3
- "version": "0.27.0",
3
+ "version": "0.28.0",
4
4
  "author": "Yegor Bugayenko <yegor256@gmail.com> (https://www.yegor256.com/)",
5
5
  "license": "MIT",
6
6
  "repository": "objectionary/eoc",
@@ -33,7 +33,7 @@
33
33
  "colors": "1.4.0",
34
34
  "commander": "12.1.0",
35
35
  "eo2js": "0.0.7",
36
- "fast-xml-parser": "4.5.0",
36
+ "fast-xml-parser": "4.5.1",
37
37
  "node": "23.4.0",
38
38
  "relative": "3.0.2",
39
39
  "semver": "7.6.3",
@@ -41,7 +41,7 @@
41
41
  "xmlhttprequest": "1.8.0"
42
42
  },
43
43
  "devDependencies": {
44
- "eslint": "9.14.0",
44
+ "eslint": "9.17.0",
45
45
  "eslint-config-google": "0.14.0",
46
46
  "grunt": "1.6.1",
47
47
  "grunt-contrib-clean": "2.0.1",
@@ -30,5 +30,11 @@ const {mvnw, flags} = require('../../mvnw');
30
30
  * @return {Promise} of compile task
31
31
  */
32
32
  module.exports = function(opts) {
33
- return mvnw(['surefire:test'].concat(flags(opts)));
33
+ return mvnw(
34
+ [
35
+ 'surefire:test',
36
+ `-Dstack-size=${opts.stack}`,
37
+ `-Dheap-size=${opts.heap}`,
38
+ ].concat(flags(opts))
39
+ );
34
40
  };
@@ -36,7 +36,7 @@ module.exports = function(opts) {
36
36
  const extra = [
37
37
  `-Deo.failOnWarning=${opts.easy ? 'false' : 'true'}`,
38
38
  ];
39
- if (semver.gte(opts.parser, '0.45.0')) {
39
+ if (opts.parser.endsWith('-SNAPSHOT') || semver.gte(opts.parser, '0.45.0')) {
40
40
  return mvnw(
41
41
  ['eo:lint'].concat(flags(opts)).concat(extra),
42
42
  opts.target, opts.batch
package/src/eoc.js CHANGED
@@ -310,7 +310,7 @@ program.command('link')
310
310
 
311
311
  program.command('dataize')
312
312
  .description('Run the single executable binary and dataize an object')
313
- .option('--stack <size>', 'Set stack size for the virtual machine', '1M')
313
+ .option('--stack <size>', 'Set stack size for the virtual machine', '64M')
314
314
  .option('--heap <size>', 'Set the heap size for the VM', '256M')
315
315
  .action((str, opts) => {
316
316
  clear(str);
@@ -333,6 +333,8 @@ program.command('dataize')
333
333
 
334
334
  program.command('test')
335
335
  .description('Run all visible unit tests')
336
+ .option('--stack <size>', 'Set stack size for the virtual machine', '64M')
337
+ .option('--heap <size>', 'Set the heap size for the VM', '256M')
336
338
  .action((str, opts) => {
337
339
  clear(str);
338
340
  if (program.opts().alone == undefined) {
@@ -342,9 +344,9 @@ program.command('test')
342
344
  .then((r) => coms().transpile(program.opts()))
343
345
  .then((r) => coms().compile(program.opts()))
344
346
  .then((r) => coms().link(program.opts()))
345
- .then((r) => coms().test(program.opts()));
347
+ .then((r) => coms().test({...program.opts(), ...str}));
346
348
  } else {
347
- coms().test(program.opts());
349
+ coms().test({...program.opts(), ...str});
348
350
  }
349
351
  });
350
352
 
package/src/version.js CHANGED
@@ -25,6 +25,6 @@
25
25
  // The values here are replaced automatically by the .rultor.yml script,
26
26
  // at the "release" pipeline:
27
27
  module.exports = {
28
- what: '0.27.0',
29
- when: '2024-12-13'
28
+ what: '0.28.0',
29
+ when: '2024-12-16'
30
30
  };