Skip to content

fix(deps): update dependency org.tomlj:tomlj to v1.3.0 - #153

Merged
sasasin merged 1 commit into
masterfrom
renovate/tomlj.version
Sep 20, 2026
Merged

sasasin merged 1 commit into
masterfrom
renovate/tomlj.version

Conversation

@renovate

@renovate renovate Bot commented Sep 19, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
org.tomlj:tomlj 1.2.0 → 1.3.0 age confidence

Release Notes

tomlj/tomlj (org.tomlj:tomlj)

v1.3.0

Compare Source

TomlJ is a parser for Tom's Obvious, Minimal Language (TOML).

This release is mostly about error reporting: what TomlJ says when a document is wrong, and how much of the document it can still make sense of afterwards.

Changes since last release

Error reporting and recovery
  • A line that could not begin a key/value pair or table header — one starting with @, =, . or ]], say — used to make the parser discard every later line, as did two or more stray tokens after an expression. Recovery now reports the line and resumes on the next one, so a document of a = 1, @ and b = 2 yields both a and b rather than only a.
  • An array, inline table or string that is never closed is reported where the document moves on, and the error now names the line and column at which the value was opened.
  • Error messages name the key or value at fault rather than only the token.
  • Text already reported as an error is passed over, rather than producing a second, misleading error for the same input.
  • A multi-line value ends at the first line that cannot continue it, so a missing value no longer swallows the remainder of the document.
Nesting depth
  • Tables and arrays may nest at most 128 levels deep by default. A document nested deeper is now reported as a parse error, where previously it could exhaust the stack and throw StackOverflowError.
  • The new TomlParseOptions sets that limit, and Toml.parse takes it alongside the existing TomlVersion overloads:
    Toml.parse(source, TomlParseOptions.defaults().withMaxNestingDepth(16));
Specification conformance
  • Unpaired surrogates in strings and comments are rejected, as is \' as an escape in a basic string, and extending an inline table with a table header or dotted key.
  • An invalid quoted key in a table header, a malformed zone offset, and a negative second fraction are each reported as errors instead of throwing out of Toml.parse.
  • Newlines in multi-line strings are normalized to \n.
  • The sign of a -00 zone offset hour is preserved, and a date or time directly before a closing bracket is accepted.
  • A surrogate pair split across two reads from a Reader is no longer duplicated.
  • Array elements are positioned at the value rather than at the preceding newline.
  • An invalid key passed to get(String) and the other dotted-key methods throws IllegalArgumentException.
Writing TOML
  • NaN and infinity are written as TOML float literals.
  • A standalone array of tables is written as an array literal, and an array mixing tables with other values is written inline.
  • Empty keys are quoted, and apostrophes are no longer escaped in basic strings.
  • Valid toml-test cases are now checked to survive a round trip through toToml().
Performance
  • Runs of digits and runs of string characters are lexed as single tokens rather than character by character, which makes integers dramatically faster to lex.
  • Allocation while parsing is reduced by around a fifth.
Note for existing users

Three of the above can change the result for a document that parsed before: the 128-level nesting limit, IllegalArgumentException for an invalid key, and newline normalization in multi-line strings.

Getting TomlJ

TomlJ is published to Maven Central.

To include using Gradle, add the following to your dependencies:

implementation 'org.tomlj:tomlj:1.3.0'

To include using Maven:

<dependency>
  <groupId>org.tomlj</groupId>
  <artifactId>tomlj</artifactId>
  <version>1.3.0</version>
</dependency>

You may also download the jars directly and include them in your project.

Usage and Documentation

For basic usage, please see the README. Complete documentation, in Javadoc, is available here: http://tomlj.org/docs/java/1.3.0/

Signature

All artifacts and release tags are signed by Chris Leishman, using key id 0xB5A9E81B565E89E0.


Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@sasasin
sasasin merged commit a6436f9 into master Sep 20, 2026
5 checks passed
@sasasin
sasasin deleted the renovate/tomlj.version branch September 20, 2026 07:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant