While debugging this package on our Cray machine, tmux was throwing an
error involving the ncurses headers. Tmux would look for headers in
system locations rather than where spack installed ncurses. Tested only
on a Cray.
- previously spec parsing didn't allow you to look up missing (but still
known) specs by hash
- This allows you to reference and potentially reinstall
force-uninstalled dependencies
- add testing for force uninstall and for reference by spec
- cmd/install tests now use mutable_database
* When cleaning the stage root, only remove directories that appear
to be used for staging Spack packages. Previously Spack was clearing
all directories in the stage root, which could remove content not
related to Spack if the user chose a staging root which contains
files/directories not managed by Spack.
* The documentation is updated with warnings about choosing a stage
directory that is only managed by Spack (although generally the
check added in this PR for "spack clean" should avoid removing
content that was not created by Spack)
* The default stage directory (in config.yaml) is now
$tempdir/$user/spack-stage and the logic is updated to omit the
$user portion of this path if $tempdir already contains a $user
directory.
* When creating stage root assign user read/write permissions to all
directories in the path under $user. Previously Spack was assigning
the permissions of the first existing parent directory
`spec.prefix` reads from Spack's database, and if you do this with
multiple consecutive read transactions, it can take a long time. Or, at
least, you can see the paths get written out one by one.
This uses an outer read transaction to ensure that actual disk locks are
acquired only once for the whole `spack find` operation, and that each
transaction inside `spec.prefix` is an in-memory operation. This speeds
up `spack find -p` a lot.
Refactor `spack.cmd.display_specs()` and `spack find` so that any options
can be used together with -d. This cleans up the display logic
considerably, as there are no longer multiple "modes".
This is another machine-readable version of `spack find`. Supplying the
`--json` argument causes specs to be written out as json records,
easily filered with tools like jq.
e.g.:
$ spack find --json python | jq -C ".[] | { name, version } "
[
{
"name": "python",
"version": "2.7.16"
},
{
"name": "bzip2",
"version": "1.0.8"
}
]
- spack find --format allows you to supply a format string and have specs
output in a more machine-readable way, without dedcoration
e.g.:
spack find --format "{name}-{version}-{hash}"
autoconf-2.69-icynozk7ti6h4ezzgonqe6jgw5f3ulx4
automake-1.16.1-o5v3tc77kesgonxjbmeqlwfmb5qzj7zy
bzip2-1.0.6-syohzw57v2jfag5du2x4bowziw3m5p67
...
or:
spack find --format "{hash}"
icynozk7ti6h4ezzgonqe6jgw5f3ulx4
o5v3tc77kesgonxjbmeqlwfmb5qzj7zy
syohzw57v2jfag5du2x4bowziw3m5p67
...
This is intended to make it much easier to script with `spack find`
* Install the newest version of ncbi-rmblastn
Version ncbi-rmblastn 2.2.28 coonfiguration fails for gcc compiler on ubuntu 16.04 due to some compatibility issues that requires manual intervention to keep the installation going. However you still stumble upon other issues while compiling it.
Using Intel compiler passes the configuration step but fails for the compilation process as well.
Here I'm using the latest version and patch, and the recommended configuration option as mention in http://www.repeatmasker.org/RMBlast.html
* uploading ncbi-blast patch
The mariadb-5.5 series can not be compiled with gcc-9.1.0 and above. Add
a conflicts statement to reflect that.
The error is due to -Werror=address-of-packed-member, a warning that is
new in gcc-9.
* Update R CRAN packages
This PR update R CRAN packages. It also ensures that spack built
packages that correspond to R recommended packages are specified in the
dependency list. This is needed for #12015.
* Add more updates to packages
* Updated dependencies of CRAN R packages
Also, use cloud.r-project.org rather than cran.r-project.org to use
automatic redirection to mirrors. This minimizes the load on the cran
server.
* Update to latest versions of CRAN R packages
* Fix flake8 issues
Some blank lines at the end of a coupple of package files crept in.
* Adjust r-animation dependencies
The r-magick package depends on image-magick, so r-animation should as
well. Also, add in texlive for LaTeX support.
* New package: r-magick
* Adjust line spaces in r-magick
* Add swftools dependenct to r-animation
* New package: swftools
This is needed bt r-animation
* Add 'when' clause to some package dependencies
- r-animation
- r-coin
- r-dt
- r-openssl
* New package: r-ellipsis
* New package: r-vctrs
* New package: r-zeallot
* New package: r-generics
* New package: r-cardata
* Add r-progress dependency to r-readxl
* New package: r-askpass
* New package: r-openxlsx
* New package: r-rio
* New package: r-sys
* New package: r-zip
* Add more updated packages
These are updates that have happened while working on this PR as well as
catching the ones from the cran.rstudio.com URL that were missed before.
* New package: r-gower
* New package: r-recipes
* New package: r-squarem
* New package: r-libcoin
* New package: r-rcmdcheck
* New package: r-remotes
* New package: r-sessioninfo
* New package: r-xopen
* New package: r-rgexf
* New package: r-rook
* New package: r-later
* New package: r-promises
* New package: r-xfun
* New package: r-urca
* New package: r-ggsignif
* New package: r-polynom
* New package: r-ucminf
* New package: r-ordinal
* New package: r-inum
* New package: r-debugme
* New package: r-fs
* New package: r-shinyfiles
* New package: r-gsa
* New package: r-nmof
* New package: r-dosnow
* New package: r-rann
* New package: r-reticulate
* New package: r-future
* New package: r-globals
* New package: r-listenv
* New package: r-future-apply
* New package: r-rsvd
* New package: r-sctransform
* New package: r-mitools
* Remove a stray FIXME line
* Fix typo in dependency for r-rcmdcheck
* Remove the dependency on r-splines
The r-splines package never existed in spack, but it does not exist on
CRAN either. There is an archive version from 1999 but it does not have
the proper extension format for modern R packages. The latest version
does not depend on r-splines, and apparently previous versions at least
built without it. Also, bump the required R version.
* Fix typo in r-rcpp dependency
* Fix typos in dependencies
- r-diagrammer
- r-janitor
- r-seurat
Also, bump minimum R version for r-rngtools.
* New package: r-clisymbols
* New package: r-fitdistrplus
* New package: r-gbrd
* New package: r-gh
* New package: r-ini
* New package: r-metap
* New package: r-npsurv
* New package: r-rdpack
* New package: r-snakecase
* New package: r-tinytex
* New package: r-usethis
* Make recommended changes
Made the changes that were recommended in the initial review.
- change cran.rstudio.com to cloud.r-project.org
- change R-project to r-project
- for packages with no listed homepage use the canonical link to the
package page
- for packages with a dependency constraint on R itself, specify the
dependency type
- add `list_url` where missing from package
* New package: r-hdf5r
This is needed for some older versions of r-seurat.
* Set R versions in packages
If the R version is specified in the DESCRIPTION file then set it in the
respective spack package.py file.
* Update var/spack/repos/builtin/packages/r-aer/package.py
Change dependency version of r-car.
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Set constraint of mlbench dependency of r-adabag
* Set constraint on r-rcpp dependency of r-ape
* Removed "suggested" r-testthat from r-bibtex
* Update var/spack/repos/builtin/packages/r-bindrcpp/package.py
Fix dependency spec of r-bindr in r-bindrcpp.
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/r-blob/package.py
Add r-vctrs version constraint.
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Remove r-base64enc dependency from r-callr
* Update var/spack/repos/builtin/packages/r-car/package.py
Set constraint on r-cardata dependency.
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Remove unneeded dependencies from r-clipr
* Add gmake dependency to r-construct
* Set the proper homepage for r-crayon
* Add r-jsonlite as a dependency for r-crul
The jsonlite package moved from "suggests" to "imports" with 0.8.4.
* Remove accidental colon after package name
* Add version constraint to r-fpc dependency in r-dendextend
* Additional constraints for R version with r-digest
* Add r-jsonlite dependency for latest verion of r-dt
* Add r-htmltools dependency in r-dygraphs package
* Removed unneeded dependencies from r-fnn
* Remove unneeded dependencies from r-formatr
* Add version constraint for r-mvtnorm dependency in r-fpc
* Added gmake dependency to r-fs
* Add r-globals dependency in r-future-apply
* Add perl dependency to r-gdata
* Add openssl dependency for r-ggally
* Removed unneeded dependencies from r-globaloptions
* Update r-haven
- Add version constraint on r-forcats
- Add gmake build dependency
* Fixed gmake dependency
Gmake is a build only dependency.
* Apply suggestions from code review
Apply a batch of suggestions from Adam Stewart.
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Remove unneeded dependencies from r-hoardr
* Fix r-htmlwidgets homepage
* Add gmake build dependency to r-httpuv
* Remove unneeded dependency from r-log4r
* Remove unneeded dependency from r-maldiquant
* Add gmake build dependency to r-minqa
* Remove unneeded dependency from r-mlbench
* Set constraint on R6 dependenvy of r-pbdzmq
* Set constraints on r-callr dependency of r-pkgbuild
* Remove unneeded dependency from r-nloptr
* Remove unneeded dependencies from r-pkgmaker
* Set R version constraint for r-raster
* Set version constraint on rcpp for r-rcppprorgess
* Added gmake build dependency
* Remove unneeded dependencies from r-rematch
* Remove unneeded dependency from r-plogr
* Add gmake build dependency for r-rcurl
* Apply suggestions from code review
Bring in more suggestions from Adam Stewart.
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Remove cnpy dependency from r-rcppcnpy
The r-rcppcnpy package has its own modified copy of the cnpy source and
will build from that internal source. The cnpy dependency is therefore
unnecessary.
* Add comment to reconcile dependencies
The CRAN site lists Perl, Getopt::Long as a dependency. The Spack Perl
will have the Getopt::Long package installed so just depend on Perl.
* Add dependency on udunits2 with newer versions of r-units
* Set additional proj constraint for r-sf
Support for PROJ6 was added in r-sf-0.7-4.
* New package: pandoc
This package installs the pandoc and pandoc-citeproc binaries in order
to satisfy dependencies on pandoc until the Haskell framework is in
Spack.
* Add pandoc dependency to r-bookdown
* Add comment about MPI in r-ergm
* Add pandoc dependency for r-reprex
* Add proj constraints to r-rgdal dependencies
Support for PROJ6 was added in version 1.4-2.
* Modifications to r-rgl
- Rearranged the dependencies to be more consistent with other packages
- put the type last on the depends_on lines to be consistent with other
packages
- Added version constraints for some dependencies
- Added pandoc build dependency
* Be more accurate with rjsonio constraint for r-rgooglemaps
* Remove unneeded dependencies from r-rhmmer
* Tweak constraints for r-rjava
- Set java version constraint
- add gmake build dependency
* Add pandoc dependency to r-markdown
* Remove unneeded dependencies from r-rrcov
* Tweak r-rstan package
- remove duplicate specifications
- remove unneeded when conditions
- add version constraints
- arrange to follow order on CRAN page more closely
- add gmake build dependency
- add pandoc build dependency
* Add pandoc build dependency for r-rstantools
* Remove unneeded dependency from r-runit
* Remove unneeded dependencies from r-selectr
* Remove example R code from description
The example would module loading to break, at least in the case of Lmod
using TCL module files. It could be during the TCL to Lua conversion but
the module fails due to interpreting ipart of the example as a command.
* Update r-seurat
New version of r-seurat with new dependencies.
* New package: r-dqrng
* New package: r-leiden
* New package: r-rcppannoy
* New package: r-rcppparallel
* New package: r-rspectra
* New package: r-sitmo
* New package: r-uwot
* Remove unneeded dependency from r-snow
* Remove unneeded dependency from r-sourcetools
* Added pandoc build dependency for r-stanheaders
* Remove unneeded dependencies from r-taxizedb
* Remove unneeded dependencies from r-tclust
* Add dependency constraints for r-threejs
The following are needed for version 0.2.2:
- r-matrix
- r-jsonlite
* Remove unneeded dependencies from r-vfs
* Remove unneeded dependencies from r-vgam
* Remove unneeded dependency from r-xlconnectjars
* Remove unneeded dependency from r-xlsxjars
* Remove unneeded dependency from r-xnomial
* Remove ~mpi from fftw dependency of swftools
* Apply suggestions from code review
Add latest round of suggestions from Adam Stewart.
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Fix rjsonio spec for r-rgooglemaps
The r-rjsonio spec is a when conditional.
* Rename 3 R.* packages
- r-utils --> r-r-utils (R.utils)
- r-oo --> r-r-oo (R.oo)
- r-methodss3 --> r-r-methodss3 (R.methodsS3)
Also, renamed dependencies in packages that depend on these three.
* Loosen version constraint on mariadb for r-rmysql
Make the mariadb constraint on mariadb-5.5 rather than the more
specific, and limiting, mariadb-5.5.56. This will allow an external
mariadb, such as mariadb-5.5.60 on CentOS-7.5 to be used. It also allows
for r-rmysql to be built against newer versions of the mariadb-5.5
series that might be added to spack.
* Convert to Autotools package
* dyninst and papi are now optional (off by default)
* limit dyninst version to < 10 (see
https://github.com/bsc-performance-tools/extrae/issues/30)
* Add numactl dependency
* Enable parallel installs for 3.7 and later
* Set EXTRAE_HOME in module files and for dependent package installs
* Generalize cxx11 support flag (previously it was using a specific
syntax and this updates it to use the cxx11 support flag for the
compiler in use).
* The install for kaldi was copying library symlinks but not the
actual library files, this makes sure to copy the libraries
* All libraries are installed to 'prefix.lib' (the original
library directory structure is no longer maintained)
* The install step for executables did not account for the different
dynamic library suffix on MacOS
e891cc4 updated the cairo package to make gobject support optional
and disabled it by default. gtkplus requires gobject support so this
explicitly enables +gobject on the cairo dependency of gtkplus.