Re: [sage-devel] FlintQS upstream

2023-03-25 Thread Michael Orlitzky
On Thu, 2023-03-23 at 22:05 +, Dima Pasechnik wrote:
> On Thu, Mar 23, 2023 at 9:14 PM Michael Orlitzky  wrote:
> > 
> > Does someone have access to https://github.com/sagemath/FlintQS ?
> > 
> > The build is broken with clang-16 and there's an open pull request to
> > fix it. A new release would be helpful.
> 
> I promoted you to a maintainer of this repo.
> 

Thanks. After spending some time with the code, I'd rather replace it.
There are unreported security issues with its use of /tmp,
and it's just generally pretty fragile. It also looks like a more
reliable (but often slower) implementation has been added to flint in
the meantime, as qsieve_factor().

On the examples I've tried, FlintQS is usually capable of factoring a
product of two primes, and relatively quickly. Switching the
implementation to qsieve_factor() slows it down a bit (2s to 3s, for
example). However, in cases like

  qsieve(329884789374968270239373010571299817801707558079749117449)

which is a product of THREE primes, FlintQS gives you the wrong answer
in four seconds whereas qsieve_factor() takes six to get it right.

Number theorists, please speak up if you prefer to get less reliable
answers more quickly in some scenario that I haven't imagined.

-- 
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/7a04728a6fbe3b8fc739ada6e2589e2bb7acde1a.camel%40orlitzky.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread Matthias Koeppe
On Saturday, March 25, 2023 at 1:56:23 PM UTC-7 Emmanuel Charpentier wrote:

A possible solution could mimin the mathematica interface, which raises an 
exception when  called on an system without a mathematica engine installed 
: it prints an inforrmative message 
pointing to the possible solutions of the problem...


I've added this to https://github.com/sagemath/sage/issues/35347
 

-- 
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/ec74b22f-3e72-49e8-b106-f049997e0867n%40googlegroups.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread Dima Pasechnik
On Sat, Mar 25, 2023 at 8:56 PM Emmanuel Charpentier
 wrote:
>
> Ahem... There are two components to consider :
>
> - the package by itself
>
> - its interface to Sagemath.
>
> Case in point : the Mathematica interface, which is standard (*i. e.* 
> installed in all cases), but active if and only if Mathematica (or the 
> Wolfram engine) is present in the target system.
>
> This distinction has not been made in the case of R. I do not know if `rpy2` 
> can be installed in a system not having R.

It cannot - it needs R headers and R dynamic library to build.

>
> A possible solution could mimin the mathematica interface, which raises an 
> exception when  called on an system without a mathematica engine installed : 
> it prints an inforrmative message
> pointing to the possible solutions of the problem...
>
> HTH,
> Le samedi 25 mars 2023 à 21:44:31 UTC+1, Matthias Koeppe a écrit :
>>
>> I've opened issue https://github.com/sagemath/sage/issues/35347 for this
>>
>>
>> On Saturday, March 25, 2023 at 1:40:19 PM UTC-7 Matthias Koeppe wrote:
>>>
>>> On Saturday, March 25, 2023 at 12:52:00 PM UTC-7 Dima Pasechnik wrote:
>>>
>>> I propose to introduce the notion of semistandard package.
>>>
>>>
>>>  "Semistandard" sounds good to me.
>>>
>>> We have a few more packages that are of this type:
>>> - sqlite is only installed if we build our own copy of python3
>>> - openssl is only installed if we build our own copy of python3 or curl
>>>
>>> And some packages can probably be promoted from "optional" to 
>>> "semistandard".
>>> - jupymake - should probably be installed when a system polymake is found
>>> - more to come as part of the modularization.
>>>
>>>
>
> --
> 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/9e8df3f3-9cd3-4818-8760-9d072bb295cdn%40googlegroups.com.

-- 
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/CAAWYfq30dFxVDKvbADY%3Dt%3DxjFifhBccP_v8%2BUfzDAHQDw6vVXA%40mail.gmail.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread Emmanuel Charpentier
Ahem... There are two components to consider :

- the package by itself

- its interface to Sagemath.

