Skip to main content

tom_kdbx 2.4.2+tom.4 copy "tom_kdbx: ^2.4.2+tom.4" to clipboard
tom_kdbx: ^2.4.2+tom.4 copied to clipboard

A fork of kdbx (KeePass KDBX 3.x and 4.x in pure Dart) for the Tom workspace: upstream 2.4.2 plus a public UUID-assignment API, KdbxCustomData.remove, KdbxDao.clearDeletion and xml 7.

90/ 160
pub points
6
downloads

We analyzed this package 26 hours ago, and awarded it 90 pub points (of a possible 160):

Failed report section
Follow Dart file conventions
20 / 30trigger folding of the section

Failed check 0/10 points: Provide a valid pubspec.yaml

The package description is too long.

Search engines display only the first part of the description. Try to keep the value of the description field in your package's pubspec.yaml file between 60 and 180 characters.

Failed to verify repository URL.

Repository has no matching pubspec.yaml with name: tom_kdbx.

Please provide a valid repository URL in pubspec.yaml, such that:

  • repository can be cloned,
  • a clone of the repository contains a pubspec.yaml, which:,
    • contains name: tom_kdbx,
    • contains a version property, and,
    • does not contain a publish_to property.

Passed check 5/5 points: Provide a valid README.md

Passed check 5/5 points: Provide a valid CHANGELOG.md

Passed check 10/10 points: Use an OSI-approved license

Detected license: GPL-3.0.

Failed report section
Provide documentation
0 / 20trigger folding of the section

Partially passed check 0/10 points: 20% or more of the public API has dartdoc comments

57 out of 350 API elements (16.3 %) have documentation comments.

Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API. Document at least 20% of the public API elements.

To highlight public API members missing documentation consider enabling the public_member_api_docs lint.

Some symbols that are missing documentation: tom_kdbx.ByteUtils, tom_kdbx.ByteUtils.ByteUtils.new, tom_kdbx.ByteUtils.eq, tom_kdbx.ByteUtils.randomBytes, tom_kdbx.ByteUtils.toHex.

Failed check 0/10 points: Package has an example

No example found.

See package layout guidelines on how to add an example.

Passed report section
Platform support
20 / 20trigger folding of the section

Passed check 20/20 points: Supports 5 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

These platforms are not supported:

Package not compatible with platform Web

Because:

  • package:tom_kdbx/tom_kdbx.dart that imports:
  • package:tom_kdbx/src/kdbx_object.dart that imports:
  • package:tom_kdbx/src/kdbx_xml.dart that imports:
  • package:tom_kdbx/src/kdbx_format.dart that imports:
  • package:tom_kdbx/src/kdbx_header.dart that imports:
  • package:tom_kdbx/src/kdbx_binary.dart that imports:
  • dart:io
Partially passed report section
Pass static analysis
40 / 50trigger folding of the section

Partially passed check 40/50 points: code has no errors, warnings, lints, or formatting issues

Found 28 issues. Showing the first 2:

INFO: 'text' is deprecated and shouldn't be used. Use [value] to access the textual content of this node, or [innerText] to access the textual content of its descendants.

lib/src/credentials/keyfile.dart:38:13

   ╷
38 │           ?.text;
   │             ^^^^
   ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/credentials/keyfile.dart

INFO: 'text' is deprecated and shouldn't be used. Use [value] to access the textual content of this node, or [innerText] to access the textual content of its descendants.

lib/src/credentials/keyfile.dart:41:34

   ╷
41 │       final encoded = dataString.text.replaceAll(RegExp(r'\s'), '');
   │                                  ^^^^
   ╵

To reproduce make sure you are using the lints_core and run dart analyze lib/src/credentials/keyfile.dart

Failed report section
Support up-to-date dependencies
10 / 40trigger folding of the section

