From 765d4a27f0a89fc8af3cbda123bb1f0b49e7921b Mon Sep 17 00:00:00 2001 From: Jo Rabin Date: Fri, 6 Sep 2024 14:41:02 +0100 Subject: [PATCH] Update documentation in preparation for release of 2.2.2 --- CHANGELOG.md | 5 +++-- DatabaseStructure.svg | 4 ++-- readme.md | 35 ++++++++++++++++++++--------------- 3 files changed, 25 insertions(+), 19 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a791c2db..99723723 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,11 +2,12 @@ Trying to follow the suggestions at [Keep a Change Log](http://keepachangelog.com) and [Semantic Versioning](http://semver.org/spec/v2.0.0.html) -## [2.2.2-SNAPSHOT] +## [2.2.2] 2024-09-06 ### Added -- implementation of database using Jackson +- implementation of database using Jackson via @giusvale-dev +- enhancement of KeyFile support via @giusvale-dev ## [2.2.1] 2023-08-21 diff --git a/DatabaseStructure.svg b/DatabaseStructure.svg index 20a5ade1..0694e7aa 100644 --- a/DatabaseStructure.svg +++ b/DatabaseStructure.svg @@ -1,4 +1,4 @@ - + -
Save/Load
Save/Load
SerializableDatabase
(DOM, JAXB, Simple)
SerializableDatabase...
Encrypt/Decrypt
Encrypt/Decrypt
StreamFormat
(Kdbx, None)
StreamFormat...
Read/Write Values
Read/Write Values
Save/Load
Save/Load
Database Implementation
(Memory Model, DOM etc.)
Database Implementation...
Save/Load
Save/Load
User Read/Write
User Read/Write
Database Facade
(DOM Wrapper, JAXB, SImple)
Database Facade...
Text is not SVG - cannot display
\ No newline at end of file +
Save/Load
Save/Load
SerializableDatabase
(Jackson, DOM, JAXB, Simple)
SerializableDatabase...
Encrypt/Decrypt
Encrypt/Decrypt
StreamFormat
(Kdbx, None)
StreamFormat...
Read/Write Values
Read/Write Values
Save/Load
Save/Load
Database Implementation
(Memory Model, DOM etc.)
Database Implementation...
Save/Load
Save/Load
User Read/Write
User Read/Write
Database Facade
(Jackson, DOM Wrapper, JAXB, SImple)
Database Facade...
Text is not SVG - cannot display
\ No newline at end of file diff --git a/readme.md b/readme.md index d7a208b0..0a46a161 100644 --- a/readme.md +++ b/readme.md @@ -41,12 +41,14 @@ It is licensed under the Apache 2 License and is currently usable. After a period of neglect, the project is (May 2023) back in development. -The current code is version 2.2.2-SNAPSHOT. This is on the main branch. See [Build from Source](#build-from-source) +The current code is version 2.2.2. This is on the main branch. See [Build from Source](#build-from-source) Key updates relative to 2.1: - Java 8 (dependencies no longer support Java 7) -- Updated dependencies to remove known vulnerabilities - File format version 4 support - with Argon2 +- Inclusion of Jackson based KDBX support with a view to removing SimpleXML and JAXB support +- Updated keyfile support +- Updated dependencies to remove known vulnerabilities See the [changelog](CHANGELOG.md) for more details. @@ -54,11 +56,11 @@ See the [changelog](CHANGELOG.md) for more details. ### Release -The composite POM for the last release (2.2.1), Java 8 compatible, is +The composite POM for the last release (2.2.2), Java 8 compatible, is org.linguafranca.pwdb KeePassJava2 - 2.2.1 + 2.2.2 at Maven Central. Note that the artifactId has become Camel Case from release 2.1.x onwards. @@ -68,7 +70,7 @@ Snapshot builds are erratically available at [Sonatype](https://oss.sonatype.org org.linguafranca.pwdb KeePassJava2 - 2.2.2-SNAPSHOT + 2.2.3-SNAPSHOT with appropriate `` entry, like: @@ -212,7 +214,7 @@ For Java 11 and later Jaxb implementation depends on explicit inclusion [no long - [JAXB](https://javaee.github.io/jaxb-v2/) -It also depends on SLF4J and Junit for tests. +It also depends on SLF4J and Junit 4 for tests. ## Build from Source @@ -256,9 +258,17 @@ Each module corresponds to a Maven artifact. The GroupId is `org.linguafranca.pw kdbxKeePassJava2-kdbx Javadocs Provides support for KDBX streaming and security. + + +jacksonKeePassJava2-jackson +Javadocs +A Jackson based implementation of KDBX. Intended to provide the main support going forward, replacing trhe +modules below. + simpleKeePassJava2-simple Javadocs -A Simple XML Platform implementation of KDBX. Could be useful for Android. +A Simple XML Platform implementation of KDBX. Could be useful for Android. +Simple cannot be used with Java versions 17 and up. jaxbKeePassJava2-jaxb Javadocs @@ -268,12 +278,7 @@ bindings might be useful for building other interfaces. domKeePassJava2-dom Javadocs A DOM based implementation of KDBX. Being DOM based it is rather slow, but -messes less with existing content than the other two implementations. Known to work on Android. - -domKeePassJava2-jackson -Javadocs -A Jackson based implementation of KDBX. Intended to replace the Simple XML implementation. Simple XML seems no -longer to be maintained. +messes less with existing content than the other implementations. Known to work on Android. @@ -301,13 +306,13 @@ Many thanks to Pavel Ivanov [@ivanovpv](https://github.com/ivanovpv) for his help with Android and Gradle compatibility issues. Thanks to Giuseppe Valente [@giusvale-dev](https://github.com/giusvale-dev) for -the contribution of the Jackson module. +the contribution of the Jackson module and enhancements to KeyFile support. Thanks to other contributors and raisers of issues. ## License -Copyright (c) 2023 Jo Rabin +Copyright (c) 2024 Jo Rabin Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.