Tracktion Engine and Juce 6 Deprecated Interators

I always compile with "Treat Warnings as Errors enabled, so I am getting some Deprecated iterator warnings when compiling with Juce 6, and Tracktion_Engine Develop branch.

One example is; MidiBuffer::Iterator in tracktion_HostedAudioDevice.cpp, line 239.

Another is; juce::DirectoryIterator in tracktion_TemporaryFileManager.cpp, line 180.

There are a few others, but those are typical. Is there a time table for updates to fix these?

I think we might have to wait until juce 6 is on develop before we can migrate. We build Waveform with tracktion_engine and I don’t really want to jump on juce6 if it’s still in a period of turbulent development where APIs and functionality can change.

Also, if we point it at juce6 and that branch goes away it will probably break our CI.

And I’m not sure how many people using Tracktion Engine have a juce 6 licence yet?

In summary I’d like to update but juce 6 doesn’t feel fully finished yet or presumably it would just go on the develop branch?

That is certainly understandable. I will just deal with disabling “Treat Warnings as Errors”, temporarily.

Thank you!

What’s the replacement for MidiBuffer::Iterator?

You can now use a for-range loop.

Yeah, it’s annoying I know.
Maybe we’ll create a branch that points at juce6…
I’d need to see how much needs to be updated first but I’m a bit swamped with audio engine work atm.

Any update for these fixes now that Juce 6 has landed on master?

@g-mon is working on it.

1 Like

develop in TE is now using the latest juce from develop. no warnings.

1 Like

Thank you so much! I can now re-enable “Treat Warnings as Errors”, which is my default.

And my project compiles clean with the new TE.

Thank you!

1 Like