Case in point : the Mathematica interface, which is standard (*i. e.* 
installed in all cases), but active if and only if Mathematica (or the 
Wolfram engine) is present in the target system.

This distinction has not been made in the case of R. I do not know if 
`rpy2` can be installed in a system not having R.

A possible solution could mimin the mathematica interface, which raises an 
exception when  called on an system without a mathematica engine installed 
: it prints an inforrmative message 
pointing to the possible solutions of the problem...

HTH,
Le samedi 25 mars 2023 à 21:44:31 UTC+1, Matthias Koeppe a écrit :

> I've opened issue https://github.com/sagemath/sage/issues/35347 for this
>
>
> On Saturday, March 25, 2023 at 1:40:19 PM UTC-7 Matthias Koeppe wrote:
>
>> On Saturday, March 25, 2023 at 12:52:00 PM UTC-7 Dima Pasechnik wrote:
>>
>> I propose to introduce the notion of semistandard package. 
>>
>>
>>  "Semistandard" sounds good to me.
>>
>> We have a few more packages that are of this type:
>> - sqlite is only installed if we build our own copy of python3
>> - openssl is only installed if we build our own copy of python3 or curl
>>
>> And some packages can probably be promoted from "optional" to 
>> "semistandard".
>> - jupymake - should probably be installed when a system polymake is found
>> - more to come as part of the modularization.
>>
>>  
>>
>

-- 
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/9e8df3f3-9cd3-4818-8760-9d072bb295cdn%40googlegroups.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread Matthias Koeppe
I've opened issue https://github.com/sagemath/sage/issues/35347 for this


On Saturday, March 25, 2023 at 1:40:19 PM UTC-7 Matthias Koeppe wrote:

> On Saturday, March 25, 2023 at 12:52:00 PM UTC-7 Dima Pasechnik wrote:
>
> I propose to introduce the notion of semistandard package. 
>
>
>  "Semistandard" sounds good to me.
>
> We have a few more packages that are of this type:
> - sqlite is only installed if we build our own copy of python3
> - openssl is only installed if we build our own copy of python3 or curl
>
> And some packages can probably be promoted from "optional" to 
> "semistandard".
> - jupymake - should probably be installed when a system polymake is found
> - more to come as part of the modularization.
>
>  
>

-- 
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/676fd9c3-8627-4b6c-8e3a-b8a9889e90ddn%40googlegroups.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread William Stein
+1

On Sat, Mar 25, 2023 at 1:40 PM Matthias Koeppe
 wrote:
>
> On Saturday, March 25, 2023 at 12:52:00 PM UTC-7 Dima Pasechnik wrote:
>
> I propose to introduce the notion of semistandard package.
>
>
>  "Semistandard" sounds good to me.
>
> We have a few more packages that are of this type:
> - sqlite is only installed if we build our own copy of python3
> - openssl is only installed if we build our own copy of python3 or curl
>
> And some packages can probably be promoted from "optional" to "semistandard".
> - jupymake - should probably be installed when a system polymake is found
> - more to come as part of the modularization.
>
>
>
> --
> 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/548532e6-4cba-4d38-bd1e-093b08f2429an%40googlegroups.com.



-- 
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/CACLE5GDSOTqXTO9ZHUK1gxxgXP6n1%2Bg3SDbw-gBLLmsyzc%2B9zg%40mail.gmail.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread Matthias Koeppe
On Saturday, March 25, 2023 at 12:52:00 PM UTC-7 Dima Pasechnik wrote:

I propose to introduce the notion of semistandard package. 


 "Semistandard" sounds good to me.

We have a few more packages that are of this type:
- sqlite is only installed if we build our own copy of python3
- openssl is only installed if we build our own copy of python3 or curl

And some packages can probably be promoted from "optional" to 
"semistandard".
- jupymake - should probably be installed when a system polymake is found
- more to come as part of the modularization.

 

-- 
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/548532e6-4cba-4d38-bd1e-093b08f2429an%40googlegroups.com.


Re: [sage-devel] where is rpy2

2023-03-25 Thread Dr. David Kirkby
On Sat, 25 Mar 2023 at 16:29, William Stein  wrote:

