Skip to content

Releases: bloomberg/selekt

0.14.2

11 Sep 08:25
0d539a0
Compare
Choose a tag to compare

Features

  • Make SQLiteDatabase.beginTransaction et al public API but carrying a health warning.

Optimisations

  • Further reductions in the OpenSSL libcrypto.a binary size.

Dependencies

  • Android Gradle Plugin 7.0.2.
  • Android Lint 30.0.2.
  • Kotlin 1.5.30.

0.14.1

22 Aug 20:28
d5a865c
Compare
Choose a tag to compare

Features

  • Reduced OpenSSL binary size.
  • Publish Android benchmarks.
  • Publish JMH benchmarks.
  • Publish JVM integration tests.

Dependencies

  • Gradle 7.2.

0.14.0

17 Aug 07:06
1503134
Compare
Choose a tag to compare

Fixes

  • Remove all calls to jcenter() from our Gradle build scripts.

Dependencies

  • Android Gradle Plugin 7.0.0.
  • Android Lint 30.0.0.
  • Build Tools 31.0.0.
  • Detekt 1.18.0.
  • NDK LTS 23.0.
  • OpenSSL 1.1.1k.
  • Robolectric 4.6.1.

0.13.7

28 Jul 08:57
a99d782
Compare
Choose a tag to compare

Fixes

  • Fix SQLiteDatabase.yieldTransaction so that the connection is temporarily returned to the pool even if the transaction is nested.
  • Annotate SQLiteDatabase.yieldTransaction as throwing an InterruptedException, from the internal call to Thread.sleep.
  • Forward the database reference to the received transaction block.

0.13.6

16 Jul 11:54
87ad055
Compare
Choose a tag to compare

Fixes

  • Move the verification of the key size out of the JVM and closer to the native SQLite implementation. This makes it easier to swap out SQLite implementations.
  • Introduce a Key convention, resolving the keying strategy outside of the JVM to make it easier to swap out SQLite implementations.
  • The published Android sources jar is no longer empty.
  • Publish a KDoc jar for the main Android subproject.

Dependencies

  • Dokka 1.5.0.
  • Kotlin 1.5.21.

0.13.5

09 Jul 20:21
810e722
Compare
Choose a tag to compare

Fixes

  • Move SQLCipher for Android to its own Gradle subproject. This decouples Selekt from SQLCipher making it possible for other SQLite implementations to be swapped in.

0.13.4

07 Jul 14:29
ddde16d
Compare
Choose a tag to compare

Fixes

  • Close the SingleObjectPool factory under the pool's lock to make clear locally that all races with creating the connection while closing the pool really are avoided. The pool being closed means the database has been closed too and the sole connection should be idle. Any waiters trying to acquire this connection post-close will raise an exception, meaning there's no contention for the pool lock and no added delay clearing the key.

Dependencies

  • Android Gradle Plugin 4.2.2.
  • Android NDK 21.4.7075529.
  • Gradle 7.1.1.
  • Licensee 1.1.0.
  • Nexus Sonatype Gradle Plugin 1.1.0.

0.13.3

29 Jun 14:28
3cd6014
Compare
Choose a tag to compare

Fixes

  • Throw an IllegalArgumentException instead of an IllegalStateException when failing to add or remove a database from the registry.

Dependencies

  • Gradle 7.1.
  • Kotlin 1.5.20.

0.13.2

05 Jun 08:59
b2cb28f
Compare
Choose a tag to compare

Optimisations

  • Optimise trimming an SQL statement string just before resolving for its statement type.

0.13.1

02 Jun 17:04
e6bdd0f
Compare
Choose a tag to compare

Fixes

  • Attempt to destroy all idle connections in an eviction pass before ever throwing.