-
-
Notifications
You must be signed in to change notification settings - Fork 274
Use ableton link for scheduling #898
Conversation
Is this ready to merge now @Zalastax ? As far as I can tell the automated build failures are down to a weirdo cabal path change. Hopefully an easy fix and can be done post merge. |
Hi @yaxu! This is fairly ready. The core of the Haskell code should be good now. However, if you look at the last commit you'll notice that I just now managed to (hopefully) squash a pretty huge bug. I therefore believe it would be best if someone else can try out some tricky cases before we merge, but it's up to you. We can also opt to squash the bugs after merging. I have removed some functionality along the way. The getcps / getnow functions for example. Is it important to add them back before we merge? What about the destroyed functionality in tidal-listener? OSX has not been tested. I'm fairly certain we need to change the compilation flags and tell link we're building on OSX. I can add this soon but I can't test that it actually works. An OSX user should preferably test before merging. Finally, https://gitlab.haskell.org/ghc/ghc/-/issues/20918 has forced me to use a shared library on Windows. This will be problematic in that users might need to edit their PATH and the ghci command will be different. I'd prefer if we can find what causes this and fix it so that shared library is not used on any platform. |
As a reference for anyone who wants to test this, I simply use |
I have prepared a branch where Windows does not use a DLL: https://github.com/Zalastax/Tidal/tree/tidal-link-no-dll. It compiles, but crashes in runtime. Windows users, please try to reproduce the issue reported in https://gitlab.haskell.org/ghc/ghc/-/issues/20918 and report your findings! |
838b563
to
e3e399a
Compare
8ceffbb
to
d74e57b
Compare
Hi @yaxu, This is ready for merging in my view. |
Hey it seems like the listener binary still isn't building for windows, is that right? It would be best to try to support older ghc versions. So I think best add the ci checks back even if we merge them failing. |
This is amazing work by the way, thanks very much! Looking forward to trying it out. I'd generally favour merge now and do any further dev later but it would be good to get the listener binaries building first |
Thanks for the kind words @yaxu! Let me see what I can do. These are the things I know or will follow up on:
|
Hi @yaxu, the CI is now passing. Can I squash and merge? |
Yeah go for it!
…On Thu, 7 Jul 2022, 12:47 Pierre Krafft, ***@***.***> wrote:
Hi @yaxu <https://github.com/yaxu>, the CI is now passing. Can I squash
and merge?
—
Reply to this email directly, view it on GitHub
<#898 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAG2JAGCD6QXVG7SUAHVI3VS27VLANCNFSM5OS7E4YQ>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
https://www.ableton.com/en/link/ Ableton Link keeps devices in time over a local network. This change replaces other methods of synchronizing Tidal sessions with each other. Tidal sessions (and other Link enabled units) will now automatically connect and synchronize their timelines. To stop Tidal from connecting to other peers, configure cEnableLink = False. Ableton Link has a 20 bpm lower limit: Ableton/link#59 COMPATIBILITY NOTE: Ableton Link is a C++ library. The support for using C++ libraries in Haskell has improved over time, but toolchains that are still in use by many might not be compatible with this change. To ensure compatibility, please update your Haskell toolchain. Use Cabal version 3.4.0.0 or later. On Windows, use GHC 9.4.1. (see https://gitlab.haskell.org/ghc/ghc/-/issues/20918)
Continues from #891