dependabot[bot] opened a new pull request #863:
URL: https://github.com/apache/isis/pull/863


   Bumps `archunit.version` from 0.22.0 to 0.23.1.
   Updates `archunit-junit5-api` from 0.22.0 to 0.23.1
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/TNG/ArchUnit/releases";>archunit-junit5-api's 
releases</a>.</em></p>
   <blockquote>
   <h2>ArchUnit 0.23.1</h2>
   <h1>Bug Fixes</h1>
   <ul>
   <li>Fix exception <code>Never found a JavaCodeUnit that matches supposed 
origin...</code> occurring with Kotlin inline functions where the descriptor of 
a method deviates from the signature (this was introduced by checking the 
return type of the method as well when looking for a call origin in <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/714";>#714</a>; 
see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/804";>#804</a>, 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/807";>#807</a>)</li>
   <li>Fix optional layers of <code>LayeredArchitecture</code> failing with the 
new default behavior <code>archRule.failOnEmptyShould = true</code> (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/809";>#809</a>; 
thanks a lot to <a 
href="https://github.com/oberprah";><code>@​oberprah</code></a>)</li>
   </ul>
   <h1>Enhancements</h1>
   <ul>
   <li>Log automatic resolution configuration on debug to reduce log clutter 
(see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/802";>#802</a>)</li>
   <li>Add new Method <code>ArchRule.allowEmptyShould(boolean)</code> to 
override the configured <code>archRule.failOnEmptyShould</code> configuration 
on a per rule basis (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/803";>#803</a>, 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/806";>#806</a>, 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/808";>#808</a>; 
thanks a lot to <a 
href="https://github.com/oberprah";><code>@​oberprah</code></a>)</li>
   </ul>
   <h2>ArchUnit 0.23.0</h2>
   <h1>Breaking Changes</h1>
   <ul>
   <li>As mentioned in Enhancements/Core <code>ArchRules</code> will now by 
default reject evaluating if the set passed to the <code>should</code>-clause 
is empty. This will break existing rules that don't check any elements in their 
<code>should</code>-clause. You can restore the old behavior by setting the 
ArchUnit property <code>archRule.failOnEmptyShould=false</code></li>
   </ul>
   <h1>Bug Fixes</h1>
   <ul>
   <li>Fix wrong origins of <code>JavaCall</code> in case of bridge methods. If 
a class had two methods with the exact same name and parameter types the 
<code>origin</code> of a <code>JavaCall</code> was picked randomly from them. 
It now always picks the non-synthetic method (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/513";>#513</a>)</li>
   <li>Fix non-deterministic return value of 
<code>JavaCodeUnit.getMethod()</code>. In case of bridge methods there might be 
more than one method matching the exact same name and parameters. In these 
cases the result of <code>getMethod()</code> was random. It now always picks 
the non-synthetic method (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/256";>#256</a>)</li>
   <li><code>layeredArchitecture()</code> will now allow to combine 
<code>mayOnlyBeAccessedBy...</code> and <code>mayOnlyAccess...</code>. 
Previously <code>mayOnlyAccess...</code> would forbid all incoming dependencies 
(see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/739";>#739</a>; 
thanks a lot to <a 
href="https://github.com/hankem";><code>@​hankem</code></a>)</li>
   </ul>
   <h1>Enhancements</h1>
   <h2>Core</h2>
   <ul>
   <li>Members targeted by <code>AccessTarget</code> are now resolved like the 
Java Reflection API would do it. Previously <code>AccessTarget.resolve()</code> 
would return a set of matching members, the new replacement 
<code>AccessTarget.resolveMember()</code> returns an optional member making it 
a lot easier to handle (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/722";>#722</a>)</li>
   <li><code>JavaClass</code> now knows its 
<code>methodReferencesFromSelf</code> (e.g. <code>Object::toString</code>) and 
<code>constructorReferencesFromSelf</code> (e.g. <code>Object::new</code>) (see 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/215";>#215</a>; 
thanks a lot to <a 
href="https://github.com/KorSin";><code>@​KorSin</code></a>)</li>
   <li><code>ArchRules</code> will now by default reject evaluating if the set 
passed to the <code>should</code>-clause is empty. This prevents implementation 
errors like picking a package in <code>that()...</code> that doesn't even exist 
and thus composing a rule that doesn't check anything (compare the <a 
href="https://www.archunit.org/userguide/html/000_Index.html#_fail_rules_on_empty_should";>user
 guide</a>; see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/774";>#774</a>; 
thanks a lot <a 
href="https://github.com/oberprah";><code>@​oberprah</code></a>)</li>
   <li>The automatic import dependency resolution now resolves classes missing 
from the import that are <strong>only</strong> referenced
   <ul>
   <li>as class object (e.g. Foo.class)</li>
   <li>in a throws clause (e.g. <code>someMethod() throws 
FooException</code>)</li>
   <li>in an instanceof check (e.g. <code>obj instanceof Foo</code>)</li>
   <li>as an array component type (e.g. <code>Foo[] array;</code>)</li>
   <li>as an annotation parameter (e.g. <code>@SomeAnnotation(type = 
Foo.class)</code>)</li>
   <li>as part of a generic type signature (e.g. <code>List&lt;? extends 
Foo&gt;</code>)</li>
   <li>Furthermore, the resolution behavior can now be tweaked to resolve 
deeper or not resolve at all. Thus, users can decide between resolving 
additional types and performance (compare the <a 
href="https://www.archunit.org/userguide/html/000_Index.html#_configuring_the_number_of_resolution_iterations";>user
 guide</a>; see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/728";>#728</a>)</li>
   </ul>
   </li>
   <li>New predefined <code>ImportOption</code> to exclude 
<code>package-info.class</code> files (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/793";>#793</a>; 
thanks a lot to <a 
href="https://github.com/TomerFi";><code>@​TomerFi</code></a>)</li>
   </ul>
   <h2>Lang</h2>
   <ul>
   <li>Analogously to <code>classes()</code>, there now exists a method 
<code>members()...should().containNumberOfElements(predicate)</code> (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/179";>#179</a>; 
thanks a lot to <a 
href="https://github.com/oberprah";><code>@​oberprah</code></a>)</li>
   </ul>
   <h2>Library</h2>
   <ul>
   <li><code>PlantUmlArchCondition</code> now rejects files that don't specify 
any components at all or are of an invalid format (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/735";>#735</a>; 
thanks a lot to <a 
href="https://github.com/pfichtner";><code>@​pfichtner</code></a>)</li>
   </ul>
   <h2>JUnit</h2>
   <ul>
   <li>Tests can now be run if their classes are loaded by the context 
<code>ClassLoader</code> instead of the ArchUnit <code>ClassLoader</code> (see 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/781";>#781</a>; 
thanks a lot to <a 
href="https://github.com/stuartwdouglas";><code>@​stuartwdouglas</code></a>)</li>
   </ul>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/d236cd3b277e67c0d2e3fe41738fa1afa9c56888";><code>d236cd3</code></a>
 prepare release 0.23.1</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/c913648c56915cfbe962cfde582aeabb3da7e0a3";><code>c913648</code></a>
 add the possibility to allow empty should per rule <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/816";>#816</a></li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/d7a928b743974e18e0f08f5b723fd6fd3d46c46c";><code>d7a928b</code></a>
 add method <code>ArchRule.allowEmptyShould(..)</code></li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/2ebe9fbf5acfa6151fe932c261cb8c1a390e07eb";><code>2ebe9fb</code></a>
 remove configuration <code>archRule.failOnEmptyShould=false</code> for 
tests</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/a7557140607f5d764e5eacdd7d7b69c3ccb48a34";><code>a755714</code></a>
 make <code>LayeredArchitecture</code> immutable</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/246daae660b3fd66c0290d908d49818d39b4476f";><code>246daae</code></a>
 Fix bug where call origins cannot be found on descriptor signature mismatch <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/812";>#812</a></li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/87f1b15f5961b68441d849e777383e16014b86d0";><code>87f1b15</code></a>
 compare descriptor to find call origins</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/63618cb70238b96a11591410e1c0fae409e26a56";><code>63618cb</code></a>
 fix call origin cannot be found if descriptor and signature mismatch</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/a98c4d65b795e7a52327e1b21d5a151825fab075";><code>a98c4d6</code></a>
 log dependency resolution process configuration on debug</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/262880301a049d08694879809d9dc0759d6724ce";><code>2628803</code></a>
 fix <code>compileJdk9mainJava</code> task dependencies</li>
   <li>Additional commits viewable in <a 
href="https://github.com/TNG/ArchUnit/compare/v0.22.0...v0.23.1";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   Updates `archunit-junit5-engine` from 0.22.0 to 0.23.1
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a 
href="https://github.com/TNG/ArchUnit/releases";>archunit-junit5-engine's 
releases</a>.</em></p>
   <blockquote>
   <h2>ArchUnit 0.23.1</h2>
   <h1>Bug Fixes</h1>
   <ul>
   <li>Fix exception <code>Never found a JavaCodeUnit that matches supposed 
origin...</code> occurring with Kotlin inline functions where the descriptor of 
a method deviates from the signature (this was introduced by checking the 
return type of the method as well when looking for a call origin in <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/714";>#714</a>; 
see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/804";>#804</a>, 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/807";>#807</a>)</li>
   <li>Fix optional layers of <code>LayeredArchitecture</code> failing with the 
new default behavior <code>archRule.failOnEmptyShould = true</code> (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/809";>#809</a>; 
thanks a lot to <a 
href="https://github.com/oberprah";><code>@​oberprah</code></a>)</li>
   </ul>
   <h1>Enhancements</h1>
   <ul>
   <li>Log automatic resolution configuration on debug to reduce log clutter 
(see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/802";>#802</a>)</li>
   <li>Add new Method <code>ArchRule.allowEmptyShould(boolean)</code> to 
override the configured <code>archRule.failOnEmptyShould</code> configuration 
on a per rule basis (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/803";>#803</a>, 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/806";>#806</a>, 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/808";>#808</a>; 
thanks a lot to <a 
href="https://github.com/oberprah";><code>@​oberprah</code></a>)</li>
   </ul>
   <h2>ArchUnit 0.23.0</h2>
   <h1>Breaking Changes</h1>
   <ul>
   <li>As mentioned in Enhancements/Core <code>ArchRules</code> will now by 
default reject evaluating if the set passed to the <code>should</code>-clause 
is empty. This will break existing rules that don't check any elements in their 
<code>should</code>-clause. You can restore the old behavior by setting the 
ArchUnit property <code>archRule.failOnEmptyShould=false</code></li>
   </ul>
   <h1>Bug Fixes</h1>
   <ul>
   <li>Fix wrong origins of <code>JavaCall</code> in case of bridge methods. If 
a class had two methods with the exact same name and parameter types the 
<code>origin</code> of a <code>JavaCall</code> was picked randomly from them. 
It now always picks the non-synthetic method (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/513";>#513</a>)</li>
   <li>Fix non-deterministic return value of 
<code>JavaCodeUnit.getMethod()</code>. In case of bridge methods there might be 
more than one method matching the exact same name and parameters. In these 
cases the result of <code>getMethod()</code> was random. It now always picks 
the non-synthetic method (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/256";>#256</a>)</li>
   <li><code>layeredArchitecture()</code> will now allow to combine 
<code>mayOnlyBeAccessedBy...</code> and <code>mayOnlyAccess...</code>. 
Previously <code>mayOnlyAccess...</code> would forbid all incoming dependencies 
(see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/739";>#739</a>; 
thanks a lot to <a 
href="https://github.com/hankem";><code>@​hankem</code></a>)</li>
   </ul>
   <h1>Enhancements</h1>
   <h2>Core</h2>
   <ul>
   <li>Members targeted by <code>AccessTarget</code> are now resolved like the 
Java Reflection API would do it. Previously <code>AccessTarget.resolve()</code> 
would return a set of matching members, the new replacement 
<code>AccessTarget.resolveMember()</code> returns an optional member making it 
a lot easier to handle (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/722";>#722</a>)</li>
   <li><code>JavaClass</code> now knows its 
<code>methodReferencesFromSelf</code> (e.g. <code>Object::toString</code>) and 
<code>constructorReferencesFromSelf</code> (e.g. <code>Object::new</code>) (see 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/215";>#215</a>; 
thanks a lot to <a 
href="https://github.com/KorSin";><code>@​KorSin</code></a>)</li>
   <li><code>ArchRules</code> will now by default reject evaluating if the set 
passed to the <code>should</code>-clause is empty. This prevents implementation 
errors like picking a package in <code>that()...</code> that doesn't even exist 
and thus composing a rule that doesn't check anything (compare the <a 
href="https://www.archunit.org/userguide/html/000_Index.html#_fail_rules_on_empty_should";>user
 guide</a>; see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/774";>#774</a>; 
thanks a lot <a 
href="https://github.com/oberprah";><code>@​oberprah</code></a>)</li>
   <li>The automatic import dependency resolution now resolves classes missing 
from the import that are <strong>only</strong> referenced
   <ul>
   <li>as class object (e.g. Foo.class)</li>
   <li>in a throws clause (e.g. <code>someMethod() throws 
FooException</code>)</li>
   <li>in an instanceof check (e.g. <code>obj instanceof Foo</code>)</li>
   <li>as an array component type (e.g. <code>Foo[] array;</code>)</li>
   <li>as an annotation parameter (e.g. <code>@SomeAnnotation(type = 
Foo.class)</code>)</li>
   <li>as part of a generic type signature (e.g. <code>List&lt;? extends 
Foo&gt;</code>)</li>
   <li>Furthermore, the resolution behavior can now be tweaked to resolve 
deeper or not resolve at all. Thus, users can decide between resolving 
additional types and performance (compare the <a 
href="https://www.archunit.org/userguide/html/000_Index.html#_configuring_the_number_of_resolution_iterations";>user
 guide</a>; see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/728";>#728</a>)</li>
   </ul>
   </li>
   <li>New predefined <code>ImportOption</code> to exclude 
<code>package-info.class</code> files (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/793";>#793</a>; 
thanks a lot to <a 
href="https://github.com/TomerFi";><code>@​TomerFi</code></a>)</li>
   </ul>
   <h2>Lang</h2>
   <ul>
   <li>Analogously to <code>classes()</code>, there now exists a method 
<code>members()...should().containNumberOfElements(predicate)</code> (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/179";>#179</a>; 
thanks a lot to <a 
href="https://github.com/oberprah";><code>@​oberprah</code></a>)</li>
   </ul>
   <h2>Library</h2>
   <ul>
   <li><code>PlantUmlArchCondition</code> now rejects files that don't specify 
any components at all or are of an invalid format (see <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/735";>#735</a>; 
thanks a lot to <a 
href="https://github.com/pfichtner";><code>@​pfichtner</code></a>)</li>
   </ul>
   <h2>JUnit</h2>
   <ul>
   <li>Tests can now be run if their classes are loaded by the context 
<code>ClassLoader</code> instead of the ArchUnit <code>ClassLoader</code> (see 
<a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/781";>#781</a>; 
thanks a lot to <a 
href="https://github.com/stuartwdouglas";><code>@​stuartwdouglas</code></a>)</li>
   </ul>
   <!-- raw HTML omitted -->
   </blockquote>
   <p>... (truncated)</p>
   </details>
   <details>
   <summary>Commits</summary>
   <ul>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/d236cd3b277e67c0d2e3fe41738fa1afa9c56888";><code>d236cd3</code></a>
 prepare release 0.23.1</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/c913648c56915cfbe962cfde582aeabb3da7e0a3";><code>c913648</code></a>
 add the possibility to allow empty should per rule <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/816";>#816</a></li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/d7a928b743974e18e0f08f5b723fd6fd3d46c46c";><code>d7a928b</code></a>
 add method <code>ArchRule.allowEmptyShould(..)</code></li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/2ebe9fbf5acfa6151fe932c261cb8c1a390e07eb";><code>2ebe9fb</code></a>
 remove configuration <code>archRule.failOnEmptyShould=false</code> for 
tests</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/a7557140607f5d764e5eacdd7d7b69c3ccb48a34";><code>a755714</code></a>
 make <code>LayeredArchitecture</code> immutable</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/246daae660b3fd66c0290d908d49818d39b4476f";><code>246daae</code></a>
 Fix bug where call origins cannot be found on descriptor signature mismatch <a 
href="https://github-redirect.dependabot.com/TNG/ArchUnit/issues/812";>#812</a></li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/87f1b15f5961b68441d849e777383e16014b86d0";><code>87f1b15</code></a>
 compare descriptor to find call origins</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/63618cb70238b96a11591410e1c0fae409e26a56";><code>63618cb</code></a>
 fix call origin cannot be found if descriptor and signature mismatch</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/a98c4d65b795e7a52327e1b21d5a151825fab075";><code>a98c4d6</code></a>
 log dependency resolution process configuration on debug</li>
   <li><a 
href="https://github.com/TNG/ArchUnit/commit/262880301a049d08694879809d9dc0759d6724ce";><code>2628803</code></a>
 fix <code>compileJdk9mainJava</code> task dependencies</li>
   <li>Additional commits viewable in <a 
href="https://github.com/TNG/ArchUnit/compare/v0.22.0...v0.23.1";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   
   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-automerge-start)
   [//]: # (dependabot-automerge-end)
   
   ---
   
   <details>
   <summary>Dependabot commands and options</summary>
   <br />
   
   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 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)
   
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to