Skip to content

Releases: kiwiproject/kiwi

v3.2.0

25 Nov 19:14
244079b
Compare
Choose a tag to compare

Summary

  • 2023-11-25T14:13:28.317516 - 16 commit(s) by Scott Leberknight, dependabot[bot]

Improvements 🚀

  • Make SimpleSSLContextFactory#configuration public and return unmodifiable map (#1085)
  • Add disableSniHostCheck property to TLS and SSL configuration classes (#1080)
  • Add nextOrThrow method to KiwiJdbc to advance a ResultSet or throw exception (#1074)

Assorted 👜

  • Use Zulu distribution for CodeQL and Print Delomboked Sources action (#1078)
  • Investigate flaky test in AsyncTest (#1070)
  • Flaky tests: Several tests in AsyncTest fail when run individually (#1065)
  • Clean up: use BlankStringSource in tests (#1064)

Dependency Updates ⬆️

  • Bump org.kiwiproject:kiwi-bom from 2.0.5 to 2.0.6 (#1083)
  • Bump org.kiwiproject:kiwi-parent from 3.0.5 to 3.0.6 (#1082)
  • Remove testcontainers managed dependency (#1081)
  • Bump org.testcontainers:testcontainers-bom from 1.19.2 to 1.19.3 (#1079)
  • Bump org.testcontainers:testcontainers-bom from 1.19.1 to 1.19.2 (#1071)
  • Bump org.kiwiproject:kiwi-bom from 2.0.3 to 2.0.5 (#1069)
  • Bump org.kiwiproject:kiwi-parent from 3.0.4 to 3.0.5 (#1068)

v3.1.0

08 Oct 18:09
3cb7d93
Compare
Choose a tag to compare

Summary

  • 2023-10-08T13:51:42.087364 - 31 commit(s) by Scott Leberknight, dependabot[bot]

Improvements 🚀

  • Add int-to-boolean conversion to KiwiPrimitives (#1054)
  • Add long-to-boolean conversion to KiwiPrimitives (#1053)
  • Add new KiwiJdbc utility to return optionally stripped string, or null if blank (#1049)
  • Add new KiwiJdbc utility to return trimmed string, or null if blank (#1048)
  • Add new KiwiJdbc utility to return null instead of blank strings (#1047)
  • Add new KiwiJdbc utilities to convert from an int (used as a boolean) to boolean (#1046)
  • Add new KiwiJdbc utilities to convert from a long (used as a boolean) to boolean (#1045)
  • Add new KiwiJdbc utilities to convert from java.sql.Date to LocalDate (#1044)
  • Create OsCommand in base.process package to replace the one in ansible.vault (#1025)
  • Add PagingQuery test for Mongo 7 (#1021)

Assorted 👜

  • Add "see" tags to stringOrNullIfBlank and trimmedStringOrNullIfBlank (#1063)
  • Add more tests to PropertyMaskingOptionsTest (#1062)
  • Make fields final in a few classes; suppress warning in another class (#1032)
  • Deprecate #getCommandParts in Ansible XxxCommand classes ⚠️ (#1031)
  • Replace usages of deprecated OsCommand with new one from base.process package (#1027)
  • Deprecate OsCommand in ansible.vault package ⚠️ (#1026)
  • Make AsyncTest execute faster 🚀, and trick 👻 Sonar again (#1024)
  • Make StripedLockTest execute faster, and trick Sonar (#1023)
  • Remove the TODO from KiwiIterators.ThreadSafeCyclicIterator (#1022)
  • Replace sleep with CountDownLatch in SocketCheckerTest (#1020)

Dependency Updates ⬆️

  • Bump org.kiwiproject:kiwi-bom from 2.0.2 to 2.0.3 (#1051)
  • Bump org.kiwiproject:kiwi-parent from 3.0.3 to 3.0.4 (#1050)
  • Bump org.testcontainers:testcontainers-bom from 1.19.0 to 1.19.1 (#1043)
  • Bump org.kiwiproject:kiwi-bom from 2.0.1 to 2.0.2 (#1041)
  • Bump org.kiwiproject:kiwi-parent from 3.0.2 to 3.0.3 (#1040)
  • Bump org.kiwiproject:kiwi-parent from 3.0.1 to 3.0.2 (#1037)
  • Bump org.kiwiproject:kiwi-bom from 2.0.0 to 2.0.1 (#1036)
  • Bump actions/checkout from 3 to 4 (#1035)
  • Bump org.testcontainers:testcontainers-bom from 1.18.3 to 1.19.0 (#1019)

Infrastructure 🚧

  • Run build on zulu distribution of JDKs 17 and 21 (#1042)

v3.0.0

07 Aug 01:33
fd6fa96
Compare
Choose a tag to compare

Summary

  • 2023-08-06T21:28:39.349123 - 9 commit(s) by Scott Leberknight

Major Release Notice ⚠️

This is a major release because kiwi-parent and kiwi-bom update to new major versions of libraries.

  • Dropwizard 4.x (uses Jakarta EE 9 and the Jakarta namespace)
  • Dropwizard Metrics 4.x (this has not changed)
  • Hibernate 6.x
  • Hibernate Validator 7.x (Jakarta EE 9)
  • Jersey 3.0.x (Jakarta EE 9)
  • Jetty 11.x (Jakarta EE 9)
  • Logback 1.4.x (Jakarta namespace)
  • Spring 6.x (requires JDK 17)
  • Spring Data Commons 3.x
  • Spring Data MongoDB 4.x

Breaking API Changes ⛔️

  • Remove CriteriaQueries utility class (#1008)
  • Remove deprecated SSLContextConfiguration#toTlsContextConfiguration(String trustStoreTypeOverride) (#1006)
  • Remove deprecated KiwiDropwizardDurations#fromDropwizardDuration (#1005)

Assorted 🛒

  • Fix problems found by IntelliJ inspections (#1013)
  • Fix Sonar issues found in JDK 17 update (#1011)
  • Fix code scanning alert - Deprecated method or constructor invocation (#1010)
  • Update parent POM and BOM for JDK 17 and major library updates (#1007)

Dependency Updates ⬆️

  • Bump kiwi-parent to 3.0.1 to fix delombok issue (#1018)

v2.7.0

05 Aug 15:48
aa5b045
Compare
Choose a tag to compare

Summary

  • 2023-08-05T11:47:09.570052 - 14 commit(s) by Scott Leberknight, dependabot[bot]

Improvements

  • New methods in KiwiIO to create a ByteArrayInputStream from a String (#998)
  • All KiwiPreconditions methods should accept the same message template placeholders (#984)

Assorted

  • KiwiIO#newByteArrayInputStreamOfLines javadoc should mention it uses UTF-8 (#997)
  • Rename logback.xml to logback-test.xml to make clear it is for tests (#993)
  • Add Java 20 to the build (#990)

Dependency Updates

  • Bump org.kiwiproject:retrying-again from 1.0.17 to 1.0.18 (#1004)
  • Bump org.kiwiproject:kiwi-bom from 1.1.0 to 1.1.1 (#1002)
  • Bump org.kiwiproject:kiwi-parent from 2.0.19 to 2.0.20 (#1001)
  • Bump org.kiwiproject:kiwi-bom from 1.0.0 to 1.1.0 (#994)
  • Bump kiwi-bom from 0.31.0 to 1.0.0 (#992)
  • Bump kiwi-parent from 2.0.18 to 2.0.19 (#991)
  • Bump testcontainers-bom from 1.18.2 to 1.18.3 (#989)

v2.6.0

30 May 23:44
4bfe6a1
Compare
Choose a tag to compare

Summary

  • 2023-05-30T19:41:55.173731 - 45 commit(s) by Scott Leberknight, dependabot[bot]

Improvements

  • Add UncheckedGeneralSecurityException (#981)
  • Add instanceof argument checking methods to KiwiPreconditions (#980)
  • Add "whichAsPath" method to Processes and ProcessHelpers (#962)
  • Support IP address as host format in KiwiJSchHelpers#detectKeyExchangeTypeForHost (#957)
  • KiwiReflection#findField should not make public Fields accessible (#948)
  • Add methods in Ansible Vault utilities to find the ansible-vault executable (#946)
  • Add "which" method to Processes and ProcessHelpers (#945)
  • Add processHandleOfPid to KiwiEnvironment (#943)
  • Add currentThread method to KiwiEnvironment (#942)
  • Change SimpleSSLContextFactory to use an internal lock instead of the synchronized keyword on getSslContext (#941)
  • TlsContextConfiguration should support all properties in Dropwizard's TlsConfiguration (#940)
  • Support trustStoreType in TlsContextConfiguration (#939)
  • Support key and trust store type in SimpleSSLContextFactory (#938)
  • Support trustStoreType in SecureEndpointsConfiguration (#937)
  • Support trustStoreType in SSLContextConfiguration (#936)
  • Make Range and FieldRange validators have consistent logic and use default message key (#930)
  • Add method to get current ProcessHandle to KiwiEnvironment (#919)
  • Update release script (#918)
  • Add methods in KiwiPrimitives to try parsing CharSequence to primitives (#914)
  • Add additional null-safe split methods in KiwiStrings (#910)

Assorted

  • Add manual workflow to Delombok and print Java sources (#975)
  • Replace JSR 305 annotations (#971)
  • Delete repeated word in SftpConfig javadocs (#954)
  • Make the javadocs more clear in KiwiReflection regarding member access (#947)
  • Suppress deprecation warnings in KiwiDropwizardDurationsTest (#933)
  • Document limitations on known host formats in KiwiJSchHelpers (#932)
  • Remove usage of deprecated code in TimeBasedDirectoryCleanerConfig (#925)
  • Sonar: Class members annotated with @VisibleForTesting should not be accessed from production code (#923)
  • Deprecate KiwiDropwizardDurations#fromDropwizardDuration (#921)
  • Skip PR workflows if only md/txt files changed (#913)

Dependency Updates

  • Bump retrying-again from 1.0.16 to 1.0.17 (#988)
  • Bump testcontainers-bom from 1.18.1 to 1.18.2 (#987)
  • Bump kiwi-bom from 0.30.0 to 0.31.0 (#986)
  • Bump kiwi-parent from 2.0.17 to 2.0.18 (#985)
  • Bump testcontainers-bom from 1.18.0 to 1.18.1 (#979)
  • Bump sleberknight/print-delombok from 0.6.0 to 0.7.0 (#977)
  • Manage retrying-again version (#973)
  • Bump kiwi-parent from 2.0.15 to 2.0.17 (#966)
  • Bump kiwi-bom from 0.28.0 to 0.30.0 (#965)
  • Bump testcontainers-bom from 1.17.6 to 1.18.0 (#931)
  • Bump FantasticFiasco/action-update-license-year from 2 to 3 (#929)
  • Bump kiwi-parent from 2.0.14 to 2.0.15 (#927)
  • Bump kiwi-bom from 0.27.0 to 0.28.0 (#926)

v2.5.0

08 Mar 13:55
Compare
Choose a tag to compare

Summary

  • 2023-03-08T08:54:49.117286 - 46 commit(s) by Scott Leberknight, dependabot[bot], github-actions[bot]

Improvements

  • Fix code scanning alert - Dereferenced variable may be null (#862)
  • Remove Lombok Delegate from WebTargetHelper (#859)
  • KiwiReflection#newInstanceExactParamTypes should permit null arguments (#856)
  • Do not allow releases if repository is not up to date (#849)
  • Add methods to KiwiEnums to get an enum but return (Java) Optional (#844)
  • Add methods to KiwiReflection to easily create new instances (#837)
  • Add ability to stream a Collection sequentially or in parallel (#835)
  • Make PageNumberingScheme.minimumPageNumber public (#832)
  • Add "alias" methods to compute zero-based offset for one and zero-based pagination (#830)
  • Add ability to ensure non-null pagination properties to PagingRequest (#829)
  • Add toZonedDateTimeOrNull(GregorianCalendar) to KiwiDateTimeConverters (#826)
  • Add toInstantOrNull(Calendar) to KiwiDateTimeConverters (#825)
  • Add dateFromInstantOrNull to KiwiDates (#824)
  • Add toInstantOrNull(Date) to KiwiDateTimeConverters (#823)

Bugs

  • Fix code scanning alert - Potential input resource leak (#863)
  • Fix code scanning alert - Dereferenced variable may be null (#861)

Assorted

  • Use sleberknight/delombok-action for Delombok (#903)
  • Add CodeQL status badge (#902)
  • Add CodeQL workflow (#901)
  • Document "Uncontrolled data used in path expression" in file/directory path validators (#899)
  • Add more tests for Processes and KiwiUrls (#894)
  • Fix code scanning alert - Useless parameter (#889)
  • Fix code scanning alert - Log Injection (#883)
  • Fix code scanning alert - Log Injection (#882)
  • Fix code scanning alert - Log Injection (#881)
  • Fix code scanning alert - Log Injection (#880)
  • Fix code scanning alert - Log Injection (#879)
  • Fix code scanning alert - Serializable inner class of non-serializable class (#878)
  • Fix code scanning alert - Unused classes and interfaces (#877)
  • Fix code scanning alert - Unused classes and interfaces (#876)
  • Fix code scanning alert - Unused classes and interfaces (#875)
  • Fix code scanning alert - Unused classes and interfaces (#874)
  • Fix code scanning alert - Missing catch of NumberFormatException (#873)
  • Fix code scanning alert - Missing catch of NumberFormatException (#872)
  • Fix code scanning alert - Missing catch of NumberFormatException (#871)
  • Fix code scanning alert - Missing catch of NumberFormatException (#870)
  • Fix code scanning alert - Missing catch of NumberFormatException (#869)
  • Fix code scanning alert - Missing catch of NumberFormatException (#868)
  • Fix code scanning alert - Missing catch of NumberFormatException (#867)
  • Fix code scanning alert - Possible confusion of local and field (#866)
  • Fix code scanning alert - Inconsistent compareTo (#865)
  • Fix code scanning alert - Useless toString on String (#864)
  • Fully qualify javadoc links to Lombok classes (#854)
  • Fix javadoc link error in KiwiReflection (#853)
  • Update license copyright year(s) (#851)
  • Remove obsolete comment from KiwiPaths (#841)
  • Rename internal WhiteBoxTest annotation to ClearBoxTest (#839)
  • Combine PagingQueryEmbeddedMongoTest and PagingQueryRealMongoTest (#818)

Dependency Updates

  • Bump retrying-again from 1.0.15 to 1.0.16 (#908)
  • Bump kiwi-parent from 2.0.13 to 2.0.14 (#907)
  • Bump kiwi-bom from 0.26.0 to 0.27.0 (#906)
  • Bump sleberknight/delombok-action from 0.5.0 to 0.7.0 (#905)
  • Bump kiwi-parent from 2.0.12 to 2.0.13 (#846)
  • Bump kiwi-bom from 0.25.0 to 0.26.0 (#845)
  • Bump kiwi-parent from 2.0.11 to 2.0.12 (#828)

v2.4.0

16 Dec 01:22
Compare
Choose a tag to compare

Summary

  • 2022-12-15T19:58:07.528961 - 28 commit(s) by Scott Leberknight, dependabot[bot]

Improvements

  • Add utility to compare enums to Strings (#815)
  • Add methods to KiwiCollections to obtain first or last element of "sequenced" collections (#813)
  • Add methods in KiwiMaps to create unmodifiable maps (#811)
  • Add default convenience methods to PagingParams to check sorts (#810)
  • Set default values for sort fields in PagingRequest (#809)
  • Add factory method to create SimpleRetryer from a SimpleRetryerConfig (#804)
  • Add SimpleRetryerConfig (#803)
  • Add public constant for retry log level in SimpleRetryer (#801)
  • VaultEncryptionHelper's validation exception message should include all validation problems (#783)

Assorted

  • Add missing javadoc return tag in SimpleRetryerConfig (#817)
  • Reorganize imports in IntelliJ; remove redundant exceptions (#807)
  • Remove reference to specific SLF4J version in RetryLogger javadoc (#792)

Dependency Updates

  • Bump retrying-again from 1.0.14 to 1.0.15 (#822)
  • Bump kiwi-bom from 0.23.1 to 0.25.0 (#821)
  • Bump kiwi-parent from 2.0.10 to 2.0.11 (#819)
  • Remove exclusion from assertj-guava in the POM (#799)
  • Bump kiwi-bom from 0.23.0 to 0.23.1 (#798)
  • Bump kiwi-parent from 2.0.9 to 2.0.10 (#797)
  • Bump kiwi-bom from 0.22.0 to 0.23.0 (#796)
  • Bump kiwi-bom from 0.21.0 to 0.22.0 (#795)
  • Bump kiwi-bom from 0.20.0 to 0.21.0 (#794)
  • Bump kiwi-parent from 2.0.8 to 2.0.9 (#793)

v2.3.0

22 Sep 00:37
Compare
Choose a tag to compare

Summary

  • 2022-09-21T20:35:16.713569 - 17 commit(s) by Scott Leberknight, dependabot[bot]

Improvements

  • Add convenience / helper methods to KiwiSort and KiwiSort.Direction (#779)
  • New KiwiSort factory methods to easily create ascending or descending sorts (#775)
  • Overload KiwiSort#of factory method with String direction (#772)
  • Add lenient factory method in KiwiSort.Direction (#770)

Assorted

  • Javadoc fixes in PagingRequest (#781)
  • Replace deprecated Dropwizard FixtureHelpers (#777)

Dependency Updates

  • Bump retrying-again from 1.0.13 to 1.0.14 (#791)
  • Bump kiwi-bom from 0.19.1 to 0.20.0 (#790)
  • Bump retrying-again from 1.0.12 to 1.0.13 (#789)
  • Bump kiwi-bom from 0.19.0 to 0.19.1 (#788)
  • Bump retrying-again from 1.0.11 to 1.0.12 (#786)
  • Bump kiwi-parent from 2.0.7 to 2.0.8 (#782)

v2.2.0

21 Aug 02:48
Compare
Choose a tag to compare

Summary

  • 2022-08-20T22:45:26.301578 - 19 commit(s) by Scott Leberknight, dependabot[bot]

Improvements

  • Add KiwiTypeReferences containing common TypeReference constants (#760)
  • Add SET_OF_STRING_GENERIC_TYPE constant to KiwiGenericTypes (#759)
  • Add KiwiCollections utility class (#757)
  • Add distinctOrEmpty to KiwiLists; internal refactoring (#756)
  • New collection argument check methods in KiwiPreconditions (#753)
  • New validations methods in KiwiValidations that throw ConstraintViolationException (#751)
  • New argument validation methods in KiwiValidations (#750)
  • Add JAX-RS exception mapper that maps NoSuchElementException to 404 Not Found responses (#748)
  • New method in KiwiPreconditions: checkArgumentIsBlank (#746)
  • New method in KiwiPreconditions: checkArgumentIsNull (#745)

Assorted

  • Refactor KiwiDropwizardDurations (#765)
  • Fix javadocs in KiwiSets (#755)
  • Sonar: use character classes in regular expression in KiwiUrls (#744)

Dependency Updates

  • Bump retrying-again from 1.0.9 to 1.0.11 (#769)
  • Bump kiwi-parent from 2.0.6 to 2.0.7 (#768)
  • Bump kiwi-bom from 0.17.0 to 0.18.0 (#767)
  • Bump kiwi-parent from 2.0.4 to 2.0.6 (#764)
  • Bump kiwi-bom from 0.14.0 to 0.17.0 (#763)

v2.1.0

07 Jul 02:53
Compare
Choose a tag to compare

Summary

  • 2022-07-06T22:52:13.144943 - 22 commit(s) by Scott Leberknight, dependabot[bot]

Improvements

  • Add ability to launch a Process with a working directory (#739)
  • Improve logging in Async (#731)
  • Reduce log level in KiwiSpringMongoQueries (#729)
  • Add isNonzeroExitCode to Processes (#725)
  • KiwiThrowables improvements and new features in ThrowableInfo (#719)

Bugs

  • Remove EL from custom validator in test (#735)

Assorted

  • Add test to show enabling EL in custom validators (#736)
  • Code and javadoc cleanup (#724)
  • Update java doc in KiwiValidations#addError warning about EL usage in custom validators (#722)
  • Kiwi validators should not require use of EL (expression language) (#721)
  • Switch to build on Java 17 and Temurin (#718)

Dependency Updates

  • Bump retrying-again from 1.0.8 to 1.0.9 (#743)
  • Bump kiwi-bom from 0.12.0 to 0.14.0 (#742)
  • Bump kiwi-bom from 0.11.0 to 0.12.0 (#740)
  • Bump kiwi-bom from 0.10.0 to 0.11.0 (#738)
  • Bump kiwi-parent from 2.0.3 to 2.0.4 (#737)
  • Bump kiwi-parent from 2.0.2 to 2.0.3 (#734)
  • Bump kiwi-bom from 0.9.1 to 0.10.0 (#733)
  • Bump kiwi-parent from 2.0.1 to 2.0.2 (#727)
  • Bump kiwi-parent from 2.0.0 to 2.0.1 (#720)