No linkable item found in Apple Notes (under macOS 10.15 Catalina)

That looks like a promising discovery (as well as mildly unsettling evidence of API change), can you find a way of getting that id as a string ?

Just to let you all know that we are tuned into this and doing various tests on our side.

1 Like

Fortunately code can branch on version

tell application "Notes"
    version
end tell

In version 4.6 here on Mojave, we don’t have a selection method on the Notes app, so its appearance on Catalina does look promising …

it seems to me that our Catalina Notes testing involved notes not stored in iCloud [and “Copy as Link” and “Link to Copied Address” were working there] but that the issues here have to do with iCloud notes, which is obviously more representative and should have been the test. But we’ll say more about that later.

Possibly, though the scripting interface for Notes has clearly changed in Catalina.

If you hit a compilation problem writing code that targets both Notes versions (Mojave 4, and what I guess might be Catalina 5) then one approach might be to include the sensitive part as a literal string, and invoke it with Applescript’s run script, or the eval in JS, on either side of a branch on version.

We have uploaded a fix for this to the Hook Integration Server (scripts v80). If you experienced a problem before the fix, please let us know if it works for you.

More details to follow.

apparently I spoke before the developers had finalized their changes, sorry.

As I alluded to in response to Rob this morning re Hook integration scripts v. 82: Update to Xcode scripts (for Xcode 11 compatibility) - Releases - Hook Productivity Forum, there is a number of issues with Apple Notes that our investigation has surfaced which pose linking problems. We’ve logged at least one bug with Apple (I think Graham has logged more, I will check with him; there is more than one Apple Notes issue). There is one more set of things I will test today, and then I will provide a summative update here later today (Pacific Time).

We have some new AppleScripts to share with the forum to work around some of Catalina’s bugs. I had hoped to publish them today; however, I spent a big chunk of today investigating work-arounds and drafting a couple of more elaborate, specific web pages about these issues – nearly ready but now past midnight here.

We have filed a couple of bug reports with Apple regarding Catalina Notes AppleScript bugs, and we expect to file a third more general one.

In sum, with Catalina, Notes AppleScript is broken, lots of -1700 errors when interacting with note objects. Lots of -10000 errors specficially after turning on iCloud sync.

We’ve also now noticed issues with pre macOS 10.15 note ID’s served by Apple’s Notes app via AppleScript not being identical for the same note across different macOS instances when the note is in iCloud or synced via Google.

It took us a few days to respond since the first report because : we needed to test investigate /test over multiple versions of macOS, on different machines, using different forms of notes, and different versions of Hook; we encountered bugs with macOS (as noted); and were determined to try all potentially feasible approaches to work-around this. Three of us here at CogSci Apps have been involved, plus input from a fourth.

On Sunday ( 2019-10-20) I will publish more information (about the various Notes issues and new scripts) as noted above.

I will of course keep the forum updated as Apple hopefully responds to and ultimately addresses these issues, and as noted we will investigate work-arounds.

Post edited 2019-10-20 11:29 AM

I’ve removed the text about recommending not using macOS Notes with Hook, which was premature with respect to pre-Catalina (of course the Catalina situation is significant, however). What we know with respect to to pre 10.15 macOS Notes is that under a multi-mac situation macOS assigns different addresses to the same iCloud note. (Hook does not yet provide a link sync mechanism anyway, but we have an internal implementation we have been testing.) But for the same Mac you are fine. And if you migrate from one Mac to another via a clone (e.g., Carbon Copy Cloner) according to our tests, Note IDs are preserved (as one would expect). We need to verify whether Migration Assistant preserves Note IDs. In our tests so far, turning iCloud Note syncing off and then on again preserves Note IDs, but it is logically possible (we have not seen that yet) that if iCloud Note syncing is off for a while, macOS would offload its local cached notes and lose track of the IDs that it had previously assigned. So for now we would recommend against toggling iCloud Notes off or using Hook with Notes if that is an issue. As noted above, we will issue a third report with Apple, this one concerning its assignment of iCloud and Google note “IDs”.

I have renamed this issue to reflect the Catalina aspect that it is mainly about, and will post about the other issue later Sunday.

So the short story is, if you’ve already upgraded to Catalina, Hook will not work with Notes until Apple fixes something. And we have no idea if they ever will fix it.

Yes?

We’ve just updated the Integration server to v. 83 which includes new Notes scripts to provide as much support for Apple Notes as we can. I’m writing this up and will publish it. In sum, for 10.15 users Hook can get the name and ID of the note., but opening Apple Notes notes by ID (or Hook URL) is broken.

Hook behavior for pre 10.14 should not be affected by these script updates.

In our testing: If iCloud sync is enabled, then Catalina throws exceptions on trying to get the note ID. You can link to local notes if and only if iCloud Sync is disabled.

This will be on our web page on the matter.

Thanks for the clarification.

This is a caution about Hook’s vulnerable dependence on 3rd parties.

right. basically Hook bridges URL schemes. If the content is no longer available at a particular address, then one can’t access it via that address. It’s the analog of a web developer changing the URLs of a whole bunch of web pages.

One needs to decide whether one trusts the vendor not to break their URL schemes. I would be very surprised if OmniGroup, for instance, decided to no longer honor OmniFocus URLs.

We’ll see what Apple does with this (we have filed 2 bug reports). And we’ll investigate further workarounds.

Do you find that you can find text in Notes via Spotlight? On two of my 10.14 systems that is broken, despite rebuilding the Spotlight index.

If it works for you, then hook://search urls would be a work-around. I’ll say more about that.

We’ve published the status of Hook integration with macOS 10.15 (Catalina) Notes on its own help page.

On 10.15? Yes. Spotlight on 10.15 can be very slow to respond, but eventually it returns found Notes.

1 Like

Hi there. I have just noticed that Hook can now get the link to the note in Apple Notes, but when you click on it you now get this warning message: https://monosnap.com/file/A4tXF30mYIKl8abMg63dY4ueToJXrd

Best regards,
Jason

Thanks, Jason. I have confirmed that in 10.15.2 Hook is returning a URL of the form notes://<id> rather than hook://notes/<id> but even formatting this with hook://notes/<id> does not enable retrieval of the note , which suggests that the Apple bug is still there. As far as I know, Apple has not updated the bug reports we filed.

I am not seeing the error message you’re seeing. It looks like on your system there is a URL handler for note:// URLs. Hook is not registered to open note:// URLs, so the error message is not referring to Hook.

We’re reviewing (also with the latest macOS public beta) and will update the forum.