asm0dey / staks

Kotlin wrapper for StAX
https://asm0dey.github.io/staks/staks/staks/index.html
BSD 3-Clause "New" or "Revised" License
13 stars 2 forks source link

Update dependency ch.tutteli.atrium:atrium-infix-en_GB to v0.18.0 #4

Closed renovate[bot] closed 1 year ago

renovate[bot] commented 1 year ago

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
ch.tutteli.atrium:atrium-infix-en_GB 0.16.0 -> 0.18.0 age adoption passing confidence

Release Notes

robstoll/atrium ### [`v0.18.0`](https://togithub.com/robstoll/atrium/releases/tag/v0.18.0): align reporting to new `to + infinitive` schema and more reportingOptions ### Table of Content - [New Features](#new-features) - [API](#new-features-api) - [Logic/Core aka write own expectation functions](#new-features-logic-core) - [Fixes](#fixes) - [Improvements](#improvements) - [Deprecation](#deprecation) - [Breaking Changes](#breaking-changes) - [Migrating deprecated functionality](#migration) - [Sponsors](#sponsors) ### New Features #### All APIs - aligned reporting to new `to + infinitive` schema - start error message with `I expected...` [#​1090](https://togithub.com/robstoll/atrium/issues/1090) - also add reportOptions to inAnyOrder.only [#​1094](https://togithub.com/robstoll/atrium/issues/1094) #### api-fluent-en_GB - no fluent only additions this time #### api-infx-en_GB - add report option to `inGiven order and only` in api-infix [#​1050](https://togithub.com/robstoll/atrium/issues/1050) #### Logic / Core - not a feature as such but more a recommendation. We started to split API files into XyExpectations.kt, XyFeatureExtractor.kt and XySubjectChangers.kt -- we think it will help to get the distinction between those three categories - add createAndAppend to AssertionContainer expecting Translatable [#​1061](https://togithub.com/robstoll/atrium/issues/1061) ### Fixes - additional elements detected wrong for inAnyOrder.only [#​1103](https://togithub.com/robstoll/atrium/issues/1103) ### Improvements - include given type in error message of IterableLikeToIterableTransformer [#​1057](https://togithub.com/robstoll/atrium/issues/1057) - add samples for optionalExpectations of api-fluent [#​917](https://togithub.com/robstoll/atrium/issues/917) => thanks to [@​timacosta](https://togithub.com/timacosta) - add samples for featureAssertions of api-fluent [#​648](https://togithub.com/robstoll/atrium/issues/648) => thanks to [@​iljakorneckis](https://togithub.com/iljakorneckis) - add samples for Map.size to api-fluent and api-infix [#​1039](https://togithub.com/robstoll/atrium/issues/1039) => thanks to [@​ashwini-desai](https://togithub.com/ashwini-desai) - add samples for fun0Expectations also to api-infix [#​1044](https://togithub.com/robstoll/atrium/issues/1044) => thanks to [@​Kushiro-C](https://togithub.com/Kushiro-C) - generate jdk11 byte code instead of jdk1.6 (see breaking changes below for more details) ### Deprecation - ErrorMessages enum entries which contained ASSERTION => use the replacement with EXPECTATION - all Description...Assertion.kt => use use the replacement from Description...Expectation.kt - DescriptionBasic.IS => use TO_BE instead - DescriptionBasic.IS_NOT => use NOT_TO_BE instead - maplike.contains.checkers.\* => looks like they were introduced by accident, they will be removed with 0.19.0 without replacement - COULD_NOT_EVALUATE_DEFINED_ASSERTIONS => will be removed without replacement - VISIT_COULD_NOT_EVALUATE_ASSERTIONS => will be removed without replacement - InOrderOnlyReportingOptions.showOnlyFailingIfMoreElementsThan => use showOnlyFailingIfMoreElementsThan will be removed with 0.19.0 - InOrderOnlyReportingOptions.numberOfElementsInSummary => use maxNumberOfExpectedElementsForSummary will be removed with 0.19.0 #### Deprecations with 0.19.0 - we will switch to the new MPP plugin, could be we have to deprecate a few things in this context #### Deprecations with 0.20.0 We will make a major refactoring on core and logic level. Those changes should not affect most Atrium users. It will affect you if you: - created own expectation function based on `assertionBuilder` or other types which are defined in core or logic. - use an own expectation verb Migration steps/pointers will be provided in the release notes as usual. The following changes are planned: - replace `Assertion` with `Proof` and along with it rename many types incorporating Assertion in its name or in its package's name => we will remove Assertion and co. with 0.22.0 at the latest) - re-write reporting entirely, a lot of types in `ch.tutteli.atrium.reporting` will be affected (could be we move this to 0.21.0) ### Breaking Changes *Planned* (previously deprecated or announced) - removed the pre-defined assertion verbs `assert` and `assertThat` as they do not fit the to + infinitive naming schema => switch to `expect` - moved expectation functions already following the `to + infinitive` convention from ...Assertions.kt to the corresponding ...Expectations.kt file which is a binary breaking change => please re-compile your sources - renamed files named charSequence/iterableLike/mapLikeContains... to charSequence/iterableLike/mapLikeToContain which is a binary breaking change => please re-compile your sources - we will generate jdk 11 byte code (yes, we skip jdk8 as newer android versions support jdk11 byte code) an no longer jdk1.6 (and thus also rely on Kotlin's stlib-jdk8) => might affect you in case you still generate jdk1.6 or jdk1.8 in tests as inlining will not work (jdk11 code cannot be inlined into jdk1.6 or jdk1.8) *Unplanned* - added InAnyOrderOnlyReportingOptions to `inAnyOrder.only` => please re-compile - added InOrderOnlyReportingOptions and InAnyOrderOnlyReportingOptions to `inOrder.only.grouped` => please re-compile - InOrderOnlyMatcher.addSingleEntryAssertion now expects a DescriptionIterableLikeExpectation instead of a DescriptionIterableAssertion => we guess this should not affect 99.999% of the users :laughing: - renamed WithInOrderOnlyReportingOptions.report to WithInOrderOnlyReportingOptions.options #### Breaking Changes with 0.19.0 First of all, see deprecation above which will be removed with 0.19.0, some of them are breaking as well - we drop support for jdk 14 (i.e. we no longer build against it, most likely it still works without problems) - might be that we need to change package names which is a binary and source backward compatibility break in case we switch to the new Kotlin MPP plugin with 0.19.0 #### Breaking Changes with 0.20.0 - BulletPointProvider will most likely use a BulletPointIdentifier from a different package #### Breaking Changes with 0.21.0 - not pre-seen for now #### Breaking Changes with 0.22.0 - we will remove all deprecated...Assertions.kt files in all APIs - we will remove all deprecated... files in the translation modules - we will remove all deprecated stuff on the logic/core level #### Breaking Changes with 1.0.0 See [atrium-roadmap -> Milestone 1.0.0](https://togithub.com/robstoll/atrium-roadmap/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A1.0.0+) ### Migrating deprecated functionality Use the ReplaceWith in the corresponding `@Deprecated` annotations. Please have a look at older release-notes in case you don't migrate from 0.17.0 ### Sponsors We would like to thank   [![Tegonal GmbH](https://www.tegonal.com/assets/images/tegonal_text_logo_green.svg)](https://tegonal.com) (Tegonal GmbH, Bern, Switzerland) for sponsoring the time [@​robstoll](https://togithub.com/robstoll) is working on Atrium. *Are you using Atrium at work?* Please consider to support the project as well by: - sponsoring [robstoll](https://togithub.com/sponsors/robstoll) (Author and main contributor) - share your expectation functions with others - report bugs - provide feedback in case you miss a feature ### [`v0.17.0`](https://togithub.com/robstoll/atrium/releases/tag/v0.17.0): to + infinitive naming schema change ### Table of Content - [New Features](#new-features) - [API](#new-features-api) - [Logic/Core aka write own expectation functions](#new-features-logic-core) - [Fixes](#fixes) - [Improvements](#improvements) - [Deprecation](#deprecation) - [Breaking Changes](#breaking-changes) - [Migrating deprecated functionality](#migration) - [Sponsors](#sponsors) ### New Features #### All APIs - Refactor/Renaming to a consistent to + infitive schema [#​840](https://togithub.com/robstoll/atrium/issues/840) - notToBeGreaterThan and notToBeLessThan [#​878](https://togithub.com/robstoll/atrium/issues/878) => thanks to [@​jGleitz](https://togithub.com/jGleitz) for the feature request - add Path.notToBeWritable [#​1001](https://togithub.com/robstoll/atrium/issues/1001) => thanks to [@​rhushikesh](https://togithub.com/rhushikesh) for the implementation - add Path.notToBeExecutable [#​1015](https://togithub.com/robstoll/atrium/issues/1015) => thanks to [@​rhushikesh](https://togithub.com/rhushikesh) for the implementation - add Path.notToBeReadable [#​942](https://togithub.com/robstoll/atrium/issues/942) => thanks to [@​botex98](https://togithub.com/botex98) for the implementation #### api-fluent-en_GB - Add option to display only unexpected or missing elements in asserts on collections [#​292](https://togithub.com/robstoll/atrium/issues/292) #### api-infx-en_GB - no infix only additions this time #### Logic / Core - none this time ### Fixes - fix empty feature extractor [#​950](https://togithub.com/robstoll/atrium/issues/950) ### Improvements - Move hasNext() check out of Iterable.all [#​305](https://togithub.com/robstoll/atrium/issues/305) => thanks to [@​wordhou](https://togithub.com/wordhou) for the implementation - improve reporting for containsDuplicates [#​813](https://togithub.com/robstoll/atrium/issues/813) => thanks to [@​wordhou](https://togithub.com/wordhou) for the implementation - less verbose containsNot reporting and more hints [#​722](https://togithub.com/robstoll/atrium/issues/722) => thanks to [@​wordhou](https://togithub.com/wordhou) for the implementation - don't show number of occurrences for contains.inAnyOrder.atLeast(1) [#​310](https://togithub.com/robstoll/atrium/issues/310) => thanks to [@​wordhou](https://togithub.com/wordhou) for the implementation - rename withFailureHint to withHelpOnFailure [#​671](https://togithub.com/robstoll/atrium/issues/671) => thanks to [@​stevenlmcgraw](https://togithub.com/stevenlmcgraw) for the implementation - show more than first line when using mocha test runner [#​691](https://togithub.com/robstoll/atrium/issues/691) => thanks to [@​wordhou](https://togithub.com/wordhou) for the implementation - Empty assertionCreator lambda warning is added twice [#​933](https://togithub.com/robstoll/atrium/issues/933) => thanks to [@​wordhou](https://togithub.com/wordhou) for the implementation - rewrite samples to use Kotlin DSL for gradle [#​873](https://togithub.com/robstoll/atrium/issues/873) => thanks to [@​wordhou](https://togithub.com/wordhou) - add samples for iterableExpectations of api-fluent [#​651](https://togithub.com/robstoll/atrium/issues/651) => thanks to [@​wordhou](https://togithub.com/wordhou) - add samples for fun0Assertions of api-fluent [#​650](https://togithub.com/robstoll/atrium/issues/650) => thanks to [@​szatyinadam](https://togithub.com/szatyinadam) - add samples for mapExpectations of api-infix [#​861](https://togithub.com/robstoll/atrium/issues/861) => thanks to [@​kacmacuna](https://togithub.com/kacmacuna) - add samples for mapEntryExpectations of api-infix [#​862](https://togithub.com/robstoll/atrium/issues/862) => thanks to [@​kacmacuna](https://togithub.com/kacmacuna) - add samples for iterableExpectations of api-infix [#​992](https://togithub.com/robstoll/atrium/issues/992) => thanks to [@​vinayak03](https://togithub.com/vinayak03) - add samples for fileAssertions of api-fluent [#​994](https://togithub.com/robstoll/atrium/issues/994) => thanks to [@​iljakorneckis](https://togithub.com/iljakorneckis) - add samples for resultExpectations of api-fluent [#​993](https://togithub.com/robstoll/atrium/issues/993) => thanks to [@​vinayak03](https://togithub.com/vinayak03) - add samples for bigDecimalExpectations of api-fluent [#​904](https://togithub.com/robstoll/atrium/issues/904) => thanks to [@​timacosta](https://togithub.com/timacosta) - add samples for pathExpectations of api-fluent [#​919](https://togithub.com/robstoll/atrium/issues/919) => thanks to [@​kacmacuna](https://togithub.com/kacmacuna) - add samples for throwableExpectations of api-fluent [#​658](https://togithub.com/robstoll/atrium/issues/658) => thanks to [@​szatyinadam](https://togithub.com/szatyinadam) - add samples for infix throwable expectations [#​1002](https://togithub.com/robstoll/atrium/issues/1002) => thanks to [@​szatyinadam](https://togithub.com/szatyinadam) - add samples for chronoLocalDateExpectations of api-fluent [#​914](https://togithub.com/robstoll/atrium/issues/914) => thanks to [@​dias-wagner](https://togithub.com/dias-wagner) - add samples for chronoLocalDateTimeExpectations of api-fluent [#​915](https://togithub.com/robstoll/atrium/issues/915) => thanks to [@​dias-wagner](https://togithub.com/dias-wagner) - add samples for chronoZonedDateTimeExpectations of api-fluent [#​916](https://togithub.com/robstoll/atrium/issues/916) => thanks to [@​dias-wagner](https://togithub.com/dias-wagner) - add samples for localDateAssertions of api-fluent and api-infix [#​996](https://togithub.com/robstoll/atrium/issues/996) => thanks to [@​rhushikesh](https://togithub.com/rhushikesh) - add samples for localDateTimeAssertions of api-fluent and api-infix [#​997](https://togithub.com/robstoll/atrium/issues/997) => thanks to [@​rhushikesh](https://togithub.com/rhushikesh) - add samples for zonedDateTimeAssertions of api-fluent [#​998](https://togithub.com/robstoll/atrium/issues/998) => thanks to [@​vinayak03](https://togithub.com/vinayak03) - add samples for arrayAssertions of api-infix [#​675](https://togithub.com/robstoll/atrium/issues/675) => thanks to [@​szatyinadam](https://togithub.com/szatyinadam) - add samples for pairAssertions of api-infix [#​679](https://togithub.com/robstoll/atrium/issues/679) => thanks to [@​szatyinadam](https://togithub.com/szatyinadam) - add samples for pathExpectations of api-infix [#​999](https://togithub.com/robstoll/atrium/issues/999) => thanks to [@​rhushikesh](https://togithub.com/rhushikesh) - add samples for sequenceExpectations of api-fluent [#​657](https://togithub.com/robstoll/atrium/issues/657) => thanks to [@​loge1998](https://togithub.com/loge1998) - add samples for ZonedDateTime to api-infix [#​1019](https://togithub.com/robstoll/atrium/issues/1019) => thanks to [@​iljakorneckis](https://togithub.com/iljakorneckis) - Add ChronoLocalDate, ChronoLocalDateTime and ChronoZonedDateTime expectation samples for the infix api [#​941](https://togithub.com/robstoll/atrium/issues/941) => thanks to [@​dias-wagner](https://togithub.com/dias-wagner) ### Deprecation - we deprecated the pre-defined assertion verbs `assert` and `assertThat` as they do not fit the to + infinitive naming schema; they will be removed with 0.18.0 => switch to expect - basically all expectation functions which did not follow the `to + infinitive` naming schema => see [migration](#migration) further below #### Deprecations with 0.18.0 - we will deprecate all translation enum entries which do not follow the `to + infinitive` naming schema #### Deprecations with 0.19.0 We will make a major refactoring on core and logic level where we will: - replace `Assertion` with `Proof` and along with it rename many types incorporating Assertion in its name or in its package's name => we will remove Assertion and co. with 0.21.0 at the latest) - re-write reporting entirely, a lot of types in `ch.tutteli.atrium.reporting` will be affected (could be we move this to 0.20.0) Those changes should not affect most Atrium users. It will affect you if you: - created own assertion function based on `assertionBuilder` or other types which are defined in core or logic. - use an own expectation verb Migration steps/pointers will be provided in the release notes as usual. ### Breaking Changes *Planned* (previously deprecated or announced) - removed deprecated modules: atrium-core-robstoll, atrium-core-robstoll-lib, atrium-domain-builders (including ExpectBuilder) -- see [https://github.com/robstoll/atrium/pull/856](https://togithub.com/robstoll/atrium/pull/856) - removed deprecated functions/types which were scheduled to be removed with 0.17.0, i.a. ReporterFactory, RawString, collectForDifferentSubject -- see [https://github.com/robstoll/atrium/pull/858](https://togithub.com/robstoll/atrium/pull/858) and [https://github.com/robstoll/atrium/pull/859](https://togithub.com/robstoll/atrium/pull/859) - not really a breaking change but just as info, we renamed core-api to core (as we no longer split core into api and implementation) *Unplanned* - none this time #### Breaking Changes with 0.18.0 First of all, see deprecation above which will be removed with 0.18.0, some of them are breaking as well - we will move expectation functions already following the `to + infinitive` convention from ...Assertions.kt to the corresponding ...Expectations.kt file which is a binary breaking change => please re-compile your sources - we will rename files named charSequence/iterableLike/mapLikeContains... to charSequence/iterableLike/mapLikeToContain which is a binary breaking change => please re-compile your sources - we will generate jdk 11 byte code (yes, we skip jdk8 as newer android versions support jdk11 byte code) an no longer jdk1.6 (and thus also rely on Kotlin's stlib-jdk11) => might affect you in case you still generate jdk1.6 or jdk1.8 in tests as inlining will not work (jdk11 code cannot be inlined into jdk1.6 or jdk1.8) #### Breaking Changes with 0.19.0 - BulletPointProvider will most likely use a BulletPointIdentifier from a different package - might be that we need to change package names which is a binary and source backward compatibility break in case we switch to the new Kotlin MPP plugin with 0.19.0 #### Breaking Changes with 0.20.0 - we will remove all deprecated ...Assertions as well as other deprecating stuff on the logic level. #### Breaking Changes with 1.0.0 See [atrium-roadmap -> Milestone 1.0.0](https://togithub.com/robstoll/atrium-roadmap/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A1.0.0+) ### Migrating deprecated functionality The following command is carrying out some search & replace so that you don't need to rely on the (unfortunately sometimes buggy) behaviour of ReplaceWith. find . -type f -name "*.kt" -a \( -path "*/src/test/*" -o -path "*/src/*Test/*" \) | xargs perl -0777 -i \ -pe 's/import ch.tutteli.atrium.api.verbs.(assert|assertThat)\n/import ch.tutteli.atrium.api.verbs.expect\n/g;' \ -pe 's/(assert|assertThat)(\(| ?\{)/expect$2/g;' \ -pe 's/import ch.tutteli.atrium.api.(fluent|infix).en_GB.toBe\n/import ch.tutteli.atrium.api.$1.en_GB.toEqual\n/g;' \ -pe 's/([\. ])toBe([\( ])/$1toEqual$2/g;' \ -pe 's/import ch.tutteli.atrium.api.(fluent|infix).en_GB.notToBe\n/import ch.tutteli.atrium.api.$1.en_GB.notToEqual\n/g;' \ -pe 's/([\. ])notToBe([\( ])/$1notToEqual$2/g;' \ -pe 's/import ch.tutteli.atrium.api.(fluent|infix).en_GB.isSameAs\n/import ch.tutteli.atrium.api.$1.en_GB.toBeTheInstance\n/g;' \ -pe 's/([\. ])isSameAs([\( ])/$1toBeTheInstance$2/g;' \ -pe 's/import ch.tutteli.atrium.api.(fluent|infix).en_GB.isNotSameAs\n/import ch.tutteli.atrium.api.$1.en_GB.notToBeTheInstance\n/g;' \ -pe 's/([\. ])isNotSameAs([\( ])/$1notToBeTheInstance$2/g;' \ -pe 's/import ch.tutteli.atrium.api.(fluent|infix).en_GB.notToBeNull\n/import ch.tutteli.atrium.api.$1.en_GB.notToEqualNull\n/g;' \ -pe 's/([\. ])notToBeNull([\( ])/$1notToEqualNull$2/g;' \ -pe 's/import ch.tutteli.atrium.api.(fluent|infix).en_GB.isA\n/import ch.tutteli.atrium.api.$1.en_GB.toBeAnInstanceOf\n/g;' \ -pe 's/([\. ])isA ### Sponsors We would like to thank [Tegonal GmbH](https://www.tegonal.com) for sponsoring Support and PR-Review time. And also a big thank you for sponsoring some time to speed up the transition to the new to + infitive naming schema 🙃 *Are you are using Atrium at work?* Please consider to support the project as well by: - sponsoring [robstoll](https://togithub.com/sponsors/robstoll) (Author and main contributor) - share your expectation functions with others - report bugs - provide feedback in case you miss a feature

Configuration

📅 Schedule: 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.



This PR has been generated by Mend Renovate. View repository job log here.