- Date format: YYYY-MM-dd
- Update
kotlinx.coroutines
's version to1.8.1
- Update the
sqlite-jdbc
's version to3.46.0.0
- Update
Kotlin
's version to1.9.24
- Now, you can annotate properties with
kotlinx.serialization.transmint
in your data classes to ignore these properties when serialization or deserialization andTable
classes generation.
- Update
KSP
's version to1.9.24-1.0.20
- Fix a crash when a data class doesn't contain any
String
element. - Fix the issue#81 about insert and query null values
- Fix some wrongs about generation of SQL syntax
- Breaking change: Remove the deprecated API
CommonCursor#forEachRows
- Breaking change: the
getInt
,getLong
,getFloat
andgetDouble
will throw an exception when the value is NULL in SQLite - Add a new public API:
CommonCursor#isNull
, for check if the value is NULL in SQLite
- Update
Kotlin
's version to1.9.23
- Update
kotlinx.coroutines
's version to1.8.0
- Update
kotlinx.serialization
's version to1.6.3
- Modify the SQL statements' splicing method, that fixed the issue#77 that users can't read/write special symbols as the values in SQL statements.
- Performance optimization, use
ArrayDeque
to replace the LinkedList for SQL statements management (self-implemented). - The parameter
enableSimpleSQLLog
of theDatabase
's constructors of isfalse
by default.
- Update the
sqlite-jdbc
's version to3.45.3.0
- Update
KSP
's version to1.9.23-1.0.20
- Update
Kotlin
's version to1.9.22
- Update
kotlinx.serialization
's version to1.6.2
- Update
KSP
's version to1.9.22-1.0.16
- Update
Kotlin
's version to1.9.21
- Now, the
ORDER_BY
clause could ignore theOrderByWay
parameter like SQL. - Optimize the performance in concurrent scenarios. Some types have changed, but users don't need to change the code.
- Now,
SelectStatement
has been changed to lazy deserialization mode, that's means the first time you invoke the functionSelectStatement#getResults
will consume more time. But, correspondingly, executingSELECT
statements will be faster. - Add the
enableSimpleSQLLog
parameter toDatabase
's constructor, default bytrue
, if you set it tofalse
, you can disable the simple SQL logout.
- Deprecated the public API
CommonCursor#forEachRows
, you can replace withCommonCursor#forEachRow
. This change just for fixing a typo :). And, theCommonCursor#forEachRows
will be removed in next version.
- Update
KSP
's version to1.9.21-1.0.15
- Update
Kotlin
's version to1.9.20
- Add the new native target support:
linuxArm64
- Add the new API
Database#suspendedScope
, it could be used to ensure concurrency safety(#55) - Begin with this version, sqllin-dsl depends on kotlinx.coroutines version
1.7.3
- Breaking change: Remove the public class
DBEntity
, we have deprecated it in version1.1.1
- Add the new native target support:
linuxArm64
- Update
KSP
's version to1.9.20-1.0.13
- Fix the bug for when the code that is generated by
sqllin-processor
can't be compiled(#58)
- Update
Kotlin
's version to1.9.10
- Fix the problem: Native driver does not respect isReadOnly. On native platforms.
Now, if a user set
isReadOnly = true
inDatabaseConfigurtaion
, the database file must exist. And, if opening in read-write mode fails due to OS-level permissions, the user will get a read-only database, and if the user try to modify the database, will receive a runtime exception. Thanks for @nbransby.
- Update
KSP
's version to1.9.10-1.0.13
- Now, if your data class with
@DBRow
can't be solved or imported successfully(UsingKSNode#validate
to judge), theClauseProcessor
would try to resolve it in second round.
- Add the new JVM target
- Add the new JVM target
- Breaking change: Remove the public property:
DatabaseConnection#closed
- The Android (< 9) target supports to set the
journalMode
andsynchronousMode
now
- Update
Kotlin
's version to1.9.0
- Deprecated the public API
DBEntity
(#36, #37), any data classes used in sqllin-dsl don't need to extendDBEntity
anymore.
- Fix a bug about empty
ByteArray
on native platforms(#30)
- Update
KSP
's version to1.9.0-1.0.13
- Remove the
iosArm32
,watchosX86
andmingwX86
these three targets' support - Add the new native target support:
watchosDeviceArm64
- Update
kotlinx.serialization
's version to1.5.1
- Enable the
New Native Driver
to replace SQLiter - Make some unnecessary APIs be internal (
CursorImpl
,DatabaseConnectionImpl
and more...) - Add the new public function in
Cursor#next
- Add the new public function
deleteDatabase
- Add the new public property:
DatabaseConnection#isClosed
- Deprecated the public property:
DatabaseConnection#closed
- Update
Kotlin
's version to1.8.20
- Update
kotlinx.serialization
's version to1.5.0
- Update
KSP
's version to1.8.20-1.0.11
- Fix some bugs about unit tests
- Add the
ON
clause support - Fix some bugs about
JOIN
clause
- Update
KSP
's version to1.7.20-1.0.8
- Based on
Kotlin 1.7.20
- Based on
KSP 1.7.20-1.0.7
- Based on
kotlinx.serialization 1.4.1