Skip to content

Releases: ls1intum/Ares

1.9.0

10 Mar 01:00
Compare
Choose a tag to compare

User-Side Changes

  • Add Gradle Support (credits to @ole-ve)
    Allows Gradle projects to use Ares just like in Maven projects. Some recommendations from the README need to be adjusted in a Gradle environment. Gradle support changed the set of enforcer rules required, two were added for Gradle whitelisted packages. A few permissions got adjusted as well, but everything should remain compatible to 1.8.0 apart from the enforcer configuration. For more details, see #191.
  • Update from Jqwik version 1.6.3 to version 1.6.5. See their release notes for details.
  • Update Logback from 1.2.10 to 1.2.11. See their release notes for details.

Developer-Side Changes

  • The tests were restructured, and the integration tests are now run with Java 17 using Gradle in addition to the Maven executions.
  • Multiple small dependency updates:
    • spotless-maven-plugin
    • maven-javadoc-plugin
    • maven-compiler-plugin
    • nexus-staging-maven-plugin
    • actions/checkout

1.8.0

09 Feb 21:08
Compare
Choose a tag to compare

Security

User-Side Changes

  • Completed more parts of the README:
  • Update from Jqwik version 1.6.0 to version 1.6.3. See their release notes for details.
  • Update to AssertJ version 3.22.0. See their 3.22.0 release notes for details.
  • All major Ares annotations are now inherited. See #124 and 792afcb for details.
    In short, this means that Ares annotations can be applied to superclasses of the test classes.
  • Promoted large parts of the API to be stable/maintained. See 5dce034 for details.
  • Removed the experimental (and useless) method display name obfuscation feature (@ObfuscateMethodNamesBeforeDeadline).

Developer-Side Changes

  • README.md is now README.adoc, as AsciiDoc allows for a more expressive documentation. (JUnit 5 User Guide is for example AsciiDoc)
  • A few more tests, e.g. for the new security feature and reflection usage.
  • Multiple minor dependency updates:
    • spotless-maven-plugin
    • maven-jar-plugin
    • maven-compiler-plugin
    • maven-deploy-plugin

1.7.6

17 Jan 13:06
Compare
Choose a tag to compare

Security Hotfix

1.7.5

12 Dec 05:42
d6db4d6
Compare
Choose a tag to compare

User-Side Changes

  • Update to JUnit 5 Jupiter version 5.8.2 and JUnit 5 Platform 1.8.2. See their release notes for details.
  • The common pool (used e.g. for parallel streams and async futures) is now always initialized such that all worker threads reside in the root thread group. This means that Ares will not try to stop the common pool forcefully, which caused the pool to die in the past. The criteria determining which worker threads get interrupted were improved as well. For more details, see 72877c6 and 7a5569d.
  • Minor dependency updates:
    • org.json:json from 20210307 to 20211205

Developer-Side Changes

  • The test tests now test common pool quiescence better (d190bc5)
  • Multiple minor dependency updates:
    • spotless-maven-plugin
    • actions/cache

Note that version 1.7.4 was not published due to a mistake in the publishing process. Version 1.7.5 is equivalent to 1.7.4.

1.7.3

29 Nov 22:25
Compare
Choose a tag to compare

User-Side Changes

  • Updated jqwik from version 1.3.4 to 1.6.0.
    This should have no impact on non-jqwik tests. If you use jqwik or want to switch to jqwik 1.6.0 and use Ares,
    please read #157 carefully. We also introduced the annotation @TrustedThreads to specify laxer thread whitelisting policies,
    as the internals in newer jqwik versions changed significantly and now run in the common pool.

Developer-Side Changes

  • Four new security tests added

1.7.2

18 Nov 21:52
Compare
Choose a tag to compare

User-Side Changes

  • Added an optional strictOrder boolean flag for structural tests that forces the student implementation to match the expected order of parameters exactly.
    Currently, the order of parameters is irrelevant for checking methods and constructors. This grants the students more freedom, but complicates invoking the students' methods. While this will stay the default checking behavior, the new strictOrder option allows checking the expected parameter order as well. For more details and a usage example, see #156 (credits to @JohannesStoehr).
  • Minor dependency updates:
    • logback-classic from 1.2.6 to 1.2.7

Developer-Side Changes

  • Minor dependency updates:
    • spotless-maven-plugin

1.7.1

04 Nov 15:32
Compare
Choose a tag to compare

User-Side Changes

  • Fixed that the structural tests (from de.tum.in.test.api.structural) failed for classes in the default package or classes with equal names located in different packages.
    The tests could not read the classes correctly and threw an unexpected exception; IndexOutOfBoundsException in case of classes in the default package, and UnsupportedOperationException if multiple classes with the same name are found. The class scanning now handles both cases correctly. See #152 (credits to @JohannesStoehr).

Developer-Side Changes

  • Minor dependency updates:
    • spotless-maven-plugin

1.7.0

23 Sep 22:33
Compare
Choose a tag to compare

User-Side Changes

  • Update to JUnit 5 Jupiter version 5.8.1 and JUnit 5 Platform 1.8.1. See their release notes for details.
    Due to a bug fix in assertLinesMatch in junit-team/junit5#2724, the failure message for a special case when using fast-forwards changed.
  • Update to AssertJ version 3.21.0. See their 3.21.0 release notes for details.
  • Ares is ready for JDK-17.
    If 17 is used, Ares will cause a warning in the error output that the security manager mechanism will be deactivated in a future version. For that reason, we added a statement from Ares below the JDK one that the issue is known, linking to #113.
  • Removed the LOGBACK: No context given for ... warning. It will no longer appear in the build and test output.

Developer-Side Changes

  • Add test run using JDK-17
  • Multiple minor dependency updates:
    • spotless-maven-plugin

1.6.0

14 Sep 13:50
Compare
Choose a tag to compare

User-Side Changes

Please also have a look at the post on the future of Ares with upcoming JDK versions #113.

Developer-Side Changes

  • Multiple minor dependency updates:
    • logback-classic
    • spotless-maven-plugin
    • maven-javadoc-plugin
    • maven-enforcer-plugin

1.5.5

09 Jun 10:27
Compare
Choose a tag to compare

User-Side Changes

  • Fixed issue #83 and similar issues, whitelisted code now has more permissions. This can also help with ByteBuddy and the ByteBuddyAgent.
  • Update to JUnit 5 Jupiter version 5.7.2 and JUnit 5 Platform 1.7.2. See their release notes for details.
  • The renaming from AJTS to Ares now also applies to the published artifacts (e.g. the POM). The Maven coordinates (e.g. the artifact id) have not changed.

Please also have a look at the post on the future of Ares with upcoming JDK versions #113.

Developer-Side Changes

  • Test and CI dependency updates