Can't export JUCE examples to Xcode on Monterey

Hi!

I’m running macOS Monterey 12.0.1 (Intel) and Projucer on JUCE 6.1.2 and I can’t seem to be able to export the built-in examples to Xcode 13.1.

I open the examples and then click on the export button and nothing happens. Then, the Projucer UI becomes unusable.

It seems to work fine when creating and exporting new projects.

Does this happen to more people or could there be something wrong with my system?

i’m seeing this too on 12.0.1 (arm64). i tried with the pre-built projucer from the website as well as my built version and they both hang on saving / exporting a project. going to open up a debugger to see if i can find anything more

the cli version still works so i wonder if it’s something ui/thread related?

$ /Applications/Projucer.app/Contents/MacOS/Projucer --resave InstrumentDesigner.jucer
Re-saving file: /Users/jon/git/InstrumentDesigner/InstrumentDesigner.jucer
Finished saving: Xcode (macOS)
Finished saving: Xcode (iOS)

I investigated this yesterday and put together a potential fix. Hopefully this will make it to develop early next week.

1 Like

The fix is now out on develop:

Please try rebuilding the Projucer and make sure that the issue is fixed for you too. As always, let us know if you run into any further problems.

thanks @reuk - saving still takes longer than pre-xcode 13.1 seemed to (~5-10s) but it’s working now.

hi @reuk - unfortunately this fix isn’t really working. i just rebuild projucer from develop and made a video of exporting an example project and opening it in xcode. it takes ~80s to finish:

this is on macos 12.0.1 on arm64.

Thanks, there were a few issues in the Projucer’s saving procedure that made it slow and unreliable.

The problems I was seeing included:

  • Sometimes the project would be saved twice in a row before opening in Xcode (the problem you were seeing).
  • Sometimes the project would save once, but then fail to open the exported project in Xcode.
  • Occasionally, an assertion would fire in the destructor of the Thread running the background module detection.

I’ve made some improvements here:

Hopefully the save/export flow should be a bit more robust now. Please try updating and let us know if you’re still encountering problems.

On a tangentially related note, I’ve also made a tiny tweak to the mac ComponentPeer that allows the Projucer to display the document’s save state inside the close button, as is the norm for macOS applications: