On Sun, Feb 18, 2024 at 5:15 PM Matthias Koeppe <matthiaskoe...@gmail.com> wrote:
> On Sunday, February 18, 2024 at 4:40:35 AM UTC-8 Dima Pasechnik wrote: > > On 17 February 2024 23:31:43 GMT, Matthias Koeppe <matthia...@gmail.com> > wrote: > >On Saturday, February 17, 2024 at 3:04:49 PM UTC-8 Nathan Dunfield wrote: > >"wheel" type Sage packages, each of which is > >primarily just the version number of a file on PyPI and its hash, is like > a > >"requirements.txt" file (or "conda-lock" file, for that matter) spread > over > >multiple directories. Personally, I don't view that as packaging a > >dependency, but rather saving some metadata to aid > >reliability/reproducibility. > > > >I'll note that in addition to aiding reliability/reproducibility, the > >metadata in build/pkgs is also important for discoverability and > >attribution. > > Merely pinning down the versions doesn't magically brings you > reproducibility, unless you are also willing to pin down the OS version, > and the hardware. [...] > > > This is an instance of the "all or nothing" fallacy, and simultaneously a > "straw man" fallacy (note that both Nathan and I said it "aids" > reproducibility etc.) > I don't know where you see fallacies. You are just not willing to view the existing Sage tooling under a critical loop, IMHO. > > Besides, to create a pinning of all the versions of Python packages, just > run the appropriate pip command, it will produce a full list of all the > versions, ready to be used to reproduce the environment. No need to > maintain these pinnings by hand. > > Yes, metadata is important, it's just make-work to maintain it manually. > We don't need to carry out this make-work. > > > Exactly, it matters what tooling is available. And every single little > improvement of our tooling will likely have more value than this entire > thread. > The value is in the eye of beholder, if you like. The existing tooling is too rigid, my proposal aims to improve it by making it more flexible. > > Yes, we don't want to maintain the metadata "manually". > And we don't! We use the "sage --package" script ( > https://deploy-livedoc--sagemath.netlify.app/html/en/developer/packaging#utility-script-to-create-and-maintain-packages > ) > > Yes, "pip freeze" will output the current versions of installed Python > packages, to be saved as a requirements.txt file. > What's missing is the tooling that would feed this version information > back to our version files. > why do we need "our version files"? we need input to pip, and "pip freeze" can generate such an input. > That's wishlist item https://github.com/sagemath/sage/issues/37314, > estimated effort: 15 minutes of work. Any takers? > > -- > You received this message because you are subscribed to the Google Groups > "sage-devel" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sage-devel+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sage-devel/16525787-4dec-4ded-b2c1-4019683a930an%40googlegroups.com > <https://groups.google.com/d/msgid/sage-devel/16525787-4dec-4ded-b2c1-4019683a930an%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/CAAWYfq0-tuzToFhvi7iNNxkgRTHYNSqSQrSewy%3DqfcHfVp%3DHwQ%40mail.gmail.com.