Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump de.learnlib:learnlib-parent from 0.17.0 to 0.18.0 #86

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Feb 10, 2025

Bumps de.learnlib:learnlib-parent from 0.17.0 to 0.18.0.

Release notes

Sourced from de.learnlib:learnlib-parent's releases.

learnlib-0.18.0

Full changelog

Added

  • LearnLib now supports JPMS modules. All artifacts now provide a module-info descriptor except of the distribution artifacts (for Maven-less environments) which only provide an Automatic-Module-Name due to non-modular dependencies. Note that while this is a Java 9+ feature, LearnLib still supports Java 8 byte code for the remaining class files.
  • Added the L# active learning algorithm (thanks to @​tiferrei).
  • The ADTLearner has been refactored to no longer use the (now-removed) SymbolQueryOracle but a new AdaptiveMembershipOracle instead which supports answering queries in parallel (thanks to @​leonthalee).
  • The ADTLearner can now be parameterized in its counterexample analysis method (thanks to @​mtf90).
  • Added an InterningMembershipOracle (including refinements) to the learnlib-cache artifact that interns query responses to reduce memory consumption of large data structures. This exports the internal concepts of the DHC learner (which no longer interns query responses automatically, (thanks to @​mtf90).
  • StaticParallelOracleBuilder now supports custom executor services (thanks to @​mtf90).

Changed

  • The JPMS support introduces several changes:
    • You now require at least a JDK 11 to build LearnLib.
    • We use modules to better structure the aggregated JavaDoc. Since there exist breaking changes between Java 8 and Java 9 regarding documentation (see package-list vs. element-list), you can no longer link against the LearnLib documentation on JDK 8 builds.
    • Split packages had to be refactored.
      • The de.learnlib.oracle.parallelism interfaces in the learnlib-api artifact have been moved to the de.learnlib.oracle package.
      • The ThreadSafe caches have been moved from the learnlib-parallelism artifact to the learnlib-cache artifact.
      • The GrowingAlphabet and Resumable tests from the learnlib-learner-it-support artifact been moved to the learnlib-test-support artifact.
      • The OTUtils class no longer provides the displayHTMLInBrowser methods in order to not depend on java.desktop. If you relied on this functionality, use the writeHTMLToFile methods instead and call Desktop.getDesktop().open(file.toURI()) yourself.
      • The classes in the learnlib-learning-examples artifact have their package renamed to de.learnlib.testsupport.example.
  • The AbstractVisualizationTest has been refactored into the VisualizationUtils factory.
  • Various counters (especially *Counter*SULs) have been streamlined. In most cases there now exists a single counter that tracks multiple properties.
  • The ReuseOracleBuilder and ReuseTreeBuilder classes are now auto-generated and therefore reside in the respective packages of their previously enclosing classes.
  • The TTTLearnerMealy#createTransition method no longer queries for its transition output directly, but instead requires a call to initTransitions now.
  • With the removal of the learnlib-annotation-processor artifact (see below), the learnlib-build-config artifact is now part of the de.learnlib group again.
  • The learnlib-datastructure-ot, learnlib-datastructure-dt, learnlib-datastructure-list, and learnlib-datastructure-pta artifacts have been merged into a new learnlib-datastructures artifact.
  • The learnlib-oml artifact (including its packages and class names) has been renamed to learnlib-lambda.
  • Switched to AutomataLib 0.12.0.

Removed

  • The de.learnlib.tooling:learnlib-annotation-processor artifact has been dropped. The functionality has been moved to a standalone project.
  • The de.learnlib:learnlib-rpni-edsm and de.learnlib:learnlib-rpni-mdl artifacts have been dropped. The code has been merged with the de.learnlib:learnlib-rpni artifact.
  • MQUtil has been stripped of unused methods. Especially the query method can be simulated by the respective oracles themselves.
  • PropertyOracles can no longer set a property. This value is now immutable and must be provided during instantiation. Previously, the internal state wasn't updated accordingly if a property was overridden.
  • SymbolQueryOracles (and related code such as the respective caches, counters, etc.) have been removed without replacement. Equivalent functionality on the basis of the new AdaptiveMembershipOracles is available instead.

Fixed

  • Improved query batching of TTT learner (both the regular and visibly push-down version).

New Contributors

Changelog

Sourced from de.learnlib:learnlib-parent's changelog.

[0.18.0] - 2025-02-06

Full changelog

Added

  • LearnLib now supports JPMS modules. All artifacts now provide a module-info descriptor except of the distribution artifacts (for Maven-less environments) which only provide an Automatic-Module-Name due to non-modular dependencies. Note that while this is a Java 9+ feature, LearnLib still supports Java 8 byte code for the remaining class files.
  • Added the L# active learning algorithm (thanks to Tiago Ferreira).
  • The ADTLearner has been refactored to no longer use the (now-removed) SymbolQueryOracle but a new AdaptiveMembershipOracle instead which supports answering queries in parallel (thanks to Leon Vitorovic).
  • The ADTLearner can now be parameterized in its counterexample analysis method.
  • Added an InterningMembershipOracle (including refinements) to the learnlib-cache artifact that interns query responses to reduce memory consumption of large data structures. This exports the internal concepts of the DHC learner (which no longer interns query responses automatically).
  • StaticParallelOracleBuilder now supports custom executor services.

Changed

  • The JPMS support introduces several changes:
    • You now require at least a JDK 11 to build LearnLib.
    • We use modules to better structure the aggregated JavaDoc. Since there exist breaking changes between Java 8 and Java 9 regarding documentation (see package-list vs. element-list), you can no longer link against the LearnLib documentation on JDK 8 builds.
    • Split packages had to be refactored.
      • The de.learnlib.oracle.parallelism interfaces in the learnlib-api artifact have been moved to the de.learnlib.oracle package.
      • The ThreadSafe caches have been moved from the learnlib-parallelism artifact to the learnlib-cache artifact.
      • The GrowingAlphabet and Resumable tests from the learnlib-learner-it-support artifact been moved to the learnlib-test-support artifact.
      • The OTUtils class no longer provides the displayHTMLInBrowser methods in order to not depend on java.desktop. If you relied on this functionality, use the writeHTMLToFile methods instead and call Desktop.getDesktop().open(file.toURI()) yourself.
      • The classes in the learnlib-learning-examples artifact have their package renamed to de.learnlib.testsupport.example.
  • The AbstractVisualizationTest has been refactored into the VisualizationUtils factory.
  • Various counters (especially *Counter*SULs) have been streamlined. In most cases there now exists a single counter that tracks multiple properties.
  • The ReuseOracleBuilder and ReuseTreeBuilder classes are now auto-generated and therefore reside in the respective packages of their previously enclosing classes.
  • The TTTLearnerMealy#createTransition method no longer queries for its transition output directly, but instead requires a call to initTransitions now.
  • With the removal of the learnlib-annotation-processor artifact (see below), the learnlib-build-config artifact is now part of the de.learnlib group again.
  • The learnlib-datastructure-ot, learnlib-datastructure-dt, learnlib-datastructure-list, and learnlib-datastructure-pta artifacts have been merged into a new learnlib-datastructures artifact.
  • The learnlib-oml artifact (including its packages and class names) has been renamed to learnlib-lambda.
  • Switched to AutomataLib 0.12.0.

Removed

  • The de.learnlib.tooling:learnlib-annotation-processor artifact has been dropped. The functionality has been moved to a standalone project.
  • The de.learnlib:learnlib-rpni-edsm and de.learnlib:learnlib-rpni-mdl artifacts have been dropped. The code has been merged with the de.learnlib:learnlib-rpni artifact.
  • MQUtil has been stripped of unused methods. Especially the query method can be simulated by the respective oracles themselves.
  • PropertyOracles can no longer set a property. This value is now immutable and must be provided during instantiation. Previously, the internal state wasn't updated accordingly if a property was overridden.
  • SymbolQueryOracles (and related code such as the respective caches, counters, etc.) have been removed without replacement. Equivalent functionality on the basis of the new AdaptiveMembershipOracles is available instead.

Fixed

  • Improved query batching of TTT learner (both the regular and visibly push-down version).
Commits
  • ac1a3b2 [maven-release-plugin] prepare release learnlib-0.18.0
  • 555b0e4 partially revert e368a91
  • d527929 wording
  • d3a192d test api conformance
  • 9909fdd make ADT configurable in its suffix finder
  • 9afd161 cleanup ADT documentation
  • e368a91 lambda: analyze counterexamples exhaustively
  • 527f580 lsharp: remove side-effects of getHypothesisModel()
  • 689f8fb switch to AutomataLib 0.12.0
  • 68eabd4 clarify documentation
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [de.learnlib:learnlib-parent](https://github.com/LearnLib/learnlib) from 0.17.0 to 0.18.0.
- [Release notes](https://github.com/LearnLib/learnlib/releases)
- [Changelog](https://github.com/LearnLib/learnlib/blob/develop/CHANGELOG.md)
- [Commits](LearnLib/learnlib@learnlib-0.17.0...learnlib-0.18.0)

---
updated-dependencies:
- dependency-name: de.learnlib:learnlib-parent
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file java Pull requests that update Java code labels Feb 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file java Pull requests that update Java code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants