eo/eo-runtime
2024-07-12 14:33:36 +03:00
..
src Merge pull request #3259 from levBagryansky/3239-BytesRefactoring 2024-07-12 14:33:36 +03:00
LICENSE.txt year up to 2024 2024-01-18 12:25:34 +03:00
pom.xml chore(deps): update dependency org.codehaus.groovy:groovy-xml to v3.0.22 2024-06-30 08:06:08 +00:00
README.md #2894 fix style issues in all markdown files 2024-02-26 13:47:54 +03:00

logo

Maven Central Javadoc

This is runtime for EO.

How to run tests

You can run tests just like this:

mvn clean test

If you want to run tests separately, you can run:

mvn clean test -Dtest="{test}"

Here the variable {test} is the full name of the test, or several test names separated by commas (,).

For example, this EO test:

[] > prints-itself
  assert-that > @
    length.
      as-phi $
    $.greater-than 0

you can run just like this:

mvn clean test -Dtest="EOorg.EOeolang.EOprints_itselfTest"

Note on logging within tests

By default, logging within tests is limited since it produces quite extensive logs which affect performance. However, for debugging/analysis purposes extended (debug) logs can be enabled. For that both JUL and Logback levels need to be set to FINE. This is accomplished by amending the following two files:
test\resources\jul.properties:

.level=FINE

test\resources\logback.xml:

<logger name="org.eolang.Dataized" level="FINE"/>
<logger name="org.eolang.PhDefault" level="FINE"/>

For the latter FINE level must be set to desired object. Dataized will produce extensive logging for dataization process and PhDefault for attributes retrieval process.
By default, dataization will be logged up until nesting level 3. If for some reason deeper dataization log is required it can be achieved by jvm property -Dmax.dataization.log=<N> where N is an integer representing desired nesting level to log.

How to release eo-runtime

Here is some steps to release eo-runtime:

1.To run .rultor.yml script in objectionary/eo. It is better to do it by rultor command in any github comment:

@rultor release, tag is `{new-version}`

Running this script will update the gh-pages git branch. Which contains only .eo objects from the eo-runtime package and the file required by the script: objectionary.lst. This script also will create several files in Maven central repository (eg .jar, .pom etc.).

2.To create a pull request in objectionary/home by pull.sh script in a separate git branch (the name of the branch doesn't matter):

./pull.sh objectionary/eo

This will update all .eo files in gh-pages from objectionary/eo. It will also change the corresponding versions of the eo objects (e.g. from the +version metadata) in the objectionary/home repository.

3.To check and to remove manually either unused or old files. Script didn't do it.

4.To update eo.version in pom.xml in objectionary/home.

5.Finally, all todo must be removed manually.