kdbx 2.4.2
kdbx: ^2.4.2 copied to clipboard
KeepassX format implementation in pure dart. (kdbx 3.x and 4.x support).
We analyzed this package 6 hours ago, and awarded it 120 pub points (of a possible 160):
10/10 points: Provide a valid pubspec.yaml
5/5 points: Provide a valid README.md
5/5 points: Provide a valid CHANGELOG.md
10/10 points: Use an OSI-approved license
Detected license: GPL-3.0
.
0/10 points: 20% or more of the public API has dartdoc comments
51 out of 344 API elements (14.8 %) 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: kdbx.ByteUtils
, kdbx.ByteUtils.ByteUtils.new
, kdbx.ByteUtils.eq
, kdbx.ByteUtils.randomBytes
, kdbx.ByteUtils.toHex
.
10/10 points: Package has an example
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:kdbx/kdbx.dart
that imports:package:kdbx/src/kdbx_object.dart
that imports:package:kdbx/src/kdbx_xml.dart
that imports:package:kdbx/src/kdbx_format.dart
that imports:package:kdbx/src/kdbx_header.dart
that imports:package:kdbx/src/kdbx_binary.dart
that imports:dart:io
0/0 points: WASM compatibility
Package not compatible with runtime wasm
Because:
package:kdbx/kdbx.dart
that imports:package:kdbx/src/kdbx_object.dart
that imports:package:kdbx/src/kdbx_xml.dart
that imports:package:kdbx/src/kdbx_format.dart
that imports:package:kdbx/src/kdbx_header.dart
that imports:package:kdbx/src/kdbx_binary.dart
that imports:dart:io
This package is not compatible with runtime wasm
, and will not be rewarded full points in a future version of the scoring model.
See https://dart.cn/web/wasm for details.
40/50 points: code has no errors, warnings, lints, or formatting issues
Found 13 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
10/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.0.7 | 4.0.7 | |
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.2 | 1.1.2 | |
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.6 | 3.0.6 | |
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 | 1.4.0+1 | |
meta |
>=1.0.0 <2.0.0 |
1.17.0 | 1.17.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.4.0 | 3.4.0 | |
uuid |
>=3.0.0 <5.0.0 |
4.5.1 | 4.5.1 | |
xml |
>=4.4.0 <7.0.0 |
6.6.1 | 6.6.1 |
Transitive dependencies
Package | Constraint | Compatible | Latest | Notes |
---|---|---|---|---|
async |
- | 2.13.0 | 2.13.0 | |
boolean_selector |
- | 2.1.2 | 2.1.2 | |
dio |
- | 5.9.0 | 5.9.0 | |
dio_web_adapter |
- | 2.1.1 | 2.1.1 | |
ffi |
- | 2.1.4 | 2.1.4 | |
fixnum |
- | 1.1.1 | 1.1.1 | |
http_parser |
- | 4.1.2 | 4.1.2 | |
intl |
- | 0.20.2 | 0.20.2 | |
matcher |
- | 0.12.17 | 0.12.17 | |
mime |
- | 2.0.0 | 2.0.0 | |
petitparser |
- | 7.0.1 | 7.0.1 | |
posix |
- | 6.0.3 | 6.0.3 | |
source_span |
- | 1.10.1 | 1.10.1 | |
sprintf |
- | 7.0.0 | 7.0.0 | |
stack_trace |
- | 1.12.1 | 1.12.1 | |
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.7 | 0.7.7 | |
typed_data |
- | 1.4.0 | 1.4.0 | |
web |
- | 1.1.1 | 1.1.1 |
To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides
.
10/10 points: Package supports latest stable Dart and Flutter SDKs
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:1036:14
- A value of type 'ListURI_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.22.23
, Dart 3.9.3
.
Check the analysis log for details.