]> Dogcows Code - chaz/p5-File-KDBX/commitdiff
Version 0.904
authorCharles McGarvey <ccm@cpan.org>
Fri, 8 Jul 2022 03:52:59 +0000 (21:52 -0600)
committerCharles McGarvey <ccm@cpan.org>
Fri, 8 Jul 2022 03:52:59 +0000 (21:52 -0600)
44 files changed:
Changes
MANIFEST
META.json
META.yml
Makefile.PL
README
lib/File/KDBX.pm
lib/File/KDBX/Cipher.pm
lib/File/KDBX/Cipher/CBC.pm
lib/File/KDBX/Cipher/Stream.pm
lib/File/KDBX/Constants.pm
lib/File/KDBX/Dumper.pm
lib/File/KDBX/Dumper/KDB.pm
lib/File/KDBX/Dumper/Raw.pm
lib/File/KDBX/Dumper/V3.pm
lib/File/KDBX/Dumper/V4.pm
lib/File/KDBX/Dumper/XML.pm
lib/File/KDBX/Entry.pm
lib/File/KDBX/Error.pm
lib/File/KDBX/Group.pm
lib/File/KDBX/IO.pm
lib/File/KDBX/IO/Crypt.pm
lib/File/KDBX/IO/HashBlock.pm
lib/File/KDBX/IO/HmacBlock.pm
lib/File/KDBX/Iterator.pm
lib/File/KDBX/KDF.pm
lib/File/KDBX/KDF/AES.pm
lib/File/KDBX/KDF/Argon2.pm
lib/File/KDBX/Key.pm
lib/File/KDBX/Key/ChallengeResponse.pm
lib/File/KDBX/Key/Composite.pm
lib/File/KDBX/Key/File.pm
lib/File/KDBX/Key/Password.pm
lib/File/KDBX/Key/YubiKey.pm
lib/File/KDBX/Loader.pm
lib/File/KDBX/Loader/KDB.pm
lib/File/KDBX/Loader/Raw.pm
lib/File/KDBX/Loader/V3.pm
lib/File/KDBX/Loader/V4.pm
lib/File/KDBX/Loader/XML.pm
lib/File/KDBX/Object.pm
lib/File/KDBX/Safe.pm
lib/File/KDBX/Transaction.pm
lib/File/KDBX/Util.pm

diff --git a/Changes b/Changes
index 8de6278baf0a739cc8bc9d0bc5537b76c9f25074..857ced2d2096a463989dd9c9a5c82f69e0d9dd63 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,5 +1,8 @@
 Revision history for File-KDBX.
 
+0.904     2022-07-07 21:51:17-0600
+  * Use expanded title, username in OTP parameters.
+
 0.903     2022-05-11 17:17:13-0600
 
   * Fixed parsing KDBX4 datetimes on 32-bit perls.
index 55106919af998d469dce2d267bbf142e0bd2919c..1acac53b797b9477aba578dd7a0ea6f69fadc1ca 100644 (file)
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.024.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v6.025.
 Changes
 LICENSE
 MANIFEST
index ff130aa3e2c0c6d42d1195e6117ee46680340fd5..a3c9e9956086b45fa452d976734ea126206dba90 100644 (file)
--- a/META.json
+++ b/META.json
@@ -4,7 +4,7 @@
       "Charles McGarvey <ccm@cpan.org>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "Dist::Zilla version 6.024, CPAN::Meta::Converter version 2.150010",
