BelaPlatform / supercollider

an environment and programming language for real time audio synthesis and algorithmic composition
GNU General Public License v3.0
14 stars 8 forks source link

Let's merge Bela support into SC! #73

Closed mossheim closed 3 years ago

mossheim commented 4 years ago

hi bela SC maintainers!

i have been hoping to suggest this merge for a while, and i think we are in a good place to do it for the 3.12 release! i am happy to help with figuring out the merge details and migrating any documentation necessary to combine our projects. just want to be clear we're on the same page from the start -- if mainline SC were able to build on bela, and all the bela-specific documentation from your fork and wiki were migrated to supercollider/supercollider, would there be any need to maintain this repo separately? my understanding is, no.

i just saw this comment from @giuliomoro:

I did inquiry about that at some point and they suggested that it would need some way of automatic building and testing which I never did as I don't have any knowledge of continuous integration. Is that something you could perhaps help with?

i think at this point, it would be nice-to-have, but it isn't a requirement so long as people are regularly testing bela and reporting issues. this is how we currently support raspberry pi. for example, i believe there was one major build problem for RPi in the 3.11 release and we've already solved it for 3.11.1. i would think that kind of support would still be preferable to the way you currently come up to date with SC releases.

i also saw this comment from @argl:


Ah and two things I noticed when playing around with it (dont know where else to put it):

Originally posted by @argl in https://github.com/BelaPlatform/supercollider/pull/72#issuecomment-619541118


which is super helpful, thank you for that!


My roadmap to getting bela support into mainline SC would be:

  1. Create a new branch somewhere for merging Bela SC forward into SC mainline
  2. Rebase-reformat that branch to reduce merge conflicts
  3. Make a PR to SC mainline for further review (quite possibly this may need to be done in a few stages)
  4. After everything is merged in, resolve issues identified by @argl
  5. Find a home for Bela-specific documentation (this could be as simple as adding README_BELA.md)

if it's not too much to ask, i would like to request that the bela work be integrated after https://github.com/supercollider/supercollider/pull/4966 is merged, because then we can more easily integrate the bela-specific options. i believe we discussed this in the past. to my knowledge it's the only real wrench in the machine. i'm happy to help sort that out.

argl commented 4 years ago

This is great news, thank you for picking this up!

giuliomoro commented 4 years ago

YES! (sorry for the late response, we were busy finishing the support for the Trill capacitive sensors)

Find a home for Bela-specific documentation (this could be as simple as adding README_BELA.md)

we have this already

after supercollider#4966 is merged,

Has this happened?

i think at this point, it would be nice-to-have, but it isn't a requirement so long as people are regularly testing bela and reporting issues. this is how we currently support raspberry pi.

I am happy to build and do basic testing every new release.

if mainline SC were able to build on bela, and all the bela-specific documentation from your fork and wiki were migrated to supercollider/supercollider, would there be any need to maintain this repo separately? my understanding is, no.

it's my understanding, too

My roadmap to getting bela support into mainline SC would be:

Looks good, is that something that I'd be doing or you'd be doing? Happy to help with whatever needed to get this done.

mossheim commented 4 years ago

Has this happened?

no, and actually i don't think it needs to happen anymore before Bela support. forget i mentioned it :)

I am happy to build and do basic testing every new release.

great!

Looks good, is that something that I'd be doing or you'd be doing? Happy to help with whatever needed to get this done.

if you can get everything up to making the PR done, i will make it a priority to review it. i can also help find the right home/format for the documentation. sound good?

giuliomoro commented 3 years ago

Hi @brianlheim I finally got around to doing this. I have a rebased and reformatted branch bela-merge-formatted-rebase , after a few more testing and adding the Scope feature in #75 I will put forward a PR in the next few days.

mossheim commented 3 years ago

@giuliomoro great to hear this! looking forward to the PR.

sensestage commented 3 years ago

Quick question: has the issue with the belaOptions been addressed? Do we have a separate option string for all the bela specific settings, rather than using the already sparse one-letter options to scsynth?

sensestage commented 3 years ago

@giuliomoro I'll try and spend some time in the coming week to look into the current state of the Bela-branch!

mossheim commented 3 years ago

has the issue with the belaOptions been addressed? Do we have a separate option string for all the bela specific settings, rather than using the already sparse one-letter options to scsynth?

hasn't changed yet. at this point i'd say let's just merge it as is and i'll make sure to tidy it up before the next minor release.

i just looked over the branch and it seems to be in good shape, i'd say it's ready for a PR once you rebase it to the latest develop fix the merge conflicts. looks like there have already been conflicting changes introduced since a few days ago.

giuliomoro commented 3 years ago

@sensestage thanks, the branch I have been working on is bela-merge-formatted-rebase