[R-pkg-devel] Matrix and Mac OS

Mikael Jagan j@g@nmn2 @end|ng |rom gm@||@com
Wed Nov 1 17:59:14 CET 2023


A hack that seems to work is (whitespace added for readability):

     \newcommand{\Seqn}{
       \ifelse{latex}{
         \Sexpr[results=rd]{if (getRversion() < "4.2.2") "\\\\\\\\eqn{#1}" else 
"\\\\\\\\eqn{#2}"}
       }{
         \ifelse{html}{
           \Sexpr[results=rd]{if (getRversion() < "4.2.0") "\\\\\\\\eqn{#1}" 
else "\\\\\\\\eqn{#2}"}
         }{
           \Sexpr[results=rd]{"\\\\\\\\eqn{#2}"}
         }
       }
     }

as amsmath support for PDF output and KaTeX support for HTML output
were introduced in R 4.2.2 and 4.2.0, respectively.

Sadly I really do seem to need 8 escapes:

     \Seqn{\\\\\\\\text{min}(m,n) \\\\\\\\times n}{min(m,n)-by-n}

Maybe one of the Rd experts here can suggest an improvement ...

Mikael

On 2023-11-01 5:06 am, Martin Maechler wrote:
>>>>>> Uwe Ligges
>>>>>>      on Wed, 1 Nov 2023 06:26:23 +0100 writes:
> 
>      > On 01.11.2023 03:51, Mikael Jagan wrote:
>      >> Thanks.  It seems that we were mistaken in our feeling (IIRC) that it would
>      >> be "OK" to implicitly require '--no-manual' on versions of R from 3.5.0 to
>      >> 4.2.1, not changing our Depends.
>      >>
>      >> We will fix this in Matrix 1.6-2, probably by conditionalizing or otherwise
>      >> replacing the amsmath commands and probably _not_ by changing to depend on
>      >> R >= 4.2.2.  Martin may have more to say in "the morning".
> 
> I agree (*not* to raise Matrix pkg's R version dependency).
> 
>      > Note that dependin on R >= 4.2.2 does not work. We need dependencies of
>      > the form R >= x.y.0. This is also part of the checks.
> 
> Yes, indeed.
> And as we learned, R >= 4.2.0 would not help for r-oldrel-macos
> 
> I (am unhappy but) agree to take the responsibility for our
> decision to go ahead and use much nicer LaTeX formula for
> matrices etc, in our help pages {thinking that indeed people who'd
> install Matrix on an old R version would always be able to read
> Matrix manual pages via web search (as it seems to me 95% of
> people do nowadays) ... or then have someone in their
> organization to figure out how to use a newer amsmath (latex) package if
>   they really really want the Matrix pdf manual offline}.
> 
> Martin
> 
>      > Reason is that we have only one binary repository for one R-x.y.?
>      > series. On WIndows, where we check with R-4.2.3, a binary would be
>      > created and hence R-4.2.[0-1] would not see any valid Matrix binaries.
> 
>      > So please either make this work on R >= 4.2.0 or require R >= 4.3.0. If
>      > the latter, ideally with an interim version that works for R >= 4.2.0,
>      > so that we valid binaries with correct dependency declarations again.
> 
>      > Best,
>      > Uwe
> 
>      >> In the mean time (i.e., while we are stuck with Matrix 1.6-1.1), it may
>      >> help
>      >> to update to R 4.2.3 on r-oldrel-macos-* and/or to have EdSurvey revert its
>      >> strict version requirement, unless there are clear examples justifying one.
>      >>
>      >> Mikael
>      >>
>      >>
>      >> On 2023-10-31 8:17 pm, Simon Urbanek wrote:
>      >>> Mikael,
>      >>>
>      >>> in that case I think your requirements are wrong - Matrix says R >=
>      >>> 3.5.0 which is apparently incorrect - from what you say it should be
>      >>> 4.2.2?. I can certainly update to 4.2.3 if necessary.
>      >>>
>      >>> Cheers,
>      >>> Simon
>      >>>
>      >>>
>      >>>
>      >>>> On 1/11/2023, at 9:19 AM, Mikael Jagan <jaganmn2 using gmail.com> wrote:
>      >>>>
>      >>>> Thanks.  We did see those ERRORs, stemming from use (since Matrix 1.6-0)
>      >>>> of amsmath commands in Rd files.  These have been supported since R
>      >>>> 4.2.2,
>      >>>> but r-oldrel-macos-* (unlike r-oldrel-windows-*) continues to run R
>      >>>> 4.2.0.
>      >>>> My expectation was that those machines would begin running R >= 4.2.2
>      >>>> well
>      >>>> before the R 4.4.0 release, but apparently that was wrong.
>      >>>>
>      >>>> I am hesitant to complicate our Rd files with conditions on R versions
>      >>>> only to support PDF output for R < 4.2.2, but maybe we can consider it
>      >>>> for the Matrix 1.6-2 release if it is really a barrier for others ...
>      >>>>
>      >>>> Mikael
>      >>>>
>      >>>> On 2023-10-31 3:33 pm, Simon Urbanek wrote:
>      >>>>> Mikael,
>      >>>>> current Matrix fails checks on R-oldrel so that's why only the last
>      >>>>> working version is installed:
>      >>>>> https://cran.r-project.org/web/checks/check_results_Matrix.html
>      >>>>> Cheers,
>      >>>>> Simon
>>>>>> On 1/11/2023, at 4:05 AM, Mikael Jagan <jaganmn2 using gmail.com> wrote:
>      >>>>>>
>>>>>> I am guessing that they mean EdSurvey:
>      >>>>>>
>>>>>>      https://cran.r-project.org/web/checks/check_results_EdSurvey.html
>      >>>>>>
>>>>>> Probably Matrix 1.6-1.1 is not installed on r-oldrel-macos-arm64,
>>>>>> even though it can be, because it was not released until R 4.3-z.
>      >>>>>>
>>>>>> AFAIK, methods for 'qr' have not been touched since Matrix 1.6-0, and
>>>>>> even those changes should have been backwards compatible, modulo
>>>>>> handling
>>>>>> of dimnames (class sparseQR gained a Dimnames slot in 1.6-0).
>      >>>>>>
>>>>>> So I don't see a clear reason for requiring 1.6-1.1.  Requiring 1.6-0
>>>>>> might make sense, if somehow EdSurvey depends on how class sparseQR
>>>>>> preserves dimnames.  But IIRC our rev. dep. checks at that time did
>>>>>> not
>>>>>> reveal problems with EdSurvey.
>      >>>>>>
>>>>>> Mikael
>      >>>>>>
>>>>>> On 2023-10-31 7:00 am, r-package-devel-request using r-project.org wrote:
>      >>>>>>> Paul,
>      >>>>>>> can you give us a bit more detail? Which package, which build and
>      >>>>>>> where you got the errors? Older builds may not have the latest
>      >>>>>>> Matrix.
>      >>>>>>> Cheers,
>      >>>>>>> Simon
>      >>>>>>>> On 31/10/2023, at 11:26 AM, Bailey, Paul via
>      >>>>>>>> R-package-devel<r-package-devel using r-project.org>  wrote:
>      >>>>>>>>
>      >>>>>>>> Hi,
>      >>>>>>>>
>      >>>>>>>> I'm the maintainer for a few packages, one of which is currently
>      >>>>>>>> failing CRAN checks on Mac OS because Matrix is not available in
>      >>>>>>>> my required version (the latest). I had to fix a few things due
>      >>>>>>>> to changes in the latest Matrix package because of how qr works
>      >>>>>>>> and I thought, given the apparent API change, I should then
>      >>>>>>>> require the latest version. My error is, "Package required and
>      >>>>>>>> available but unsuitable version: 'Matrix'"
>      >>>>>>>>
>      >>>>>>>> When I look at the NEWS in Matrix there is no mention of Mac OS
>      >>>>>>>> issues, what the latest stable version of Matrix is, nor when a
>      >>>>>>>> fix is expected. What version do MacOS version test Matrix with
>      >>>>>>>> by default? Where is this documented? I assumes it always tested
>      >>>>>>>> with the latest version on CRAN, so I'm a bit surprised. Or will
>      >>>>>>>> this be resolved soon and I shouldn't bother CRAN maintainers
>      >>>>>>>> with a new version of my package?
>      >>>>>>>>
>      >>>>>>>> Best,
>      >>>>>>>> Paul
>      >>>>>>>>
>      >>>>>>>>     [[alternative HTML version deleted]]
>      >>>>>>
>      >>>>
>      >>>
>      >>
>      >> ______________________________________________
>      >> R-package-devel using r-project.org mailing list
>      >> https://stat.ethz.ch/mailman/listinfo/r-package-devel
> 
>      > ______________________________________________
>      > R-package-devel using r-project.org mailing list
>      > https://stat.ethz.ch/mailman/listinfo/r-package-devel




More information about the R-package-devel mailing list