Skip to content

Releases: eclipse-keyple/keyple-card-generic-java-lib

4.0.0

16 Mar 14:43

Choose a tag to compare

Changed

  • Migrated to keypop-genericcard-jvm-api version 1.0.0

Removed

  • Removed deprecated enum ChannelControl
  • Removed deprecated class TransactionException

3.2.1

20 Feb 09:49

Choose a tag to compare

Changed

  • Normalized logging and error messages using Keyple coding standards.

Upgraded

  • keyple-service-resource-java-lib from 3.1.0 to 3.1.1 (source code not impacted)
  • keyple-util-java-lib from 2.4.0 to 2.4.1 (source code not impacted)
  • slf4j-api from 1.7.32 to 1.7.36 (compileOnly)

3.2.0

21 Nov 11:12

Choose a tag to compare

Added

  • New methods in CardTransactionManager:
    • getResponsesAsByteArrays() — returns the list of APDU responses as byte arrays.
    • getResponsesAsHexStrings() — returns the list of APDU responses as hexadecimal strings.
  • Added support for org.eclipse.keypop.reader.ChannelControl in place of the deprecated internal ChannelControl enum.

Changed

  • CardTransactionManager now extends org.eclipse.keypop.reader.transaction.spi.CardTransactionManager<CardTransactionManager>.
  • UML diagram updated to reflect version 3.2.+ (2025-11-10) and new API relationships.

Deprecated

  • CardTransactionManager.processApdusToByteArrays(ChannelControl) — use processCommands() and getResponsesAsByteArrays() instead.
  • CardTransactionManager.processApdusToHexStrings(ChannelControl) — use processCommands() and getResponsesAsHexStrings() instead.
  • ChannelControl enum — will be removed in a future version.
  • TransactionException class — will be removed in a future version.

Fixed

  • Improved error handling in CardTransactionManagerAdapter with specific exceptions:
    • ReaderCommunicationException
    • CardCommunicationException
    • InvalidCardResponseException

Upgraded

  • Keypop Reader API 2.0.1 -> 2.1.0
  • Keyple Common API 2.0.1 -> 2.0.2

3.1.3

12 Nov 11:23

Choose a tag to compare

Fixed

  • Fixed the algorithm for checking the maximum length of a non-extended APDU command when calling prepareApdu methods.
    It was initially limited to 251 bytes, whereas it is actually 261 bytes according to ISO/IEC 7816-4:
    CLA(1) | INS(1) | P1(1) | P2(1) | [LC(1) | DATA(n<=255) | Le(1)]

Changed

  • Migrated the CI pipeline from Jenkins to GitHub Actions.

3.1.2

25 Sep 14:39

Choose a tag to compare

Fixed

  • Revert version 3.1.1 due to useless fixed of distributed backward compatibility for legacy keyple-less clients.

3.1.1

19 Sep 15:06

Choose a tag to compare

Fixed

  • Fixed distributed backward compatibility for legacy keyple-less clients.

3.1.0

06 Sep 14:04

Choose a tag to compare

Changed

  • Logging improvement.

Upgraded

  • Keyple Service Resource Library 3.0.1 -> 3.1.0 (optimization of network exchanges)

3.0.1

12 Apr 14:03

Choose a tag to compare

Changed

  • Java source and target levels 1.6 -> 1.8

Upgraded

  • Keypop Reader API 2.0.0 -> 2.0.1
  • Keypop Card API 2.0.0 -> 2.0.1
  • Keyple Common API 2.0.0 -> 2.0.1
  • Keyple Service Resource Lib 3.0.0 -> 3.0.1
  • Keyple Util Lib 2.3.1 -> 2.4.0
  • Gradle 6.8.3 -> 7.6.4

3.0.0

28 Nov 16:26

Choose a tag to compare

⚠️ Major version! Following the migration of the "Calypsonet Terminal" APIs to the Eclipse Keypop project, this library now implements Keypop interfaces.

Added

  • Added project status badges on README.md file.

Changed

  • Class renamed:
    • GenericCardSelection -> GenericCardSelectionExtension
  • Methods renamed or signatures refactored:
    • GenericCardSelection createCardSelection () -> GenericCardSelectionExtension createGenericCardSelectionExtension()
    • CardResourceProfileExtension createCardResourceProfileExtension(GenericCardSelectionExtension genericCardSelectionExtension) -> CardResourceProfileExtension createCardResourceProfileExtension(CardSelector<IsoCardSelector> cardSeletor, GenericCardSelectionExtension genericCardSelectionExtension)
    • processApdusToByteArrays () -> processApdusToByteArrays (ChannelControl channelControl) and processApdusToHexStrings () -> processApdusToHexStrings (ChannelControl channelControl) The enum ChannelControl` has been created for this purpose.

Removed

  • Removed methods from GenericCardSelectionExtension (now available from Keyple core service):
    • filterByCardProtocol(...)
    • filterByPowerOnData(...)
    • filterByDfName(...)
    • setFileOccurrence(...)
    • setFileControlInformation(...)
  • Removed enumerations:
    • FileOccurrence
    • FileControlInformation
  • Removed method from GenericExtensionService:
    • prepareReleaseChannel()

Fixed

  • CI: code coverage report when releasing.

Upgraded

  • Calypsonet Terminal Reader API 1.0.0 -> Keypop Reader API 2.0.0
  • Calypsonet Terminal Card API 1.0.0 -> Keypop Card API 2.0.0
  • Keyple Util Library 2.1.0 -> 2.3.1
  • Keyple Service Resource Library 2.0.1 -> 3.0.0

2.0.2

17 Dec 14:20

Choose a tag to compare

Fixed

  • Logging of APDU request command (issue [#9]).