Kripton Versions Save

A Java/Kotlin library for Android platform, to manage bean's persistence in SQLite, SharedPreferences, JSON, XML, Properties, Yaml, CBOR.

v8.1.0-rc.1

1 year ago

v8.0.0

1 year ago

release 8.0.0

v8.0.0-rc.6

1 year ago

v8.0.0-rc.6

v8.0.0-rc.4

1 year ago

Major improvements on kotlin compatibility: added @Nullable annotation on TypeAdpater and SQLTypeAdapter

v7.0.0-rc.7

3 years ago

Work in progress for release 7. The main work is remove legacy code for support library.

v6.0.0

4 years ago
    Release Notes - Kripton Persistence Library - Version 6.0.0
    

Bug

  • [KRIPTON-294] - parentEntity does not work with id with alias
  • [KRIPTON-301] - Sometimes java.lang.IllegalStateException: attempt to re-open an already-closed object #14
  • [KRIPTON-302] - Rename DateMillisecondsTypeAdapter in DateTime2LongTypeAdapter and DateMillisecondsTypeAdapter into Date2LongTypeAdapter #13
  • [KRIPTON-303] - Table alias must be checked
  • [KRIPTON-304] - Logger message must handle null message #11
  • [KRIPTON-309] - Custom bean does not match correctly fields when custom bean has less field than original one
  • [KRIPTON-312] - Improve multithread connection management.
  • [KRIPTON-314] - Some problems on multithread usage.
  • [KRIPTON-315] - Custom bean (immutable or not) used in SQL query does not have to contains id field #20
  • [KRIPTON-317] - Wrong binding on
  • [KRIPTON-322] - Generated content provider does not compile (updateWithOnConflict) #23
  • [KRIPTON-324] - Wrong binding on
  • [KRIPTON-328] - com.abubusoft.kripton.processor.exceptions.UnsupportedFieldTypeException: Unsupported type 'java.lang.Object' is used #18

Improvement

  • [KRIPTON-298] - Improved compatibility with JetPack migration
  • [KRIPTON-300] - Add some junit test for annotation processor
  • [KRIPTON-305] - add registryChange for force live data invalidation on specific dao during transaction, batch operations and normal operation.
  • [KRIPTON-306] - Add printStackTrace on Exception during json managed field persistence operations
  • [KRIPTON-308] - Table alias must be checked to avoid duplicates
  • [KRIPTON-313] - Kripton Converter must throws an exception if something went wrong
  • [KRIPTON-316] - Update Jackson to version 2.9.6
  • [KRIPTON-319] - Custom bean (immutable or not) used in SQL query does not have to contains id field
  • [KRIPTON-320] - check on column name and table names: avoid sql keywords
  • [KRIPTON-326] - Custom bean (immutable or not) used in SQL query does not have to contains id field #20
  • [KRIPTON-327] - check on column name "order" and other SQL keywords: must be avoided #19

New Feature

  • [KRIPTON-297] - Add total Elements to paged result
  • [KRIPTON-318] - Add "kripton.log" as Annotation Processor parameter
  • [KRIPTON-325] - Add "kripton.log" as Annotation Processor parameter #21
  • [KRIPTON-329] - Content Provider: static method support for Content Provider generation

Task

  • [KRIPTON-299] - Retrofit update to 2.5.0 vesrion
  • [KRIPTON-307] - Rename DateMillisecondsTypeAdapter in DateTime2LongTypeAdapter and DateMillisecondsTypeAdapter into Date2LongTypeAdapter
  • [KRIPTON-310] - [BREAKING CHANGE] Change Generated Asynctask interface: removed throws Throwable from onExecute method
  • [KRIPTON-311] - [BREAKING CHANGE] Generated Asynctask # onExecute method does not open connection automatically anymore
  • [KRIPTON-321] - [BREAKING] Change @BindTransaction into @BindSqlTransaction
  • [KRIPTON-323] - Add java.version support to java8 for sqlite-test-library

v6.0.0-rc.7

4 years ago

Release Notes - Version 6.0.0

