input-output-hk / input-output-hk/Developer-Experience-working-group
Ecosystem-wide compatibility and build systems
- Dominant language
- No language data
- Stars
- 24
- Forks
- 14
- PR merge metrics
- No merged PRs in 30d
Description
Broadly speaking, the Cardano Ecosystem relies heavily on Nix.
While Nix can help lead a project to reproducible builds, it can make the process of upgrading dependencies very difficult to manage.
In other Ecosystems (Haskell, Nodejs/npm, etc), a 'constraint-solver' algorithm is used to determine the packages that are known to build together. Haskell's ecosystem has also produced 'Stackage' which creates sets of packages that are known to build together, this makes it easier for library maintainers to see when their library has lost compatibility with a particular package, and for users to know which of their dependencies may not be ready for an upgrade.
unfortunately this infrastructure is not currently available in the Cardano ecosystem. Two solutions are apparent:
- work on integrating the cardano ecosystem with the mainstream Haskell ecosystem in hopes of being included in Stackage nightly images
- create our own version of stackage or a similar toolchain/CI system to validate builds for developers.
Contributor guide
No contributing guide indexed for this repository
Research direction
No files, tests, or concrete entry points are named. Start by comparing the two proposed directions—Haskell/Stackage integration or a Cardano-specific constraint-solver and CI toolchain—and define a bounded implementation plan with a demonstrable set of packages that build together.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- haskell, nodejs
- Domain
- build-system, ci-cd, developer-experience
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100