name = File-KDBX
-author = Charles McGarvey <chazmcgarvey@brokenzipper.com>
+author = Charles McGarvey <ccm@cpan.org>
copyright_holder = Charles McGarvey
copyright_year = 2022
license = Perl_5
[@Author::CCM]
+Test::CleanNamespaces.skip[0] = ::Util|::KDF::AES$
+RepoReadme.type = gfm
+
+[Prereqs / RuntimeRecommends]
+File::Spec = 0
+
+[Prereqs / TestSuggests]
+POSIX::1003 = 0
+
+[OptionalFeature / xs]
+-description = speed improvements (requires C compiler)
+-prompt = 0
+-always_recommend = 1
+File::KDBX::XS = 0
+
+[OptionalFeature / compression]
+-description = ability to read and write compressed KDBX files
+-prompt = 0
+-always_recommend = 1
+Compress::Raw::Zlib = 0
+IO::Compress::Gzip = 0
+IO::Uncompress::Gunzip = 0
+
+[OptionalFeature / otp]
+-description = ability to generate one-time passwords from configured database entries
+-prompt = 0
+-always_recommend = 1
+Pass::OTP = 0
+
+; https://github.com/Perl-Toolchain-Gang/toolchain-site/blob/master/berlin-consensus.md#need-for-a-post-install-recommendations-key
+; I'd like to suggest File::KeePass::KDBX, but that would create a circular
+; dependency. If/when there exists a post-install recommendations key, we can
+; use that.
+; [OptionalFeature / kdb]
+; -description = ability to read and write old KDB files
+; -prompt = 0
+; -always_suggests = 1
+; File::KeePass = 0
+; File::KeePass::KDBX = 0
+[Prereqs::Soften / BreakCycle]
+to_relationship = none
+module = File::KeePass
+module = File::KeePass::KDBX
+
+[Prereqs::Soften / ProgressiveEnhancement]
+to_relationship = none
+; File::KDBX::XS, which is recommended, provides the same functionality as B::COW
+module = B::COW
+
+[Prereqs::Soften / NotARealModule]
+to_relationship = none
+; Iterator::Simple is the actual loadable module
+module = Iterator::Simple::Iterator
+
+[Prereqs::Soften]
+modules_from_features = 1
+
+[Encoding]
+encoding = bytes
+matches = \.(key|kdbx?)$