Skip to content

Releases: dhis2/dhis2-android-sdk

Release 1.10.1

26 Aug 12:23
d72cace
Compare
Choose a tag to compare

Bug

ANDROSDK-1883 Program indicator engine shows NaN

ANDROSDK-1871 Program labels are not translated

ANDROSDK-1876 SQL query was failing with orgunit names including single quotes

ANDROSDK-1882 DataSetIntance evaluation does not filter by assgined orgunits

ANDROSDK-1885 Tracker importer: quicker cancellation of uncreated job

ANDROSDK-1893 Program specific setting (limit by orgunit) is overriden by global parameter

ANDROSDK-1868 Ignore null dimensions in Visualizations

ANDROSDK-1394 Do no change state if value is not changed

Release 1.10.0.1

14 Jun 05:46
1505be7
Compare
Choose a tag to compare

Bug

ANDROSDK-1866 Events without registration are not downloaded

Release 1.10.0

29 May 15:11
985e9be
Compare
Choose a tag to compare

Features

ANDROSDK-1218 Import / Export database

ANDROSDK-1630 Download custom icons for metadata

ANDROSDK-1799 Line listing in local analytics

ANDROSDK-1801 Support multiselect in analytics

ANDROSDK-1695 Download attributes/dataElements to display in relationships

ANDROSDK-1750 Add option to bypass DHIS2 version restriction

ANDROSDK-1800 Download configurable basemaps

ANDROSDK-1803 Add keyDefaultBaseMap property in SystemSettings

ANDROSDK-1806 Download custom tracker terminology

ANDROSDK-1816 Restrict APK distribution version by userGroup

ANDROSDK-1817 Download userGroups

ANDROSDK-1833 Create method .getCurrentAccount() in AccountManager

ANDROSDK-1839 Expose api/system/ping call

Bug

ANDROSDK-1852 Android API <= 24 fail to login in Let's encrypt servers

ANDROSDK-1818 OpenID login is failing due to database check

ANDROSDK-1825 EventService: method `isEventExpired` fails when eventDate is null

ANDROSDK-1835 Editable events crashes when no event or due date provided

ANDROSDK-1841 [Crash] ParserException: Invalid string token 'AVG' at line:1 character:0

Library updates:

ANDROSDK-1789 Implement Paging3

Update Gradle (8.3.1)

Release 1.9.1

29 Jan 12:11
ac711cf
Compare
Choose a tag to compare

Bugfixes:

  • New tracker import: do not send values that have not been modified (trackerDataValues, attributeValues) (ANDROSDK-1564).
  • Add missing value type validators (ANDROSDK-1777).
  • Expose Attribute collection repository (ANDROSDK-1776).
  • Database is not responsive when using encryption (ANDROSDK-1784).

Library updates:

  • Update kotlin (1.9.21 and gradle (8.2.0) (ANDROSDK-1793).
  • Update SQLCipher (4.5.5).

Release 1.9.0

22 Nov 08:44
2cd5a13
Compare
Choose a tag to compare

Features

Bug

Library changes:

  • ANDROSDK-1737 Update Kotlin version to 1.9.10.
  • ANDROSDK-1740 Upgrade OkHttp library to 4.10.0. It might imply the update of OkHttp resolution to at least 4.10.0.
  • ANDROSDK-1618 Dagger is replaced by Koin
  • Some changes in the SDK forces to update Gradle to >= 7.4.2 in the consuming app.

Breaking changes:

  • If you are using Kotlin, you might experience some breaking changes in your code. These changes come from the continuous refactor of the codebase to Kotlin and usually they cannot be avoided. They have to do with how Java and Kotlin deal with nullability and, in general, these changes will introduce more robustness (null safety) in your code.

    A common change is the return type of different methods, such as ObjectRepository. Taking DataElement as an example, this query (dataElements().uid("uid").get()) in the JAVA-implemented repository will return a DataElement! in Kotlin, which means that it can't tell if the returned object is nullable or not. In this case, the Kotlin compiler let you deal with these object as if they were NonNull, which could lead to a NullPointerException. Now, the repository will return a DataElement?, which explicitly informs about the nullability of the object.

Release 1.8.2

30 Aug 09:01
6f1cd6e
Compare
Choose a tag to compare

Bugfix:

  • Do not send dataValues / attributes that are not assigned to a program (ANDROSDK-1704).
  • If search text contains a comma the api fails (ANDROSDK-1219).
  • Network authentication does not support special characters (ANDROSDK-1739).
  • Login offline in local instance is not working (ANDROSDK-1706).
  • Relationship with missed item are not properly cleaned (ANDROSDK-1715).

Release 1.8.1.1

09 Jun 10:28
715f6e7
Compare
Choose a tag to compare

Bugfix:

Release 1.8.1

07 Jun 11:40
125da2d
Compare
Choose a tag to compare

Bugfix:

  • Program indicators: implement support for operator "is...in" (ANDROSDK-1686), add missing support for d2:minValue and d2:maxValue functions (ANDROSDK-1571).
  • Analytics: calculation support (ANDROSDK-1687).
  • Map download: add optional NetworkTimeout parameter (ANDROSDK-1690).

Release 1.8.0

10 May 12:55
154943b
Compare
Choose a tag to compare

Features:

Bugfix:

  • Properties "createdAtClient" and "lastUpdatedAtClient" are set to null in the device after data download (ANDROSDK-1653).
  • Property "completeBy" is ignored in events (ANDROSDK-1659).
  • Relationships are not persisted if they are download in other bundle (ANDROSDK-1645).
  • Remove incomplete or inaccessible CategoryOptionCombos (ANDROSDK-1592).

Libraries:

Breaking changes:

  • Applications must enable coreLibraryDesugaring. The SDK uses kotlinx-datetime, which requires desugaring for Android API < 26 (Google devs docs) (ANDROSDK-1632).
  • DHISVersionManager: removed shortcut methods to check the version (such as is2_38(), is2_39(),...). These methods can be easily replaced by the method isVersion(DHISVersion.V2_38), isVersion(DHISVersion.V2_39),... .
  • Remove method "withCategoryOptionCombos()" in "CategoryComboCollectionRepository". Those objects were not nested in the CategoryCombos, so it was useless.
  • UserCredentials class is simplified and the repository is marked as deprecated. The class UserCredentials has been deprecated in the backend. The SDK keeps the repository and the class with a few properties (username, name, userRoles). Now, these properties are owned by the User class, so use User class instead (ANDROSDK-1584).

Release 1.7.1

30 Jan 09:45
de0e445
Compare
Choose a tag to compare

Bugfix:

  • Update SQLCipher to prevent "Defective OpenSSL Version (OpenSSL 1.1.1g)" (ANDROSDK-1611).
  • File resize helper: store resized image in cache folder (ANDROSDK-1597).
  • Include paging for options call (ANDROSDK-1601).
  • Wrong composed Program Indicator expressions cause the App to crash (ANDROSDK-1604).
  • Support open source maps (ANDROSDK-1605).
  • Fix daysInBetween function to consider summer time (ANDROSDK-1606).
  • DataSetInstance filters: filter by relevant attributeOptionCombo (ANDROSDK-1608), filter relevant period types (ANDROSDK-1600).