Bug

  • [KRIPTON-294] - parentEntity does not work with id with alias
  • [KRIPTON-301] - Sometimes java.lang.IllegalStateException: attempt to re-open an already-closed object #14
  • [KRIPTON-302] - Rename DateMillisecondsTypeAdapter in DateTime2LongTypeAdapter and DateMillisecondsTypeAdapter into Date2LongTypeAdapter #13
  • [KRIPTON-303] - Table alias must be checked
  • [KRIPTON-304] - Logger message must handle null message #11
  • [KRIPTON-309] - Custom bean does not match correctly fields when custom bean has less field than original one
  • [KRIPTON-312] - Improve multithread connection management.
  • [KRIPTON-314] - Some problems on multithread usage.
  • [KRIPTON-315] - Custom bean (immutable or not) used in SQL query does not have to contains id field #20
  • [KRIPTON-317] - Wrong binding on
  • [KRIPTON-322] - Generated content provider does not compile (updateWithOnConflict) #23
  • [KRIPTON-324] - Wrong binding on
  • [KRIPTON-328] - com.abubusoft.kripton.processor.exceptions.UnsupportedFieldTypeException: Unsupported type 'java.lang.Object' is used #18

Improvement

  • [KRIPTON-298] - Improved compatibility with JetPack migration
  • [KRIPTON-300] - Add some junit test for annotation processor
  • [KRIPTON-305] - add registryChange for force live data invalidation on specific dao during transaction, batch operations and normal operation.
  • [KRIPTON-306] - Add printStackTrace on Exception during json managed field persistence operations
  • [KRIPTON-308] - Table alias must be checked to avoid duplicates
  • [KRIPTON-313] - Kripton Converter must throws an exception if something went wrong
  • [KRIPTON-316] - Update Jackson to version 2.9.6
  • [KRIPTON-319] - Custom bean (immutable or not) used in SQL query does not have to contains id field
  • [KRIPTON-320] - check on column name and table names: avoid sql keywords
  • [KRIPTON-326] - Custom bean (immutable or not) used in SQL query does not have to contains id field #20
  • [KRIPTON-327] - check on column name "order" and other SQL keywords: must be avoided #19

New Feature

  • [KRIPTON-297] - Add total Elements to paged result
  • [KRIPTON-318] - Add "kripton.log" as Annotation Processor parameter
  • [KRIPTON-325] - Add "kripton.log" as Annotation Processor parameter #21

Task

  • [KRIPTON-299] - Retrofit update to 2.5.0 vesrion
  • [KRIPTON-307] - Rename DateMillisecondsTypeAdapter in DateTime2LongTypeAdapter and DateMillisecondsTypeAdapter into Date2LongTypeAdapter
  • [KRIPTON-310] - [BREAKING CHANGE] Change Generated Asynctask interface: removed throws Throwable from onExecute method
  • [KRIPTON-311] - [BREAKING CHANGE] Generated Asynctask # onExecute method does not open connection automatically anymore
  • [KRIPTON-321] - [BREAKING] Change @BindTransaction into @BindSqlTransaction
  • [KRIPTON-323] - Add java.version support to java8 for sqlite-test-library

v5.0.0

5 years ago

Bug

[KRIPTON-276] - Improved support for SortedMap and SortedSet

[KRIPTON-277] - Type adapter used in DAO's method have to be checked [KRIPTON-279] - ORM: global type adapter does not work

Improvement

[KRIPTON-262] - Kotlin class hierarchy: now property from parent class is correctly managed. Constraint: parent class must have a Kripton Annotation

[KRIPTON-263] - Java: property from parent class now can have a protected backend field (until now it can be only protected or public) [KRIPTON-267] - ORM: in a table column order is: first PRIMARY KEY, then other column ordered by field name [KRIPTON-268] - ORM: table order: table must be order by default ordered with its name. Mutual dependencies can change default order. [KRIPTON-271] - DateUtils have to work with System TimeZone [KRIPTON-272] - Persistent on file: Support for Immutable POJO [KRIPTON-278] - DateUtils now works with system TimeZone [KRIPTON-282] - SQLite: multi-column index generates unique constraint too [KRIPTON-283] - SQLite: add DateMillisecondsTypeAdapter and DateTimeMillisecondsTypeAdapter to manage util.Date and sql.Date [KRIPTON-287] - SQLite: PK is now NOT NULL

New Feature

[KRIPTON-264] - parameter in query string can be ${placeHolder} or :{placeHolder} or :placeHolder

