Releases: bloomberg/selekt
Releases · bloomberg/selekt
0.14.2
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
Features
- Reduced OpenSSL binary size.
- Publish Android benchmarks.
- Publish JMH benchmarks.
- Publish JVM integration tests.
Dependencies
- Gradle 7.2.
0.14.0
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
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 anInterruptedException
, from the internal call toThread.sleep
. - Forward the database reference to the received transaction block.
0.13.6
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
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
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
Fixes
- Throw an
IllegalArgumentException
instead of anIllegalStateException
when failing to add or remove a database from the registry.
Dependencies
- Gradle 7.1.
- Kotlin 1.5.20.
0.13.2
Optimisations
- Optimise trimming an SQL statement string just before resolving for its statement type.
0.13.1
Fixes
- Attempt to destroy all idle connections in an eviction pass before ever throwing.