home.social

#packagemanagement — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #packagemanagement, aggregated by home.social.

  1. I'm trying to understand / implement dependency resolving using the pubgrub algorithm (to use in my buildsystem nitto). But I keep running into bugs; The newset one:

    Suppose we have the following state:
    ```
    root 1.0.0 -> foo ^1.0.0, bar ^1.0.0
    foo 1.1.0 -> bar ^2.0.0
    foo 1.0.0 -> n/a
    bar 1.0.0 -> n/a
    bar 1.1.0 -> n/a
    bar 2.0.0 -> n/a
    ```

    Now after avoiding a conflict and by choosing to not select `foo 1.1.0` and deriving `not foo 1.1.0` from `{foo 1.1.0, not bar ^2.0.0}`, it derives `foo ^1.0.0` from `{root 1.0.0, not foo ^1.0.0}` even tho it is already an derivation term in the assignments! Aparentily it relates `not foo ^1.0.0` as as overlapping, and wants to add it again to the partial solution...

    #pubgrub #packagemanager #packagemanagement #dependencyresolution #programming #developing #coding #softwaredevelopment #foss #floss

  2. A couple of useful tools for the #NodeJS¹ folks out there working on longer-term projects:

    • npm-check-updates (ncu) is a tool that will help you keep your dependencies updated: npmjs.com/package/npm-check-up

    knip.dev/explanations/comparis (successor to unimported, now that’s deprecated) will help you find unused files and dependencies.

    ¹ Kitten (codeberg.org/kitten/app) uses Node.js as its runtime.

    #NodeJS #ncu #npmCheckUpdates #knip #unimported #packageManagement #npm #node #modules #nodeModules