You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Document the reason behind adding package:crypto as a transitive dependency #228
It may indicate that this is a rewrite of package:crypto or that both are from the same publisher (they are different: dart.dev and dint.dev, which are a bit similar and easy to conflate) or that cryptography is an official successor.
Maybe it should indicate that both are different and solve different problems, but package:cryptography is a more complete solution for cryptography beyond hashing algorithms?
Clarify the reason behind depending on package:crypto
This is the part that I find a bit inconsistent with the former.
This is understandable, but Dart can be more specific: is it a pure Dart implementation, or an implementation of package:crypto's API by the Dart team publisher (commonly known as a Dart package)?
These details are minor but raised some questions when choosing to adapt package:cryptography in other packages published to pub.dev. Real example: Skyost/SimpleSecureStorage#16 (comment)
The main concern was the additional transitive dependency: Dart's crypto (package:crypto).
Even though this does benefit from Dart tree shaking, so in practice this does not negatively impact the bundle size and many packages add package:crypto as a transitive dependency indirectly, breaking changes are still a concern.
I would be happy to send a PR, but I need to confirm my understanding.
Another question (off-topic) is whether this library plans to add Dart build hooks in the future, which may break Dart integration tests, scripts, and custom setup.
Dart integration tests are significantly faster and cheaper to run compared to Flutter integration tests. Pure Dart integration tests do not need to build a native app on each run, and in many cases, they can be completed in less than 1 second. Some plugins are slowly being refactored to be independent of Flutter method channels, so this is beneficial in practice (monorepo, CI, build failures).
One of the primary benefits of this package is that it decouples the Flutter-specific code from the Dart code. So I also assume there are no plans to add build hooks in cryptography, or is this an inaccurate assumption?
Activity
EchoEllet commentedon Jul 22, 2026
I would be happy to send a PR, but I need to confirm my understanding.
Another question (off-topic) is whether this library plans to add Dart build hooks in the future, which may break Dart integration tests, scripts, and custom setup.
Dart integration tests are significantly faster and cheaper to run compared to Flutter integration tests. Pure Dart integration tests do not need to build a native app on each run, and in many cases, they can be completed in less than 1 second. Some plugins are slowly being refactored to be independent of Flutter method channels, so this is beneficial in practice (monorepo, CI, build failures).
One of the primary benefits of this package is that it decouples the Flutter-specific code from the Dart code. So I also assume there are no plans to add build hooks in
cryptography, or is this an inaccurate assumption?