> OK, I realize I need to follow the directions above (about ubuntu),
> and then I get r dev installed.


When I installed R on Ununtu I found the version was several years old. I
eventually installed it from the source code which is quite a hassle as it
has so many dépendances  - but I guess that you know that.

Dave
-- 
Dr. David Kirkby,
Kirkby Microwave Ltd,
drkir...@kirkbymicrowave.co.uk
https://www.kirkbymicrowave.co.uk/
Telephone 01621-680100./ +44 1621 680100

Registered in England & Wales, company number 08914892.
Registered office:
Stokes Hall Lodge, Burnham Rd, Althorne, Chelmsford, Essex, CM3 6DT, United
Kingdom

-- 
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/CANX10hCz%2BDp5n2PGuxoB-258JCyRnEa-ADypM9_TGTZmhUN64Q%40mail.gmail.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread Dima Pasechnik
I propose to introduce the notion of semistandard package.

Or perhaps weakly standard one?

Substandard would be too confusing IMHO...

On Sat, 25 Mar 2023, 19:43 William Stein,  wrote:

> On Sat, Mar 25, 2023 at 12:13 PM Dima Pasechnik  wrote:
> >
> >
> >
> > On Sat, 25 Mar 2023, 18:57 Matthias Koeppe, 
> wrote:
> >>
> >> On Saturday, March 25, 2023 at 9:29:32 AM UTC-7 William Stein wrote:
> >>
> >> It seems to me that these days there are three
> >> types of packages:
> >>
> >>
> >> ...at least...
> >>
> >>
> >> - definitely installed in every copy of sage. An example is pari.
> >
> >
> > pari can well come from the system - assuming it passes various
> ./configure tests.
> >
> > I would not call this "installed".
>
> When I introduced the terminology "standard package" 18 years ago (?)
> it meant "definitely installed in every copy of sage." which is why
> https://doc.sagemath.org/html/en/developer/packaging.html says:
> "standard packages are built by default."
>
> I'm fine with the definition changing, but the docs need to  be
> updated to reflect that.  They were updated to reflect just the
> requirement that the package is available (not necessarily built):
> "For a few packages, configure checks whether they are available from
> the system, in which case the build of those packages is skipped."
> That's great.
>
> I'm just pointing out that rpy2 doesn't fit into these definitions
> right now, which is confusing.
>
>
> >
> >>
> >> - 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.
> >>
> >>
> >> That's right.
> >
> >
> > you can force non-standard packages being built by passing the relevant
> option to ./configure
> >
> > e.g.
> >
> >./configure --enable-fricas=yes
> >
> > will result in an attempt to build fricas during the initial build (or
> the subsequent build, whichever is applicable)
> >
> >>
> >>
> >> --
> >> 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/dd78db41-9855-4f5a-baff-68cd8d9ac536n%40googlegroups.com
> .
> >
> > --
> > 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/CAAWYfq1ZH%2BRce10kbPRr3oXb1HFcehbMq%2B-Qp9Fn00it8w9xmQ%40mail.gmail.com
> .
>
>
>
> --
> 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/CACLE5GB%2BOVXqVxbR0RAsn2T%3DO1r0WsYwJiDHJ6BVd3Q%2BT0R2%2BA%40mail.gmail.com
> .
>

-- 
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/CAAWYfq2LTNbZOvdBz4FGC-sLpH41kcs5nE06eMEZAepU69xG%3DQ%40mail.gmail.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread William Stein
On Sat, Mar 25, 2023 at 12:13 PM Dima Pasechnik  wrote:
>
>
>
> On Sat, 25 Mar 2023, 18:57 Matthias Koeppe,  wrote:
>>
>> On Saturday, March 25, 2023 at 9:29:32 AM UTC-7 William Stein wrote:
>>
>> It seems to me that these days there are three
>> types of packages:
>>
>>
>> ...at least...
>>
>>
>> - definitely installed in every copy of sage. An example is pari.
>
>
> pari can well come from the system - assuming it passes various ./configure 
> tests.
>
> I would not call this "installed".

