converting from Keepass2 using converter [Need 1Password 7]

edited November 30 in Mac

your version of 1Password: Version 8
the name and version of the password manager you are converting from: Keepass2 v2.49
your OS and version: Windows 10 21H2

I'm trying to use the converter suite [mentioned here] (https://1password.community/discussion/101693/moving-to-1password-from-another-password-manager) but failing at some point in the process.

I won't be able to resume this process until after the holiday (perhaps 11/30).


1Password Version: 8.4.1-2
Extension Version: Not Provided
OS Version: Windows 10

Comments

  • MrCMrC Community Moderator

    @joseph_fsm

    I'm happy to help, whenever you are able. Just post another message here when you are ready.

  • If you're available now, I could stay a little longer.

  • Actually, I'll wait until Tuesday. I've have a long couple of days already...

  • MrCMrC Community Moderator

    Ok, sounds good. I'll just need to know what's failing for you.

    Happy Holidays, @joseph_fsm

  • Good Morning! I have lots of duties today, but I want to get this done too. Here's my input and error:

    C:\temp\mrc-converter-suite>perl convert.pl -v keepass2 pm_export.json
    Negative repeat count does nothing at
    C:/Strawberry/perl/vendor/lib/XML/Parser/Expat.pm line 372 (#1)
    (W numeric) You tried to execute the
    x repetition operator fewer than 0
    times, which doesn't make sense.

    Uncaught exception from user code:

        no element found at line 1, column 0, byte 0:
    
        ^
         at C:/Strawberry/perl/vendor/lib/XML/Parser.pm line 187.
        XML::Parser::parsefile(XML::Parser=HASH(0x3a54878), "pm_export.json") called at C:/Strawberry/perl/site/lib/XML/XPath/XMLParser.pm line 71
        XML::XPath::XMLParser::parse(XML::XPath::XMLParser=HASH(0x3cb1368)) called at C:/Strawberry/perl/site/lib/XML/XPath.pm line 154
        XML::XPath::find(XML::XPath=HASH(0x3ce43f0), "/KeePassFile/Meta/Binaries/Binary", undef) called at C:/Strawberry/perl/site/lib/XML/XPath.pm line 176
        XML::XPath::findnodes(XML::XPath=HASH(0x3ce43f0), "/KeePassFile/Meta/Binaries/Binary") called at C:/temp/mrc-converter-suite/./Converters/Keepass2.pm line 112
        Converters::Keepass2::do_import("pm_export.json", undef) called at convert.pl line 175
    
  • MrCMrC Community Moderator

    @joseph_fsm

    Ok, that helps. From the README:

    Your export is in JSON format. Export as per the README.

  • In my confusion after arriving for work today, I renamed that file in error. Either I'm missing a step or...

    C:\temp\mrc-converter-suite>perl convert.pl -v keepass2 pm_export.json
    Negative repeat count does nothing at
    C:/Strawberry/perl/vendor/lib/XML/Parser/Expat.pm line 372 (#1)
    (W numeric) You tried to execute the
    x repetition operator fewer than 0
    times, which doesn't make sense.

    Uncaught exception from user code:

        no element found at line 1, column 0, byte 0:
    
        ^
         at C:/Strawberry/perl/vendor/lib/XML/Parser.pm line 187.
        XML::Parser::parsefile(XML::Parser=HASH(0x39e08b8), "pm_export.json") called at C:/Strawberry/perl/site/lib/XML/XPath/XMLParser.pm line 71
        XML::XPath::XMLParser::parse(XML::XPath::XMLParser=HASH(0x3c532f8)) called at C:/Strawberry/perl/site/lib/XML/XPath.pm line 154
        XML::XPath::find(XML::XPath=HASH(0x3c86380), "/KeePassFile/Meta/Binaries/Binary", undef) called at C:/Strawberry/perl/site/lib/XML/XPath.pm line 176
        XML::XPath::findnodes(XML::XPath=HASH(0x3c86380), "/KeePassFile/Meta/Binaries/Binary") called at C:/temp/mrc-converter-suite/./Converters/Keepass2.pm line 112
        Converters::Keepass2::do_import("pm_export.json", undef) called at convert.pl line 175
    
  • MrCMrC Community Moderator

    @joseph_fsm

    If that is an XML file, please enable debug mode by adding -d to the command line, and provide the output of the first few lines that show the print_fileinfo debug lines:

    $ perl convert.pl -v -d keepass2 _TestFiles/keepass2/keepass2.xml
    main                : Runninng script from '/Users/cappella/Documents/Coding/mrc-converter-suite'
    main                : Command Line: -v -d keepass2 _TestFiles/keepass2/keepass2.xml
    main                : Output file: /Users/cappella/Desktop/1P_import.1pif
    print_fileinfo      : Input file info: "_TestFiles/keepass2/keepass2.xml"
    print_fileinfo      :   size: 6636901
    print_fileinfo      :   kind: XML 1.0 document text, ASCII text, with very long lines (64034), with CRLF line terminators
    print_fileinfo      :   mime: text/xml; charset=us-ascii
    
  • here:
    C:\temp\mrc-converter-suite>perl convert.pl -v -d keepass2 c:\temp\mrc-converter-suite\pm_export.json
    main : Runninng script from 'C:/temp/mrc-converter-suite'
    main : Command Line: -v -d keepass2 c:\temp\mrc-converter-suite\pm_export.json
    main : Output file: C:\Users\josep\Desktop\1P_import.1pif
    print_fileinfo : Input file info: "c:\temp\mrc-converter-suite\pm_export.json"
    print_fileinfo : size: 0

  • I think I see my error (at least one)

  • MrCMrC Community Moderator

    @joseph_fsm

    The file's size is 0, so there is nothing to convert!

    Something went wrong with your keepass2 export.

  • nevermind.

  • MrCMrC Community Moderator
    edited November 30

    @joseph_fsm

    I'm confused - Windows is indicating the file is an XML document, so that means its extension is .xml.

    But your command line output is indicating the file you supplied was pm_export.json.

    If the file has a .json suffix, then Windows Explorer or Properties would show the file as a JSON file, not an XML file.

  • I thought the converter converted the exported keepass database from a xml into a json. (far as I'm concerned, i'm blind to the whole matter)

  • I see where my error was but there's still an issue...

    C:\temp\mrc-converter-suite>perl convert.pl -v -d keepass2 c:\temp\mrc-converter-suite\pm_export.xml
    main : Runninng script from 'C:/temp/mrc-converter-suite'
    main : Command Line: -v -d keepass2 c:\temp\mrc-converter-suite\pm_export.xml
    main : Output file: C:\Users\josep\Desktop\1P_import.1pif
    The file 'c:\temp\mrc-converter-suite\pm_export.xml' does not exist.

  • I thought I was supposed to name the export "pm_export.json"

    I was using the example. SO SORRY :)

    Of course, naming the correct SOURCE file didn't work either. It's clearly present in my folder.

  • MrCMrC Community Moderator
    edited November 30

    @joseph_fsm

    You might have a double extension on the export file name - check it with Properties. If the converter is saying the file does not exist, it means the exact path and filename you are providing is not correct. So check the exact path and file name, including the extensions (as Windows sees it).

    [edit - my reply to your earlier post]

    No, the convert will accept as input a keepass2 XML export, and convert it into a 1Password 1PIF file for importing into 1Password.

    The diagnostics you're providing are indicating that your input file name is incorrect.

  • Again, non-programmer's mistakes:
    1. I didn't place the export into the mrc folder (grr)
    2. the desktop location it wanted to put the converted file was missing

    With those fixes, I have successfully converted my database! Now to see if they import properly...

  • MrCMrC Community Moderator

    Great.

    If I read correctly, you are using 1Password 8 - I don't know if that yet imports 1Password's 1PIF file, but the 1Password folks will provide guidance.

    When I return in about an hour, I'll test out 1Password 8, and see what needs to be done to import the 1PIF (if it does not yet do that).

  • I don't see a way to do it from the software. I'll reach out to support to see what they say.

  • MrCMrC Community Moderator
    edited November 30

    @joseph_fsm

    I've installed it too, and don't see any import. Oye.

    If you can install 1Password 7, you can directly import the 1PIF there, and then re-install 1Password 8. You'll need to uninstall 1Password 8 to do that.

  • Done! Thanks for your wonderful help!

  • here's their reply to me on Twitter:

    "Hey, Joseph. Right now, 1Password 8 doesn't have the ability to import and everything is deferred to http://1Password.com. If you send an email to [email protected] including a link to your tweet and more info on what you would like to accomplish, the team can help out."

    Since I've already inputted the file, I'm going to let this go on my end and let you pursue it.

    Thanks Again!

  • MrCMrC Community Moderator

    @joseph_fsm

    I've just commented here as well.

    I'm sorry I wasn't aware that 1Password 8 didn't import 1PIF, and I thought that 1Password.com did. The instructions on 1Password.com lead you down the garden path, initially stating that you can Export your data, but turns out, that's not what you need to do:

  • Since they refer folks you to via the forums, it'd be nice if they continue to provide tools to make this doable. They'd be shooting themselves in the foot if they don't. Praying some tool can still be used for the next iteration!

  • MrCMrC Community Moderator

    @joseph_fsm

    I'm hoping a 1PIF (or 1PUX) import feature is imminent. I'm going to keep assuming that the developers have been drinking through a fire hose, trying to get v8 finished sufficiently to meet the customer requests and needs, and that this is on their radar.

  • BenBen AWS Team

    Team Member

    I'm going to keep assuming that the developers have been drinking through a fire hose, trying to get v8 finished sufficiently to meet the customer requests and needs, and that this is on their radar

    I think that is a fair assumption. 😆 Thanks for helping out here, as always, @MrC.

    Ben

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file