eolang 0.22.0 → 0.23.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
@@ -40,28 +40,30 @@ That's it.
40
40
  You can also do many other things with `eoc` commands
41
41
  (the flow is explained in [this blog post][blog]):
42
42
 
43
- * `register` finds necessary EO files and registers them in a JSON catalog
44
- * `assemble` parses EO files into XMIR, optimizes them,
43
+ * `register` finds necessary `.eo` files and registers them in a JSON catalog
44
+ * `assemble` parses `.eo` files into `.xmir`, optimizes them,
45
45
  and pulls foreign EO objects
46
- * `transpile` converts XMIR to target programming language (Java by default)
47
- * `compile` converts target language sources to binaries
46
+ * `transpile` converts `.xmir` files to the target programming
47
+ language (Java by default)
48
+ * `compile` converts target language sources (e.g., `.java`)
49
+ to binaries (e.g., `.class`)
48
50
  * `link` puts all binaries together into a single executable binary
49
51
  * `dataize` dataizes a single object from the executable binary
50
52
  * `test` dataizes all visible unit tests
51
- * `jeo:disassemble` convert Java `.class` files to `.xmir`
53
+ * `jeo:disassemble` converts Java `.class` files to `.xmir`
52
54
  (via [jeo](https://github.com/objectionary/jeo-maven-plugin))
53
- * `jeo:assemble` convert `.xmir` files to Java `.class` files
55
+ * `jeo:assemble` converts `.xmir` files to Java `.class` files
54
56
  (via [jeo](https://github.com/objectionary/jeo-maven-plugin))
55
57
 
56
58
  There are also commands that help manipulate with XMIR and EO sources
57
59
  (the list is not completed, while some of them are not implemented as of yet):
58
60
 
59
61
  * `audit` inspects all required packages and reports their status
60
- * `foreign` inspects all objects found in the program after `assemble` step
61
- * `sodg` generates SODG from XMIR, further rederable as XML or [Dot][dot]
62
- * `phi` generates PHI files from XMIR
63
- * `unphi` generates XMIR files from PHI files
64
- * `print` generates EO files from PHI files
62
+ * `foreign` inspects all objects found in the program after the `assemble` step
63
+ * `sodg` generates `.sodg` from `.xmir`, further rederable as XML or [Dot][dot]
64
+ * `phi` generates `.phi` files from `.xmir` files
65
+ * `unphi` generates `.xmir` files from `.phi` files
66
+ * `print` generates `.eo` files from `.phi` files
65
67
  * ~~`translate` converts Java/C++/Python/etc. program to EO program~~
66
68
  * ~~`demu` removes `cage` and `memory` objects~~
67
69
  * ~~`dejump` removes `goto` objects~~
package/eo-version.txt CHANGED
@@ -1 +1 @@
1
- 0.39.2
1
+ 0.40.3
package/home-tag.txt CHANGED
@@ -1 +1 @@
1
- 0.38.2
1
+ 55e56e3bb2bdfa3d3e8e139028115790e820f0c1
package/mvnw/pom.xml CHANGED
@@ -29,7 +29,7 @@ SOFTWARE.
29
29
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
30
30
  <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
31
31
  <eo.version>undefined</eo.version>
32
- <jeo.version>undefined</jeo.version>
32
+ <jeo.version>0.6.12</jeo.version>
33
33
  </properties>
34
34
  <dependencies>
35
35
  <dependency>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eolang",
3
- "version": "0.22.0",
3
+ "version": "0.23.0",
4
4
  "author": "Yegor Bugayenko <yegor256@gmail.com> (https://www.yegor256.com/)",
5
5
  "license": "MIT",
6
6
  "repository": "objectionary/eoc",
@@ -47,7 +47,7 @@
47
47
  "grunt-contrib-clean": "2.0.1",
48
48
  "grunt-eslint": "24.3.0",
49
49
  "grunt-mocha-cli": "^7.0.0",
50
- "mocha": "^10.7.3"
50
+ "mocha": "^10.8.0"
51
51
  },
52
52
  "scripts": {
53
53
  "test": "mocha --timeout 1200000"
@@ -38,10 +38,10 @@ module.exports = function(opts) {
38
38
  .concat(
39
39
  [
40
40
  `-Djeo.version=${opts.jeoVersion}`,
41
- `-Djeo.unroll-phi.sourcesDir=${path.resolve(opts.xmirs)}`,
42
- `-Djeo.unroll-phi.outputDir=${path.resolve(opts.unrolled)}`,
43
- `-Djeo.assemble.sourcesDir=${path.resolve(opts.unrolled)}`,
44
- `-Djeo.assemble.outputDir=${path.resolve(opts.classes)}`,
41
+ `-Djeo.unroll-phi.sourcesDir=${path.resolve(opts.target, opts.xmirs)}`,
42
+ `-Djeo.unroll-phi.outputDir=${path.resolve(opts.target, opts.unrolled)}`,
43
+ `-Djeo.assemble.sourcesDir=${path.resolve(opts.target, opts.unrolled)}`,
44
+ `-Djeo.assemble.outputDir=${path.resolve(opts.target, opts.classes)}`,
45
45
  ]
46
46
  ),
47
47
  opts.target, opts.batch
@@ -38,8 +38,8 @@ module.exports = function(opts) {
38
38
  .concat(
39
39
  [
40
40
  `-Djeo.version=${opts.jeoVersion}`,
41
- `-Djeo.disassemble.sourcesDir=${path.resolve(opts.classes)}`,
42
- `-Djeo.disassemble.outputDir=${path.resolve(opts.xmirs)}`,
41
+ `-Djeo.disassemble.sourcesDir=${path.resolve(opts.target, opts.classes)}`,
42
+ `-Djeo.disassemble.outputDir=${path.resolve(opts.target, opts.xmirs)}`,
43
43
  ]
44
44
  ),
45
45
  opts.target, opts.batch
package/src/eoc.js CHANGED
@@ -210,7 +210,7 @@ program.command('phi')
210
210
  .then((r) => coms().assemble(program.opts()))
211
211
  .then((r) => coms().phi({...program.opts(), ...str}));
212
212
  } else {
213
- coms().phi(program.opts());
213
+ coms().phi({...program.opts(), ...str});
214
214
  }
215
215
  });
216
216
 
@@ -350,8 +350,16 @@ program.command('test')
350
350
  program.command('jeo:disassemble')
351
351
  .description('Disassemble .class files to .xmir files')
352
352
  .option('--jeo-version <version>', 'Version of JEO to use', '0.6.11')
353
- .option('--classes <dir>', 'Directory with .class files (reading from it)', 'target/classes')
354
- .option('--xmirs <dir>', 'Directory with .xmir files (writing into it)', 'target/xmir')
353
+ .option(
354
+ '--classes <dir>',
355
+ 'Directory with .class files (relative to --target)',
356
+ 'classes'
357
+ )
358
+ .option(
359
+ '--xmirs <dir>',
360
+ 'Directory with .xmir files (relative to --target)',
361
+ 'xmir'
362
+ )
355
363
  .action((str, opts) => {
356
364
  coms().jeo_disassemble({...program.opts(), ...str});
357
365
  });
@@ -359,9 +367,21 @@ program.command('jeo:disassemble')
359
367
  program.command('jeo:assemble')
360
368
  .description('Assemble .xmir files to .class files')
361
369
  .option('--jeo-version <version>', 'Version of JEO to use', '0.6.11')
362
- .option('--xmirs <dir>', 'Directory with .xmir files (reading from it)', 'target/xmir')
363
- .option('--unrolled <dir>', 'Directory with unrolled .xmir files', 'target/unrolled')
364
- .option('--classes <dir>', 'Directory with .class files (writing into it)', 'target/classes')
370
+ .option(
371
+ '--xmirs <dir>',
372
+ 'Directory with .xmir files (relative to --target)',
373
+ 'xmir'
374
+ )
375
+ .option(
376
+ '--unrolled <dir>',
377
+ 'Directory with unrolled .xmir files (relative to --target)',
378
+ 'unrolled'
379
+ )
380
+ .option(
381
+ '--classes <dir>',
382
+ 'Directory with .class files (relative to --target)',
383
+ 'classes'
384
+ )
365
385
  .action((str, opts) => {
366
386
  coms().jeo_assemble({...program.opts(), ...str});
367
387
  });
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.22.0',
29
- when: '2024-10-25'
28
+ what: '0.23.0',
29
+ when: '2024-10-30'
30
30
  };