When I introduced the terminology "standard package" 18 years ago (?)
it meant "definitely installed in every copy of sage." which is why
https://doc.sagemath.org/html/en/developer/packaging.html says:
"standard packages are built by default."

I'm fine with the definition changing, but the docs need to  be
updated to reflect that.  They were updated to reflect just the
requirement that the package is available (not necessarily built):
"For a few packages, configure checks whether they are available from
the system, in which case the build of those packages is skipped."
That's great.

I'm just pointing out that rpy2 doesn't fit into these definitions
right now, which is confusing.


>
>>
>> - 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.
>>
>>
>> That's right.
>
>
> you can force non-standard packages being built by passing the relevant 
> option to ./configure
>
> e.g.
>
>./configure --enable-fricas=yes
>
> will result in an attempt to build fricas during the initial build (or the 
> subsequent build, whichever is applicable)
>
>>
>>
>> --
>> 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/dd78db41-9855-4f5a-baff-68cd8d9ac536n%40googlegroups.com.
>
> --
> 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/CAAWYfq1ZH%2BRce10kbPRr3oXb1HFcehbMq%2B-Qp9Fn00it8w9xmQ%40mail.gmail.com.



-- 
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/CACLE5GB%2BOVXqVxbR0RAsn2T%3DO1r0WsYwJiDHJ6BVd3Q%2BT0R2%2BA%40mail.gmail.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread William Stein
On Sat, Mar 25, 2023 at 11:53 AM Matthias Koeppe
 wrote:
>
> rpy2 is built by default when a suitable system R is detected.

Thanks. This is exactly my understanding.

The Sage docs https://doc.sagemath.org/html/en/developer/packaging.html define
standard, optional and experimental packages.  The definition of
standard package is:

"standard packages are built by default.  For a few packages,
configure checks whether they are available from the system, in which
case the build of those packages is skipped.".

This is not true of rpy2, so it is a bug that rpy2 is a standard package.

Probably rpy2 should be completely removed from sage, and people
should pip install it instead.  However, instructions to do that could
be provided if anybody touches the "r." interface...

 -- William




-- 
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/CACLE5GAwdC0ov0XmmbJ0-uDpgUu79ZYk%3DhpgyUtAOpQ45ZarPg%40mail.gmail.com.


Re: [sage-devel] Re: where is rpy2

2023-03-25 Thread Dima Pasechnik
On Sat, 25 Mar 2023, 18:57 Matthias Koeppe, 
wrote:

> On Saturday, March 25, 2023 at 9:29:32 AM UTC-7 William Stein wrote:
>
> It seems to me that these days there are three
> types of packages:
>
>
> ...at least...
>
>
> - definitely installed in every copy of sage. An example is pari.
>
>
pari can well come from the system - assuming it passes various ./configure
tests.

I would not call this "installed".


> - 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.
>
>
> That's right.
>

you can force non-standard packages being built by passing the relevant
option to ./configure

e.g.

   ./configure --enable-fricas=yes

will result in an attempt to build fricas during the initial build (or the
subsequent build, whichever is applicable)


>
> --
> 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/dd78db41-9855-4f5a-baff-68cd8d9ac536n%40googlegroups.com
> 
> .
>

-- 
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/CAAWYfq1ZH%2BRce10kbPRr3oXb1HFcehbMq%2B-Qp9Fn00it8w9xmQ%40mail.gmail.com.


[sage-devel] Re: where is rpy2

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

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? 


Details? Where do you think it is missing?
 

-- 
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/4422f55d-4eba-4284-bf16-c2f9f208d51fn%40googlegroups.com.


[sage-devel] Re: where is rpy2

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

It seems to me that these days there are three 
types of packages:


...at least...
 

- 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.


That's right.
 

-- 
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/dd78db41-9855-4f5a-baff-68cd8d9ac536n%40googlegroups.com.


[sage-devel] Re: where is rpy2

2023-03-25 Thread Matthias Koeppe
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.


[sage-devel] where is rpy2

2023-03-25 Thread William Stein
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/CACLE5GDppSnhYww8t%2Bykn1hw-3crq6KG3OfD5XSW7TroxQB2jg%40mail.gmail.com.