mrc-converter-suite failing on vault names contained in quotes-slashes

Options
billj
billj
Community Member
edited November 2023 in Lounge

Today (2023-11-22) was the first time I've run mrc-converter-suite since upgrading to macOS 14 Sonoma, and observed that mrc-converter-suite puts up an "AppleEvent handler failure" message when I specify a vault to be converted that consists of multiple words "enclosed" within quotes and forward slashes (e.g. "/my_vault/"). (Screenshot of error attached.) I don't have this problem with the vault named Personal.

So I downloaded the latest release version of mrc-converter-suite (mrc-converter-suite-2023-11-13-1340). The 2023-08-17 note in Changes seems to address the issue. But I'm still experiencing the failure.

Also, the first time I double-clicked on macOSConvertHelper.app, macOS alterted me that it was from an unknown developer. I had to go to Security settings and allow it to launch. Is this to be expected--in other words, is the file safe, or did I open something I shouldn't have?

Here's the screenshot of the error.


1Password Version: 8.10.20
Extension Version: Not Provided
OS Version: macOS 14.1.1
Browser: Not Provided

Comments

  • MrC
    MrC
    Volunteer Moderator
    Options

    Hello @billj

    I'm unable to reproduce the issue on Sonoma as I understand it, so I might a little more information. Here's what I've done:

    That "AppleEvent hander failed" message may appear if you did not allow the script to control Terminal. The script needs the rights to opens the terminal, write the conversion command into it, and run that command. The helper's job is merely to simplify constructing that command line command for you (as you can see above).

    macOS will alert you when you attempt to run the script. I do not code-sign the script, since it requires me to annually pay Apple to be an Apple Developer. Furthermore, the script is readable AppleScript, so it may be read / vetted by anyone so inclined (like all the converter suite code).

    Does my file name seem to match yours in terms of patterns that cause the issue?

    Also, which password manager are you using to import from?

    The change log note on 2023-08-17 was specific to the keeper converter, in that exports from newer versions would include certain attributes that didn't exist in previous versions.

  • billj
    billj
    Community Member
    edited November 2023
    Options

    Thank you, Mike.

    I totally understand not wanting to pay Apple to code-sign the script. Glad to know it's authentic.

    I'm exporting from 1Password 8.10.20, macOS Sonoma 14.1.1.

    I booted my Apple Silicon Mac in Safe Mode, then restarted into normal mode, then made a new export from 1Password to a .1pux file. Then I ran the version of mrc-converter I've been using for a while (Changes file dated 2023-06-02.) As before, the vault named Personal opens Terminal and converts without a problem, using the vaults option "--to_format csv --match_vault Personal". But I get the "AppleEvent handler failed" when the target vault names are in the form of "/Name-Name/" or "/Legacy/".

    Sorry for being dense, but I'm looking at your screenshot but don't understand what you mean by "Does my file name seem to match yours in terms of patterns that cause the issue?"

    The .1pux file I'm converting has been renamed (per your instructions) to pm_export.1pux, and is on my Desktop. The mrc-converter-suite folder is also on my Desktop.

    For what it's worth, I'm getting more than the usual number of "'macOSConvertHelper.app' would like to access files in your Desktop folder" messages. Only mentioning because maybe that's indicative of something?

    Is there any troubleshooting steps I can do for you?

  • MrC
    MrC
    Volunteer Moderator
    edited November 2023
    Options

    @billj

    Got it! Now I can reproduce the issue.

    For now, until I resolve the issue, you can run the command line directly, something like shown in this example:

    $ perl convert.pl -v onepux --to_format csv --match_vault '/Legacy/' ../1P8export.1pux
    Skipping unmatched vault: Personal
    Processing matched vault: /Legacy/
    Skipping unmatched vault: PUX Definitions
    Import summary:
        1 item discovered
    Export summary:
        1 login item
        1 total item
    Your output file is:
    
    /Users/cappella/Desktop/MCS_converted.csv
    
  • billj
    billj
    Community Member
    Options

    Thanks, Mike!

    Have a great Thanksgiving.

  • MrC
    MrC
    Volunteer Moderator
    edited November 2023
    Options

    @billj

    Thanks, you too. I'll resolve hopefully by this weekend.

  • MrC
    MrC
    Volunteer Moderator
    Options

    @billj

    I'm working on this issue now, but I'm unable to reproduce the problem (I thought I had on Nov 22, but now I'm not able to, and am uncertain if I actually had reproduced it then).

    You reported that you got the "AppleEvent handler failed" error:

    when the target vault names are in the form of "/Name-Name/" or "/Legacy/"

    Do your vault names actually contain the forward slashes, or are you using forward slashes with the --match_vault option to indicate that you want it to use regular expression pattern matching, and are trying to match vault names that include "Name-Name" or "Legacy"? In case you are not aware, --match_vault supports using regular expression patterns, and uses the forward slashes to switch to that matching mode (vs. string matching).

    To reply to other questions / comments you had:

    For what it's worth, I'm getting more than the usual number of "'macOSConvertHelper.app' would like to access files in your Desktop folder" messages.

    I don't know why this sometimes occurs multiple times consecutively in macOS. I see it too sometimes. I would expect it once, because macOS is translocating (aka Gatekeeper path randomization) the app as a security measure (each time you download an app, it is potentially considered to be a new app by macOS). Translocating causes the app bundle to be copied into a temporary directory (a randomly named private directory in /private/var), sandboxing it, and that app copy is executed using that directory as the working directory). This prevents the app from having access or doing malicious things to content in or above the directory where the app resides. The script is looking for the converter suite's folder (so that it can build the list of converters available for macOS), and it is coded to assume the suite is on the Desktop (this is another reason why I suggest users place the suite's folder there).

    The .1pux file I'm converting has been renamed (per your instructions) to pm_export.1pux, and is on my Desktop. The mrc-converter-suite folder is also on my Desktop.

    The 1pux file name, and location, is simply for your convenience. It can be named anything, and located anywhere. No need to rename it if you are using the helper, since you can just select it from, or drag it onto, the Open dialog.

    but don't understand what you mean by "Does my file name seem to match yours in terms of patterns that cause the issue?"

    I mistyped, and was asking about the your vault names that were causing the issue. I re-asked the question (hopefully more clearly) above in this post.