# Enabling github actions

**URL:** <https://forum.juce.com/t/enabling-github-actions/43843>\
**Category:** General JUCE discussion\
**Created:** [January 15, 2021, 4:31pm UTC](https://forum.juce.com/t/enabling-github-actions/43843 "2021-01-15T16:31:57Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [January 15, 2021, 4:31pm UTC](https://forum.juce.com/t/enabling-github-actions/43843/1 "2021-01-15T16:31:57Z")

</div>

Any chance we enable github actions for checking the status of the PR in all platforms and all extras / demos ? It will help a lot…

> <https://github.com/juce-framework/JUCE/pull/833>

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [January 15, 2021, 9:26pm UTC](https://forum.juce.com/t/enabling-github-actions/43843/2 "2021-01-15T21:26:33Z")

</div>

An example of runs [Actions · kunitoki/JUCE · GitHub](https://github.com/kunitoki/JUCE/actions)

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [January 15, 2021, 9:54pm UTC](https://forum.juce.com/t/enabling-github-actions/43843/3 "2021-01-15T21:54:15Z")

</div>

I don’t understand why compiling all targets, juce-cmake is building each demo as a standalone executable. recompiling gazillions of time the same juce\_library files.

If i use this, i will start a process which will take hours, because of the way it is configured.

```
cmake --build cmake-build

```

The alternative is that i build each target individually, but of course if an extra target is added or removed, then i need to change the CI scripts, not really optimal.

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [January 15, 2021, 10:15pm UTC](https://forum.juce.com/t/enabling-github-actions/43843/4 "2021-01-15T22:15:05Z")

</div>

Also, any reason why i get demo stuff copied inside the AudioPluginHost bundle ?

```
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/AudioLiveScrollingDisplay.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/AddPair.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/ApplyForce.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/BodyTypes.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Breakable.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Bridge.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/BulletTest.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Cantilever.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Car.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Chain.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/CharacterCollision.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/CollisionFiltering.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/CollisionProcessing.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/CompoundShapes.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Confined.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/ContinuousTest.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/DistanceTest.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Dominos.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/DumpShell.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/DynamicTreeTest.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/EdgeShapes.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/EdgeTest.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Gears.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/OneSidedPlatform.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Pinball.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/PolyCollision.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/PolyShapes.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Prismatic.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Pulleys.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Pyramid.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/RayCast.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Revolute.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Rope.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/RopeJoint.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/SensorTest.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/ShapeEditing.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/SliderCrank.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/SphereStack.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/TestEntries.cpp
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/TheoJansen.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Tiles.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/TimeOfImpact.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Tumbler.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/VaryingFriction.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/VaryingRestitution.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/VerticalStack.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Box2DTests/Web.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/DSPDemos_Common.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/DemoUtilities.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name10.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name2.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name3.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name4.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name5.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name6.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name7.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name8.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/images/ic_stat_name9.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/demonstrative.caf
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/demonstrative.mp3
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/isntit.caf
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/isntit.mp3
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/jinglebellssms.caf
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/jinglebellssms.mp3
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/served.caf
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/served.mp3
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/solemn.caf
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Notifications/sounds/solemn.mp3
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Ed.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Ed0.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Ed1.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Ed2.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Fabian.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Fabian0.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Fabian1.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Fabian2.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/JB.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/JB0.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/JB1.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/JB2.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Jules.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Jules0.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Jules1.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Jules2.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Lukasz.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Lukasz0.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Lukasz1.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Lukasz2.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Robot.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Robot0.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Robot1.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/Robot2.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Purchases/icon.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Signing/InAppPurchase.keystore
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/Signing/README.txt
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/WavefrontObjParser.h
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/cassette_recorder.wav
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/cello.wav
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/demo table data.xml
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/google-services.json
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/guitar_amp.wav
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/icons.zip
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/juce_icon.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/juce_icon_template.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/juce_module_info
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/portmeirion.jpg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/power.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/proaudio.path
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/reverb_ir.wav
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/singing.ogg
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/teapot.obj
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/tile_background.png
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Assets/treedemo.xml
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/Icon.icns
Copying OS X content extras/AudioPluginHost/AudioPluginHost_artefacts/Release/AudioPluginHost.app/Contents/Resources/RecentFilesMenuTemplate.nib
```

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [January 16, 2021, 12:45am UTC](https://forum.juce.com/t/enabling-github-actions/43843/5 "2021-01-16T00:45:03Z")

</div>

Some reported issues:

1. BinaryBuilder fails linking on ubuntu-18.04

> [100%] Linking CXX executable BinaryBuilder\_artefacts/Release/BinaryBuilder  
> /usr/lib/gcc/x86\_64-linux-gnu/7/libstdc++.so: undefined reference to `pthread_create' /usr/lib/gcc/x86_64-linux-gnu/7/libstdc++.so: undefined reference to `pthread\_detach’  
> collect2: error: ld returned 1 exit status

[https://github.com/kunitoki/JUCE/runs/1711935340?check\_suite\_focus=true](https://github.com/kunitoki/JUCE/runs/1711935340?check_suite_focus=true)

1. Issues with running the UnitTestRunner in Debug on ubuntu-18.04

> Starting test: Files / Reading…  
> !!! Test 8 failed
> 
> FAILED!! 1 test failed, out of a total of 21
> 
> * * *
> 
> Starting test: Files / Writing…  
> !!! Test 43 failed
> 
> FAILED!! 1 test failed, out of a total of 53

and

> Starting test: MidiFile / ReadTrack returns available messages if input is truncated…  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> JUCE Assertion failure in juce\_MidiMessage.cpp:82  
> All tests completed successfully

[https://github.com/kunitoki/JUCE/runs/1711935456?check\_suite\_focus=true](https://github.com/kunitoki/JUCE/runs/1711935456?check_suite_focus=true)

1. When building on windows when using `-DCMAKE_BUILD_TYPE=` it is ignored (only on windows tho):

> CMake Warning:  
> Manually-specified variables were not used by the project:
> 
> ```
> CMAKE_BUILD_TYPE
> 
> ```

And then specifying Release will build Debug.

[https://github.com/kunitoki/JUCE/runs/1711935423?check\_suite\_focus=true](https://github.com/kunitoki/JUCE/runs/1711935423?check_suite_focus=true)

Any ideas ?

---

<div class="post-metadata">

**Author:** ![t0m](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/t0m/32/16413_2.png) [@t0m](https://forum.juce.com/u/t0m)\
**Post date:** [January 16, 2021, 8:24am UTC](https://forum.juce.com/t/enabling-github-actions/43843/6 "2021-01-16T08:24:25Z")

</div>

> <https://github.com/juce-framework/JUCE/pull/833#issuecomment-761229533>
>
> Whilst your efforts to improve JUCE are certainly appreciated, we're not going t…o add GitHub actions to the repository.
> 
> Our internal CI suite consists of hundreds of jobs run on many different bits of hardware. It's not something we can open up to the public. Getting things to build on the relatively limited options that GitHub Actions can provide is nowhere near the coverage of platforms and build configurations that we require, and we don't want the overhead of maintaining a redundant CI pipeline.

> Whilst your efforts to improve JUCE are certainly appreciated, we’re not going to add GitHub actions to the repository.
> 
> Our internal CI suite consists of hundreds of jobs run on many different bits of hardware. It’s not something we can open up to the public. Getting things to build on the relatively limited options that GitHub Actions can provide is nowhere near the coverage of platforms and build configurations that we require, and we don’t want the overhead of maintaining a redundant CI pipeline.

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [January 16, 2021, 8:51am UTC](https://forum.juce.com/t/enabling-github-actions/43843/7 "2021-01-16T08:51:41Z")

</div>

Fair enough, even if not having something like this is against favouring people to provide quality PRs that are green among as much platforms as possible.

Can you open up which platforms are you building on?

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [January 16, 2021, 8:54am UTC](https://forum.juce.com/t/enabling-github-actions/43843/8 "2021-01-16T08:54:30Z")

</div>

Can you also explain the failures in UnitTests on linux debug? Are you testing those?

---

<div class="post-metadata">

**Author:** ![mcmartin](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/mcmartin/32/7432_2.png) [@mcmartin](https://forum.juce.com/u/mcmartin)\
**Post date:** [January 16, 2021, 8:55am UTC](https://forum.juce.com/t/enabling-github-actions/43843/9 "2021-01-16T08:55:23Z")

</div>

> [@kunitoki](#):
>
> When building on windows when using `-DCMAKE_BUILD_TYPE=` it is ignored (only on windows tho):

By default, CMake uses the latest “Visual Studio” generator on Windows, which is a multi-config generator. Multi-config generators ignore `CMAKE_BUILD_TYPE`, since they support selecting the build configuration at build time. Single-config generators (like `Unix Makefiles`, which is used by default on Linux and macOS) need to know the build configuration at configure time, thus they use `CMAKE_BUILD_TYPE`.

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [January 16, 2021, 8:56am UTC](https://forum.juce.com/t/enabling-github-actions/43843/10 "2021-01-16T08:56:16Z")

</div>

Oh awesome, good to know. Thanks for the input!

---

<div class="post-metadata">

**Author:** ![t0m](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/t0m/32/16413_2.png) [@t0m](https://forum.juce.com/u/t0m)\
**Post date:** [January 16, 2021, 9:19am UTC](https://forum.juce.com/t/enabling-github-actions/43843/11 "2021-01-16T09:19:43Z")

</div>

One of the platforms we test on is Ubuntu 18.04. All tests pass.

1. This is likely to be a runner and/or machine configuration issue.
2. Also likely to be a runner and/or machine configuration issue. We test things like writing to `/tmp` which may not be allowed. Assertion failures are expected - we test things like reading misaligned memory access in the DSP functions and ill-formatted blocks of MIDI data.

We test the cross section of:

- Building on different versions of macOS, Windows and Linux (and iOS and Android on each)
  - On each OS we test different deployment targets, platform SDKs, and compilers
    - On each of those we test different plug-in formats, types of application, project generation

Platforms: macOS 10.10 to 11.0 and ARM, Windows 8 to Windows 10, various Linux  
Deployment targets: 10.7 to 11, SDKs 10.11 to 11  
Compilers: VS 2015 to 2019, Xcode 8 to 12, Android Studio latest, GCC 4.8 to 10, LLVM 7 to 10  
CMake: 3.12 and 3.15 and all the different generators on all the different platforms

---

<div class="post-metadata">

**Author:** ![t0m](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/t0m/32/16413_2.png) [@t0m](https://forum.juce.com/u/t0m)\
**Post date:** [January 16, 2021, 9:22am UTC](https://forum.juce.com/t/enabling-github-actions/43843/12 "2021-01-16T09:22:31Z")

</div>

We don’t expect PRs to be able to conform to every single platform-compiler-option combination. It’s not reasonable for people who don’t develop frameworks to understand or recognise what bits of code will be problematic, or even how to fix them for less common combinations.

---

<div class="post-metadata">

**Author:** ![kunitoki](https://sea2.discourse-cdn.com/flex026/user_avatar/forum.juce.com/kunitoki/32/15_2.png) [@kunitoki](https://forum.juce.com/u/kunitoki)\
**Post date:** [January 16, 2021, 11:28am UTC](https://forum.juce.com/t/enabling-github-actions/43843/13 "2021-01-16T11:28:05Z")

</div>

Yeah that’s a bit of a hell to maintain. How long a full CI run take?

I still think a smaller platform subset in the public JUCE is a help for contributors and a help for you to get a glance on the status of a feature before considering for inclusion.

I’m doing my best to help you opening up more the public development of juce and obtain help in getting quick wins / improvements in the product. I will never stop doing that as i grew up with juce and Julian and contributed a fair amount of features and fixes since 2004 or so. And i still think we all can do much more for it…
