|
1 | 1 | # SQLlin Change Log |
2 | 2 |
|
3 | 3 | - Date format: YYYY-MM-dd |
4 | | -- |
| 4 | + |
| 5 | +## 2.2.0 / 2025-12-15 |
| 6 | + |
| 7 | +### sqllin-dsl |
| 8 | + |
| 9 | +* New experimental DSL API: `DatabaseScope#CREATE_INDEX` for creating indexes |
| 10 | +* New experimental DSL API: `DatabaseScope#CREATE_UNIQUE_INDEX` for creating unique indexes |
| 11 | +* New experimental DSL API: `DatabaseScope#PRAGMA_FOREIGN_KEYS` for enabling foreign keys |
| 12 | +* New experimental annotation APIs: `ForeignKeyGroup`, `References`, `ForeignKey` for supporting foreign keys for table and column levels |
| 13 | +* New experimental annotation API: `@Default` for specifying default values for columns in CREATE TABLE statements |
| 14 | +* New SQL aggregate function: `group_concat` for concatenating values with a separator |
| 15 | +* New SQL scalar functions: `round`, `random` |
| 16 | +* New SQL string functions: `substr`, `trim`, `ltrim`, `rtrim`, `replace`, `instr`, `printf` |
| 17 | +* New overload for `length` function to support `ClauseBlob` type |
| 18 | +* **Breaking change**: The parameter type of `abs` function changed from `ClauseElement` to `ClauseNumber` |
| 19 | +* **Breaking change**: The parameter type of `upper` function changed from `ClauseElement` to `ClauseString` |
| 20 | +* **Breaking change**: The parameter type of `lower` function changed from `ClauseElement` to `ClauseString` |
| 21 | +* **Breaking change**: The parameter type of `length` function changed from `ClauseElement` to `ClauseString` |
| 22 | + |
| 23 | +### sqllin-driver |
| 24 | + |
| 25 | +* Update the `sqlite-jdbc`'s version to `3.51.1.0` |
| 26 | + |
| 27 | +### sqllin-processor |
| 28 | + |
| 29 | +* Update `KSP`'s version to `2.3.3` |
| 30 | + |
5 | 31 | ## 2.1.0 / 2025-11-04 |
6 | 32 |
|
7 | 33 | ### sqllin-dsl |
|
11 | 37 | * Support `<`, `<=`, `>`, `>=`, `IN`, `BETWEEN...AND` operators for String |
12 | 38 | * Support `=`, `!=`, `<`, `<=`, `>`, `>=`, `IN`, `BETWEEN...AND` operators for ByteArray |
13 | 39 | * Add a new condiction function `ISNOT` for Boolean, and `IS` starts to support to receive a nullable parameter |
14 | | -* Refactored CREATE statements building process, move it from runtime to compile-time. |
15 | | -* New experimental API for _COLLATE NOCASE_ keyword: `CollateNoCase` |
16 | | -* New experimental API for single column with _UNIQUE_ keyword: `Unique` |
17 | | -* New Experimental API for composite column groups with _UNIQUE_ keyword: `CompositeUnique` |
| 40 | +* Refactored _CREATE_ statements building process, move it from runtime to compile-time. |
| 41 | +* New experimental annotation API for _COLLATE NOCASE_ keyword: `@CollateNoCase` |
| 42 | +* New experimental annotation API for single column with _UNIQUE_ keyword: `@Unique` |
| 43 | +* New experimental annotation API for composite column groups with _UNIQUE_ keyword: `@CompositeUnique` |
18 | 44 |
|
19 | 45 | ## 2.0.0 / 2025-10-23 |
20 | 46 |
|
|
27 | 53 | ### sqllin-dsl |
28 | 54 |
|
29 | 55 | * Optimized performance for SQL assembly |
30 | | -* New annotation for marking primary key: `PrimaryKey` |
31 | | -* New annotation for marking composite primary key: `CompositePrimaryKey` |
| 56 | +* New experimental annotation for marking primary key: `@PrimaryKey` |
| 57 | +* New experimental annotation for marking composite primary key: `@CompositePrimaryKey` |
32 | 58 | * New experimental API for creating Database: `DSLDBConfiguration` |
33 | 59 | * New experimental DSL API: `DatabaseScope#CREATE` |
34 | 60 | * New experimental DSL API: `DatabaseScope#DROP` |
35 | 61 | * New experimental DSL API: `DatabaseSceop#ALERT` |
36 | | -* Support using ByteArray in DSL, that represents BLOB in SQLite |
| 62 | +* Support using `ByteArray` in DSL, that represents _BLOB_ in SQLite |
37 | 63 |
|
38 | 64 | ### sqllin-driver |
39 | 65 |
|
|
101 | 127 |
|
102 | 128 | * Update `kotlinx.coroutines`'s version to `1.10.1` |
103 | 129 | * Update `kotlinx.serialization`'s version to `1.8.0` |
104 | | -* Add some DslMaker annotations, make the DSL apis be more readable |
| 130 | +* Add some `DslMaker` annotations, make the DSL apis be more readable |
105 | 131 |
|
106 | 132 | ### sqllin-driver |
107 | 133 |
|
|
0 commit comments