Hi, I've separated sage.libs.giac into its own package, and would like to downgrade giac to optional at the same time the new package is added, cf.
* https://github.com/sagemath/sagemath-giac * https://github.com/sagemath/sage/pull/39376 tl;dr now is the time to object. The reason for this, and the reason why I am working on this in the first place, is because giac no longer builds and runs reliably. It fails: * On riscv systems * On systems with a hardened glibcxx * On macos M2 (according to Volker) * With gcc-15, due out in the next few months There is "inertia" with respect to getting any of these fixed. For myself, the list above now covers 100% of the machines that I use on a daily basis. And since libgiac is linked with sage, having giac as an unconditional dependency makes it very difficult to use sage. (Thankfully, giac is already optional when using meson to build sage.) On any of those systems, we need a way to disable giac and the sage.libs.giac integration. That's the motivation for the new package/PR. The remaining question is, do we leave giac and sagemath-giac as standard, and tell everyone who experiences problems to disable it? (We would also need a mechanism to disable it.) Or do we make it optional, and let the people who use it enable it? Currently the PR makes it optional. I think there are some good arguments for this: 1. It used to be optional a few years ago. We moved it into sagelib to avoid a circular dependency between sagelib -> sagemath-giac -> sagelib, but now there is no circular dependency. All integration backends are "optional" because we run through the list and skip any that don't return a result. 2. It's already optional when you use meson to build sagelib, so this makes the two approaches consistent. 3. We don't lose any killer features, only a few clever integrals that maxima/sympy can't solve. 4. It makes us look bad when things fail and we have to tell people on the mailing list how to work around it. 5. Build time goes down. 6. Sage is less likely to break during "apt-get upgrade" or equivalent. 7. If you want it back, "make sagemath_giac" or ./configure --enable-sagemath_giac only take a minute. On the other hand the biggest downside is that if someone was using libgiac directly in their own code or was relying on it for some indefinite integrals, then they are probably going to be confused when it isn't there in the next release. It's easy to fix, but they're going to have to ask what happened first, and obviously that hits (4) above too. FWIW I would write this all up in the release notes. -- 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 visit https://groups.google.com/d/msgid/sage-devel/Z7ZrzabybltgKTzx%40mertle.