[KRIPTON-265] - parameter in content provider URL can be ${placeHolder} or :{placeHolder} or :placeHolder [KRIPTON-266] - PK now can be String type too [KRIPTON-269] - Long/long Primary Key now can be UNMANAGED [KRIPTON-270] - Manage spread parameter for "in" and "not in" where condition [KRIPTON-273] - Persistent by REST service: Support for Immutable POJO [KRIPTON-274] - Persistent on SQLite: Support for Immutable POJO [KRIPTON-275] - Persistent on Shared-Preference: Support for Immutable POJO [KRIPTON-284] - SQLite: data source have executeAsync and executeBatchAsync [KRIPTON-285] - SQLite: paginated result has now method getCurrentPage() [KRIPTON-286] - SQLite: DAO's method can return any SQL-type that is not included in data source definition [KRIPTON-288] - Add PagedLiveData [KRIPTON-292] - @BindTransition for data-source

Task

[KRIPTON-280] - update Jackson dependencies to 2.9.6

[KRIPTON-281] - update Rx dependency to 2.1.17 [KRIPTON-290] - [BREAK] Minimum JDK 1.8 [KRIPTON-293] - [BREAK] SQLPopulator#execute: remove SQLDatabase parameter

v4.0.0

5 years ago
    Release Notes - Kripton Persistence Library - Version 4.0.0
    

Bug

  • [KRIPTON-230] - Insert from Select does not work
  • [KRIPTON-248] - Generate Async task had some problem during data source close operation
  • [KRIPTON-249] - DYNAMIC_WHERE did not work on explicit SELECT JQL queries

Improvement

  • [KRIPTON-160] - Add capability of add DYNAMIC_WHERE in extended query type (UPDATE-DELETE)
  • [KRIPTON-161] - Add capability of add DYNAMIC_ORDER in extended query type.
  • [KRIPTON-229] - Dao Subject: avoid to fire events if no elements is modified
  • [KRIPTON-233] - Modularization of Android Library
  • [KRIPTON-241] - ORM: index refactoring: introducing @BindIndex
  • [KRIPTON-247] - [BREAK COMPATIBILITY] @BindColumn renamed in @BindSqlColumn
  • [KRIPTON-252] - SQLite Test Suite refactoring
  • [KRIPTON-253] - [BREAK COMPATIBILITY] @BindTable renamed in @BindSqlType
  • [KRIPTON-259] - Supports for Android Jet Pack with kripton.androidx annotation processor parameter

New Feature

  • [KRIPTON-131] - Add to Retrofit integration, capability to decide which data format choose to work with REST service
  • [KRIPTON-228] - Add LiveData Support
  • [KRIPTON-234] - Define @BindDataSourceOptions to configure DataSource
  • [KRIPTON-237] - Add @BindPreferenceAdapter
  • [KRIPTON-238] - Add global SQLiteTypeAdapter to data source
  • [KRIPTON-239] - add capability to specify for a column the type affinity
  • [KRIPTON-240] - Add @BindSqlRelation to support entity relationship
  • [KRIPTON-246] - Add @BindSqlChildSelect to support child select in select
  • [KRIPTON-250] - Add populator to SQLiteUpdateTestDatabase.builder
  • [KRIPTON-251] - Add simply support for xml namespace
  • [KRIPTON-254] - Add annotation processor options: kripton.schemaLocation
  • [KRIPTON-258] - Support for RX for Shared Preferences
  • [KRIPTON-260] - Shared Preference RX supports
  • [KRIPTON-261] - Shared Preference LiveData support

Task

  • [KRIPTON-227] - Version alignment with maven version
  • [KRIPTON-231] - Remove SQLContext interface to AbstractDataSource
  • [KRIPTON-235] - rename BindTypeAdapter to TypeAdapter
  • [KRIPTON-236] - rename BindSqlTypeAdapter into SqlTypeAdapter
  • [KRIPTON-242] - ORM: removed generated build() method in datasource: it does not need anymore
  • [KRIPTON-243] - @BindColumn#foreignKey renamed in parentEntity
  • [KRIPTON-244] - build and instance methods improvement: remove sync and implementation of inner sync
  • [KRIPTON-245] - @BindColumn#foreignKey renamed in parentEntity
  • [KRIPTON-255] - [BREAK COMPATIBILITY] refactoring DataSource.instance() -> getInstance()
  • [KRIPTON-256] - [BREAK COMPATIBILITY] refactoring Dao.subject() -> getSubject()
  • [KRIPTON-257] - [BREAK COMPATIBILITY] KriptonLibrary.context() -> getContext()