liballeg/allegro5

dumb project is archived

Closed this issue ยท 12 comments

๐Ÿ‘‹ just a heads up that dumb project has been unmaintained for quite some time and now it is archived.

relates to Homebrew/homebrew-core#168144

... i.e the DUMB project!

It's still an optional dependency of acodec. The original DUMB on sourceforge has not been touched since 2014 . The kode54 fork here on github (which is the one homebrew draws from) has not been updated for 6 years and has now been archived by kode54.
I think the options are

  • drop DUMB entirely
  • Find an actively maintained fork, or fork it from kode54 into a new repo which we would maintain
  • incorporate the source directly in acodec
  • update acodec to use libopenmpt which (I don't know anything about it) is the replacement suggested by kode54.

libopenmpt seems like the best choice, imo. It seems impractical to add more things to maintain.

Broad outline:

  • Rename modaudio.c to dumb.c, but otherwise keep it (why not?)
  • Add openmpt.c, based on modaudio.c, being careful to match the bizzare looping logic we have

I don't expect this to be too hard, if libopenmpt is any good.

... i.e the DUMB project!

you are absolutely correct! :) Just updated the title ๐Ÿ‘

I don't expect this to be too hard

"The rest is mere coding" ๐Ÿ˜€

#1551 is my initial attempt, basic playback etc is supported, but internal looping points are not handled correctly yet

I was trying to remove the nonnull-before-free checks from DUMB, which is not necessary to do in the C language, but kode45 just archived the project. I can fork DUMB and refactor that so there's less code to maintain if anyone wants.

If someone were to take over DUMB maintainership, that would be convenient as it's still a reasonably functional library. It can't be us, however.

You can pencil me in as the maintainer.

If you could take it on, that would be great. Also if you could contact homebrew and macports as they are currently pointing to the archived 'upstream' and the original SourceForge repo, respectively!

Here's some suggestions:

  1. Contact kode54, get control over the repository
  2. Create a DUMB org, transfer kode54's repository to the new org
  3. Next time this happens, new people can be added to the org, rather than passing the repo around

Now that I added OpenMPT support, there is now a workaround. I have reason to believe DUMB provides superior rendering quality, but OpenMPT seems decent enough to be used when DUMB is unavailable for some reason.