Closed BurningWitness closed 2 years ago
I feel bad because I made this library years ago with every intention of using it and I never really have outside of the examples. In fact, I tend to forget it even exists.
How about I add you as a committer to this repo so you can make improvements more easily? It's also best when the people using the library are the ones maintaining it.
As for the CI setup, this repo was created way before github actions existed. I don't think I've ever used circle ci. So it's probably not setup? I would say use github actions. It's probably going to be the simplest solution?
I skimmed the changes and they look good.
I'm actually using this library for my pet project, so I have guarantees it works in its current state (although I'm only really using 3% of the library). :wink:
I accepted the repository invitation and I'll support it moving forward, but I'd also like the maintainer status on Hackage (username is tied to storable-offset
.
I think the easiest way to go forward with CI is for you to link this repository to CircleCI. I probably could rewrite the config to do the same thing on Github Actions, but every single CI system seems to have its own YAML language with a dozen execution caveats, so it'd probably take me a day to set up.
Thanks so much for doing this! Can you release this change on hackage as well so we can get it building again on nixpkgs?
@lf- I can, but I find myself extremely torn on the current design of this version of the library, so I've been stalling for quite some time. My gripes are currently:
IO (Either FT_Error a)
(or ExceptT FT_Error IO a
) format. Currently to get this library to work you have to rely on *.Internal
modules.Storable
instances are indeed extremely useful, as I expected, but prefixed record names are extremely ugly. This is kinda resolved in GHC 9.2 with record dot syntax, but ideally I'd want a solution robust enough to support 8.6+. Perhaps I should just rely on DuplicateRecordFields
and point users to HasField
for getters.These issues plague not only this library, but also my ports of libspng and libvorbis, so my expectation would be to release all three together.
If you insist, I can release it on Hackage, but I have to wonder why you can't just pull the current version from 5a7eb59ae49becbedf65c55a8cb97fce0384e9e7.
I guess there's not really a hurry, it just was in the Hydra failures list, but it's not breaking anything I need. I don't think that generally nixpkgs does git sources of haskell packages.
This PR:
*.Internal
modules and fixes several typos;Build
phase of aarch64 CI);storable-offset
to allow forpeek
s andpoke
s over specific fields;Caveats:
storable-offset
is a package I created just today, so it's not on Stackage right now.