+   "generated_by" : "Dist::Zilla version 6.025, CPAN::Meta::Converter version 2.150010",
    "license" : [
       "perl_5"
    ],
    "provides" : {
       "File::KDBX" : {
          "file" : "lib/File/KDBX.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Cipher" : {
          "file" : "lib/File/KDBX/Cipher.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Cipher::CBC" : {
          "file" : "lib/File/KDBX/Cipher/CBC.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Cipher::Stream" : {
          "file" : "lib/File/KDBX/Cipher/Stream.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Constants" : {
          "file" : "lib/File/KDBX/Constants.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Dumper" : {
          "file" : "lib/File/KDBX/Dumper.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Dumper::KDB" : {
          "file" : "lib/File/KDBX/Dumper/KDB.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Dumper::Raw" : {
          "file" : "lib/File/KDBX/Dumper/Raw.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Dumper::V3" : {
          "file" : "lib/File/KDBX/Dumper/V3.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Dumper::V4" : {
          "file" : "lib/File/KDBX/Dumper/V4.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Dumper::XML" : {
          "file" : "lib/File/KDBX/Dumper/XML.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Entry" : {
          "file" : "lib/File/KDBX/Entry.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Error" : {
          "file" : "lib/File/KDBX/Error.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Group" : {
          "file" : "lib/File/KDBX/Group.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::IO" : {
          "file" : "lib/File/KDBX/IO.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::IO::Crypt" : {
          "file" : "lib/File/KDBX/IO/Crypt.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::IO::HashBlock" : {
          "file" : "lib/File/KDBX/IO/HashBlock.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::IO::HmacBlock" : {
          "file" : "lib/File/KDBX/IO/HmacBlock.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Iterator" : {
          "file" : "lib/File/KDBX/Iterator.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::KDF" : {
          "file" : "lib/File/KDBX/KDF.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::KDF::AES" : {
          "file" : "lib/File/KDBX/KDF/AES.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::KDF::Argon2" : {
          "file" : "lib/File/KDBX/KDF/Argon2.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Key" : {
          "file" : "lib/File/KDBX/Key.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Key::ChallengeResponse" : {
          "file" : "lib/File/KDBX/Key/ChallengeResponse.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Key::Composite" : {
          "file" : "lib/File/KDBX/Key/Composite.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Key::File" : {
          "file" : "lib/File/KDBX/Key/File.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Key::Password" : {
          "file" : "lib/File/KDBX/Key/Password.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Key::YubiKey" : {
          "file" : "lib/File/KDBX/Key/YubiKey.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Loader" : {
          "file" : "lib/File/KDBX/Loader.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Loader::KDB" : {
          "file" : "lib/File/KDBX/Loader/KDB.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Loader::Raw" : {
          "file" : "lib/File/KDBX/Loader/Raw.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Loader::V3" : {
          "file" : "lib/File/KDBX/Loader/V3.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Loader::V4" : {
          "file" : "lib/File/KDBX/Loader/V4.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Loader::XML" : {
          "file" : "lib/File/KDBX/Loader/XML.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Object" : {
          "file" : "lib/File/KDBX/Object.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Safe" : {
          "file" : "lib/File/KDBX/Safe.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Transaction" : {
          "file" : "lib/File/KDBX/Transaction.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       },
       "File::KDBX::Util" : {
          "file" : "lib/File/KDBX/Util.pm",
-         "version" : "0.903"
+         "version" : "0.904"
       }
    },
    "release_status" : "stable",
          "web" : "https://github.com/chazmcgarvey/File-KDBX"
       }
    },
-   "version" : "0.903",
+   "version" : "0.904",
    "x_authority" : "cpan:CCM",
-   "x_generated_by_perl" : "v5.34.1",
-   "x_serialization_backend" : "Cpanel::JSON::XS version 4.27",
+   "x_generated_by_perl" : "v5.36.0",
+   "x_serialization_backend" : "Cpanel::JSON::XS version 4.30",
    "x_spdx_expression" : "Artistic-1.0-Perl OR GPL-1.0-or-later"
 }
 
index c0bda7d5a1c0376d886b2cd022c3ed053a712b9d..855ea07d092af7014688bbd6af817affd3b03d16 100644 (file)
--- a/META.yml
+++ b/META.yml
@@ -19,7 +19,7 @@ build_requires:
 configure_requires:
   ExtUtils::MakeMaker: '0'
 dynamic_config: 0
-generated_by: 'Dist::Zilla version 6.024, CPAN::Meta::Converter version 2.150010'
+generated_by: 'Dist::Zilla version 6.025, CPAN::Meta::Converter version 2.150010'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -50,118 +50,118 @@ optional_features:
 provides:
   File::KDBX:
     file: lib/File/KDBX.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Cipher:
     file: lib/File/KDBX/Cipher.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Cipher::CBC:
     file: lib/File/KDBX/Cipher/CBC.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Cipher::Stream:
     file: lib/File/KDBX/Cipher/Stream.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Constants:
     file: lib/File/KDBX/Constants.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Dumper:
     file: lib/File/KDBX/Dumper.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Dumper::KDB:
     file: lib/File/KDBX/Dumper/KDB.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Dumper::Raw:
     file: lib/File/KDBX/Dumper/Raw.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Dumper::V3:
     file: lib/File/KDBX/Dumper/V3.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Dumper::V4:
     file: lib/File/KDBX/Dumper/V4.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Dumper::XML:
     file: lib/File/KDBX/Dumper/XML.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Entry:
     file: lib/File/KDBX/Entry.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Error:
     file: lib/File/KDBX/Error.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Group:
     file: lib/File/KDBX/Group.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::IO:
     file: lib/File/KDBX/IO.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::IO::Crypt:
     file: lib/File/KDBX/IO/Crypt.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::IO::HashBlock:
     file: lib/File/KDBX/IO/HashBlock.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::IO::HmacBlock:
     file: lib/File/KDBX/IO/HmacBlock.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Iterator:
     file: lib/File/KDBX/Iterator.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::KDF:
     file: lib/File/KDBX/KDF.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::KDF::AES:
     file: lib/File/KDBX/KDF/AES.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::KDF::Argon2:
     file: lib/File/KDBX/KDF/Argon2.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Key:
     file: lib/File/KDBX/Key.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Key::ChallengeResponse:
     file: lib/File/KDBX/Key/ChallengeResponse.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Key::Composite:
     file: lib/File/KDBX/Key/Composite.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Key::File:
     file: lib/File/KDBX/Key/File.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Key::Password:
     file: lib/File/KDBX/Key/Password.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Key::YubiKey:
     file: lib/File/KDBX/Key/YubiKey.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Loader:
     file: lib/File/KDBX/Loader.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Loader::KDB:
     file: lib/File/KDBX/Loader/KDB.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Loader::Raw:
     file: lib/File/KDBX/Loader/Raw.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Loader::V3:
     file: lib/File/KDBX/Loader/V3.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Loader::V4:
     file: lib/File/KDBX/Loader/V4.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Loader::XML:
     file: lib/File/KDBX/Loader/XML.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Object:
     file: lib/File/KDBX/Object.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Safe:
     file: lib/File/KDBX/Safe.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Transaction:
     file: lib/File/KDBX/Transaction.pm
-    version: '0.903'
+    version: '0.904'
   File::KDBX::Util:
     file: lib/File/KDBX/Util.pm
-    version: '0.903'
+    version: '0.904'
 recommends:
   Compress::Raw::Zlib: '0'
   File::KDBX::XS: '0'
@@ -211,8 +211,8 @@ resources:
   bugtracker: https://github.com/chazmcgarvey/File-KDBX/issues
   homepage: https://github.com/chazmcgarvey/File-KDBX
   repository: https://github.com/chazmcgarvey/File-KDBX.git
-version: '0.903'
+version: '0.904'
 x_authority: cpan:CCM
-x_generated_by_perl: v5.34.1
+x_generated_by_perl: v5.36.0
 x_serialization_backend: 'YAML::Tiny version 1.73'
 x_spdx_expression: 'Artistic-1.0-Perl OR GPL-1.0-or-later'
index c80427ff763205ab6fe45843b39919ef54608c9f..a554cb85ce97610f15e9b6c9420c329e7b18cb2a 100644 (file)
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.024.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v6.025.
 use strict;
 use warnings;
 
@@ -69,7 +69,7 @@ my %WriteMakefileArgs = (
     "lib" => 0,
     "utf8" => 0
   },
-  "VERSION" => "0.903",
+  "VERSION" => "0.904",
   "test" => {
     "TESTS" => "t/*.t"
   }
diff --git a/README b/README
index fac5d25a662ab65776f4002c01328597d7f80d43..6e3ebb47ffb9c25949773c1e8e4545d79c98adbc 100644 (file)
--- a/README
+++ b/README
@@ -4,7 +4,7 @@ NAME
 
 VERSION
 
-    version 0.903
+    version 0.904
 
 SYNOPSIS
 
@@ -1068,7 +1068,7 @@ SECURITY
     master keys. It is up to you to pick or generate strong keys.
 
     The KDBX format allows for the key derivation function to be tuned. The
-    idea is that you want each single brute-foce attempt to be expensive
+    idea is that you want each single brute-force attempt to be expensive
     (in terms of time, CPU usage or memory usage), so that making a lot of
     attempts (which would be required if you have a strong master key) gets
     really expensive.
@@ -1246,7 +1246,7 @@ QUERY
     equal to 5".
 
     If you find the disambiguating structures to be distracting or
-    confusing, you can also the "simple_expression_query" in
+    confusing, you can also use the "simple_expression_query" in
     File::KDBX::Util function as a more intuitive alternative. The
     following example is equivalent to the previous:
 
@@ -1302,7 +1302,7 @@ QUERY
     queries generally. We could have just used a literal number.
 
     The important thing to notice here is how we wrapped the condition in
-    another arrayref with a single key-value pair where the key is the name
+    another hashref with a single key-value pair where the key is the name
     of an operator and the value is the thing to match against. The
     supported operators are:
 
index 02073edbeec891ab7c1f95689ed82b5010601aec..4d289dfa92d8474fc5f87ac9bac3038c1934419a 100644 (file)
@@ -20,7 +20,7 @@ use Time::Piece 1.33;
 use boolean;
 use namespace::clean;
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 our $WARNINGS = 1;
 
 fieldhashes \my (%SAFE, %KEYS);
@@ -1121,7 +1121,7 @@ File::KDBX - Encrypted database to store secret text and files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
@@ -2230,7 +2230,7 @@ The first factor is up to you. This module does not enforce strong master keys.
 generate strong keys.
 
 The KDBX format allows for the key derivation function to be tuned. The idea is that you want each single
-brute-foce attempt to be expensive (in terms of time, CPU usage or memory usage), so that making a lot of
+brute-force attempt to be expensive (in terms of time, CPU usage or memory usage), so that making a lot of
 attempts (which would be required if you have a strong master key) gets I<really> expensive.
 
 How expensive you want to make each attempt is up to you and can depend on the application.
@@ -2394,7 +2394,7 @@ expression. For example, to search for any entry that has been used at least fiv
 
 It helps to read it right-to-left, like "usage_count is greater than or equal to 5".
 
-If you find the disambiguating structures to be distracting or confusing, you can also the
+If you find the disambiguating structures to be distracting or confusing, you can also use the
 L<File::KDBX::Util/simple_expression_query> function as a more intuitive alternative. The following example is
 equivalent to the previous:
 
@@ -2443,7 +2443,7 @@ icon:
 Note: L<File::KDBX::Constants/ICON_SMARTPHONE> is just a constant from L<File::KDBX::Constants>. It isn't
 special to this example or to queries generally. We could have just used a literal number.
 
-The important thing to notice here is how we wrapped the condition in another arrayref with a single key-value
+The important thing to notice here is how we wrapped the condition in another hashref with a single key-value
 pair where the key is the name of an operator and the value is the thing to match against. The supported
 operators are:
 
index 13e4757a4f283e4698a59a448e7955e895abe39d..4266dc6b25314a721cef9cdbb3737134981bd543 100644 (file)
@@ -12,7 +12,7 @@ use Module::Load;
 use Scalar::Util qw(looks_like_number);
 use namespace::clean;
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 my %CIPHERS;
 
@@ -158,7 +158,7 @@ File::KDBX::Cipher - A block cipher mode or cipher stream
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index 81fa7af17aec89df776bef445bb90c57526ea4fe..1524160921a1c1fcde28b5c2d3adf0b42779fa2f 100644 (file)
@@ -11,7 +11,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Cipher';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 has key_size => 32;
 sub iv_size     { 16 }
@@ -63,7 +63,7 @@ File::KDBX::Cipher::CBC - A CBC block cipher mode encrypter/decrypter
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index f5072a967e543d415690dc78180eb1c840aa8071..ee029982cbe35863249d2853669a244453884343 100644 (file)
@@ -14,7 +14,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Cipher';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 has 'counter',  is => 'ro', default => 0;
@@ -123,7 +123,7 @@ File::KDBX::Cipher::Stream - A cipher stream encrypter/decrypter
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index c412653977d930f42d42ab5e02a64193c50c037e..13e5163088466b072e78b637c53a261aedbb8a32 100644 (file)
@@ -15,7 +15,7 @@ use File::KDBX::Util qw(int64);
 use Scalar::Util qw(dualvar);
 use namespace::clean -except => 'import';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 BEGIN {
     my %CONSTANTS = (
@@ -348,7 +348,7 @@ File::KDBX::Constants - All the KDBX-related constants you could ever want
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index d300a02b0a930b41fcbe9956ee14b32adb5779ce..0eca7076428009ecf0a77ea05875ed13414c7781 100644 (file)
@@ -15,7 +15,7 @@ use Ref::Util qw(is_ref is_scalarref);
 use Scalar::Util qw(looks_like_number openhandle);
 use namespace::clean;
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 sub new {
@@ -287,7 +287,7 @@ File::KDBX::Dumper - Write KDBX files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 ATTRIBUTES
 
index eceef18b601e484b5b047dda40c2dfd4f278b66e..1fab6f4aeda490c884d5c224d9cc316f8f8545aa 100644 (file)
@@ -14,7 +14,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Dumper';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub _write_magic_numbers { '' }
 sub _write_headers { '' }
@@ -136,7 +136,7 @@ File::KDBX::Dumper::KDB - Write KDB files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index 50f492339fe84f4f470b54419968bb29f7d36f37..82e4b6d2241a959eda40a96d161c4542475b75f4 100644 (file)
@@ -9,7 +9,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Dumper';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub _dump {
     my $self = shift;
@@ -48,7 +48,7 @@ File::KDBX::Dumper::Raw - A no-op dumper that dumps content as-is
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index d8246a09fc143d9040558e93ea9807dcb3d59a5f..d25a015c166068e8f3903234909aa9b4c2f69d0f 100644 (file)
@@ -16,7 +16,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Dumper';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub _write_headers {
     my $self = shift;
@@ -187,7 +187,7 @@ File::KDBX::Dumper::V3 - Dump KDBX3 files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 BUGS
 
index 723b20dd8ae6ffdb833a50ce519419d1183c57d8..28e2a8bd4d8733e3b727b4fd32c43329413948f8 100644 (file)
@@ -19,7 +19,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Dumper';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 has _binaries_written => {}, is => 'ro';
 
@@ -374,7 +374,7 @@ File::KDBX::Dumper::V4 - Dump KDBX4 files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 BUGS
 
index cc31cd13c8b6bd67da686fc27fb1ca59d5f275e5..69c52d081f1d599452ce9db4199715441491bb69 100644 (file)
@@ -19,7 +19,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Dumper';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 has allow_protection => 1;
@@ -563,7 +563,7 @@ File::KDBX::Dumper::XML - Dump unencrypted XML KeePass files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 ATTRIBUTES
 
index 4d667cb93ba5951149afbfe80aff2e3aec5349ab..7b9100d7a8eb54a66ffc9886b9d2752661cef3df 100644 (file)
@@ -11,7 +11,7 @@ use File::KDBX::Constants qw(:history :icon);
 use File::KDBX::Error;
 use File::KDBX::Util qw(:assert :class :coercion :erase :function :uri generate_uuid load_optional);
 use Hash::Util::FieldHash;
-use List::Util qw(first sum0);
+use List::Util qw(any first sum0);
 use Ref::Util qw(is_coderef is_hashref is_plain_hashref);
 use Scalar::Util qw(blessed looks_like_number);
 use Storable qw(dclone);
@@ -21,7 +21,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Object';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 my $PLACEHOLDER_MAX_DEPTH = 10;
 my %PLACEHOLDERS;
@@ -301,7 +301,7 @@ sub hmac_otp {
     $params{secret} = encode_b32r($params{secret}) if !$params{base32};
     $params{base32} = 1;
 
-    my $otp = eval {Pass::OTP::otp(%params, @_) };
+    my $otp = eval { Pass::OTP::otp(%params, @_) };
     if (my $err = $@) {
         throw 'Unable to generate HOTP', error => $err;
     }
@@ -322,7 +322,7 @@ sub time_otp {
     $params{secret} = encode_b32r($params{secret}) if !$params{base32};
     $params{base32} = 1;
 
-    my $otp = eval {Pass::OTP::otp(%params, @_) };
+    my $otp = eval { Pass::OTP::otp(%params, @_) };
     if (my $err = $@) {
         throw 'Unable to generate TOTP', error => $err;
     }
@@ -377,8 +377,8 @@ sub _hotp_params {
 
     my %params = (
         type    => 'hotp',
-        issuer  => $self->title     || 'KDBX',
-        account => $self->username  || 'none',
+        issuer  => $self->expand_title      || 'KDBX',
+        account => $self->expand_username   || 'none',
         digits  => 6,
         counter => $self->string_value('HmacOtp-Counter') // 0,
         $self->_otp_secret_params('Hmac'),
@@ -403,8 +403,8 @@ sub _totp_params {
     );
     my %params = (
         type        => 'totp',
-        issuer      => $self->title     || 'KDBX',
-        account     => $self->username  || 'none',
+        issuer      => $self->expand_title      || 'KDBX',
+        account     => $self->expand_username   || 'none',
         digits      => $self->string_value('TimeOtp-Length') // 6,
         algorithm   => $algorithms{$self->string_value('TimeOtp-Algorithm') || ''} || 'sha1',
         period      => $self->string_value('TimeOtp-Period') // 30,
@@ -681,7 +681,7 @@ File::KDBX::Entry - A KDBX database entry
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
@@ -1269,7 +1269,7 @@ An array of window title / keystroke sequence associations.
         keystroke_sequence  => '{USERNAME}{TAB}{PASSWORD}{ENTER}',
     }
 
-Keystroke sequences can have </Placeholders>, most commonly C<{USERNAME}> and C<{PASSWORD}>.
+Keystroke sequences can have L</Placeholders>, most commonly C<{USERNAME}> and C<{PASSWORD}>.
 
 =head2 quality_check
 
@@ -1336,26 +1336,6 @@ Alias for the B<URL> string value.
 
 Aliases for the B<UserName> string value.
 
-=head2 expand_notes
-
-Shortcut equivalent to C<< ->expand_string_value('Notes') >>.
-
-=head2 expand_password
-
-Shortcut equivalent to C<< ->expand_string_value('Password') >>.
-
-=head2 expand_title
-
-Shortcut equivalent to C<< ->expand_string_value('Title') >>.
-
-=head2 expand_url
-
-Shortcut equivalent to C<< ->expand_string_value('URL') >>.
-
-=head2 expand_username
-
-Shortcut equivalent to C<< ->expand_string_value('UserName') >>.
-
 =head1 METHODS
 
 =head2 string
@@ -1399,7 +1379,7 @@ is not set or is currently memory-protected. This is just a shortcut for:
 
 =head2 expand_string_value
 
-    $string = $entry->expand_string_value;
+    $string = $entry->expand_string_value($string_key);
 
 Same as L</string_value> but will substitute placeholders and resolve field references. Any placeholders that
 do not expand to values are left as-is.
@@ -1409,6 +1389,26 @@ See L</Placeholders>.
 Some placeholders (notably field references) require the entry be connected to a database and will throw an
 error if it is not.
 
+=head2 expand_notes
+
+Shortcut equivalent to C<< ->expand_string_value('Notes') >>.
+
+=head2 expand_password
+
+Shortcut equivalent to C<< ->expand_string_value('Password') >>.
+
+=head2 expand_title
+
+Shortcut equivalent to C<< ->expand_string_value('Title') >>.
+
+=head2 expand_url
+
+Shortcut equivalent to C<< ->expand_string_value('URL') >>.
+
+=head2 expand_username
+
+Shortcut equivalent to C<< ->expand_string_value('UserName') >>.
+
 =head2 other_strings
 
     $other = $entry->other_strings;
index 7181c7776b91c5cb8046253949f099bca540ee5d..6c3589c3606b934f4fb01893f7a2516889ee86ee 100644 (file)
@@ -9,7 +9,7 @@ use Exporter qw(import);
 use Scalar::Util qw(blessed looks_like_number);
 use namespace::clean -except => 'import';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 our @EXPORT = qw(alert error throw);
 
@@ -167,7 +167,7 @@ File::KDBX::Error - Represents something bad that happened
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 ATTRIBUTES
 
index 9b8c8bf16aaec12055695374f50f32df8ace0b97..4c6356fd979b8c25a04d035bac79a71263bc296a 100644 (file)
@@ -19,7 +19,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Object';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 # has uuid                        => sub { generate_uuid(printable => 1) };
@@ -398,7 +398,7 @@ File::KDBX::Group - A KDBX database group
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index ef1424544ff4b208f2d0911b759fab2deed7f659..a849354de300eb5ec4767c630f77386660e80482 100644 (file)
@@ -14,7 +14,7 @@ use namespace::clean;
 
 extends 'IO::Handle';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub _croak { require Carp; goto &Carp::croak }
 
@@ -390,7 +390,7 @@ File::KDBX::IO - Base IO class for KDBX-related streams
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index e3ef40019d83fef1067af407e8d2b45c50a24cda..4d188bde988137ac39c6b90110cf7a6057526877 100644 (file)
@@ -11,7 +11,7 @@ use namespace::clean;
 
 extends 'File::KDBX::IO';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 our $BUFFER_SIZE = 16384;
 our $ERROR;
 
@@ -139,7 +139,7 @@ File::KDBX::IO::Crypt - Encrypter/decrypter IO handle
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index f3b5757fb43648eceb4e591ee7285e38ce360406..f7e200d82280f0120f8b418f9800e07173530074 100644 (file)
@@ -13,7 +13,7 @@ use namespace::clean;
 
 extends 'File::KDBX::IO';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 our $ALGORITHM = 'SHA256';
 our $BLOCK_SIZE = 1048576;  # 1MiB
 our $ERROR;
@@ -208,7 +208,7 @@ File::KDBX::IO::HashBlock - Hash block stream IO handle
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index be4902d9af8b7aea027024ccaaafb7254ccac7ae..e47f004b91dce71955966fc1b0b8b0eff34f883d 100644 (file)
@@ -13,7 +13,7 @@ use namespace::clean;
 
 extends 'File::KDBX::IO';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 our $BLOCK_SIZE = 1048576;  # 1MiB
 our $ERROR;
 
@@ -212,7 +212,7 @@ File::KDBX::IO::HmacBlock - HMAC block stream IO handle
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index e6b5665b93f1d97e421d8ac394c0ff27d71acb49..1e4547fdb3265c6d21a9cb41d65504c2c69716db 100644 (file)
@@ -14,7 +14,7 @@ use namespace::clean;
 BEGIN { mark_as_loaded('Iterator::Simple::Iterator') }
 extends 'Iterator::Simple::Iterator';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 sub new {
@@ -221,7 +221,7 @@ File::KDBX::Iterator - KDBX database iterator
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index 4520fb574f0ae07e5949a1bbf96d65e7252a7d51..a3dc259986f2abb44ed91ddc9278f63090c4de99 100644 (file)
@@ -12,7 +12,7 @@ use Module::Load;
 use Scalar::Util qw(blessed);
 use namespace::clean;
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 my %KDFS;
 
@@ -120,7 +120,7 @@ File::KDBX::KDF - A key derivation function
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index 206bc132698c91b6167a28e874b45238f20077ec..9b30c0a09c5e9e68117ca7c17146663d436b0dba 100644 (file)
@@ -13,7 +13,7 @@ use namespace::clean;
 
 extends 'File::KDBX::KDF';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 # Rounds higher than this are eligible for forking:
 my $FORK_OPTIMIZATION_THRESHOLD = 100_000;
@@ -111,7 +111,7 @@ File::KDBX::KDF::AES - Using the AES cipher as a key derivation function
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index 4e7889b671b947033304ae365df1a0fc56fd5926..6d0ce8ca8f83e28979cc2a03edac20cffe0304b1 100644 (file)
@@ -12,7 +12,7 @@ use namespace::clean;
 
 extends 'File::KDBX::KDF';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 sub salt        { $_[0]->{+KDF_PARAM_ARGON2_SALT} or throw 'Salt is not set' }
@@ -69,7 +69,7 @@ File::KDBX::KDF::Argon2 - The Argon2 family of key derivation functions
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index c790570ca22345091a3b62e1af02cf3614e88461..e57c3cab07ba59cdc9ace7b741097b8d8dd5329f 100644 (file)
@@ -14,7 +14,7 @@ use Ref::Util qw(is_arrayref is_coderef is_hashref is_ref is_scalarref);
 use Scalar::Util qw(blessed openhandle);
 use namespace::clean;
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 fieldhashes \my %SAFE;
 
@@ -140,7 +140,7 @@ File::KDBX::Key - A credential that can protect a KDBX file
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index 0e53369d118cd21c31ad9c1599d090f56e8a3b49..071c9ecb28211a538c6d614818794e0347e3b3ba 100644 (file)
@@ -10,7 +10,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Key';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub init {
     my $self = shift;
@@ -56,7 +56,7 @@ File::KDBX::Key::ChallengeResponse - A challenge-response key
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index 39253fa8f47d20aae1b6fd2cb9ad437a07f144e5..659b85a8264d3acc286656d8d91ec644224e3067 100644 (file)
@@ -13,7 +13,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Key';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub init {
     my $self = shift;
@@ -92,7 +92,7 @@ File::KDBX::Key::Composite - A composite key made up of component keys
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index 32b27adeb3e584aa95c1fe75895c190a65336d2e..a5ff6c81ab1d596afaa45e08e9f5a32e1dfd2f16 100644 (file)
@@ -17,7 +17,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Key';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 has 'type',     is => 'ro';
@@ -262,7 +262,7 @@ File::KDBX::Key::File - A file key
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index 9dac81314156759789d9aefd55f5e3dc42e5f7ec..99c752c97927c1be7687fc810d487969229fee09 100644 (file)
@@ -12,7 +12,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Key';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub init {
     my $self = shift;
@@ -37,7 +37,7 @@ File::KDBX::Key::Password - A password key
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index 86337b4c92edfd0ffc5269175b5565de4d58b588..838b296ebbd4679bd9d708b1be91bef60a0a600b 100644 (file)
@@ -14,7 +14,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Key::ChallengeResponse';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 # It can take some time for the USB device to be ready again, so we can retry a few times.
 our $RETRY_COUNT    = 5;
@@ -296,7 +296,7 @@ File::KDBX::Key::YubiKey - A Yubico challenge-response key
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index 504fee73102e32ab53e0feab27b6bd16f8eda01d..049db25df3f8a2c1df59920a3f8730e0b60d9b8c 100644 (file)
@@ -14,7 +14,7 @@ use Ref::Util qw(is_ref is_scalarref);
 use Scalar::Util qw(looks_like_number openhandle);
 use namespace::clean;
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 sub new {
@@ -249,7 +249,7 @@ File::KDBX::Loader - Load KDBX files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index 82ec7f12d26bdd5311359699ec0f52b7d580ffc3..812030dcd9f800c4c57449fc78cb2e28ab72028c 100644 (file)
@@ -17,7 +17,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Loader';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 my $DEFAULT_EXPIRATION = Time::Piece->strptime('2999-12-31 23:59:59', '%Y-%m-%d %H:%M:%S');
 
@@ -397,7 +397,7 @@ File::KDBX::Loader::KDB - Read KDB files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index d88e29f488c27bf5c763afc13c92a92a525bb3a5..6ac8f3b9265225d15de49b048c2173ade0545ca9 100644 (file)
@@ -9,7 +9,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Loader';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub _read {
     my $self = shift;
@@ -47,7 +47,7 @@ File::KDBX::Loader::Raw - A no-op loader that doesn't do any parsing
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index 0990bff88fe8fc595d94359ba69558e4216f3a3c..1b34a284be4d71aa1c24a2994252218156805d53 100644 (file)
@@ -27,7 +27,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Loader';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub _read_header {
     my $self = shift;
@@ -174,7 +174,7 @@ File::KDBX::Loader::V3 - Load KDBX3 files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 BUGS
 
index 0e011f09755bec303f46fff230e0359f4bd319e1..ba07eea307b2d700c8c8a9a5e1d62c73f16a799f 100644 (file)
@@ -30,7 +30,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Loader';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 sub _read_header {
     my $self = shift;
@@ -273,7 +273,7 @@ File::KDBX::Loader::V4 - Load KDBX4 files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 BUGS
 
index a5fff506f45481c082a90ff8342b71356423453d..3d4e671ae118b6a10d12588eb067b08493e475bd 100644 (file)
@@ -18,7 +18,7 @@ use namespace::clean;
 
 extends 'File::KDBX::Loader';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 has '_reader',  is => 'ro';
 has '_safe',    is => 'ro', default => sub { File::KDBX::Safe->new(cipher => $_[0]->kdbx->random_stream) };
@@ -589,7 +589,7 @@ File::KDBX::Loader::XML - Load unencrypted XML KeePass files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 BUGS
 
index 50ad02bf8f62426fb070a34fe56f9c0b63cf5da2..67a0cabfbf39fe30833303251a1a67dfdaf646ad 100644 (file)
@@ -14,7 +14,7 @@ use Ref::Util qw(is_arrayref is_plain_arrayref is_plain_hashref is_ref);
 use Scalar::Util qw(blessed weaken);
 use namespace::clean;
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 fieldhashes \my (%KDBX, %PARENT, %TXNS, %REFS, %SIGNALS);
 
@@ -526,7 +526,7 @@ File::KDBX::Object - A KDBX database object
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 DESCRIPTION
 
index a8ec2b3b00e619fe998984375da0cdc100ccdfc2..463ca7fbfef39ac46a189244e88807249ce93bdd 100644 (file)
@@ -14,7 +14,7 @@ use Ref::Util qw(is_arrayref is_coderef is_hashref is_scalarref);
 use Scalar::Util qw(refaddr);
 use namespace::clean;
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 sub new {
@@ -217,7 +217,7 @@ File::KDBX::Safe - Keep strings encrypted while in memory
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 SYNOPSIS
 
index 3d852fbb11eea977d77b6f2d39a2b01d6978b5a7..99088ec9728ee80ee6d3f76340a679b94dbaa6d0 100644 (file)
@@ -8,7 +8,7 @@ use Devel::GlobalDestruction;
 use File::KDBX::Util qw(:class);
 use namespace::clean;
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 
 sub new {
@@ -59,7 +59,7 @@ File::KDBX::Transaction - Make multiple database edits atomically
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 ATTRIBUTES
 
index 9557b7d2f29ca2120de56b39420ae035c03fbca7..9e46dfdbfbfd194746d0e2f8dfcba6b4560002a8 100644 (file)
@@ -17,7 +17,7 @@ use Time::Piece 1.33;
 use boolean;
 use namespace::clean -except => 'import';
 
-our $VERSION = '0.903'; # VERSION
+our $VERSION = '0.904'; # VERSION
 
 our %EXPORT_TAGS = (
     assert      => [qw(DEBUG assert)],
@@ -870,7 +870,7 @@ File::KDBX::Util - Utility functions for working with KDBX files
 
 =head1 VERSION
 
-version 0.903
+version 0.904
 
 =head1 FUNCTIONS
 
This page took 0.081261 seconds and 4 git commands to generate.