Failed check 0/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest Notes
archive >=2.0.13 <5.0.0 4.6.0 4.6.0
argon2_ffi_base ^1.1.0+1 1.1.1 1.1.1
args >1.5.0 <3.0.0 2.7.0 2.7.0
clock >=1.0.0 <2.0.0 1.1.3 1.1.3
collection >=1.15.0 <2.0.0 1.19.1 1.19.1
convert >=2.0.0 <4.0.0 3.1.2 3.1.2
crypto >=2.0.0 <4.0.0 3.0.8 3.0.8
isolates >=3.0.0 <4.0.0 3.0.3+8 3.0.3+8
logging >=0.11.3+2 <2.0.0 1.3.0 1.3.0
logging_appenders >=0.1.0 <2.0.0 1.4.0+1 2.0.0+1
meta >=1.0.0 <2.0.0 1.19.0 1.19.0
path >=1.6.0 <2.0.0 1.9.1 1.9.1
pointycastle >=3.4.0 <5.0.0 4.0.0 4.0.0
quiver >=2.1.0 <4.0.0 3.2.2 3.2.2
supercharged_dart >=1.2.0 <4.0.0 2.1.1 2.1.1
synchronized >=2.2.0 <4.0.0 3.5.0 3.5.0
uuid >=3.0.0 <5.0.0 4.6.0 4.6.0
xml >=4.4.0 <8.0.0 7.1.0 7.1.0
Transitive dependencies
Package Constraint Compatible Latest Notes
async - 2.13.1 2.13.1
boolean_selector - 2.1.2 2.1.2
dio - 5.11.1 5.11.1
dio_web_adapter - 2.2.2 2.2.2
ffi - 2.2.0 2.2.0
fixnum - 1.1.1 1.1.1
http_parser - 4.1.2 4.1.2
intl - 0.20.3 0.20.3
matcher - 0.12.20 0.12.20
mime - 2.1.0 2.1.0
petitparser - 7.1.0 7.1.0
posix - 6.5.4 6.5.4
source_span - 1.10.2 1.10.2
stack_trace - 1.12.2 1.12.2
stream_channel - 2.1.4 2.1.4
string_scanner - 1.4.1 1.4.1
term_glyph - 1.2.2 1.2.2
test_api - 0.7.15 0.7.15
typed_data - 1.4.0 1.4.0
web - 1.1.2 1.1.2

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

The constraint `>=0.1.0 <2.0.0` on logging_appenders does not support the stable version `2.0.0`.

Try running dart pub upgrade --major-versions logging_appenders to update the constraint.

Passed check 10/10 points: Package supports latest stable Dart and Flutter SDKs

Failed check 0/20 points: Compatible with dependency constraint lower bounds

downgrade analysis failed failed with 6 errors:

  • RETURN_OF_INVALID_TYPE - lib/src/kdbx_format.dart:1047:14 - A value of type 'List
  • URI_DOES_NOT_EXIST - lib/src/kdbx_object.dart:17:8 - Target of URI doesn't exist: 'package:uuid/data.dart'.
  • URI_DOES_NOT_EXIST - lib/src/kdbx_object.dart:18:8 - Target of URI doesn't exist: 'package:uuid/rng.dart'.

Run dart pub downgrade and then dart analyze to reproduce the above problem.

You may run dart pub upgrade --tighten to update your dependency constraints, see dart.dev/go/downgrade-testing for details.

Analyzed with Pana 0.23.19, Dart 3.13.5.

Check the analysis log for details.

Weekly downloads

Display as:
By versions:
0
likes
90
points
6
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A fork of kdbx (KeePass KDBX 3.x and 4.x in pure Dart) for the Tom workspace: upstream 2.4.2 plus a public UUID-assignment API, KdbxCustomData.remove, KdbxDao.clearDeletion and xml 7.

License

GPL-3.0 (license)

Dependencies

archive, argon2_ffi_base, args, clock, collection, convert, crypto, isolates, logging, logging_appenders, meta, path, pointycastle, quiver, supercharged_dart, synchronized, uuid, xml

More

Packages that depend on tom_kdbx