# AU Plugin Version in Logic Pro X

**URL:** <https://forum.juce.com/t/au-plugin-version-in-logic-pro-x/46992>\
**Category:** Development\
**Created:** [July 19, 2021, 1:47pm UTC](https://forum.juce.com/t/au-plugin-version-in-logic-pro-x/46992 "2021-07-19T13:47:16Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![baconpaul](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/baconpaul/32/8403_2.png) [@baconpaul](https://forum.juce.com/u/baconpaul)\
**Post date:** [July 19, 2021, 1:47pm UTC](https://forum.juce.com/t/au-plugin-version-in-logic-pro-x/46992/1 "2021-07-19T13:47:16Z")

</div>

Hi

When I build my AU with juce CMake and validate them in logic pro I get an invalid version.

 ![Screen Shot 2021-07-19 at 9.39.26 AM](https://us1.discourse-cdn.com/flex026/uploads/juce/original/2X/5/5629027eead255e9c8ad5c597a5e3584db7574fa.png)

[oh that AUVal screenshot is cutoff. In that picture the version of surge-xt it shows is “256.0.0” which matches the overflow from adding in the TWEAK]

My CMakeLists.txt has project version “1.0.0.0” in the project declaration and it looks like that’s getting passed down with one too many turns.

If I update my CMakeLists.txt to say “1.0.0” then the version comes through properly.

So it seems to me like if I have a `PROJECT_VERSION_TWEAK` set in CMake then I get an invalid version in my AU. I think (think) that in juce\_utils where you do a propert\_if\_not\_set of VERSION to PROJECT\_VERSION and tweak is set, you get the full shooting match.

So I guess there’s 3 things I could do

1. Turn my cmake version into 1.0.0 or whatever
2. explicitly set the VERSION property on my targets or
3. Drop a note here on the forum to see if you think this is a bug you could fix in Juce 6.1 cmake by reconstructing the version from major/minor/patch rather than the default 🙂

Thanks as always!

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [July 19, 2021, 8:36pm UTC](https://forum.juce.com/t/au-plugin-version-in-logic-pro-x/46992/2 "2021-07-19T20:36:36Z")

</div>

It looks like the version number that Logic/auval complain about comes from the ‘version’ entry in the ‘AudioComponents’ array in the plugin’s plist. This only supports up to three components in the version entry. The ‘info’ text in the Projucer recommends that AU/AUv3 projects only use version numbers with 3 or fewer parts for this reason.

I think it would be reasonable to just throw away the ‘tweak’ part of the version number when writing this bit of the Plist. I’ll get this change reviewed, but hopefully this will be on `develop` in the next day or two.

---

<div class="post-metadata">

**Author:** ![baconpaul](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/baconpaul/32/8403_2.png) [@baconpaul](https://forum.juce.com/u/baconpaul)\
**Post date:** [July 20, 2021, 2:02pm UTC](https://forum.juce.com/t/au-plugin-version-in-logic-pro-x/46992/3 "2021-07-20T14:02:20Z")

</div>

Great

I think it may be in more than just the plist. When I edit the plist directly in one of my plugins, I still get a 256.0.0.0 from one of my older plugins which is built with 1.9.0.0. Could it also be getting into the ‘version’ function in the AU Layer in the C++?

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [July 20, 2021, 2:08pm UTC](https://forum.juce.com/t/au-plugin-version-in-logic-pro-x/46992/4 "2021-07-20T14:08:33Z")

</div>

That’s interesting, I didn’t see that when I was testing yesterday. Which Plist properties are you updating? I think I was seeing the desired behaviour when changing the “version” key in the “AudioComponents” part of the plist (i.e. _not_ the `CFBundleShortVersionString` or `CFBundleVersion` keys). Are you definitely modifying the correct property? If so, can you provide any other relevant info so that I can try to reproduce the issue (e.g. platform (intel/arm), OS version, Logic version)

---

<div class="post-metadata">

**Author:** ![baconpaul](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/baconpaul/32/8403_2.png) [@baconpaul](https://forum.juce.com/u/baconpaul)\
**Post date:** [July 21, 2021, 1:19am UTC](https://forum.juce.com/t/au-plugin-version-in-logic-pro-x/46992/5 "2021-07-21T01:19:37Z")

</div>

Ok! I’ll dig a bit more and write it up this week. Thanks!

(Everything works just fine if I drop the tweak though so I went ahead and did that with surge)

---

<div class="post-metadata">

**Author:** ![reuk](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/reuk/32/21494_2.png) [@reuk](https://forum.juce.com/u/reuk)\
**Post date:** [July 23, 2021, 1:08pm UTC](https://forum.juce.com/t/au-plugin-version-in-logic-pro-x/46992/6 "2021-07-23T13:08:55Z")

</div>

I think the proposed change is unlikely to break anything, so I’ve merged it here:

> <https://github.com/juce-framework/JUCE/commit/366a62689419218852691d8db271168768743ca7>
>
> AU and AUv3 plugins only support version numbers with up to 3 parts.

Please try this out, and let me know if it fails to completely resolve the issue for you.

---

<div class="post-metadata">

**Author:** ![baconpaul](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/baconpaul/32/8403_2.png) [@baconpaul](https://forum.juce.com/u/baconpaul)\
**Post date:** [July 23, 2021, 2:07pm UTC](https://forum.juce.com/t/au-plugin-version-in-logic-pro-x/46992/7 "2021-07-23T14:07:46Z")

</div>

I can confirm this fixes it perfectly! Thank you!
