rpy2 is built by default when a suitable system R is detected.

On Saturday, March 25, 2023 at 9:29:32 AM UTC-7 William Stein wrote:

> Hi,
>
> According to
>
> https://doc.sagemath.org/html/en/reference/spkg/rpy2.html#spkg-rpy2
>
> the rpy2 package is a "standard package". However, I just checked
> multiple builds in various places of sage-9.8 and also the latest
> master branch, and rpy2 is not installed.
>
> I can see why rpy2 isn't installed. It's because for sage-9.8 R was
> deprecated from being a standard package to an optional package, and
> of course there is no way to install rpy2 if a sufficiently library
> usable R isn't installed.
>
> 1. What is the definition these days of a standard package? Is a
> standard package "A package that might or might not be installed,
> depending on what happens to be available when ./configure was run?"
> A standard package used to be a package that was definitely installed
> in every copy of Sage. It seems to me that these days there are three
> types of packages:
>
> - definitely installed in every copy of sage. An example is pari.
> - there's an attempt to install them when sage gets built, if
> conditions are right: an example is rpy2
> - they are definitely not installed when sage is initially built:
> example include various specialized databases.
>
> 2. A possible suggestion for improving the error messages. Just
> doing "sage -i rpy2" doesn't work, because that complains that R isn't
> installable:
>
> [...]
> [r-none] If the system package is installed, ./configure will check
> whether it can be used.
> [r-none]
> [r-none]
> [r-none] Error: r is a dummy package and
> [r-none] cannot be installed using the Sage distribution.
>
> OK, I realize I need to follow the directions above (about ubuntu),
> and then I get r dev installed. I guess I know enough to
> actually run ./configure again, and then I do "sage -i rpy2", and then
> that does a LOT, e.g., spending hour(s) building gmp, mpfr, etc.
> (why? because I ran ./configure?).
>
> Why does it say "If the system package is installed, ./configure will
> check whether it can be used."? This isn't
> user friendly. It should say: "Ensure that the system R package is
> installed, then run ./configure. After you do that, you can then
> run 'sage -i rpy2'."
>
> MOTIVATION: For every version of Sage up to and including 9.7, users
> could use rpy2, which lots of little bits of sage evidently
> now rely on,e g., "r.mean([3,7,9])". By deprecating the R
> package entirely, thus making rpy2 into a sudo-standard package
> in version 9.8, using the r interface is just broken, since it uses rpy2.
>
> My guess is that rpy2 and all code that depends on R should be made
> optional packages and marked #optional in the docs, etc.,
> and it's just a bug that hasn't been done? Alternatively, we have to
> make it so that building Sage depends on R being installed, or
> we have to change the definition of "standard" package.
>
> -- 
> William (http://wstein.org)
>

-- 
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/2750bff6-475c-4818-985a-130a06a3453an%40googlegroups.com.

Reply via email to