1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-07-08 05:24:04 +02:00

Compare commits

..

1 Commits

Author SHA1 Message Date
Vagrant Cascadian f0a4f6d214 gnu: linux-libre: Update default version to 7.0.
* gnu/packages/linux.scm (linux-libre-version, linux-libre-gnu-revision,
linux-libre-pristine-source, linux-libre-source, linux-libre,
linux-libre-arm64-mnt-reform): Update to 7.0.
2026-05-27 12:30:54 -07:00
62 changed files with 4973 additions and 6166 deletions
+6 -6
View File
@@ -292,12 +292,12 @@ guix/build-system/julia\.scm @guix/julia
gnu/packages/(kde)(-.+|)\.scm$ @guix/kde
gnu/build/linux-modules\.scm @guix/linux-libre
gnu/packages/aux-files/linux-libre.*$ @guix/linux-libre
gnu/packages/linux\.scm @guix/linux-libre
gnu/tests/linux-modules\.scm @guix/linux-libre
guix/build/linux-module-build-system\.scm @guix/linux-libre
guix/build-system/linux-module\.scm @guix/linux-libre
gnu/build/linux-modules\.scm @guix/kernel
gnu/packages/aux-files/linux-libre.*$ @guix/kernel
gnu/packages/linux\.scm @guix/kernel
gnu/tests/linux-modules\.scm @guix/kernel
guix/build/linux-module-build-system\.scm @guix/kernel
guix/build-system/linux-module\.scm @guix/kernel
gnu/packages/lisp(-.+|)\.scm$ @guix/lisp
guix/build/asdf-build-system\.scm @guix/lisp
+6 -6
View File
@@ -876,8 +876,8 @@ and the maven-build-system."
"The plasma desktop environment, and KDE Applications."
#:scope (list (make-regexp* "^gnu/packages/(kde)(-.+|)\\.scm$"))))
(define-team linux-libre
(team 'linux-libre
(define-team kernel
(team 'kernel
#:name "Linux-libre kernel team"
#:scope (list "gnu/build/linux-modules.scm"
(make-regexp* "^gnu/packages/aux-files/linux-libre.*$")
@@ -1298,7 +1298,7 @@ the \"texlive\" importer."
(define-member (person "Leo Famulari"
"leo@famulari.name"
"lfam")
linux-libre)
kernel)
(define-member (person "Efraim Flashner"
"efraim@flashner.co.il"
@@ -1383,7 +1383,7 @@ the \"texlive\" importer."
(define-member (person "Vagrant Cascadian"
"vagrant@debian.org"
"vagrantc")
debian embedded linux-libre)
debian embedded kernel)
(define-member (person "Vagrant Cascadian" ;XXX: duplicate
"vagrant@reproducible-builds.org"
@@ -1537,7 +1537,7 @@ the \"texlive\" importer."
(define-member (person "Rodion Goritskov"
"rodion@goritskov.com"
"rodion-goritskov")
games java kde linux-libre release)
games java kde kernel release)
(define-member (person "Jason Conroy"
"jconroy@tscripta.net"
@@ -1622,7 +1622,7 @@ the \"texlive\" importer."
(define-member (person "Wilko Meyer"
"w@wmeyer.eu"
"theesm")
linux-libre perl)
kernel perl)
(define-member (person "Untrusem"
"mysticmoksh@riseup.net"
+8 -2
View File
@@ -2368,8 +2368,16 @@ dist_patch_DATA = \
%D%/packages/patches/renpy-fix-integer-slots.patch \
%D%/packages/patches/reposurgeon-add-missing-docbook-files.patch \
%D%/packages/patches/rdkit-unbundle-external-dependencies.patch \
%D%/packages/patches/r-biostrings-r4.6.0-compat.patch \
%D%/packages/patches/r-h5mread-0001-h5mread-1.3.2-Get-rid-of-non-API-calls-to-R.patch \
%D%/packages/patches/r-httpuv-1.6.6-unvendor-libuv.patch \
%D%/packages/patches/r-mscoreutils-0001-fix-non-API-call-to-R-SETLENGTH-by-using-lengthgets.patch \
%D%/packages/patches/r-rsamtools-r-4.6.0-compat.patch \
%D%/packages/patches/r-snpstats-0001-fixed-non-API-except-for-IS_S4_OBJECT.patch \
%D%/packages/patches/r-snpstats-0002-fixed-IS_S4_OBJECT.patch \
%D%/packages/patches/r-sapa-lapack.patch \
%D%/packages/patches/r-shortread-0001-ShortRead-1.69.3-Get-rid-of-non-API-calls-to-R.patch \
%D%/packages/patches/r-sparsearray-r-4.6.0-compat.patch \
%D%/packages/patches/ripperx-missing-file.patch \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
%D%/packages/patches/rtosc-0.3.1-fix-invalid-comparison-operator.patch \
@@ -2454,7 +2462,6 @@ dist_patch_DATA = \
%D%/packages/patches/shared-mime-info-xdgmime-path.patch \
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
%D%/packages/patches/showtime-python-3.11-compat.patch \
%D%/packages/patches/simpleitk-r-4.6.0.patch \
%D%/packages/patches/sipwitch-fix-build-with-exosip5.patch \
%D%/packages/patches/slim-config.patch \
%D%/packages/patches/slim-gcc-14.patch \
@@ -2489,7 +2496,6 @@ dist_patch_DATA = \
%D%/packages/patches/swift-corelibs-libdispatch-5.7.3-modulemap.patch \
%D%/packages/patches/swift-llvm-5.7.3-linux.patch \
%D%/packages/patches/swig-support-gcc-12.patch \
%D%/packages/patches/swig-support-r-4.6.0.patch \
%D%/packages/patches/swish-e-search.patch \
%D%/packages/patches/swish-e-format-security.patch \
%D%/packages/patches/t1lib-CVE-2010-2642.patch \
+1 -11
View File
@@ -2135,17 +2135,7 @@ envelope follower, distortion effects, tape effects and more.")
(base32
"01hnx4hhbz3ap3bw15s42q4q1mw1mhdjwygq4550wvjfg6k4ga8w"))))
(build-system waf-build-system)
(arguments
(list
#:tests? #false ;There are no tests.
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'python3.12-compatibility
(lambda _
(substitute* "waflib/Context.py"
(("imp.new_module") "types.ModuleType")
(("import os, re, imp, sys")
"import os, re, types, sys")))))))
(arguments (list #:tests? #false)) ;There are no tests.
(inputs (list lv2))
(native-inputs (list pkg-config))
(home-page "https://git.drobilla.net/cgit.cgi/omins.lv2.git/")
-2
View File
@@ -152,10 +152,8 @@ PSKC (RFC6030) to manage secret key data.")
(list "Test2LOFlow/curl._2lo"
"Test3LOFlow/curl._3lo"
"Test3LOFlow/fetch._3lo_cached"
"Test3LOFlow/fetch._3lo_insert_expired_token_into_cache"
"Test3LOLoopbackFlow/curl._3lo_loopback"
"Test3LOLoopbackFlow/fetch._3lo_loopback_cached"
"Test3LOLoopbackFlow/fetch._3lo_loopback_insert_expired_token_into_cache"
"TestCLI/info._invalid_token"
"TestSSOFlow/fetch._sso"
"TestSSOFlow/fetch._sso._old_interface"
+1
View File
@@ -910,6 +910,7 @@ is like a time machine for your data.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:install-source? #f
#:import-path "github.com/restic/restic/cmd/restic"
#:unpack-path "github.com/restic/restic"
+1599 -1704
View File
File diff suppressed because it is too large Load Diff
+268 -241
View File
@@ -1430,86 +1430,33 @@ within this package are the 3000 bone marrow cells used for vignettes.")
(license license:gpl3))))
(define-public r-pizzarr
(package
(name "r-pizzarr")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/keller-mark/pizzarr")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1m38c57pfliycxkhb3mwgh01cl2q76r1jhd3vnk07dbfhqdbqai6"))))
(properties `((upstream-name . "pizzarr")))
(build-system cargo-build-system)
(arguments
(list
#:imported-modules
(append %cargo-build-system-modules
%r-build-system-modules)
#:modules
'((guix build cargo-build-system)
((guix build r-build-system) #:prefix r:)
(guix build utils))
#:cargo-build-flags
'(list "--target-dir=./target" "--release")
#:phases
#~(append (modify-phases %standard-phases
(add-after 'unpack 'patch-Makevars
(lambda _
;; At this point we've already built the Rust parts.
(substitute* "src/Makevars.in"
(("^all:.*") "all:")
(("^\\$\\(STATLIB\\):") "NOBODYCARES:")
(("@PKG_LIBS_EXTRA@") "@PKG_LIBS_EXTRA@ -lzstd -lz"))))
(add-after 'patch-Makevars 'chdir
(lambda _ (chdir "src/rust")))
(add-after 'chdir 'patch-rust-dependency
(lambda _
(setenv "RUSTFLAGS" "--print=native-static-libs")
(substitute* "Cargo.toml"
(("extendr-api = \\{ git.* \\}") "extendr-api = \"0.8.1\""))))
(add-after 'package 'chdir-back
(lambda _ (chdir "../..")))
(delete 'install)
(delete 'check))
(modify-phases (@ (guix build r-build-system) %standard-phases)
(delete 'unpack)
(replace 'patch-tests
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
((assoc-ref (@ (guix build r-build-system) %standard-phases)
'patch-tests)
#:skipped-tests
;; These files contain tests that require Internet access.
'("test-compat.R" "test-get.R"
;; HttpStore requires the crul package
("test-zarrs-dispatch.R" "can_use_zarrs_create returns FALSE for HttpStore")
("test-zarrs-store-cache.R" "HttpStore get_store_identifier returns URL")))))
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
((assoc-ref (@ (guix build r-build-system) %standard-phases)
'check)
#:test-target "tests"
#:test-types #false
#:inputs inputs
#:outputs outputs
#:tests? tests?)))))))
(propagated-inputs (list r-jsonlite r-memoise r-qs2 r-r6 r-stringr))
(inputs
(cons* openssl zlib `(,zstd "lib")
(cargo-inputs 'r-pizzarr)))
(native-inputs
(list pkg-config
r-minimal r-pbapply r-testthat r-vcr))
(home-page "https://github.com/keller-mark/pizzarr")
(synopsis "Slice into Zarr arrays in R")
(description
"This package provides an implementation of chunked, compressed,
(let ((commit "5f4705789ba29344dcb97023f290a26a7f7abd0c")
(revision "2"))
(package
(name "r-pizzarr")
(version (git-version "0.1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/keller-mark/pizzarr")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "17pd6bk8kvnrvvyfqvm8q47kzghlfyfjdd9b7cwiazc5xr4vz6f0"))))
(properties `((upstream-name . "pizzarr")))
(build-system r-build-system)
;; Some tests require Internet access.
(arguments (list #:tests? #false))
(propagated-inputs (list r-jsonlite r-memoise r-qs r-r6 r-stringr))
(native-inputs (list r-pbapply r-testthat r-vcr))
(home-page "https://github.com/keller-mark/pizzarr")
(synopsis "Slice into Zarr arrays in R")
(description
"This package provides an implementation of chunked, compressed,
N-dimensional arrays for R, Zarr specification version 2 (2024)
<doi:10.5281/zenodo.11320255>.")
(license license:expat)))
(license license:expat))))
(define-public r-rhtslib12
(let ((commit "ee186daf04876969c7f31c16a0e0fda8e7c16a30")
@@ -4625,11 +4572,8 @@ into separate processes; and more.")
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'python3.12-compatibility
(add-after 'unpack 'python3.11-compatibility
(lambda _
;; This was removed in Python 3.12
(substitute* "Bio/Align/_aligners.c"
(("case PyUnicode_WCHAR_KIND:") ""))
;; Py_TYPE was changed to an inline static function in Python
;; 3.11, so it cannot be used on the left-hand side.
(substitute* "Bio/triemodule.c"
@@ -14046,20 +13990,33 @@ of scRNA-seq data.")
(define-public r-misha
(package
(name "r-misha")
(version "5.6.23")
(version "4.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tanaylab/misha")
(commit (string-append "v" version))))
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1k973j04iq02dy4f7qgi3cmp3rcx5yinyx0m7vyag54rqanird8x"))))
"0bgivx3lzjh3173jsfrhb5kvhjsn53br0n4hmyx7i3dwy2cnnp2p"))
;; Delete bundled executable.
(snippet
'(delete-file "exec/bigWigToWig"))))
(build-system r-build-system)
(propagated-inputs (list r-curl r-digest r-magrittr r-ps r-yaml))
(native-inputs (list r-knitr r-testthat))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'do-not-use-bundled-bigWigToWig
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "R/misha.R"
(("get\\(\".GLIBDIR\"\\), \"/exec/bigWigToWig")
(string-append "\""
(assoc-ref inputs "kentutils")
"/bin/bigWigToWig"))))))))
(inputs
(list kentutils))
(home-page "https://github.com/tanaylab/misha")
(synopsis "Toolkit for analysis of genomic data")
(description "This package is intended to help users to efficiently
@@ -18859,28 +18816,26 @@ activity prediction from transcriptomics data, and its R implementation
(build-system r-build-system)
(arguments
(list
#:skipped-tests
;; These tests attempt to connect to the Internet.
'(("test-liana_utils.R" "Test liana pipe")
("test-liana_tensor.R"
".*Test tensor wrapper.*"
".*Test decompose_tensor.*")
;; XXX: This test returns a data.frame instead of an error.
("test-liana_cytotalk.R" ".*Test Cytotalk Wrap.*"))
#:phases
'(modify-phases %standard-phases
;; This is needed to find ~/.config/OmnipathR/omnipathr.yml
(add-after 'unpack 'set-HOME
(lambda _ (setenv "HOME" "/tmp")))
(add-after 'unpack 'seurat-compatibility
(add-after 'unpack 'disable-bad-tests
(lambda _
;; The `slot` argument of `GetAssayData()` was deprecated in
;; SeuratObject 5.0.0.
(substitute* '("R/cellchat_pipe.R"
"R/sca_pipe.R"
"R/liana_prep.R"
"R/natmi_pipe.R")
(("slot =") "layer =")))))))
;; These tests attempt to connect to the Internet.
(substitute* "tests/testthat/test-liana_utils.R"
((".*Test liana pipe.*" m)
(string-append m "skip('guix')\n")))
(substitute* "tests/testthat/test-liana_tensor.R"
((".*Test tensor wrapper.*" m)
(string-append m "skip('guix')\n"))
((".*Test decompose_tensor.*" m)
(string-append m "skip('guix')\n")))
;; XXX: This test returns a data.frame instead of an error.
(substitute* "tests/testthat/test-liana_cytotalk.R"
((".*Test Cytotalk Wrap.*" m)
(string-append m "skip('guix')\n"))))))))
(propagated-inputs
(list r-basilisk
r-basilisk-utils
@@ -21745,6 +21700,70 @@ want to explore e.g.: the function of a set of differentially expressed
genes.")
(license license:gpl3))))
(define-public r-seurat-utils
(let ((commit "c0374cc9e25ce391ba8013fda0f8c7babbb9201d")
(revision "1"))
(package
(name "r-seurat-utils")
(version (git-version "2.5.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/vertesy/Seurat.utils")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"15l86b43q245gzz7gsr5rhs4sir74lc14d64yqxfqcb0zrb2bzzd"))))
(properties `((upstream-name . "Seurat.utils")))
(build-system r-build-system)
(propagated-inputs (list r-codeandroll2
r-cowplot
r-databaselinke-r
r-dplyr
r-enhancedvolcano
r-foreach
r-ggcorrplot
r-ggexpress
r-ggplot2
r-ggpubr
r-ggrepel
r-hgnchelper
r-htmlwidgets
r-job
r-magrittr
r-markdownhelpers
r-markdownreports
r-matrix
r-matrixstats
r-pheatmap
r-plotly
r-princurve
r-qs
r-r-utils
r-readr
r-readwriter
r-reshape2
r-rstudioapi
r-scales
r-seurat
r-soupx
r-sparsematrixstats
r-stringendo
r-stringr
r-tibble
r-tictoc
r-tidyverse
r-vroom))
(home-page "https://github.com/vertesy/Seurat.utils")
(synopsis "Collection of utility functions for Seurat")
(description
"This is a collection of utility functions for Seurat. These functions
allow the automation and multiplexing of plotting, 3D plotting, visualization
of statistics & QC, interaction with the Seurat object. Some functionalities
require functions from CodeAndRoll and MarkdownReports libraries.")
(license license:gpl3))))
(define-public r-seuratextend
(let ((commit "5dacd7c1e1da3bc0e78ab81d60056f6d7da3d386")
(revision "1"))
@@ -22459,39 +22478,38 @@ frames with arbitrary sets of columns.")
(license license:expat))))
(define-public r-imagearray
(package
(name "r-imagearray")
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ImageArray" version))
(sha256
(base32 "07zq5fcw2dsvm4qaksaj4gy9gj5lxcgq82l497c5kgvl4wba049c"))))
(properties `((upstream-name . "ImageArray")))
(build-system r-build-system)
(arguments
(list
#:skipped-tests
;; RBiomFormats is not installed.
'(("test-array.R" "check indexing \\(BFArray\\)"))))
(propagated-inputs (list r-delayedarray
r-ebimage
r-hdf5array
r-magick
r-rarr
r-rhdf5
r-s4arrays
r-s4vectors
r-zarrarray))
(native-inputs (list r-ggplot2 r-knitr r-testthat))
(home-page "https://github.com/BIMSBbioinfo/ImageArray")
(synopsis "Framework for on-disk and in-memory image arrays")
(description
"@code{ImageArray} provides a framework for on-disk and in-memory image
arrays, specifically for pyramidal images stored in HDF5, Zarr and life
sciences image file formats (OME Bio-Formats).")
(license license:expat)))
(let ((commit "2f90694fa33ed8320a6a2f7e0ad5c8a1796cbfc6")
(revision "1"))
(package
(name "r-imagearray")
(version (git-version "0.99.6" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/BIMSBbioinfo/ImageArray")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1mf68b007dc5wdzdva4vkjgkavgagjk45qv05f7vahbpi24yjj4n"))))
(properties `((upstream-name . "ImageArray")))
(build-system r-build-system)
(propagated-inputs (list r-delayedarray
r-ebimage
r-hdf5array
r-magick
r-rarr
r-rhdf5
r-s4arrays
r-s4vectors))
(native-inputs (list r-knitr r-testthat))
(home-page "https://github.com/BIMSBbioinfo/ImageArray")
(synopsis "Framework for on-disk and in-memory image arrays")
(description
"@code{ImageArray} provides a framework for on-disk and in-memory image
arrays, specifically for pyramidal images stored in either HDF5 files or Zarr
stores.")
(license license:expat))))
(define-public r-velocyto
(let ((commit "d7790346cb99f49ab9c2b23ba70dcf9d2c9fc350")
@@ -22575,7 +22593,7 @@ dependencies of @code{VoltRon} package.")
(define-public r-voltron
(package
(name "r-voltron")
(version "0.2.6")
(version "0.2.5")
(source
(origin
(method git-fetch)
@@ -22584,7 +22602,7 @@ dependencies of @code{VoltRon} package.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "00fl5dmyd9ad4hd0cblgi0415sf6q4q67wh04r7fws828vs5vaj1"))))
(base32 "057n4yipkq3gnlyrb63l2ryi78nlmaas02avargm352g5ra1xl9s"))))
(properties `((upstream-name . "VoltRon")))
(build-system r-build-system)
(arguments
@@ -22648,15 +22666,18 @@ guix_python <- \"~a\";"
r-irlba
r-magick
r-matrix
r-pizzarr
r-rann
r-rcdt
r-rcpp
r-rcppannoy
r-rcpparmadillo
r-reshape2
r-reticulate
r-rhdf5
r-rjson
r-rlang
r-s4arrays
r-s4vectors
r-shiny
r-shinyjs
r-sp
@@ -22709,8 +22730,8 @@ spots, cells and even molecules.")
(license license:expat)))
(define-public r-zarrdataframe
(let ((commit "f5f671521934b2afc3c511f8c09181bc7bb789a4")
(revision "3"))
(let ((commit "84c7db2f6f5f84b4a4308f8eb72bedc131fb68bc")
(revision "2"))
(package
(name "r-zarrdataframe")
(version (git-version "0.0.0" revision commit))
@@ -22722,13 +22743,13 @@ spots, cells and even molecules.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0klp2njn6qsa8n6c01v1z2dfaa93lhbzhwhbyhl23h8gg7d28yc1"))))
(base32 "1idrvdlzbwyixlg830sn19vfdn3n3irmlyr4ncf7dpk72r08g3hw"))))
(properties
'((upstream-name . "ZarrDataFrame")
(updater-extra-native-inputs . ("r-testthat"))))
(build-system r-build-system)
(propagated-inputs (list r-biocgenerics r-delayedarray r-rarr
r-s4vectors r-zarrarray))
r-s4vectors))
(native-inputs (list r-knitr r-testthat))
(home-page "https://github.com/BIMSBbioinfo/ZarrDataFrame")
(synopsis "Bioconductor-friendly Bindings for Zarr")
@@ -22740,35 +22761,39 @@ frames with arbitrary sets of columns.")
(license license:expat))))
(define-public r-zarrarray
(package
(name "r-zarrarray")
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ZarrArray" version))
(sha256
(base32 "1ny91qg257kgb1hz2h4jvb0rna9cwyw7fqyj5axv52r3b98xn040"))))
(properties `((upstream-name . "ZarrArray")))
(build-system r-build-system)
(propagated-inputs (list r-biocgenerics
r-delayedarray
r-iranges
r-rarr
r-s4arrays
r-s4vectors
r-sparsearray))
(native-inputs (list r-knitr r-testthat))
(home-page "https://bioconductor.org/packages/ZarrArray")
(synopsis "Bring Zarr datasets in R as DelayedArray objects")
(description
"The @code{ZarrArray} package leverages the Rarr package to bring Zarr
datasets in R as @code{DelayedArray} objects. The main class in the package
is the @code{ZarrArray} class. A @code{ZarrArray} object is an array-like
object that represents a Zarr dataset in R. @code{ZarrArray} objects are
@code{DelayedArray} derivatives and therefore support all operations (delayed
or block-processed) supported by @code{DelayedArray} objects.")
(license license:artistic2.0)))
(let ((commit "3cc3e6acf986074dfaece2ad23f9b56962054625")
(revision "2"))
(package
(name "r-zarrarray")
(version (git-version "1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/BIMSBbioinfo/ZarrArray")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1qjj92cpxpm3zh05vf60h5gmcn1qady0s38hibb0l57iwdhlhrb3"))))
(properties
'((upstream-name . "ZarrArray")
(updater-extra-native-inputs . ("r-testthat"))))
(build-system r-build-system)
;; The tests seem to be outdated.
(arguments (list #:tests? #false))
(propagated-inputs (list r-biocgenerics
r-delayedarray
r-iranges
r-matrix
r-rarr
r-s4arrays
r-s4vectors
r-sparsearray))
(native-inputs (list r-testthat))
(home-page "https://github.com/BIMSBbioinfo/ZarrArray")
(synopsis "Zarr backend for DelayedArray objects")
(description "Zarr backend for @code{DelayedArray} objects.")
(license license:expat))))
(define-public methyldackel
(package
@@ -24406,77 +24431,79 @@ It also handles cell type-specific differential expression.")
(license license:gpl3))))
(define-public r-spectre
(package
(name "r-spectre")
(version "1.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ImmuneDynamics/Spectre")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"15g9w08x0pz2ia9qfalhcg3z5z2zx2085mfbr8gx9w5yxnw475ld"))))
(properties `((upstream-name . "Spectre")))
(build-system r-build-system)
(propagated-inputs
(list r-biobase
r-biocmanager
r-caret
r-class
r-colorramps
r-data-table
r-dendsort
r-devtools
r-dplyr
r-exactextractr
r-factoextra
r-flowcore
r-flowsom
r-flowviz
r-fnn
r-ggplot2
r-ggpointdensity
r-ggpubr
r-ggraph
r-ggthemes
r-gridextra
r-gridextra
r-gtools
r-hdf5array
r-irlba
r-patchwork
r-pheatmap
r-plyr
r-qs2
r-raster
r-rcolorbrewer
r-rhdf5
r-rstudioapi
r-rsvd
r-rtsne
r-s2
r-scales
r-scattermore
r-sf
r-sp
r-stars
r-stringr
r-tidygraph
r-tidyr
r-tidyr
r-tiff
r-umap
r-uwot))
(home-page "https://github.com/ImmuneDynamics/Spectre")
(synopsis "High-dimensional cytometry and imaging analysis")
(description
"This package provides a computational toolkit in R for the
(let ((commit "ff5314fd5b3f29121e52f948d91e222a19dd4d25")
(revision "1"))
(package
(name "r-spectre")
(version "1.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ImmuneDynamics/Spectre")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0hziqlaq6mnkxi4bwp5xilxy90yh1vz1j1n117d38vmchvclx9yq"))))
(properties `((upstream-name . "Spectre")))
(build-system r-build-system)
(propagated-inputs
(list r-biobase
r-biocmanager
r-caret
r-class
r-colorramps
r-data-table
r-dendsort
r-devtools
r-dplyr
r-exactextractr
r-factoextra
r-flowcore
r-flowsom
r-flowviz
r-fnn
r-ggplot2
r-ggpointdensity
r-ggpubr
r-ggraph
r-ggthemes
r-gridextra
r-gridextra
r-gtools
r-hdf5array
r-irlba
r-patchwork
r-pheatmap
r-plyr
r-qs
r-raster
r-rcolorbrewer
r-rhdf5
r-rstudioapi
r-rsvd
r-rtsne
r-s2
r-scales
r-scattermore
r-sf
r-sp
r-stars
r-stringr
r-tidygraph
r-tidyr
r-tidyr
r-tiff
r-umap
r-uwot))
(home-page "https://github.com/ImmuneDynamics/Spectre")
(synopsis "High-dimensional cytometry and imaging analysis")
(description
"This package provides a computational toolkit in R for the
integration, exploration, and analysis of high-dimensional single-cell
cytometry and imaging data.")
(license license:expat)))
(license license:expat))))
(define-public r-compgenomrdata
(let ((commit "24484cb77631e1123ead6c329b9d62c160e600c6")
+12 -11
View File
@@ -302,7 +302,7 @@ will name the threaded machine type unless THREADS? is provided as #f."
(name "chez-scheme-for-racket")
;; The version should match `(scheme-version #t)`.
;; See s/cmacros.ss c. line 360.
(version "10.4.0-pre-release.1-1") ; expect a chez-nanopass-bootstrap update
(version "10.3.0-pre-release.2") ; expect a chez-nanopass-bootstrap update
(source #f)
(build-system gnu-build-system)
(inputs `(,@(if (nix-system->native-chez-machine-type)
@@ -507,7 +507,7 @@ version of Chez Scheme.")
(name "chez-scheme")
;; The version should match `(scheme-version-number #t)`.
;; See s/cmacros.ss c. line 360.
(version "10.4.0") ; expect a chez-nanopass-bootstrap update
(version "10.2.0") ; expect a chez-nanopass-bootstrap update
(source (origin
(method git-fetch)
(uri (git-reference
@@ -515,7 +515,7 @@ version of Chez Scheme.")
(commit (string-append "v" version))))
(sha256
(base32
"079vlkl27qdvsg1rsynmd828m42n98c2dnldkhsxf2slfsqd9kv5"))
"14iv4kfkyvrkigr1n2prf71n2l3vs0sf0549rvh6y4x2faa2l329"))
(file-name (git-file-name name version))
(patches (search-patches "chez-scheme-bin-sh.patch"))
(snippet #~(begin
@@ -840,9 +840,9 @@ User's Guix}, among other documents.")
(define-public chez-nanopass-bootstrap
(hidden-package
(package
(name "chez-nanopass-bootstrap")
(version "1.9.4")
(properties '((chez-nanopass-release-date . "December 29, 2025")))
(name "chez-nanopass")
(version "1.9.2")
(properties `((chez-nanopass-release-date . "October 18, 2020")))
(source
(origin
(method git-fetch)
@@ -850,7 +850,7 @@ User's Guix}, among other documents.")
(url "https://github.com/nanopass/nanopass-framework-scheme")
(commit (string-append "v" version))))
(sha256
(base32 "1qq0vnbrvcialgjgnblfq3qp1ilqg94h0kg896ksd9v4g7ipj9v0"))
(base32 "16vjsik9rrzbabbhbxbaha51ppi3f9n8rk59pc6zdyffs0vziy4i"))
(file-name (git-file-name "nanopass-framework-scheme" version))
(snippet
#~(begin
@@ -929,9 +929,10 @@ create compilers, making them easier to understand and maintain.")
(define-public chez-nanopass
(package
(inherit chez-nanopass-bootstrap)
(name "chez-nanopass")
(version "1.9.4")
(properties '((chez-nanopass-release-date . "December 29, 2025")))
;; This release has a significant bug fix. Expect the next releases of
;; chez-scheme{,-for-racket} to want this for chez-nanopass-bootstrap.
(version "1.9.3")
(properties '((chez-nanopass-release-date . "August 24, 2025")))
(source
(let ((bootstrap-origin (package-source chez-nanopass-bootstrap)))
(origin
@@ -940,7 +941,7 @@ create compilers, making them easier to understand and maintain.")
(url (git-reference-url (origin-uri bootstrap-origin)))
(commit (string-append "v" version))))
(sha256
(base32 "1qq0vnbrvcialgjgnblfq3qp1ilqg94h0kg896ksd9v4g7ipj9v0"))
(base32 "0757x3a3b4kcd3jk52h4ikqzv7cc1mvphlw592f0r5pz99bkxiin"))
(file-name (git-file-name "nanopass-framework-scheme" version)))))
(native-inputs (list chez-scheme stex))))
+537 -953
View File
File diff suppressed because it is too large Load Diff
+2 -4
View File
@@ -5645,7 +5645,7 @@ with integrated support for finding required rows quickly.")
(define-public apache-arrow
(package
(name "apache-arrow")
(version "24.0.0")
(version "23.0.1")
(source
(origin
(method git-fetch)
@@ -5655,7 +5655,7 @@ with integrated support for finding required rows quickly.")
(file-name (git-file-name name version))
(sha256
(base32
"1j3gs5ffa9gx2y2nggmi2zn5rj0bsnjnxrzfnipx6050jz6n8dx9"))))
"1qn7wgavi3kiz4d6w1naqj5631bg87fnj6gbhaxmpmynm5hi9wm7"))))
(build-system cmake-build-system)
(arguments
(list
@@ -5823,8 +5823,6 @@ __version_tuple__ = version_tuple = (~a)~%" version version-tuple))))))
pkg-config
python-cython
python-pytest
python-pytest-runner
python-scikit-build-core
python-setuptools-scm
python-setuptools))
(outputs '("out"))
+1
View File
@@ -216,6 +216,7 @@ projects.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:embed-files #~(list ".*\\.json")
#:import-path "github.com/moby/policy-helpers"))
(native-inputs
+1 -1
View File
@@ -1314,7 +1314,7 @@ package.")
#:tests? #f)) ;no test suite
(native-inputs (list asciidoc
gettext-minimal
git-minimal/pinned
git-minimal
perl
perl-unicode-linebreak
perl-yaml-tiny
+4 -4
View File
@@ -23831,8 +23831,8 @@ actually changing the buffer's text.")
(define-public emacs-diff-hl
;; No new tags or releases since 2024.
(let ((commit "7d873b2f58908de1ea2f499da9bf993e088953d7")
(revision "1"))
(let ((commit "e79aa49ad3cbbe85379cf6646db3aaacd3b04708")
(revision "0"))
(package
(name "emacs-diff-hl")
(version (git-version "1.10.0" revision commit))
@@ -23844,7 +23844,7 @@ actually changing the buffer's text.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "15a9cjlpjsfcb2hxqbb123389qhiqs06mn01pas2l0jqhc2p86v9"))))
(base32 "0fvxngcbx36vqj72fllfp5iqwihcqd1dfhmqr3m1284191q83na3"))))
(build-system emacs-build-system)
(arguments
(list
@@ -23867,7 +23867,7 @@ actually changing the buffer's text.")
(invoke "git" "init")
(invoke "git" "add" ".")
(invoke "git" "commit" "-m" "Commit all."))))))
(native-inputs (list git-minimal/pinned))
(native-inputs (list git-minimal))
(home-page "https://github.com/dgutov/diff-hl")
(synopsis "Highlight uncommitted changes using VC")
(description
+2 -2
View File
@@ -4287,7 +4287,7 @@ typographical palette.")
(define-public font-mona-sans
(package
(name "font-mona-sans")
(version "2.0.27")
(version "2.0.26")
(source
(origin
(method git-fetch)
@@ -4297,7 +4297,7 @@ typographical palette.")
(file-name (git-file-name name version))
(sha256
(base32
"10xbs857d21zrfx0cpzcsyyk76j921qq68qpz5r2kl4jr3gz541z"))))
"09b6apxq659y4dkkm5swy683q6hviibv1cd48ragm5rd1376hsaz"))))
(build-system font-build-system)
(outputs '("out" "ttf" "woff"))
(home-page "https://github.com/mona-sans")
+46 -48
View File
@@ -640,7 +640,7 @@ library.")
(define-public go-github-com-yuin-goldmark
(package
(name "go-github-com-yuin-goldmark")
(version "1.8.2")
(version "1.7.16")
(source
(origin
(method git-fetch)
@@ -649,7 +649,7 @@ library.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0f7i14jpq3shm7zfdkhzsf8gkb87b7x1flpi5kn8y9z93qfkfiwf"))))
(base32 "1zgphfblr7340klbk97r2yhy19piw1ksfxkg15qxkrqql0r9daw5"))))
(build-system go-build-system)
(arguments
(list
@@ -732,7 +732,7 @@ toolchain. The parts needed in the main Go repository are copied in.")
(define-public go-golang-org-x-crypto
(package
(name "go-golang-org-x-crypto")
(version "0.50.0")
(version "0.48.0")
(source
(origin
(method git-fetch)
@@ -741,7 +741,7 @@ toolchain. The parts needed in the main Go repository are copied in.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1rk47vw7sirdakvl0z1ffgrsd1xm285i3wv6xbm47b8irvailxxf"))
(base32 "0ml7qabakjv3lcsv2pkc0h3092547z30pn8qwdiy7vf7hrssqa6g"))
(modules '((guix build utils)))
(snippet
#~(begin
@@ -996,20 +996,12 @@ compile does not support generics.")
#:skip-build? #t
#:test-flags
#~(list "-skip" (string-join
(append
;; Permission denied to read or write go.mod file.
(list "TestDocs/Modules"
"TestGobind/Modules"
;; build_test.go:100: cannot set -o when
;; building non-main package
"TestAndroidBuild")
;; archNDK() in cmd/gomobile/env.go only maps
;; GOARCH 386 and amd64 (plus arm64 on darwin)
;; and panics otherwise, so TestInit crashes
;; with "unsupported GOARCH" on non-x86 Linux.
(if #$(target-x86?)
'()
(list "TestInit")))
;; Permission denied to read or write go.mod file.
(list "TestDocs/Modules"
"TestGobind/Modules"
;; build_test.go:100: cannot set -o when building
;; non-main package
"TestAndroidBuild")
"|"))
#:import-path "golang.org/x/mobile"
#:phases
@@ -1035,7 +1027,7 @@ compile does not support generics.")
(define-public go-golang-org-x-mod
(package
(name "go-golang-org-x-mod")
(version "0.35.0")
(version "0.33.0")
(source
(origin
(method git-fetch)
@@ -1044,7 +1036,7 @@ compile does not support generics.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hicla74zspl15xdm6a9rkpsv0vx6bpyav6mspfmqfmkx8fl29n6"))))
(base32 "0g1g82lzcrn11b33aw1gs8k3whf7l76kgzxr49126shbyq6dxaws"))))
(build-system go-build-system)
(arguments
(list
@@ -1082,7 +1074,7 @@ loading algorithms.")
(define-public go-golang-org-x-net
(package
(name "go-golang-org-x-net")
(version "0.53.0")
(version "0.50.0")
(source
(origin
(method git-fetch)
@@ -1091,7 +1083,7 @@ loading algorithms.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0rdyfdlaifmi0vz5phn98fhzllk2zsjk9gcdax4ajzwsdhp0mn0v"))))
(base32 "0azrbdpydjdjg63rj51blwjlqaplwbd5yi9dy4fyxd38wm36yyq3"))))
(build-system go-build-system)
(arguments
(list
@@ -1106,14 +1098,7 @@ loading algorithms.")
;; test fails with error: ThreadSanitizer:
;; unsupported VMA range.
#$@(if (target-arm?) '("TestRace") '()))
"|"))
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda* (#:key tests? import-path #:allow-other-keys)
;; See: <https://go.dev/blog/synctest>.
(setenv "GOEXPERIMENT" "synctest")
(setenv "GODEBUG" "asynctimerchan=0"))))))
"|"))))
(propagated-inputs
(list go-golang-org-x-crypto
go-golang-org-x-sys
@@ -1139,7 +1124,7 @@ loading algorithms.")
(define-public go-golang-org-x-sync
(package
(name "go-golang-org-x-sync")
(version "0.20.0")
(version "0.19.0")
(source
(origin
(method git-fetch)
@@ -1148,7 +1133,7 @@ loading algorithms.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0inbjipc9a1ai7r1ar4hqgq1d2js5w2v6cnda3l5msna4y227dy9"))))
(base32 "0ykjzxskvy1jbvyp2svd766jiyv3m0rqg89ifg7flllrqbx5kd25"))))
(build-system go-build-system)
(arguments
(list
@@ -1183,7 +1168,7 @@ cancellation for groups of goroutines working on subtasks of a common task
(define-public go-golang-org-x-sys
(package
(name "go-golang-org-x-sys")
(version "0.43.0")
(version "0.40.0")
(source
(origin
(method git-fetch)
@@ -1192,7 +1177,7 @@ cancellation for groups of goroutines working on subtasks of a common task
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "18by7v7gvbanxkqjdadisgc7hgsn580yy5zj42wgiv642qd2r11g"))))
(base32 "1rygxjhh29hjzr6jni6kxaib1c9d6mp2wvjngfzdpxxmm9rk9r3d"))))
(build-system go-build-system)
(arguments
(list
@@ -1214,6 +1199,17 @@ cancellation for groups of goroutines working on subtasks of a common task
low-level interaction with the operating system.")
(license license:bsd-3)))
(define-public go-golang-org-x-sys-bootstrap
(hidden-package
(package
(inherit go-golang-org-x-sys)
(arguments
(list #:skip-build? #t
#:tests? #f
#:import-path "golang.org/x/sys"))
(native-inputs '())
(propagated-inputs '()))))
;; This is the only one dependency for esbuild, which is the main tool to
;; produce all Node packages, keep it away from other golang.
(define-public go-golang-org-x-sys-for-esbuild
@@ -1237,7 +1233,7 @@ low-level interaction with the operating system.")
(name "go-golang-org-x-telemetry")
;; Beware: the updater gets this wrong. Use the latest commit and its
;; matching date.
(version "0.0.0-20260428171046-76f71b9afea0")
(version "0.0.0-20260209163413-e7419c687ee4")
(source
(origin
(method git-fetch)
@@ -1246,7 +1242,7 @@ low-level interaction with the operating system.")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "13z9sgs9lsaj2shv5hbv7i63pjjcw68r1vw7j5jkkqwcz5kkdwkp"))
(base32 "1wr4b40lwzpac2n9ipz5lmq6p973g5mr2im38dy3816lbg84rp38"))
(modules '((guix build utils)))
(snippet
#~(begin
@@ -1289,10 +1285,10 @@ low-level interaction with the operating system.")
go-golang-org-x-sync
go-golang-org-x-sys))
(home-page "https://go.googlesource.com/telemetry")
(synopsis "Go Telemetry library")
(synopsis "Go Telemetry")
(description
"This package provides the Go Telemetry server code and libraries, used
for hosting @url{https://telemetry.go.dev, telemetry.go.dev} and instrumenting
"This repository holds the Go Telemetry server code and libraries, used
for hosting @url{https://telemetry.go.dev,telemetry.go.dev} and instrumenting
Go toolchain programs with opt-in telemetry.")
(license license:bsd-3)))
@@ -1329,7 +1325,7 @@ telemetry uploads: GOOS, GOARCH, Go version, and per-program counters.")
(define-public go-golang-org-x-term
(package
(name "go-golang-org-x-term")
(version "0.42.0")
(version "0.40.0")
(source
(origin
(method git-fetch)
@@ -1338,7 +1334,7 @@ telemetry uploads: GOOS, GOARCH, Go version, and per-program counters.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ms3xm3m17ba2y7vk1mhyqjgzf15qn00v8hb340xivga0yy86a0l"))))
(base32 "1x6m4cxk8h88gacxjc6vsaj585zwc8dzpgxwgbq6fwg6l1519vxn"))))
(build-system go-build-system)
(arguments
(list
@@ -1365,7 +1361,7 @@ terminals, as commonly found on Unix systems.")
(define-public go-golang-org-x-text
(package
(name "go-golang-org-x-text")
(version "0.36.0")
(version "0.34.0")
(source
(origin
(method git-fetch)
@@ -1374,7 +1370,7 @@ terminals, as commonly found on Unix systems.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hhkamc8450y1jmrhw59v1v6l8icihmjdzbnrqpg947z3dlbk3nd"))))
(base32 "10qhscx7zdack9b5ynjiiyk2pl2c5jfamvwgjfhpnnhxgp6jr8rc"))))
(build-system go-build-system)
(arguments
(list
@@ -1439,7 +1435,7 @@ time.")
(define-public go-golang-org-x-tools
(package
(name "go-golang-org-x-tools")
(version "0.44.0")
(version "0.42.0")
(source
(origin
(method git-fetch)
@@ -1448,14 +1444,16 @@ time.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0inivp0ih1ykl184d4sbshyb1crayj9iayl012ms1b2x0rjg5l0p"))
(base32 "0206hl6v7gy7cxwamjapa1zr2n3clj0vaqwyy6izcw18faga466i"))
(modules '((guix build utils)))
(snippet
'(begin
;; Submodules with their own go.mod files and packaged separately:
;;
;; - golang.org/x/tools/cmd/auth
;; - golang.org/x/tools/gopls
(delete-file-recursively "gopls")))))
(delete-file-recursively "gopls")
(delete-file-recursively "cmd/auth")))))
(build-system go-build-system)
(arguments
(list
@@ -1486,8 +1484,8 @@ time.")
(list
;; The GenericPaths test fails with "invalid memory
;; address or nil pointer dereference".
"TestGenericPaths" "TestIssue70418"
;; The ordering and paths tests fail because they
"TestGenericPaths"
;; The ordering and paths tests fails because they
;; can't find test packages (perhaps because we do not
;; support Go modules).
"TestOrdering" "TestPaths"
+14 -306
View File
@@ -2151,57 +2151,6 @@ testing and improve the efficiency of unit test writing.")
testing of time-sensitive code.")
(license license:expat)))
(define-public go-github-com-josharian-mapfs
(package
(name "go-github-com-josharian-mapfs")
(version "0.0.0-20210615234106-095c008854e6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/josharian/mapfs")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "09i6shqwacx8nm6jfyhc1zvry8fcb3ddd98m96skzybv9lckq7h4"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/josharian/mapfs"))
(home-page "https://github.com/josharian/mapfs")
(synopsis "Fork of Go std's testing/fstest.MapFS")
(description
"This is a fork of the @code{MapFS} component of the Go standard
library's testing/fstest package.")
(license license:bsd-3)))
(define-public go-github-com-josharian-txtarfs
(package
(name "go-github-com-josharian-txtarfs")
(version "0.0.0-20240408113805-5dc76b8fe6bf")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/josharian/txtarfs")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "129rf6hviw46rxcnnkc8jb1k579798rrhnh1k3nn7npi260ia44m"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/josharian/txtarfs"))
(propagated-inputs
(list go-github-com-josharian-mapfs
go-golang-org-x-tools))
(home-page "https://github.com/josharian/txtarfs")
(synopsis "Convert a txtar to an io.FS")
(description
"This package turns a @url{https://pkg.go.dev/golang.org/x/tools/txtar,
txtar} into an @url{https://pkg.go.dev/io/fs, fs.FS}.")
(license license:expat)))
(define-public go-github-com-joshdk-go-junit
(package
(name "go-github-com-joshdk-go-junit")
@@ -2504,20 +2453,24 @@ can be used in test code as a mock of the interface.")
(define-public go-github-com-maxatome-go-testdeep
(package
(name "go-github-com-maxatome-go-testdeep")
(version "1.15.0")
(version "1.14.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/maxatome/go-testdeep")
(commit (string-append "v" version))))
(url "https://github.com/maxatome/go-testdeep")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "14i64h4kd9b2adhvxn7r2jhp0ci6vla7y7n76yg49wm61ddbw9df"))))
(base32 "0r9w79qm6j080gbqhrd5gwjzsnkmrcihy4yniw77g0wkspxxdjww"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/maxatome/go-testdeep"))
#:import-path "github.com/maxatome/go-testdeep"
;; Structure comparison not equal.
#:test-flags #~(list "-skip" "TestFatalTrace")))
(propagated-inputs
(list go-github-com-davecgh-go-spew))
(home-page "https://github.com/maxatome/go-testdeep")
(synopsis "Extended HTTP API testing framework")
(description
@@ -2709,56 +2662,6 @@ error messages, preserving the order of @code{have} (actual result) before
@code{want} (expected result) to minimize confusion.")
(license license:asl2.0)))
(define-public go-github-com-newmo-oss-go-caller
(package
(name "go-github-com-newmo-oss-go-caller")
(version "0.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/newmo-oss/go-caller")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hn0wj2v6yvn83lpilbcb9xpa36fmcbv83rk6fhr2rwckp2dxy8p"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/newmo-oss/go-caller"))
(native-inputs
(list go-github-com-google-go-cmp))
(home-page "https://github.com/newmo-oss/go-caller")
(synopsis "Collect stack traces at runtime")
(description
"This package provides a library for collecting stack traces at runtime.")
(license license:expat)))
(define-public go-github-com-newmo-oss-gotestingmock
(package
(name "go-github-com-newmo-oss-gotestingmock")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/newmo-oss/gotestingmock")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1flgmarj961k4vl6d7i2740snrdfjiv4aigb87v5aznvi8bwa5d3"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/newmo-oss/gotestingmock"))
(propagated-inputs
(list go-github-com-newmo-oss-go-caller))
(home-page "https://github.com/newmo-oss/gotestingmock")
(synopsis "Mocking utilities for Go")
(description
"This package provides mocking utilities for unit tests in Go.")
(license license:expat)))
(define-public go-github-com-onsi-ginkgo
(package
(name "go-github-com-onsi-ginkgo")
@@ -2900,8 +2803,8 @@ testing type to omit repeated @code{t}.")
(license license:expat)))
(define-public go-github-com-petermattis-goid
(let ((commit "df67b199bc81d151c71a864c3eb1ea12bf66c852")
(revision "4"))
(let ((commit "395b08cebbdbaf68f44f53a2d6e9f8d064180a0b")
(revision "3"))
(package
(name "go-github-com-petermattis-goid")
(version (git-version "0.0.0" revision commit))
@@ -2909,11 +2812,11 @@ testing type to omit repeated @code{t}.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/petermattis/goid")
(commit commit)))
(url "https://github.com/petermattis/goid")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0lyr3h8cyk53xbg4asssk53zdfch3ympkk5m753zf1ggf4v3684f"))))
(base32 "0c8fc1v29wjv9r1l2dhkr9bxc7hysahr30bnxwnc854jckxiqi46"))))
(build-system go-build-system)
(arguments
(list
@@ -3364,84 +3267,6 @@ and CLI tool.")
such as readers and writers that fail after N consecutive reads/writes.")
(license license:expat)))
(define-public go-github-com-tenntenn-golden
(package
(name "go-github-com-tenntenn-golden")
(version "0.5.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tenntenn/golden")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "09w3h7c4z930z91dg7bfs9m680pw9zgqyyikw88gisv1z86y3qlz"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/tenntenn/golden"))
(native-inputs
(list go-github-com-google-go-cmp))
(propagated-inputs
(list go-github-com-josharian-txtarfs
go-golang-org-x-tools))
(home-page "https://github.com/tenntenn/golden")
(synopsis "Utilities for golden file tests")
(description "This package provides utilities for golden file tests.")
(license license:expat)))
(define-public go-github-com-tenntenn-modver
(package
(name "go-github-com-tenntenn-modver")
(version "1.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tenntenn/modver")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1p4402lizz5ny0l49yxa65ryhx09wm8g13lx4pw0nw0s4r06rw3g"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/tenntenn/modver"))
(native-inputs
(list go-github-com-google-go-cmp))
(propagated-inputs
(list go-github-com-hashicorp-go-version))
(home-page "https://github.com/tenntenn/modver")
(synopsis "Utility for Go modules")
(description "This package provides utilities for Go modules.")
(license license:expat)))
(define-public go-github-com-tenntenn-text-transform
(package
(name "go-github-com-tenntenn-text-transform")
(version "0.0.0-20250402111347-ba836492e880")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tenntenn/text")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "19f302js8pxyqnl189992zp6pl169b4gpgn6wywpdir77vm56pih"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/tenntenn/text/transform"
#:unpack-path "github.com/tenntenn/text"))
(propagated-inputs
(list go-golang-org-x-text))
(home-page "https://github.com/tenntenn/text")
(synopsis "Text transformation utilities")
(description "This package provides text transformation utilities in Go.")
(license license:expat)))
(define-public go-github-com-tj-assert
(package
(name "go-github-com-tj-assert")
@@ -3724,34 +3549,6 @@ goroutine leaks and understanding goroutine lifecycles.")
based on Go @code{testing} library procedures.")
(license license:cc0)))
(define-public go-gitlab-com-bosi-decorder
(package
(name "go-gitlab-com-bosi-decorder")
(version "0.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/bosi/decorder")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0g9x5f7mhvdzwki57902qgb4ih2gipkg255nf9hjv30flfnl2294"))))
(build-system go-build-system)
(arguments
(list
#:import-path "gitlab.com/bosi/decorder"
#:test-flags #~(list "-vet=off")))
(propagated-inputs
(list go-golang-org-x-tools))
(home-page "https://gitlab.com/bosi/decorder")
(synopsis "Declaration order and number linter for golang")
(description
"This package provides a declaration order linter for Go. In case of
this tool declarations are @code{type}, @code{const}, @code{var} and
@code{func}.")
(license license:expat)))
(define-public go-go-abhg-dev-requiredfield
(package
(name "go-go-abhg-dev-requiredfield")
@@ -3860,60 +3657,6 @@ and restore them afterwards.")
of @url{https://github.com/wadey/gocovmerge}.")
(license license:bsd-2)))
(define-public go-go-simpler-org-assert
(package
(name "go-go-simpler-org-assert")
(version "0.9.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-simpler/assert")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0pg3yhicggby978n8war9n5zzigr95mvnsipnk6zgsjn6gyvjdm5"))))
(build-system go-build-system)
(arguments
(list
#:import-path "go-simpler.org/assert"))
(home-page "https://go-simpler.org/assert")
(synopsis "Assertions for the standard testing package")
(description
"This package implements assertions for the standard @code{testing}
package, and is a minimalistic replacement for the @code{stretchr/testify}
package.")
(license license:mpl2.0)))
(define-public go-go-simpler-org-musttag
(package
(name "go-go-simpler-org-musttag")
(version "0.14.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-simpler/musttag")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "15kvnppc2q8ay1m8lhag0bmdx08kc68lzv78699qkyi6bcw68ajf"))))
(build-system go-build-system)
(arguments
(list
#:import-path "go-simpler.org/musttag"
#:test-flags #~(list "-skip" "TestAnalyzer")))
(native-inputs
(list go-go-simpler-org-assert))
(propagated-inputs
(list go-golang-org-x-tools))
(home-page "https://go-simpler.org/musttag")
(synopsis "Enforce field tags in (un)marshaled structs")
(description
"This package checks that exported fields of a struct passed to a
@code{Marshal}-like function are annotated with the relevant tag.")
(license license:mpl2.0)))
(define-public go-go-simpler-org-sloglint
(package
(name "go-go-simpler-org-sloglint")
@@ -4410,41 +4153,6 @@ thoroughly
"Package randfill is a library for populating go objects with random values.")
(license license:asl2.0)))
(define-public go-znkr-io-diff
(package
(name "go-znkr-io-diff")
(version "1.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/znkr/diff")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1s3slsr9d21zbcks9c7l3vli2pam2waww4bk63dy4qw9qsgaga90"))
(modules '((guix build utils)))
(snippet
#~(begin
;; Submodules with their own go.mod files and packaged separately:
;;
;; - znkr.io/diff/internal/benchmarks
(delete-file-recursively "internal/benchmarks")))))
(build-system go-build-system)
(arguments
(list
#:import-path "znkr.io/diff"))
(native-inputs
(list go-github-com-google-go-cmp))
(propagated-inputs
(list go-golang-org-x-tools))
(home-page "https://znkr.io/diff")
(synopsis "Difference algorithm module for Go")
(description
"Package diff provides functions to efficiently compare two slices
similar to the Unix diff command line tool to compare files.")
(license license:asl2.0)))
;;;
;;; Executables:
;;;
+6 -37
View File
@@ -43,35 +43,6 @@
;;;
;;; Code:
(define-public go-code-forgejo-org-forgejo-go-rpmutils
(package
(name "go-code-forgejo-org-forgejo-go-rpmutils")
(version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://code.forgejo.org/forgejo/go-rpmutils.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1zgqr3il0w7j6964mh1nw5zg9shp1p039a8sj0y946r26labqm9i"))))
(build-system go-build-system)
(arguments
(list
#:import-path "code.forgejo.org/forgejo/go-rpmutils"))
(native-inputs
(list go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-protonmail-go-crypto))
(home-page "https://code.forgejo.org/forgejo/go-rpmutils")
(synopsis "Go RPM Utils")
(description
"go-rpmutils is a Golang library for parsing @url{http://www.rpm.org,
RPM} file archives. It's a slimmed version of
@url{https://github.com/sassoftware/go-rpmutils, go-rpmutils}.")
(license license:asl2.0)))
(define-public go-github-com-a1ex3-zstd-seekable-format-go-pkg
(let ((commit "eb2f95f46725437a64063e005a54e20c95b774c6")
(revision "0"))
@@ -161,24 +132,22 @@ implementation from lzokay project} (MIT licensed). It includes a
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/andybalholm/brotli")
(commit (string-append "v" version))))
(url "https://github.com/andybalholm/brotli")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1zdvcwfzxnkljyh4p7izy0bfxrwidwwmp1p5h1fydyrgbs4xacly"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/andybalholm/brotli"))
(native-inputs
(list go-github-com-xyproto-randomstring))
`(#:import-path "github.com/andybalholm/brotli"))
(home-page "https://github.com/andybalholm/brotli")
(synopsis "Pure Go Brotli encoder and decoder")
(description
"This package is a brotli compressor and decompressor implemented in Go.
It was translated from the reference implementation
(@url{https://github.com/google/brotli}) with the @code{c2go} tool at
@url{https://github.com/andybalholm/c2go}.")
(@url{https://github.com/google/brotli,https://github.com/google/brotli}) with
the @code{c2go} tool at
@url{https://github.com/andybalholm/c2go,https://github.com/andybalholm/c2go}.")
(license license:expat)))
(define-public go-github-com-blakesmith-ar
+44 -67
View File
@@ -211,27 +211,24 @@ crypto/internal/bigmod, the backend of crypto/rsa and crypto/ecdsa.")
(define-public go-filippo-io-edwards25519
(package
(name "go-filippo-io-edwards25519")
(version "1.2.0")
(version "1.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/FiloSottile/edwards25519")
(commit (string-append "v" version))))
(url "https://github.com/FiloSottile/edwards25519")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0iz8sprg66v3dp7rgmpgfdr6h9mdfpnw1s2pyxyjgwbs3zd98q1k"))))
(base32 "1b2c4iv13mfa0dydr8wawpnnrxgwl7mxzhryfrkjxrgwad8gas5k"))))
(build-system go-build-system)
(arguments
(list
;; Tests hang forewer on ARM64.
#:tests? (not (target-aarch64?))
#:import-path "filippo.io/edwards25519"))
'(#:import-path "filippo.io/edwards25519"))
(home-page "https://filippo.io/edwards25519")
(synopsis "Group logic for the twisted Edwards curve")
(description
"This package implements the edwards25519 elliptic curve in Go, exposing
the necessary APIs to build a wide array of higher-level primitives.")
(description "This package implements the edwards25519 elliptic curve in
Go, exposing the necessary APIs to build a wide array of higher-level
primitives.")
(license license:bsd-3)))
(define-public go-filippo-io-hpke
@@ -765,7 +762,7 @@ The package include Go source library and @code{redoctober} command.")
(define-public go-github-com-cloudwego-base64x
(package
(name "go-github-com-cloudwego-base64x")
(version "0.1.7")
(version "0.1.4")
(source
(origin
(method git-fetch)
@@ -774,21 +771,11 @@ The package include Go source library and @code{redoctober} command.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1f394m92xspc03sfwijbbn86ywm4q31aw86hd4d87ckrnbxp3mrc"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "bench")))))
(base32 "1lgs28mj5w350vp6pazz2265hx2kab3kbjw7vnk0w1skslxbj8kx"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/cloudwego/base64x"
;; 'base64x.go' references 'b64encode' and 'b64decode',
;; which are defined only in 'native_amd64.go' (restricted
;; to amd64 by its filename), so compilation fails on
;; non-x86-64.
#:skip-build? (not (target-x86-64?))
#:tests? (and (not (%current-target-system))
(target-x86-64?))))
#:import-path "github.com/cloudwego/base64x"))
(native-inputs
(list go-github-com-davecgh-go-spew
go-github-com-stretchr-testify))
@@ -1330,27 +1317,26 @@ crypto package.")
(define-public go-github-com-dvsekhvalnov-jose2go
(package
(name "go-github-com-dvsekhvalnov-jose2go")
(version "1.8.0")
(version "1.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dvsekhvalnov/jose2go")
(commit (string-append "v" version))))
(url "https://github.com/dvsekhvalnov/jose2go")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1i43sg8anga22vv2gd40y8nmns10xzmsb3nlvb1p7ikal7h6d9fh"))))
(base32 "1pzfmv2dxb3m455bi1ks4q3i0dcw1sazxk8k96wrgpkwgglyxj3n"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/dvsekhvalnov/jose2go"))
(native-inputs
(list go-gopkg-in-check-v1))
(arguments
'(#:import-path "github.com/dvsekhvalnov/jose2go"))
(home-page "https://github.com/dvsekhvalnov/jose2go")
(synopsis "Go implementation of Javascript Object Signing and Encryption spec")
(description
"This package provides a Go library for generating, decoding,and
encrypting JSON Web Tokens (JWT). It relies only on the standard library.")
(description "This package provides a Go library for generating, decoding,
and encrypting JSON Web Tokens (JWT). It relies only on the standard
library.")
(license license:expat)))
(define-public go-github-com-elithrar-simple-scrypt
@@ -1651,7 +1637,7 @@ RSA, RSA-PSS, and ECDSA, though hooks are present for adding your own.")
(package
(inherit go-github-com-golang-jwt-jwt-v4)
(name "go-github-com-golang-jwt-jwt-v5")
(version "5.3.1")
(version "5.2.1")
(source
(origin
(method git-fetch)
@@ -1660,7 +1646,7 @@ RSA, RSA-PSS, and ECDSA, though hooks are present for adding your own.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1h2r420031i405p1mn9z0g959fxx7lk9lgjx47vn4qdpgz62rc47"))))
(base32 "13l2p4g9f7bpz0nf2sc4r5ms06ps7bs7z1vpzzv943q094pjs0yw"))))
(arguments
(list
#:import-path "github.com/golang-jwt/jwt/v5"))))
@@ -1668,35 +1654,28 @@ RSA, RSA-PSS, and ECDSA, though hooks are present for adding your own.")
(define-public go-github-com-google-go-tpm
(package
(name "go-github-com-google-go-tpm")
(version "0.9.8")
(version "0.9.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/go-tpm")
(commit (string-append "v" version))))
(url "https://github.com/google/go-tpm")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "17210acrj3kd9k9l6grlgqzq1063981mscwwws3mjdzlm3r4bn9g"))))
(base32 "1sp1mbr6vz36zy9w36iksirbsj5p2jslsl8zs1cdj8s4ig4lkd9d"))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "github.com/google/go-tpm"
;; github.com/google/go-tpm-tools needs to be boostrapped.
#:test-subdirs
#~(list "legacy/tpm2"
"legacy/tpm2/credactivation"
"tpm"
"tpm2/transport/linuxtpm"
"tpm2/transport/linuxudstpm"
"tpm2/transport/tcp"
"tpmutil")))
(native-inputs
(list go-github-com-google-go-cmp))
(propagated-inputs
(list ;; go-github-com-google-go-tpm-tools
go-golang-org-x-sys))
#:phases
#~(modify-phases %standard-phases
;; XXX: Break cycle:
;; github.com/google/go-tpm/tpm2/transport/simulator/simulator.go ->
;; github.com/google/go-tpm-tools -> github.com/google/go-tpm.
;; Consider to add required inputs on dependent package.
(delete 'build)
(delete 'check))))
(home-page "https://github.com/google/go-tpm")
(synopsis "Go-TPM Legacy TPM 2.0 library")
(description
@@ -2299,22 +2278,20 @@ package in Rust.")
(define-public go-github-com-minio-highwayhash
(package
(name "go-github-com-minio-highwayhash")
(version "1.0.4")
(version "1.0.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/minio/highwayhash")
(commit (string-append "v" version))))
(url "https://github.com/minio/highwayhash")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ypa82c75ksgl7apmkyng6jl1j8y27q6mhgaa3hslqkbz2nn4vhr"))))
(base32 "14g2x266h8sxs0yynmcl2r2mnhx55rfzgykw4hygm7i1vpfrikg4"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/minio/highwayhash"))
(propagated-inputs
(list go-golang-org-x-sys))
'(#:import-path "github.com/minio/highwayhash"))
(propagated-inputs (list go-golang-org-x-sys))
(home-page "https://github.com/minio/highwayhash")
(synopsis "HighwayHash library for Go")
(description
@@ -2490,7 +2467,7 @@ times faster decoding.")
(define-public go-github-com-nats-io-jwt-v2
(package
(name "go-github-com-nats-io-jwt-v2")
(version "2.8.1")
(version "2.8.0")
(source
(origin
(method git-fetch)
@@ -2499,7 +2476,7 @@ times faster decoding.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1258y5p8nyf4p285j2rq8v54l52z6ahklx9fk93fa1mf20nm1v2y"))))
(base32 "16fxmml1cw2y3cr87ry61k2q8421hab77cx6gpqz1qfy6sdh0vvz"))))
(build-system go-build-system)
(arguments
(list
@@ -2518,7 +2495,7 @@ JWT tokens. Nkeys use Ed25519 to provide authentication of JWT claims.")
(define-public go-github-com-nats-io-nkeys
(package
(name "go-github-com-nats-io-nkeys")
(version "0.4.15")
(version "0.4.11")
(source
(origin
(method git-fetch)
@@ -2527,7 +2504,7 @@ JWT tokens. Nkeys use Ed25519 to provide authentication of JWT claims.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0qhi2ai5g2vy8mwrdlcsrpbc2giq4b4xw58vbnm4jw6ypmy4ymc6"))))
(base32 "0wrsrccc4sxzlrlngkw644p4n074vd54mkad8vzi9ylnw97hhabm"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/nats-io/nkeys"))
-25
View File
@@ -41,31 +41,6 @@
;;; Libraries:
;;;
(define-public go-github-com-aio-arch-graphlib
(package
(name "go-github-com-aio-arch-graphlib")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aio-arch/graphlib")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1a69h1wlrv324wb0amagn6qyjb6cny0qhg82ivvkv0ilvvn17b6m"))))
(build-system go-build-system)
(arguments
(list
#:tests? (not (target-aarch64?))
#:import-path "github.com/aio-arch/graphlib"))
(home-page "https://github.com/aio-arch/graphlib")
(synopsis "Topological sort lib for Sorting and pruning of DAG graphs")
(description
"This package provides a Topological sort lib. Sorting and pruning of
DAG graphs.")
(license license:expat)))
(define-public go-github-com-altree-bigfloat
(package
(name "go-github-com-altree-bigfloat")
+27 -117
View File
@@ -33,7 +33,6 @@
#:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-maths)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages haskell-apps)
@@ -51,77 +50,6 @@
;;; Libraries:
;;;
(define-public go-code-forgejo-org-f3-gof3-v3
(package
(name "go-code-forgejo-org-f3-gof3-v3")
(version "3.11.39")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://code.forgejo.org/f3/gof3.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1gisxivmsy1r6kn4pcn96ry03mmh6y6hl26yi4zkihlj9m48brsb"))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "code.forgejo.org/f3/gof3/v3"
#:unpack-path "code.forgejo.org/f3/gof3/v3"
#:build-flags
#~(list "-tags" "'netgo osusergo'"
(string-append "-ldflags="
"-X code.forgejo.org/f3/gof3/v3/cmd.Version="
#$version))
#:embed-files
;; For go-github-com-urfave-cli-v3:
#~(list "bash_autocomplete"
"powershell_autocomplete.ps1"
"zsh_autocomplete"
"prelude.graphql"
;; For go-github-com-santhosh-tekuri-jsonschema-v6:
"applicator"
"content"
"core"
"format"
"format-annotation"
"format-assertion"
"meta-data"
"schema"
"unevaluated"
"validation")
#:test-flags
#~(list "-vet=off"
"-skip" (string-join
;; Depends on internal helper command "internal/hoverfly".
(list "TestInternal_Hoverfly"
;; Test tries to resolve DNS on 4.4.4.4 to clone
;; local directory.
"TestUtil_Exec_CommandTimeout")
"|"))))
(native-inputs
(list git-minimal
go-github-com-google-go-cmp
go-github-com-stretchr-testify
go-github-com-urfave-cli-v3))
(propagated-inputs
(list go-github-com-42wim-httpsig
go-github-com-aio-arch-graphlib
;; go-github-com-davidmz-go-pageant ;Windows only
go-github-com-hashicorp-go-version
go-github-com-santhosh-tekuri-jsonschema-v6
go-gitlab-com-gitlab-org-api-client-go-0.116
go-golang-org-x-crypto))
(home-page "https://code.forgejo.org/f3/gof3")
(synopsis "Friendly Forge Format (F3)")
(description
"As a command or as a library, @code{GoF3} provides a single operation:
mirroring. The origin and destination are designated by the URL of a forge
and a path to the resource.")
(license license:expat)))
(define-public go-code-gitea-io-actions-proto-go-ping
(package
(name "go-code-gitea-io-actions-proto-go-ping")
@@ -339,28 +267,33 @@ using the Git pkt-line format used in various Git operations.")
(license license:asl2.0)))
(define-public go-github-com-go-git-go-git-v6
(package
(inherit go-github-com-go-git-go-git-v5)
(name "go-github-com-go-git-go-git-v6")
(version "6.0.0-alpha.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-git/go-git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1whmxb0035c7qxnr3lkypcdrdlcg3mc49d20c1kk1q4zyx2v4zgl"))))
(arguments
(substitute-keyword-arguments arguments
((#:import-path _) "github.com/go-git/go-git/v6")))
(propagated-inputs
(modify-inputs (package-propagated-inputs go-github-com-go-git-go-git-v5)
(replace "go-github-com-go-git-go-billy-v5"
go-github-com-go-git-go-billy-v6)
(replace "go-github-com-go-git-gcfg"
go-github-com-go-git-gcfg-v2)))))
;; v6.0.0 is not a release tag as of 14.11.2025
(let ((commit "47b1ed2930c96d34c09a3e31abf9673fe361ec63")
(revision "0"))
(package
(inherit go-github-com-go-git-go-git-v5)
(name "go-github-com-go-git-go-git-v6")
(version (git-version "6.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-git/go-git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1vzj9vs0wqsjpwsi7mvkfs7n8gnk3qg5vhl040c5a5k8h7rlhdz4"))))
(arguments
(substitute-keyword-arguments
(package-arguments go-github-com-go-git-go-git-v5)
((#:import-path _) "github.com/go-git/go-git/v6")))
(propagated-inputs
(modify-inputs (package-propagated-inputs
go-github-com-go-git-go-git-v5)
(replace "go-github-com-go-git-go-billy-v5"
go-github-com-go-git-go-billy-v6)
(replace "go-github-com-go-git-gcfg"
go-github-com-go-git-gcfg-v2))))))
(define-public go-github-com-cli-go-gh-v2
(package
@@ -734,29 +667,6 @@ interact with GitLab in a simple and uniform way.")
;;; Executables:
;;;
(define-public f3-cli
(package/inherit go-code-forgejo-org-f3-gof3-v3
(name "f3-cli")
(arguments
(substitute-keyword-arguments arguments
((#:import-path _) "code.forgejo.org/f3/gof3/v3/main")
((#:install-source? #t #t) #f)
((#:skip-build? #t #t) #f)
((#:tests? #t #t) #f)
((#:phases phases '%standard-phases)
#~(modify-phases #$phases
(add-after 'install 'rename-binary
(lambda _
(with-directory-excursion #$output
(rename-file "bin/main"
"bin/f3-cli"))))))))
(native-inputs
(append
(package-native-inputs go-code-forgejo-org-f3-gof3-v3)
(package-propagated-inputs go-code-forgejo-org-f3-gof3-v3)))
(inputs '())
(propagated-inputs '())))
(define-public git-sync
(package
(name "git-sync")
+108 -506
View File
@@ -1084,128 +1084,6 @@ other applications can be provided using this API. This library is used to
interact with the Trace API directly.")
(license license:asl2.0)))
(define-public go-code-forgejo-org-forgejo-actions-proto
(package
(name "go-code-forgejo-org-forgejo-actions-proto")
(version "0.7.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://code.forgejo.org/forgejo/actions-proto.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ff0yqb7qgn5gy2jz3kw1hirc88jignhr1x2ycbf91xf9ag1bvys"))))
(build-system go-build-system)
(arguments
(list
;; XXX: Projects builds Go code from protobuf with buf command, not
;; packaged yet in Guix.
#:skip-build? #t
#:import-path "code.forgejo.org/forgejo/actions-proto"))
(propagated-inputs
(list go-connectrpc-com-connect
go-google-golang-org-protobuf))
(home-page "https://code.forgejo.org/forgejo/actions-proto")
(synopsis "Protocol Buffer schema and go package for Forgejo Actions")
(description
"This package provides a protocol Buffer schema and go package for
Forgejo Actions.")
(license license:expat)))
(define-public go-code-forgejo-org-forgejo-contrib-go-libravatar
(package
(name "go-code-forgejo-org-forgejo-contrib-go-libravatar")
(version "0.0.0-20260301104140-add494e31dab")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://code.forgejo.org/forgejo-contrib/go-libravatar")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "18ch92a9qrwvi1pxak6bvjn5vjwmwhdidhv40z56kpzagybywwdr"))))
(build-system go-build-system)
(arguments
(list
#:tests? #f ;they try to fetch avatars from Internet
#:import-path "code.forgejo.org/forgejo-contrib/go-libravatar"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-import-path
;; Build fails if that commit is kept.
(lambda* (#:key tests? import-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" import-path)
(substitute* "libravatar.go"
(("// import \"strk.kbt.io/projects/go/libravatar\"")
""))))))))
(home-page "https://code.forgejo.org/forgejo-contrib/go-libravatar")
(synopsis "Golang library for serving federated avatars")
(description
"This package provides a simple Go library for serving
@url{https://www.libravatar.org, federated avatars}.")
(license license:expat)))
(define-public go-code-forgejo-org-forgejo-reply
(package
(name "go-code-forgejo-org-forgejo-reply")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://code.forgejo.org/forgejo/reply.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0x13217haxf8hyzxh2262ys70vh1yswkn96lsazh8glkvy4x8kb7"))))
(build-system go-build-system)
(arguments
(list
#:import-path "code.forgejo.org/forgejo/reply"))
(propagated-inputs
(list go-github-com-dlclark-regexp2))
(home-page "https://code.forgejo.org/forgejo/reply")
(synopsis "Go library to trim replies from plain text email")
(description
"Replay implements a simple function to trim replies from plain text
email, it was inspired by Ruby's project
@url{https://github.com/discourse/email_reply_trimmer, email_reply_trimmer}.
It's a maintained fork of @url{https://github.com/dimiro1/reply}.")
(license license:expat)))
(define-public go-code-forgejo-org-go-chi-binding
(package
(name "go-code-forgejo-org-go-chi-binding")
(version "1.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://code.forgejo.org/go-chi/binding")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0hwpiim3ry3g39vw0v1nvaplk7ps1fvvcs7rd2827lc81j8bdnsy"))))
(build-system go-build-system)
(arguments
(list
#:import-path "code.forgejo.org/go-chi/binding"))
(native-inputs
(list go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-go-chi-chi-v5))
(home-page "https://code.forgejo.org/go-chi/binding")
(synopsis "Request data binding and validation for @code{net/http}")
(description
"Package binding is a middleware that provides request data binding and
validation for @code{net/http}. It's a fork of
@url{https://gitea.com/go-chi/binding, gitea/binding} which is a fork of
@url{https://github.com/go-macaron/macaron, Macaron}.")
(license license:asl2.0)))
(define-public go-code-gitea-io-sdk-gitea
(package
(name "go-code-gitea-io-sdk-gitea")
@@ -1951,7 +1829,7 @@ streaming, tool calling, and integration with Amazon Bedrock.")
(define-public go-github-com-antithesishq-antithesis-sdk-go
(package
(name "go-github-com-antithesishq-antithesis-sdk-go")
(version "0.7.0")
(version "0.5.0")
(source
(origin
(method git-fetch)
@@ -1960,26 +1838,17 @@ streaming, tool calling, and integration with Amazon Bedrock.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "13b6hsi5djmragxk7y99988icd5hqjd1c8s4p5m25v643r3wd6l8"))))
(base32 "0ac3p3y9905ryj4j3mfvspbdcj9lkap85l2fa8va3mw2svg0wv8d"))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "github.com/antithesishq/antithesis-sdk-go"
#:test-flags
#~(list "-skip" (string-join
;; Tests expect GO111MODULE=on
(list "TestAliasedImport"
"TestCatalogStability"
"TestE2E"
"TestMultiMain"
"TestSingleMain")
"|"))))
(native-inputs
(list go-github-com-go-quicktest-qt))
#~(list "-vet=off") ;Go@1.24 forces vet, but tests are not ready yet.
#:import-path "github.com/antithesishq/antithesis-sdk-go"))
(propagated-inputs
(list go-golang-org-x-mod
go-golang-org-x-tools))
(list go-golang-org-x-tools
go-golang-org-x-mod))
(home-page "https://github.com/antithesishq/antithesis-sdk-go")
(synopsis "Antithesis SDK for Golang")
(description
@@ -3889,49 +3758,54 @@ capable of querying the current time from a remote NTP server as specified in
(define-public go-github-com-bep-golibsass
(package
(name "go-github-com-bep-golibsass")
(version "1.2.0")
(version "0.7.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bep/golibsass")
(commit (string-append "v" version))))
(url "https://github.com/bep/golibsass")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03v6x9775v6gcw3zr4cr2fvd234sagbj6nb0i3pyb44b1jwa0miw"))
(base32 "0xk3m2ynbydzx87dz573ihwc4ryq0r545vz937szz175ivgfrhh3"))
(modules '((guix build utils)))
(snippet
#~(begin
(delete-file-recursively "libsass_src")))))
'(begin
(delete-file-recursively "libsass_src")
#t))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "github.com/bep/golibsass"
;; The dev build tag modifies the build to link to system libsass
;; instead of including the bundled one (which we remove.)
;; https://github.com/bep/golibsass/blob/v1.2.0/internal/libsass/a__cgo_dev.go
#:build-flags #~(list "-tags" "dev")
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'generate-bindings
;; Generate bindings for system libsass, replacing the
;; pre-generated bindings.
(lambda* (#:key import-path #:allow-other-keys)
(mkdir-p (string-append "src/" import-path "/internal/libsass"))
(let ((libsass-src
(string-append #$(package-source
(this-package-input "libsass")) "/src/")))
(substitute* (string-append "src/" import-path "/gen/main.go")
(("filepath.Join\\(rootDir, \"libsass_src\", \"src\"\\)")
(string-append "\"" libsass-src "\""))
(("../../libsass_src/src/")
libsass-src)))
(invoke "go" "generate" (string-append import-path "/gen")))))))
(native-inputs
(list go-github-com-frankban-quicktest))
'(#:import-path "github.com/bep/golibsass/libsass"
#:unpack-path "github.com/bep/golibsass"
;; The dev build tag modifies the build to link to system libsass
;; instead of including the bundled one (which we remove.)
;; https://github.com/bep/golibsass/blob/v0.7.0/internal/libsass/a__cgo_dev.go
#:build-flags '("-tags" "dev")
#:phases
(modify-phases %standard-phases
(add-before 'build 'generate-bindings
;; Generate bindings for system libsass, replacing the
;; pre-generated bindings.
(lambda* (#:key inputs unpack-path #:allow-other-keys)
(mkdir-p (string-append "src/" unpack-path "/internal/libsass"))
(let ((libsass-src (string-append (assoc-ref inputs "libsass-src") "/src")))
(substitute* (string-append "src/" unpack-path "/gen/main.go")
(("filepath.Join\\(rootDir, \"libsass_src\", \"src\"\\)")
(string-append "\"" libsass-src "\""))
(("../../libsass_src/src/")
libsass-src)))
(invoke "go" "generate" (string-append unpack-path "/gen"))
#t))
(replace 'check
(lambda* (#:key tests? import-path #:allow-other-keys)
(if tests?
(invoke "go" "test" import-path "-tags" "dev"))
#t)))))
(propagated-inputs
(list libsass))
(native-inputs
`(("go-github-com-frankban-quicktest" ,go-github-com-frankban-quicktest)
("libsass-src" ,(package-source libsass))))
(home-page "https://github.com/bep/golibsass")
(synopsis "Easy to use Go bindings for LibSass")
(description
@@ -4467,34 +4341,6 @@ used with @code{http.Client} and @code{http.Transport} to alter host
lookups.")
(license license:expat)))
(define-public go-github-com-chi-middleware-proxy
(package
(name "go-github-com-chi-middleware-proxy")
(version "1.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/chi-middleware/proxy")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0pslb4x8jhblgg7sfahrsiv7r4ay5aizgrqkrpfpwzsnhw88fl6h"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/chi-middleware/proxy"))
(native-inputs
(list go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-go-chi-chi-v5))
(home-page "https://github.com/chi-middleware/proxy")
(synopsis "Proxy forwarded headers middleware")
(description
"This package is forwarded headers middleware to use if application is
run behind reverse proxy.")
(license license:expat)))
(define-public go-github-com-chris-ramon-douceur
(package
(name "go-github-com-chris-ramon-douceur")
@@ -5698,7 +5544,7 @@ Features:
(define-public go-github-com-danielgtaylor-huma-v2
(package
(name "go-github-com-danielgtaylor-huma-v2")
(version "2.38.0")
(version "2.34.1")
(source
(origin
(method git-fetch)
@@ -5707,20 +5553,14 @@ Features:
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "18q6r7dg21fbmgryr6yc79mva0vn3jrbb8fvhh92fh5ibib55lmq"))))
(base32 "1rwmyxihrdznfn6iqxrb4lmlfijblapnpxavmcgavylixwigyrdk"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/danielgtaylor/huma/v2"
#:test-flags
;; Tests require local network setup.
#~(list "-skip" (string-join
(list "ExampleResolver"
"TestAdapters/go"
"TestBodyFallbackContentType"
"TestFeatures"
"TestWriteResponseTransformErrorStatus")
"|"))
#~(list "-skip" "TestFeatures|TestAdapters/go|ExampleResolver")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'remove-examples
@@ -5728,9 +5568,7 @@ Features:
(with-directory-excursion (string-append "src/" import-path)
(delete-file-recursively "examples")))))))
(native-inputs
(list go-github-com-stretchr-testify
go-github-com-spf13-cobra
go-github-com-spf13-pflag))
(list go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-danielgtaylor-shorthand-v2
go-github-com-evanphx-json-patch-v5
@@ -5738,11 +5576,12 @@ Features:
go-github-com-gin-gonic-gin
go-github-com-go-chi-chi-v5
go-github-com-gofiber-fiber-v2
go-github-com-gofiber-fiber-v3
go-github-com-google-uuid
go-github-com-gorilla-mux
go-github-com-julienschmidt-httprouter
go-github-com-labstack-echo-v4
go-github-com-spf13-cobra
go-github-com-spf13-pflag
go-github-com-uptrace-bunrouter))
(home-page "https://github.com/danielgtaylor/huma")
(synopsis "REST/HTTP API Framework for Golang")
@@ -5987,95 +5826,6 @@ data one-way over a HTTP connection using the Server-Sent Events API
http://dev.w3.org/html5/eventsource/.")
(license license:asl2.0)))
(define-public go-github-com-dop251-goja
(package
(name "go-github-com-dop251-goja")
(version "0.0.0-20260311135729-065cd970411c")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dop251/goja")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "0cnyxvnymmd5vjzwnznzdp04hqphmzsf7k1rk0cijv783dkv2gk2"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/dop251/goja"
#:test-flags #~(list "-vet=off")))
(native-inputs
(list go-github-com-dop251-goja-nodejs-bootstrap))
(propagated-inputs
(list go-github-com-dlclark-regexp2
go-github-com-go-sourcemap-sourcemap
go-github-com-google-pprof
go-github-com-masterminds-semver-v3
go-golang-org-x-text
go-gopkg-in-yaml-v2))
(home-page "https://github.com/dop251/goja")
(synopsis "ECMAScript/JavaScript engine in pure Go")
(description
"Goja is an implementation of ECMAScript 5.1 in pure Go with emphasis on
standard compliance and performance, it was largely inspired by
@url{https://github.com/robertkrimen/otto, otto}.
Features:
@itemize
@item Full ECMAScript 5.1 support (including regex and strict mode).
@item Passes nearly all tc39 tests for the features implemented so far.
@item Capable of running Babel, TypeScript compiler and pretty much anything
written in ES5.
@item Sourcemaps.
@end itemize")
(license license:expat)))
(define-public go-github-com-dop251-goja-nodejs
(package
(name "go-github-com-dop251-goja-nodejs")
(version "0.0.0-20260212111938-1f56ff5bcf14")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dop251/goja_nodejs")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "0q83hhv05vk66brpplai4jxpc9nj0hnc55jjhlp6sycn77qlq191"))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "github.com/dop251/goja_nodejs"))
(propagated-inputs
(list go-github-com-dop251-base64dec
go-github-com-dop251-goja
go-go-uber-org-goleak
go-golang-org-x-net
go-golang-org-x-text))
(home-page "https://github.com/dop251/goja_nodejs")
(synopsis "Nodejs compatibility library for Goja")
(description
"This is a collection of @url{https://github.com/dop251/goja, Goja}
modules that provide Node.js compatibility.")
(license license:expat)))
(define-public go-github-com-dop251-goja-nodejs-bootstrap
(hidden-package
(package/inherit go-github-com-dop251-goja-nodejs
(name "go-github-com-dop251-goja-nodejs-bootstrap")
(arguments
(substitute-keyword-arguments arguments
((#:tests? _ #t) #f)))
(propagated-inputs
(list go-github-com-dop251-base64dec
go-go-uber-org-goleak
go-golang-org-x-net
go-golang-org-x-text)))))
(define-public go-github-com-dpotapov-go-spnego
(package
(name "go-github-com-dpotapov-go-spnego")
@@ -6938,17 +6688,7 @@ building with WebAssembly.")
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/fasthttp/router"
#:test-flags
;; router_test.go:107: return error error when reading request headers:
;; missing required Host header in request. Buffer size=22, contents:
;; "POST /foo HTTP/1.1\r\n\r\n"
#~(list "-skip" (string-join
(list "TestGroup"
"TestRouterServeFiles"
"TestRouterServeFS"
"TestRouterServeFilesCustom")
"|"))))
#:import-path "github.com/fasthttp/router"))
(propagated-inputs
(list go-github-com-savsgio-gotils
go-github-com-valyala-bytebufferpool
@@ -7324,16 +7064,16 @@ of HTML5[1] by the W3C}.")
(define-public go-github-com-gin-gonic-gin
(package
(name "go-github-com-gin-gonic-gin")
(version "1.12.0")
(version "1.10.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gin-gonic/gin")
(commit (string-append "v" version))))
(url "https://github.com/gin-gonic/gin")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "040pqmjsx2p4sc5izia8f1akhcp1z7yvi6wxg641cnnnvz9qfy9m"))))
(base32 "01xjvw2d46b77jnszgbwqbdzh9jx7y3h5ik3q30y9dn9gaq5mhks"))))
(build-system go-build-system)
(arguments
(list
@@ -7345,16 +7085,13 @@ of HTML5[1] by the W3C}.")
go-github-com-gin-contrib-sse
go-github-com-go-playground-validator-v10
go-github-com-goccy-go-json
go-github-com-goccy-go-yaml
go-github-com-json-iterator-go
go-github-com-mattn-go-isatty
go-github-com-modern-go-reflect2
go-github-com-pelletier-go-toml-v2
go-github-com-quic-go-quic-go
go-github-com-ugorji-go-codec
go-go-mongodb-org-mongo-driver-v2
go-golang-org-x-net
go-google-golang-org-protobuf))
go-google-golang-org-protobuf
go-gopkg-in-yaml-v3))
(home-page "https://github.com/gin-gonic/gin")
(synopsis "HTTP web framework")
(description
@@ -7562,6 +7299,7 @@ Encryption, JSON Web Signature, and JSON Web Token standards.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:test-flags
#~(list "-skip" "TestSynctestMarshal")
#:import-path "github.com/go-json-experiment/json"))
@@ -8399,16 +8137,16 @@ protocol as specified in @url{https://rfc-editor.org/rfc/rfc6455.html, RFC
(define-public go-github-com-gofiber-fiber-v2
(package
(name "go-github-com-gofiber-fiber-v2")
(version "2.52.13")
(version "2.52.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gofiber/fiber")
(commit (string-append "v" version))))
(url "https://github.com/gofiber/fiber")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1gf4n1ilkh2fdnwmdgrkchma1lzc3czwxvcw0j26kabsxywach1q"))))
(base32 "12gr7a38dd02p7b9fimrk16ybxfp93krh7wah0jzc0v6syjmzfi0"))))
(build-system go-build-system)
(arguments
(list
@@ -8416,39 +8154,11 @@ protocol as specified in @url{https://rfc-editor.org/rfc/rfc6455.html, RFC
#:test-flags
#~(list "-skip"
(string-join
;; XXX: Check if it's critical: error when reading
;; request headers: missing required Host header in
;; request. Buffer size=46, contents: "HEAD /template
;; HTTP/1.1\r\nContent-Length: 0\r\n\r\n"
;; (*fmt.wrapError)
(list "TestAuthSources"
"TestMultipleKeyAuth"
"Test_CSRF_DeleteToken"
"Test_Client_Invalid_URL"
"Test_Ctx_Immutable_AfterHandler"
"Test_Ctx_Next"
"Test_Ctx_Next_Error"
"Test_Ctx_RestartRouting"
"Test_Ctx_RestartRoutingWithChangedPath"
"Test_Ctx_RestartRoutingWithChangedPathAndCatchAll"
"Test_Ctx_SendFile"
"Test_DefaultConfig"
"Test_FileSystem_Head"
"Test_FileSystem_UsingParam"
"Test_FileSystem_UsingParam_NonFile"
"Test_Next"
"Test_NoRules"
"Test_Proxy_DoTimeout_Timeout"
"Test_Redirect"
"Test_RegexRules"
"Test_Rewrite")
"|"))
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'go-generate
(lambda* (#:key import-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" import-path)
(invoke "go" "generate" "-v" "-n" "./...")))))))
(list "Test_Proxy_DoRedirects_TooManyRedirects"
"Test_Proxy_Do_WithRealURL"
"Test_Proxy_DoRedirects_RestoreOriginalURL"
"Test_Proxy_Do_WithRedirect")
"|"))))
(propagated-inputs
(list go-github-com-google-uuid
go-github-com-mattn-go-colorable
@@ -8467,51 +8177,6 @@ Go. Designed to ease things up for fast development with zero memory
allocation and performance in mind.")
(license license:expat)))
(define-public go-github-com-gofiber-fiber-v3
(package
(inherit go-github-com-gofiber-fiber-v2)
(name "go-github-com-gofiber-fiber-v3")
(version "3.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gofiber/fiber")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "189hqhbm9pvpl5g2n2yk3mvp0f4jx4s0w5ivmgh5li8plffc9iwk"))))
(arguments
(substitute-keyword-arguments arguments
((#:import-path _) "github.com/gofiber/fiber/v3")
((#:embed-files _ #~())
#~(list
;; golang.org/x/net/publicsuffix/table.go:63:12: pattern
;; data/children: cannot embed irregular file data/children
"children"
;; golang.org/x/net/publicsuffix/table.go:48:12: pattern
;; data/nodes: cannot embed irregular file data/nodes
"nodes"
;; golang.org/x/net/publicsuffix/table.go:33:12: pattern data/text:
;; cannot embed irregular file data/text
"text"))))
(native-inputs
(list go-github-com-stretchr-testify
go-github-com-shamaton-msgpack-v3))
(propagated-inputs
(list go-github-com-fxamacker-cbor-v2
go-github-com-gofiber-schema
go-github-com-gofiber-utils-v2
go-github-com-google-uuid
go-github-com-mattn-go-colorable
go-github-com-mattn-go-isatty
go-github-com-tinylib-msgp
go-github-com-valyala-bytebufferpool
go-github-com-valyala-fasthttp
go-golang-org-x-crypto
go-golang-org-x-net
go-golang-org-x-text))))
(define-public go-github-com-gogo-googleapis
(package
(name "go-github-com-gogo-googleapis")
@@ -8901,19 +8566,25 @@ GitHub API v3.")
(version "36.0.0")
(source
(origin
(inherit (package-source go-github-com-google-go-github-v31))
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/go-github")
(commit (string-append "v" version))))
(url "https://github.com/google/go-github")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "041a1rmi7pipimxiwjnsd0dngzb4djmcz8a8x4xv53d3373szaj6"))))
(base32 "041a1rmi7pipimxiwjnsd0dngzb4djmcz8a8x4xv53d3373szaj6"))
(modules '((guix build utils)))
(snippet
#~(begin
;; Submodules with their own go.mod files and packaged separately:
;;
;; - github.com/google/go-github/scrape
(delete-file-recursively "scrape")
(delete-file-recursively "update-urls")))))
(arguments
(substitute-keyword-arguments arguments
((#:import-path _) "github.com/google/go-github/v36")))
(native-inputs
(list go-github-com-google-go-cmp))))
(substitute-keyword-arguments
(package-arguments go-github-com-google-go-github-v31)
((#:import-path _) "github.com/google/go-github/v36")))))
(define-public go-github-com-google-go-github-v50
(package
@@ -8948,35 +8619,6 @@ GitHub API v3.")
go-github-com-protonmail-go-crypto
go-golang-org-x-oauth2))))
(define-public go-github-com-google-go-github-v61
(package
(inherit go-github-com-google-go-github-v50)
(name "go-github-com-google-go-github-v61")
(version "61.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/go-github")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1kivw55z2xckymg7xx6hkvmki5mwrphhcjlgrpfv35glnd5p5zmy"))
(modules '((guix build utils)))
(snippet
#~(begin
;; Submodules with their own go.mod files and packaged separately:
;;
;; - github.com/google/go-github/scrape
;; - github.com/google/go-github/tools
(delete-file-recursively "scrape")
(delete-file-recursively "tools")))))
(arguments
(substitute-keyword-arguments arguments
((#:import-path _) "github.com/google/go-github/v61")))
(propagated-inputs
(list go-github-com-google-go-querystring))))
(define-public go-github-com-google-go-querystring
(package
(name "go-github-com-google-go-querystring")
@@ -9194,6 +8836,7 @@ Terraform by using the enterprise certificates feature.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:skip-build? #t
#:import-path "github.com/googleapis/gax-go/v2"
#:unpack-path "github.com/googleapis/gax-go"
@@ -9234,6 +8877,7 @@ for clients and servers based on @code{gRPC} and Google API conventions.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:import-path "github.com/GoogleCloudPlatform/grpc-gcp-go/grpcgcp"
#:unpack-path "github.com/GoogleCloudPlatform/grpc-gcp-go"
;; gcp_multiendpoint_test.go:441: endpoint wanted "localhost:50051", got
@@ -11498,9 +11142,6 @@ Call}.")
(build-system go-build-system)
(arguments
(list
;; Remove when a fresh version is released.
;; See: <https://github.com/jellydator/ttlcache/issues/207>.
#:go go-1.24
#:import-path "github.com/jellydator/ttlcache/v3"
#:phases
#~(modify-phases %standard-phases
@@ -12140,7 +11781,7 @@ webhooks in Golang.")
(define-public go-github-com-labstack-echo-v4
(package
(name "go-github-com-labstack-echo-v4")
(version "4.15.2")
(version "4.13.3")
(source
(origin
(method git-fetch)
@@ -12149,7 +11790,7 @@ webhooks in Golang.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0dnnvafgi4vdfzfvfhyka78c6cbl2sq69jl0gj29slhdamy7f1yc"))))
(base32 "1i4w36f1k17bykc24dzr2ng5zpsyysfg5bzfvlbrphxxzhsngxdy"))))
(build-system go-build-system)
(arguments
(list
@@ -12184,27 +11825,6 @@ Features:
@end itemize")
(license license:expat)))
(define-public go-github-com-labstack-echo-v5
(package
(inherit go-github-com-labstack-echo-v4)
(name "go-github-com-labstack-echo-v5")
(version "5.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/labstack/echo")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1a7d9cmn6kchzl79cdldxxhanqqjpml1vvaw5ak6cwan6cn9gb5i"))))
(arguments
(list
#:import-path "github.com/labstack/echo/v5"))
(propagated-inputs
(list go-golang-org-x-net
go-golang-org-x-time))))
(define-public go-github-com-lestrrat-go-httpcc
(package
(name "go-github-com-lestrrat-go-httpcc")
@@ -16717,10 +16337,6 @@ implementation in the Go standard library}.")
(build-system go-build-system)
(arguments
(list
;; Remove when a fresh version is released.
;; See: <https://github.com/quic-go/quic-go/issues/5623>,
;; <https://github.com/quic-go/quic-go/issues/5286>.
#:go go-1.24
#:import-path "github.com/quic-go/quic-go"
#:test-flags
;; [1] Error: Should NOT be empty, but was []
@@ -16796,6 +16412,7 @@ protocol.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:import-path "github.com/quic-go/webtransport-go"
#:phases
#~(modify-phases %standard-phases
@@ -18149,6 +17766,7 @@ It is part of the Sigstore project for software supply chain security.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:skip-build? #t
#:import-path "github.com/sigstore/sigstore"
#:test-flags
@@ -18899,6 +18517,7 @@ side of the connection, using various OS-specific facilities.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:skip-build? #t
#:test-subdirs
;; XXX: Remove when all inputs are packaged.
@@ -19849,25 +19468,26 @@ tiny,non-intrusive, and encourages use of @code{net/http} Handlers.")
(define-public go-github-com-valyala-fasthttp
(package
(name "go-github-com-valyala-fasthttp")
(version "1.71.0")
(version "1.58.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/valyala/fasthttp")
(commit (string-append "v" version))))
(url "https://github.com/valyala/fasthttp")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0l744biq95xf9xwz2d2idhh179qg8z4pa84s8dnaqzgw1gf4n70g"))))
(base32 "0r823fikgyhnmcn322anhs3ivkbzhdgbywvwi81v9kvfhi35plli"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/valyala/fasthttp"
#:test-flags
#~(list "-shuffle=on"
;; dialer_test.go:231: lookup github.com on [::1]:53: read udp
;; [::1]:52547->[::1]:53: read: connection refused
"-skip" "TestDialer_GetDialFunc")
#~(list "-skip" (string-join
;; Network set up is required.
(list "TestClientConfigureClientFailed"
"TestDialer_GetDialFunc")
"|"))
#:phases
#~(modify-phases %standard-phases
(replace 'check
@@ -19880,15 +19500,16 @@ tiny,non-intrusive, and encourages use of @code{net/http} Handlers.")
(list go-github-com-andybalholm-brotli
go-github-com-klauspost-compress
go-github-com-valyala-bytebufferpool
go-github-com-valyala-tcplisten
go-golang-org-x-crypto
go-golang-org-x-net
go-golang-org-x-sys))
go-golang-org-x-sys
go-golang-org-x-text))
(home-page "https://github.com/valyala/fasthttp")
(synopsis "Provides fast HTTP server and client API")
(description
"This package provides a Go module @code{fasthttp} which may be used as
replacement for native @code{net/http} module. It is optimized for high
performance with zero memory allocations in hot paths.")
replacement for native @code{net/http} module.")
(license license:expat)))
(define-public go-github-com-valyala-tcplisten
@@ -19982,31 +19603,6 @@ and is designed to be accessible to both humans and machines.")
implementation as closely while remaining idiomatic and easy to use.")
(license license:expat)))
(define-public go-github-com-victoriametrics-easyproto
(package
(name "go-github-com-victoriametrics-easyproto")
(version "1.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/VictoriaMetrics/easyproto")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1h52wjjfqp58wk77q154am8h8zwzi8x8nk9sa844nz04jkkf760p"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/VictoriaMetrics/easyproto"))
(home-page "https://github.com/VictoriaMetrics/easyproto")
(synopsis "Building blocks for protobuf marshaling and unmarshaling")
(description
"Package easyproto provides building blocks for marshaling and
unmarshaling (encoding/decoding) protobuf v3 messages according to
@url{https://protobuf.dev/programming-guides/encoding}.")
(license license:asl2.0)))
(define-public go-github-com-vishvananda-netlink
(package
(name "go-github-com-vishvananda-netlink")
@@ -21854,6 +21450,7 @@ Tracer implementation from the @code{OpenTracing} project.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:import-path "go.opentelemetry.io/contrib/zpages"
#:unpack-path "go.opentelemetry.io/contrib"))
(native-inputs (list go-github-com-stretchr-testify))
@@ -21904,6 +21501,7 @@ display telemetry stats.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:tests? #f ;; TODO: Tests require additional dependencies
#:import-path "go.opentelemetry.io/otel"
;; Error: Both arguments must be pointers.
@@ -22484,6 +22082,7 @@ logging library. Instead, install one of the bridges listed in the
(name "go-go-opentelemetry-io-otel-metric")
(arguments
(list
#:go go-1.25
#:import-path "go.opentelemetry.io/otel/metric"
#:unpack-path "go.opentelemetry.io/otel"))
(synopsis "OpenTelemetry Metric API")
@@ -22857,7 +22456,7 @@ the standard @code{context} package to store request-scoped values.")
(define-public go-golang-org-x-oauth2
(package
(name "go-golang-org-x-oauth2")
(version "0.36.0")
(version "0.23.0")
(source
(origin
(method git-fetch)
@@ -22866,13 +22465,14 @@ the standard @code{context} package to store request-scoped values.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0k7n299v6m0k0bkynfvwjclx56hbd5hvaaipk4khm9ib8ddbpx3s"))))
(base32 "00r6qryh9nfnfq8q8h12hvqp0mhflhl68qyknrmzmw5ww52ghm9b"))))
(build-system go-build-system)
(arguments
(list
#:import-path "golang.org/x/oauth2"))
(propagated-inputs
(list go-cloud-google-com-go-compute-metadata))
(list go-cloud-google-com-go-compute-metadata
go-github-com-google-go-cmp))
(home-page "https://go.googlesource.com/oauth2")
(synopsis "Client implementation of the OAuth 2.0 spec")
(description
@@ -23249,6 +22849,7 @@ interacting with Google's @code{gRPC} APIs.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:import-path "google.golang.org/genproto/googleapis/bytestream"
#:unpack-path "google.golang.org/genproto"))
(propagated-inputs
@@ -24459,6 +24060,7 @@ that can use multiple signing keys
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:build-flags #~(list (string-append "-ldflags="
"-X main.lyrebirdVersion="
#$version " -s -w"))
File diff suppressed because it is too large Load Diff
+2 -14
View File
@@ -25,7 +25,7 @@
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021-2026 Sharlatan Hellseher <sharlatanus@mgail.com>
;;; Copyright © 2021-2025 Sharlatan Hellseher <sharlatanus@mgail.com>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 jgart <jgart@dismail.de>
@@ -95,18 +95,6 @@
;; go-1.18. Starting with go-1.5 go cannot be built without an existing
;; installation of go, so we need to use go-1.4 or gccgo. For architectures which
;; are not supported with go-1.4 we use a version of gccgo to bootstrap them.
;;
;; The minimum version of Go required depends on the target version of Go:
;;
;; Go <= 1.4: a C toolchain.
;; 1.5 <= Go <= 1.19: a Go 1.4 compiler.
;; 1.20 <= Go <= 1.21: a Go 1.17 compiler.
;; 1.22 <= Go <= 1.23: a Go 1.20 compiler.
;;
;; Going forward, Go version 1.N will require a Go 1.M compiler, where M is
;; N-2 rounded down to an even number.
;; Example: Go 1.24 and 1.25 require Go 1.22.
;; See: <https://go.dev/doc/install/source>.
(define-public go-1.4
(package
@@ -1161,7 +1149,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
;;
;; Default Golang version used in guix/build-system/go.scm to build packages.
;;
(define-public go go-1.25)
(define-public go go-1.24)
(define make-go-std
(mlambdaq (go)
+3 -35
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017-2026 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017-2025 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018, 2020, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2021, 2022, 2024 Efraim Flashner <efraim@flashner.co.il>
@@ -227,7 +227,7 @@ more.")
(package
(inherit igraph)
(name "igraph")
(version "1.0.1")
(version "0.10.15")
(source
(origin
(inherit (package-source igraph))
@@ -239,39 +239,7 @@ more.")
(file-name (git-file-name name version))
(sha256
(base32
"01mynhbl2ph0gkc0zr5klwqvczwcimfs2kdn6didwg4k8gsrcxlr"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-26)))
;; We need the vendored versions of qhull and cxsparse.
(snippet '(begin
(delete-file-recursively "src/isomorphism/bliss")
(substitute* '("src/CMakeLists.txt"
"etc/cmake/benchmark_helpers.cmake")
;; Remove extraneous bundling related variables.
((".*_IS_VENDORED.*") "")
((".*add_sub.*isomorphism/bliss.*") "")
(("(.*TARGETS.*)bliss(.*)pcg(.*)"
_ part1 part2 part3)
(string-append part1 part2 part3))
((" pcg ") " pcg_random "))))))
(arguments
(substitute-keyword-arguments (package-arguments igraph)
((#:phases phases '%standard-phases)
#~(modify-phases #$phases
;; We have to use the bundled version because it has been
;; modified from upstream.
(delete 'patch-suitesparse)))
((#:configure-flags flags)
#~(list "-DBUILD_SHARED_LIBS=ON"
"-DIGRAPH_INFOMAP_SUPPORT=OFF"
"-DCMAKE_C_FLAGS=-Wno-error=incompatible-pointer-types"
;; Use the same integer width as suitesparse-cxsparse, which
;; uses int64_t in SuiteSparse v6.0.0 and later.
"-DIGRAPH_INTEGER_SIZE=64"))))
(inputs
(modify-inputs (package-inputs igraph)
(delete "suitesparse-cxsparse"))))))
"0z9jqvl65j4z6brrjlfyykba2bs10az6dx6m8g41snlfnx21a82d")))))))
(define-public python-igraph
(package
+4 -3
View File
@@ -297,7 +297,7 @@ applications.")
(define-public nats-server
(package
(name "nats-server")
(version "2.14.1")
(version "2.12.1")
(source
(origin
(method git-fetch)
@@ -306,7 +306,7 @@ applications.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1bnp17ddvpx0n8r7p4spfnhwhwwzff3f9w2h54pss8qvrsv0xy2a"))))
(base32 "04dza8jqw4lhnqj1ip05jx47g9frb00x9s0yy1863qf88bvszv8z"))))
(build-system go-build-system)
(arguments
(list
@@ -320,7 +320,7 @@ applications.")
(list "TestHTTPHost"
"TestSysLogger"
"TestLogMaxArchives")
"|"))
"|") )
#:test-subdirs
#~(list "conf/..." "internal/..." "logger/..." "test/...")))
(inputs
@@ -332,6 +332,7 @@ applications.")
go-github-com-nats-io-nats-go
go-github-com-nats-io-nkeys
go-github-com-nats-io-nuid
go-go-uber-org-automaxprocs
go-golang-org-x-crypto
go-golang-org-x-sys
go-golang-org-x-time))
+24 -33
View File
@@ -36,7 +36,6 @@
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (guix deprecation)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
@@ -947,42 +946,37 @@ traditional Chinese output.")
hanja dictionary and small hangul character classification.")
(license lgpl2.1+)))
(define-public ibus-hangul
(define-public ibus-libhangul
(package
(name "ibus-hangul")
(version "1.5.5")
(name "ibus-libhangul")
(version "1.5.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/libhangul/ibus-hangul")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append "https://github.com/libhangul/ibus-hangul/"
"releases/download/" version
"/ibus-hangul-" version ".tar.gz"))
(sha256
(base32 "0wsbh6ii223wdai2qwcwy6sj5jr9zzma7511fhkfq4m2qxdhwsn7"))))
(base32
"1400ba2p34vr9q285lqvjm73f6m677cgfdymmjpiwyrjgbbiqrjy"))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~'("DISABLE_GUI_TESTS=ibus-hangul")
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output
"/libexec/ibus-setup-hangul")
`("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))
`("LD_LIBRARY_PATH" ":" prefix
(,(dirname (search-input-file inputs "lib/libhangul.so"))))
`("GI_TYPELIB_PATH" ":" prefix
(,(getenv "GI_TYPELIB_PATH")))))))))
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-program (string-append (assoc-ref outputs "out")
"/libexec/ibus-setup-hangul")
`("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))
`("LD_LIBRARY_PATH" ":" prefix
(,(string-append (assoc-ref inputs "libhangul") "/lib")))
`("GI_TYPELIB_PATH" ":" prefix
(,(getenv "GI_TYPELIB_PATH"))))
#t)))))
(native-inputs
(list autoconf
automake
gettext-minimal
`(,glib "bin")
libtool
pkg-config))
`(("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")))
(inputs
(list bash-minimal
ibus
@@ -997,9 +991,6 @@ hanja dictionary and small hangul character classification.")
"ibus-hangul is a Korean input method engine for IBus.")
(license gpl2+)))
;; XXX: Deprecated on 2026-05-26.
(define-deprecated-package ibus-libhangul ibus-hangul)
(define-public ibus-table
(package
(name "ibus-table")
+3 -5
View File
@@ -1923,7 +1923,7 @@ and Scan Tailor Enhanced versions as well as including many more bug fixes.")
(define-public simpleitk
(package
(name "simpleitk")
(version "2.5.4")
(version "2.5.3")
(source
(origin
(method git-fetch)
@@ -1932,9 +1932,7 @@ and Scan Tailor Enhanced versions as well as including many more bug fixes.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1bzj5naqbgv2b31iqgz7qqk9rixsvjqycjz6l7w3gm7v1aj14jpb"))
(patches
(search-patches "simpleitk-r-4.6.0.patch"))))
(base32 "0fvacjfq0p8v7r2cmzwwh7bxb6ayavznhj0m81dah463x472qkd2"))))
(build-system cmake-build-system)
(outputs '("out" "python" "r"))
(arguments
@@ -2034,7 +2032,7 @@ and Scan Tailor Enhanced versions as well as including many more bug fixes.")
version "/SimpleITKData-" version ".tar.gz"))
(sha256
(base32
"0hryvi9fgqac00ng1bfhw3lm0al1dh0ka6jglba2q368nls428nx")))))
"0i4f87g1rh6xxisw06gwwyi8f216qqs6ih3gghi3k49vsl0h4g5d")))))
(synopsis "Simplified interface to @acronym{ITK, Insight Toolkit}")
(description
"SimpleITK is an image analysis toolkit built on top of @acronym{ITK,
-85
View File
@@ -39,7 +39,6 @@
;;; Copyright © 2025 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2025 Igorj Gorjaĉev <igor@goryachev.org>
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -95,16 +94,13 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages graphics)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages linux)
#:use-module (gnu packages logging)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages pdf)
@@ -112,7 +108,6 @@
#:use-module (gnu packages perl-check)
#:use-module (gnu packages photo)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages profiling)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
@@ -125,8 +120,6 @@
#:use-module (gnu packages sqlite)
#:use-module (gnu packages suckless)
#:use-module (gnu packages stb)
#:use-module (gnu packages tbb)
#:use-module (gnu packages tls)
#:use-module (gnu packages terminals)
#:use-module (gnu packages upnp)
#:use-module (gnu packages version-control)
@@ -1293,84 +1286,6 @@ workspaces.
(define-deprecated-package python-ueberzug
ueberzug)
(define-public ueberzugpp
(package
(name "ueberzugpp")
(version "2.9.10")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jstkdng/ueberzugpp")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1jac2sca4pmcxp8xcvaxhf6j15phyc85gb5n9ymajbahnd4hbcv2"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ; no tests
#:configure-flags
#~(list "-DENABLE_OPENCV=ON"
"-DENABLE_X11=ON"
"-DENABLE_WAYLAND=ON")))
(native-inputs
(list extra-cmake-modules
gobject-introspection
pkg-config))
(inputs
(list cairo
chafa
cli11
expat
fftw
fmt
imagemagick
imath
lcms
libexif
libgsf
librsvg
libsixel
libwebp
libxcb
matio
nlohmann-json
opencv
openexr
openssl
orc
pango
poppler
range-v3
spdlog
tbb
vips
wayland
wayland-protocols
xcb-util-image))
(home-page "https://github.com/jstkdng/ueberzugpp")
(synopsis "Drop in replacement for ueberzug written in C++")
(description "Überzug++ is a command line utility written in C++ which
allows to draw images on terminals by using X11/Wayland child windows, sixels,
kitty and iterm2.
Advantages over @command{w3mimgdisplay}:
@itemize
@item Support for Wayland: Sway, Hyprland, niri and Wayfire
@item No race conditions as a new window is created to display images
@item Expose events will be processed, so images will be redrawn on switch
workspaces
@item Tmux support on X11, Sway and Hyprland
@item Terminals without the @env{WINDOWID} environment variable are supported
@item Chars are used as position - and size unit
@item No memory leak (usage of smart pointers)
@item A lot of image formats supported (through OpenCV and libvips).
@item GIF and animated WEBP support on X11, Sixel, Sway and hyprland
@item Fast image downscaling (through OpenCV and OpenCL)
@item Cache resized images for faster viewing
@end itemize")
(license license:gpl3)))
(define-public vv
(package
(name "vv")
+45 -89
View File
@@ -99,7 +99,7 @@
(define-public go-github-com-ipfs-bbloom
(package
(name "go-github-com-ipfs-bbloom")
(version "0.1.0")
(version "0.0.4")
(source
(origin
(method git-fetch)
@@ -108,7 +108,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0k3bwhp0vc4ivnw32q8gi974xcqwjw2471lz4qkypxi7ld8clgmj"))))
(base32 "0dcdn7nlysynl7yrbivv8m7j83jq7pabhcff8mvfjdk583rgnkp2"))))
(build-system go-build-system)
(arguments
(list
@@ -117,15 +117,14 @@
(synopsis "Fast bit set Bloom filter")
(description
"This package implements a fast bloom filter with real @code{bitset} and
JSONMarshal/JSONUnmarshal to store/reload the Bloom filter. It's an
alternative fork of @url{https://github.com/gxed/bbloom}.")
JSONMarshal/JSONUnmarshal to store/reload the Bloom filter.")
(license (list license:expat ; bbloom.go
license:public-domain)))) ; siphash.go
(define-public go-github-com-ipfs-boxo
(package
(name "go-github-com-ipfs-boxo")
(version "0.39.0")
(version "0.35.2")
(source
(origin
(method git-fetch)
@@ -134,14 +133,18 @@ alternative fork of @url{https://github.com/gxed/bbloom}.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0sy7v5cnz7ajvfb1mz4p86rmsr8f8agzgfnpwyzlhvvwcglslns9"))
(base32 "02z88kv17m1mia68ac8wliiz5kzq59b1632qql21vy9c3gjqk56r"))
(modules '((guix build utils)))
(snippet
#~(begin
;; Submodules with their own go.mod files and packaged separately:
;; Submodules with their own go.mod files and packed as
;; separated packages:
;;
;; - github.com/ipfs/boxo/cmd/boxo-migrate
;; - github.com/ipfs/boxo/cmd/deprecator
;; - github.com/ipfs/boxo/examples
(delete-file-recursively "examples")))))
(for-each delete-file-recursively
(list "cmd" "examples"))))))
(build-system go-build-system)
(arguments
(list
@@ -157,13 +160,7 @@ alternative fork of @url{https://github.com/gxed/bbloom}.")
;; config: Get
;; "https://conf.ipfs-mainnet.org/autoconf.json"
"TestRealAutoConfURL")
"|"))
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda* (#:key tests? import-path #:allow-other-keys)
;; See: <https://go.dev/blog/synctest>.
(setenv "GODEBUG" "asynctimerchan=0"))))))
"|"))))
(native-inputs
(list go-github-com-libp2p-go-libp2p-kad-dht-bootstrap
go-github-com-libp2p-go-libp2p
@@ -225,9 +222,11 @@ alternative fork of @url{https://github.com/gxed/bbloom}.")
go-go-opencensus-io
go-go-opentelemetry-io-contrib-instrumentation-net-http-otelhttp
go-go-opentelemetry-io-otel
go-go-opentelemetry-io-otel-exporters-otlp-otlptrace
go-go-opentelemetry-io-otel-exporters-otlp-otlptrace-otlptracegrpc
go-go-opentelemetry-io-otel-exporters-otlp-otlptrace-otlptracehttp
go-go-opentelemetry-io-otel-exporters-stdout-stdouttrace
go-go-opentelemetry-io-otel-exporters-zipkin
go-go-opentelemetry-io-otel-sdk
go-go-opentelemetry-io-otel-trace
go-go-uber-org-zap
@@ -533,6 +532,7 @@ go-datastore}.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:import-path "github.com/ipfs/go-dsqueue"
#:phases
#~(modify-phases %standard-phases
@@ -615,7 +615,7 @@ storing and retrieving items. Queued items are persisted across restarts.")
(define-public go-github-com-ipfs-go-ipfs-cmds
(package
(name "go-github-com-ipfs-go-ipfs-cmds")
(version "0.16.1")
(version "0.14.1")
(source
(origin
(method git-fetch)
@@ -624,7 +624,7 @@ storing and retrieving items. Queued items are persisted across restarts.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "01cnpzbacdcbzi6lbppyn6vczrjvayh6s0fqm0mcaym1xi61y8jh"))))
(base32 "0npgcwzxzgvygl9r9h5kbnfl1dh0hygmwk1jj1hwznyvj47x6lwl"))))
(build-system go-build-system)
(arguments
(list
@@ -637,7 +637,7 @@ storing and retrieving items. Queued items are persisted across restarts.")
(delete-file-recursively "examples")))))))
(propagated-inputs
(list go-github-com-ipfs-boxo
go-github-com-ipfs-go-log-v2
go-github-com-ipfs-go-log
go-github-com-rs-cors
go-github-com-texttheater-golang-levenshtein
go-golang-org-x-term))
@@ -1111,38 +1111,6 @@ IPLD graph as detailed below. Objects are demonstrated here using both
@code{go-ipld-prime} nodes and @code{go-ipld-format} legacy interface.")
(license (list license:expat license:asl2.0))))
(define-public go-github-com-ipfs-go-libdht
(package
(name "go-github-com-ipfs-go-libdht")
(version "0.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ipfs/go-libdht")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "139zzvs9c65k6agfpy412y9bb4pfxdmwvwjbvndx9gd615qhxzak"))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "github.com/ipfs/go-libdht"))
(native-inputs
(list go-github-com-stretchr-testify))
(home-page "https://github.com/ipfs/go-libdht")
(synopsis "go-libdht")
(description
"@code{go-libdht} is a generic toolbox designed for the implementation
and experimentation of @acronym{Distributed Hash Tables, DHT} in Go. It
establishes foundational types and interfaces applicable across a broad
spectrum of DHTs, especially those sharing a similar topology. By offering
reusable components like keys and routing tables, @code{go-libdht} streamlines
the DHT implementation process. Using @code{go-libdht}, developers can
seamlessly craft their own DHTs using the provided modular components.")
(license (list license:expat license:asl2.0))))
(define-public go-github-com-ipfs-go-metrics-interface
(package
(name "go-github-com-ipfs-go-metrics-interface")
@@ -1913,7 +1881,7 @@ through @url{https://github.com/libp2p/libp2p, LibP2P} using Go's standard
(define-public go-github-com-libp2p-go-libp2p-kad-dht
(package
(name "go-github-com-libp2p-go-libp2p-kad-dht")
(version "0.39.1")
(version "0.37.1")
(source
(origin
(method git-fetch)
@@ -1922,20 +1890,21 @@ through @url{https://github.com/libp2p/libp2p, LibP2P} using Go's standard
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1lyh4a4m6v7i1sj18vi02snx2291hfrj09y484y2k9wynhdr71rz"))))
(base32 "07p5vy43kszcqzyy9piagyakgikg5afihd478q2zsviimqhl9ngb"))
(modules '((guix build utils)))
(snippet
#~(begin
;; Module name has been changed upstream.
(substitute* (find-files "." "\\.go$")
(("github.com/probe-lab/go-libdht")
"github.com/ipfs/go-libdht"))))))
(build-system go-build-system)
(arguments
(list
#:embed-files #~(list "sorted-network-list.bin")
#:import-path "github.com/libp2p/go-libp2p-kad-dht"
;; Error: "[]" should have 3 item(s), but has 0
#:test-flags #~(list "-skip" "TestIPDiversityFilter/Different_IPv6_blocks")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda* (#:key tests? import-path #:allow-other-keys)
;; See: <https://go.dev/blog/synctest>.
(setenv "GODEBUG" "asynctimerchan=0"))))))
#:test-flags #~(list "-skip" "TestIPDiversityFilter/Different_IPv6_blocks")))
(native-inputs
(list go-github-com-ipfs-go-test
go-github-com-ipfs-go-detect-race
@@ -1953,7 +1922,6 @@ through @url{https://github.com/libp2p/libp2p, LibP2P} using Go's standard
go-github-com-ipfs-go-cid
go-github-com-ipfs-go-datastore
go-github-com-ipfs-go-dsqueue
go-github-com-ipfs-go-libdht
go-github-com-ipfs-go-log-v2
go-github-com-libp2p-go-libp2p-kbucket
go-github-com-libp2p-go-libp2p-record
@@ -1966,6 +1934,7 @@ through @url{https://github.com/libp2p/libp2p, LibP2P} using Go's standard
go-github-com-multiformats-go-multiaddr
go-github-com-multiformats-go-multibase
go-github-com-multiformats-go-multihash
go-github-com-probe-lab-go-libdht
go-github-com-whyrusleeping-go-keyspace
go-go-opentelemetry-io-otel
go-go-opentelemetry-io-otel-metric
@@ -2038,7 +2007,7 @@ kab-dht}. This DHT is modeled after Kademlia with S/Kademlia modifications.")
(define-public go-github-com-libp2p-go-libp2p-pubsub
(package
(name "go-github-com-libp2p-go-libp2p-pubsub")
(version "0.16.0")
(version "0.13.0")
(source
(origin
(method git-fetch)
@@ -2047,45 +2016,31 @@ kab-dht}. This DHT is modeled after Kademlia with S/Kademlia modifications.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03nh7lbzy51yyfgi6lqlyxz91il05axvis0nq3zfi8c98dadzr5j"))))
(base32 "14afjrgfbmlrnjd5xnl70ff95mbvfxp9n8mx3hrw8069bcpzvm2k"))))
(build-system go-build-system)
(arguments
(list
;; TODO: Tests may need some adjustments as they take quite a lot of
;; time to finish.
#:tests? #f
#:import-path "github.com/libp2p/go-libp2p-pubsub"
#:test-flags
#~(list "-short"
"-skip" (string-join
;; Expencive tests, which takes more than 10s to pass
;; and accumulate hard timeout; succeeded after 235.9
;; seconds with 16 threads.
(list "TestBasicSeqnoValidatorReplay"
"TestLastSeenCacheNotFoundAfterExpire"
"TestConfigurableMaxMessageSize"
"TestFloodSubPluggableProtocol/won"
"TestGossipsubAttackSpamIHAVE"
"TestGossipsubFanoutMaintenance"
"TestGossipsubGossip"
"TestGossipsubOpportunisticGrafting"
"TestGossipsubRPCFragmentation"
"TestGossipsubStarTopology"
"TestGossipsubStarTopologyWithSignedPeerRecords"
"TestPairwiseInteractionWithPartialMessages"
"TestPeerDisconnect")
"|"))
;; src/github.com/libp2p/go-libp2p-asn-util/asn.go:12:12: pattern
;; sorted-network-list.bin: cannot embed irregular file
;; sorted-network-list.bin
#:embed-files #~(list "sorted-network-list\\.bin")))
(native-inputs
(list go-github-com-libp2p-go-libp2p-testing))
(list go-github-com-libp2p-go-libp2p-testing
go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-benbjohnson-clock
go-github-com-gogo-protobuf
go-github-com-ipfs-go-log-v2
go-github-com-libp2p-go-buffer-pool
go-github-com-libp2p-go-libp2p
go-github-com-libp2p-go-msgio
go-github-com-multiformats-go-multiaddr
go-github-com-multiformats-go-varint))
go-github-com-multiformats-go-varint
go-go-uber-org-zap))
(home-page "https://github.com/libp2p/go-libp2p-pubsub")
(synopsis "PubSub implementation for go-libp2p")
(description
@@ -2351,7 +2306,7 @@ types.")
(define-public kubo
(package
(name "kubo")
(version "0.41.0")
(version "0.39.0")
(source
(origin
(method git-fetch)
@@ -2360,7 +2315,7 @@ types.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1fa4szzvgzahv1n5laz11habdj4p43n8sbq5msmp0d95cnqnciyg"))
(base32 "17571bm3zp04z6y62mpdi3vsrmx7xrhsyzzz5nssfc4rymp0y4sn"))
(modules '((guix build utils)))
(snippet
#~(begin
@@ -2371,7 +2326,7 @@ types.")
(build-system go-build-system)
(arguments
(list
#:go go-1.26
#:go go-1.25
#:install-source? #f
#:embed-files #~(list "sorted-network-list.bin" ".*\\.css" ".*\\.html")
#:unpack-path "github.com/ipfs/kubo"
@@ -2392,7 +2347,8 @@ types.")
"ipfs"
#~(string-append #$output "/bin/ipfs"))
"commands" "completion" "bash")))))))))
(inputs (list go-contrib-go-opencensus-io-exporter-prometheus
(inputs (list go-bazil-org-fuse
go-contrib-go-opencensus-io-exporter-prometheus
go-github-com-anmitsu-go-shlex
go-github-com-blang-semver-v4
go-github-com-caddyserver-certmagic
@@ -2404,9 +2360,9 @@ types.")
go-github-com-dustin-go-humanize
go-github-com-elgris-jsondiff
go-github-com-facebookgo-atomicfile
go-github-com-filecoin-project-go-clock
go-github-com-fsnotify-fsnotify
go-github-com-google-uuid
go-github-com-hanwen-go-fuse-v2
go-github-com-hashicorp-go-version
go-github-com-ipfs-boxo
go-github-com-ipfs-go-block-format
+8 -8
View File
@@ -1218,6 +1218,12 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-version linux-libre-7.0-version)
(define-public linux-libre-gnu-revision linux-libre-7.0-gnu-revision)
(define-public linux-libre-pristine-source linux-libre-7.0-pristine-source)
(define-public linux-libre-source linux-libre-7.0-source)
(define-public linux-libre linux-libre-7.0)
(define-public linux-libre-6.19
(make-linux-libre* linux-libre-6.19-version
linux-libre-6.19-gnu-revision
@@ -1234,12 +1240,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-version linux-libre-6.18-version)
(define-public linux-libre-gnu-revision linux-libre-6.18-gnu-revision)
(define-public linux-libre-pristine-source linux-libre-6.18-pristine-source)
(define-public linux-libre-source linux-libre-6.18-source)
(define-public linux-libre linux-libre-6.18)
(define-public linux-libre-6.12
(make-linux-libre* linux-libre-6.12-version
linux-libre-6.12-gnu-revision
@@ -1979,6 +1979,8 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform2-dsi.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform-next.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
(define-public linux-libre-arm64-mnt-reform linux-libre-arm64-mnt-reform-7.0)
(define-public linux-libre-arm64-mnt-reform-6.19
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
@@ -2315,8 +2317,6 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform2-dsi.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform-next.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
(define-public linux-libre-arm64-mnt-reform linux-libre-arm64-mnt-reform-6.18)
(define-public linux-libre-arm64-mnt-reform-6.12
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
+2 -6
View File
@@ -3857,15 +3857,11 @@ follows a traditional multi-track tape recorder control paradigm.")
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'python3.12-compatibility
(add-after 'unpack 'python3.11-compatibility
(lambda _
(substitute* '("waflib/Context.py"
"waflib/ConfigSet.py")
(("'rU'") "'r'"))
(substitute* "waflib/Context.py"
(("imp.new_module") "types.ModuleType")
(("import os, re, imp, sys")
"import os, re, types, sys"))))
(("'rU'") "'r'"))))
(add-after 'unpack 'remove-sse-flags
(lambda* (#:key system #:allow-other-keys)
(unless (or (string-prefix? "x86_64" system)
+4 -7
View File
@@ -1006,11 +1006,11 @@ publish/subscribe, RPC-style request/reply, or service discovery.")
(home-page "https://nng.nanomsg.org/")
(license license:expat)))
(define-public nng-1.11
(define-public nng-1.10
(package
(inherit nng)
(name "nng")
(version "1.11")
(version "1.10.1")
(source
(origin
(method git-fetch)
@@ -1019,12 +1019,9 @@ publish/subscribe, RPC-style request/reply, or service discovery.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1l4rxwnc9knndwmy7xg53adyrm17ld7c5gxwm7vgfmgfy0my4zy8"))))
(base32 "13nmz1p8qd12gyj7wm8fz1ccap47qh41sxz4jqdhj8gnd0kiy5h4"))))
(arguments
(list
;; At least on aarch64-linux, running tests in parallel leads to ports
;; being unavailable in later tests, which then fail.
#:parallel-tests? #false
#:configure-flags
'(list "-DNNG_ENABLE_COVERAGE=ON"
"-DNNG_ENABLE_TLS=ON"
@@ -1038,7 +1035,6 @@ publish/subscribe, RPC-style request/reply, or service discovery.")
(("add_nng_test1\\(httpclient 60 NNG_SUPP_HTTP\\)") "")
(("add_nng_test\\(tls 60\\)") ""))
(substitute* "src/platform/CMakeLists.txt"
;; This test only seems to fail on aarch64-linux
(("nng_test\\(platform_test\\)") "")
(("nng_test\\(resolver_test\\)") ""))
(substitute* "src/sp/transport/tcp/CMakeLists.txt"
@@ -5193,6 +5189,7 @@ daemon.")
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:install-source? #f
#:import-path "github.com/slackhq/nebula"
#:build-flags
@@ -0,0 +1,513 @@
This patch shas been backported from the development version or Biostrings.
From 100602242840322b5f6c267faaf8198c1a5aa2af Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Herv=C3=A9=20Pag=C3=A8s?= <hpages.on.github@gmail.com>
Date: Thu, 5 Mar 2026 22:36:30 -0800
Subject: [PATCH] Biostrings 2.79.5: Get rid of never-used SparseMIndex and
SparseList classes
This also eliminates the non-API calls to R.
---
DESCRIPTION | 3 +-
NAMESPACE | 2 -
R/MIndex-class.R | 79 -------------------------
R/SparseList-class.R | 80 -------------------------
man/Biostrings-internals.Rd | 9 ---
src/Biostrings.h | 41 -------------
src/MIndex_class.c | 67 ---------------------
src/R_init_Biostrings.c | 1 -
src/SparseList_utils.c | 113 ------------------------------------
9 files changed, 1 insertion(+), 394 deletions(-)
delete mode 100644 R/SparseList-class.R
delete mode 100644 src/SparseList_utils.c
diff --git a/DESCRIPTION b/DESCRIPTION
index a5d027cc..dbc323ea 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -76,3 +76,3 @@ Collate: utils.R IUPAC_CODE_MAP.R AMINO_ACID_CODE.R GENETIC_CODE.R
injectHardMask.R padAndClip.R strsplit-methods.R misc.R
- SparseList-class.R MIndex-class.R lowlevel-matching.R
+ MIndex-class.R lowlevel-matching.R
match-utils.R matchPattern.R maskMotif.R matchLRPatterns.R
diff --git a/NAMESPACE b/NAMESPACE
index ba1e3bfa..cf14db67 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -206,7 +206,6 @@ exportMethods(
### ==========================================================================
### STRING MATCHING
### --------------------------------------------------------------------------
-### SparseList-class.R
### MIndex-class.R
### lowlevel-matching.R
### match-utils.R
@@ -220,7 +219,6 @@ exportMethods(
### matchPDict.R
exportClasses(
- #SparseList,
MIndex, ByPos_MIndex,
PreprocessedTB, Twobit, ACtree2,
PDict3Parts,
diff --git a/R/MIndex-class.R b/R/MIndex-class.R
index 022f6746..f50f215e 100644
--- a/R/MIndex-class.R
+++ b/R/MIndex-class.R
@@ -218,82 +218,3 @@ ByPos_MIndex.combine <- function(mi_list)
new("ByPos_MIndex", width0=ans_width0, NAMES=ans_names, ends=ans_ends)
}
-
-### - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-### The "SparseMIndex" class (DISABLED FOR NOW).
-###
-### Slot description:
-###
-### ends_envir: a key-value list (environment) where the values are integer
-### vectors containing the ending positions of the pattern whose
-### position in the original dictionary is given by the key (the keys are
-### strings representing positive integers).
-###
-
-if (FALSE) {
-
- setClass("SparseMIndex",
- contains="MIndex",
- representation(
- ends_envir="environment"
- )
- )
-
- setMethod("show", "SparseMIndex",
- function(object)
- {
- cat("Sparse MIndex object of length ", length(object), "\n", sep="")
- }
- )
-
- setMethod("[[", "SparseMIndex",
- function(x, i, j, ...)
- {
- i <- normalizeDoubleBracketSubscript(i, x)
- ans_end <- x@ends_envir[[formatC(i, width=10, format="d", flag="0")]]
- if (is.null(ans_end))
- ans_end <- integer(0)
- ans_width <- rep.int(x@width0[i], length(ans_end))
- ans_start <- ans_end - x@width0[i] + 1L
- new2("IRanges", start=ans_start, width=ans_width, check=FALSE)
- }
- )
-
- ### An example of a SparseMIndex object of length 5 where only the
- ### 2nd pattern has matches:
- ### > width0 <- c(9L, 10L, 8L, 4L, 10L)
- ### > ends_envir <- new.env(hash=TRUE, parent=emptyenv())
- ### > ends_envir[['0000000002']] <- c(199L, 402L)
- ### > mindex <- new("SparseMIndex", width0=width0, NAMES=letters[1:5], ends_envir=ends_envir)
- ### > mindex[[1]]
- ### > mindex[[2]]
- ### > mindex[[6]] # Error in mindex[[6]] : subscript out of bounds
- ### > names(mindex)
- ### > mindex[["a"]]
- ### > mindex[["b"]]
- ### > mindex[["aa"]] # Error in mindex[["aa"]] : pattern name aa not found
- ### > startIndex(mindex)
- ### > endIndex(mindex)
- ### > elementNROWS(mindex)
- ###
- setMethod("startIndex", "SparseMIndex",
- function(x)
- {
- all.names <- TRUE
- .Call2("SparseMIndex_endIndex",
- x@ends_envir, x@width0, x@NAMES, all.names,
- PACKAGE="Biostrings")
- }
- )
- setMethod("endIndex", "SparseMIndex",
- function(x)
- {
- all.names <- TRUE
- .Call2("SparseMIndex_endIndex",
- x@ends_envir, NULL, x@NAMES, all.names,
- PACKAGE="Biostrings")
- }
- )
-
-}
-
diff --git a/R/SparseList-class.R b/R/SparseList-class.R
deleted file mode 100644
index 8295fd0f..00000000
--- a/R/SparseList-class.R
+++ /dev/null
@@ -1,80 +0,0 @@
-### =========================================================================
-### SparseList objects
-### -------------------------------------------------------------------------
-###
-
-setClass("SparseList",
- representation(
- length="integer",
- env="environment"
- )
-)
-
-### Typical use:
-### env <- new.env(hash=TRUE, parent=emptyenv())
-### key <- formatC(98L, width=10, format="d", flag="0")
-### value <- 3:-2
-### assign(key, value, envir=env)
-### x <- new("SparseList", length=100L, env=env)
-### length(x)
-### ls(x)
-### ls(x, all.names=TRUE)
-### as.list(x)
-### as.list(x, all.names=TRUE)
-### x[[1]]
-### x[[98]
-### x[[101]]]
-###
-
-setMethod("length", "SparseList", function(x) x@length)
-
-### 'pos', 'envir' and 'pattern' args are ignored
-setMethod("ls", signature(name="SparseList"),
- function(name, pos, envir, all.names=FALSE, pattern)
- {
- if (!all.names)
- return(ls(name@env, all.names=TRUE))
- seq_len(length(name))
- }
-)
-
-setMethod("as.list", "SparseList",
- function(x, all.names=FALSE, ...)
- {
- if (!all.names)
- return(as.list(x@env, all.names=TRUE))
- ans <- vector(mode="list", length=length(x))
- symbols <- ls(x)
- for (symb in symbols)
- ans[[as.integer(symb)]] <- get(symb, envir=x@env)
- ans
- }
-)
-
-### Supported 'i' types: character or numeric vector of length 1.
-setMethod("[[", "SparseList",
- function(x, i, j, ...)
- {
- if (!missing(j) || length(list(...)) > 0)
- stop("invalid subsetting")
- if (missing(i))
- stop("subscript is missing")
- if (!is.character(i) && !is.numeric(i))
- stop("invalid subscript type")
- if (length(i) < 1L)
- stop("attempt to select less than one element")
- if (length(i) > 1L)
- stop("attempt to select more than one element")
- if (is.na(i))
- stop("subscript cannot be NA")
- if (is.character(i))
- return(get(i, envir=x@env))
- if (!is.integer(i))
- i <- as.integer(i)
- if (i < 1L || i > length(x))
- stop("subscript out of bounds")
- i <- formatC(i, width=10, format="d", flag="0")
- get(i, envir=x@env)
- }
-)
-
diff --git a/man/Biostrings-internals.Rd b/man/Biostrings-internals.Rd
index 791b0870..609b7694 100644
--- a/man/Biostrings-internals.Rd
+++ b/man/Biostrings-internals.Rd
@@ -26,15 +26,6 @@
\alias{make_XStringSet_from_strings}
\alias{make_XStringSet_from_strings,XStringSet-method}
-% SparseList class and methods:
-\alias{class:SparseList}
-\alias{SparseList-class}
-\alias{SparseList}
-
-\alias{length,SparseList-method}
-%\alias{ls,SparseList-method}
-\alias{as.list,SparseList-method}
-\alias{[[,SparseList-method}
\title{Biostrings internals}
diff --git a/src/Biostrings.h b/src/Biostrings.h
index 6e725bd5..e86d0ff2 100644
--- a/src/Biostrings.h
+++ b/src/Biostrings.h
@@ -446,40 +446,6 @@ SEXP XStringSetList_unstrsplit(
);
-/* SparseList_utils.c */
-
-SEXP _SparseList_int2symb(int symb_as_int);
-
-int _SparseList_symb2int(SEXP symbol);
-
-SEXP _get_val_from_env(
- SEXP symbol,
- SEXP env,
- int error_on_unbound_value
-);
-
-SEXP _get_val_from_SparseList(
- int symb_as_int,
- SEXP env,
- int error_on_unbound_value
-);
-
-int _get_int_from_SparseList(
- int symb_as_int,
- SEXP env
-);
-
-void _set_env_from_IntAE(
- SEXP env,
- const IntAE *int_ae
-);
-
-void _set_env_from_IntAEAE(
- SEXP env,
- const IntAEAE *int_aeae
-);
-
-
/* match_reporting.c */
int _get_match_storing_code(const char *ms_mode);
@@ -558,13 +524,6 @@ SEXP ByPos_MIndex_endIndex(
SEXP x_width0
);
-SEXP SparseMIndex_endIndex(
- SEXP x_ends_envir,
- SEXP x_width0,
- SEXP x_names,
- SEXP all_names
-);
-
SEXP ByPos_MIndex_combine(SEXP ends_listlist);
diff --git a/src/MIndex_class.c b/src/MIndex_class.c
index 00212fe9..dd6ad546 100644
--- a/src/MIndex_class.c
+++ b/src/MIndex_class.c
@@ -157,73 +157,6 @@ SEXP ByPos_MIndex_endIndex(SEXP x_high2low, SEXP x_ends, SEXP x_width0)
return ans;
}
-/*
- * --- .Call ENTRY POINT ---
- * All the keys in 'x_ends_envir' must be representing integers left-padded with 0s
- * so they have the same length. This works properly:
- library(Biostrings)
- ends_envir <- new.env(parent=emptyenv())
- ends_envir[['0000000010']] <- -2:1
- ends_envir[['0000000004']] <- 9:6
- .Call("SparseMIndex_endIndex",
- ends_envir, NULL, letters[1:10], TRUE,
- PACKAGE="Biostrings")
- .Call("SparseMIndex_endIndex",
- ends_envir, NULL, letters[1:10], FALSE,
- PACKAGE="Biostrings")
- * but this doesn't:
- ends_envir[['3']] <- 33L
- .Call("SparseMIndex_endIndex",
- ends_envir, NULL, letters[1:10], FALSE,
- PACKAGE="Biostrings")
- */
-SEXP SparseMIndex_endIndex(SEXP x_ends_envir, SEXP x_width0, SEXP x_names, SEXP all_names)
-{
- SEXP ans, ans_elt, ans_names, symbols, end;
- int nelt, i, j;
- IntAE *poffsets, *poffsets_order;
-
- PROTECT(symbols = R_lsInternal(x_ends_envir, 1));
- poffsets = new_IntAE_from_CHARACTER(symbols, -1);
- nelt = IntAE_get_nelt(poffsets);
- if (LOGICAL(all_names)[0]) {
- PROTECT(ans = NEW_LIST(LENGTH(x_names)));
- for (i = 0; i < nelt; i++) {
- j = poffsets->elts[i];
- end = _get_val_from_env(STRING_ELT(symbols, i), x_ends_envir, 1);
- PROTECT(ans_elt = duplicate(end));
- if (x_width0 != R_NilValue)
- add_val_to_INTEGER(ans_elt, 1 - INTEGER(x_width0)[j]);
- SET_ELEMENT(ans, j, ans_elt);
- UNPROTECT(1);
- }
- SET_NAMES(ans, duplicate(x_names));
- UNPROTECT(1);
- } else {
- //poffsets_order = new_IntAE(nelt, 0, 0);
- //get_order_of_int_array(poffsets->elts, nelt, 0, 0,
- // poffsets_order->elts, 0);
- //IntAE_set_nelt(poffsets_order) = nelt; /* = poffsets_order->_buflength */
- PROTECT(ans = NEW_LIST(nelt));
- PROTECT(ans_names = NEW_CHARACTER(nelt));
- for (i = 0; i < nelt; i++) {
- //j = poffsets_order->elts[i];
- j = i;
- end = _get_val_from_env(STRING_ELT(symbols, j), x_ends_envir, 1);
- PROTECT(ans_elt = duplicate(end));
- if (x_width0 != R_NilValue)
- add_val_to_INTEGER(ans_elt, 1 - INTEGER(x_width0)[i]);
- SET_ELEMENT(ans, i, ans_elt);
- UNPROTECT(1);
- SET_STRING_ELT(ans_names, i, duplicate(STRING_ELT(x_names, poffsets->elts[j])));
- }
- SET_NAMES(ans, ans_names);
- UNPROTECT(2);
- }
- UNPROTECT(1);
- return ans;
-}
-
/*
* --- .Call ENTRY POINT ---
*/
diff --git a/src/R_init_Biostrings.c b/src/R_init_Biostrings.c
index 4d2943f8..c1410dbd 100644
--- a/src/R_init_Biostrings.c
+++ b/src/R_init_Biostrings.c
@@ -88,7 +88,6 @@ static const R_CallMethodDef callMethods[] = {
/* MIndex_class.c */
CALLMETHOD_DEF(ByPos_MIndex_endIndex, 3),
- CALLMETHOD_DEF(SparseMIndex_endIndex, 4),
CALLMETHOD_DEF(ByPos_MIndex_combine, 1),
/* lowlevel_matching.c */
diff --git a/src/SparseList_utils.c b/src/SparseList_utils.c
deleted file mode 100644
index 18597b55..00000000
--- a/src/SparseList_utils.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/****************************************************************************
- * Fast SparseList utilities *
- * Author: H. Pag\`es *
- ****************************************************************************/
-#include "Biostrings.h"
-#include "S4Vectors_interface.h"
-
-
-SEXP _SparseList_int2symb(int symb_as_int)
-{
- char symbbuf[11];
-
- snprintf(symbbuf, sizeof(symbbuf), "%010d", symb_as_int);
- return mkChar(symbbuf); /* UNPROTECTED! */
-}
-
-int _SparseList_symb2int(SEXP symbol)
-{
- int symb_as_int;
-
- sscanf(CHAR(symbol), "%d", &symb_as_int);
- return symb_as_int;
-}
-
-/* 'symbol' must be a CHARSXP */
-SEXP _get_val_from_env(SEXP symbol, SEXP env, int error_on_unbound_value)
-{
- SEXP ans;
-
- /* The following code was inspired by R's do_get() code.
- * Note that do_get() doesn't use PROTECT at all and so do we...
- */
- ans = findVar(install(translateChar(symbol)), env);
- if (ans == R_UnboundValue) {
- if (error_on_unbound_value)
- error("Biostrings internal error in _get_val_from_env(): "
- "unbound value");
- return R_UnboundValue;
- }
- if (TYPEOF(ans) == PROMSXP)
- ans = eval(ans, env);
- if (ans != R_NilValue && NAMED(ans) == 0)
- SET_NAMED(ans, 1);
- return ans;
-}
-
-SEXP _get_val_from_SparseList(int symb_as_int, SEXP env, int error_on_unbound_value)
-{
- SEXP symbol, ans;
-
- PROTECT(symbol = _SparseList_int2symb(symb_as_int));
- ans = _get_val_from_env(symbol, env, error_on_unbound_value);
- UNPROTECT(1);
- return ans;
-}
-
-int _get_int_from_SparseList(int symb_as_int, SEXP env)
-{
- SEXP value;
- int val;
-
- value = _get_val_from_SparseList(symb_as_int, env, 0);
- if (value == R_UnboundValue)
- return NA_INTEGER;
- if (LENGTH(value) != 1)
- error("Biostrings internal error in _get_int_from_SparseList(): "
- "value is not a single integer");
- val = INTEGER(value)[0];
- if (val == NA_INTEGER)
- error("Biostrings internal error in _get_int_from_SparseList(): "
- "value is NA");
- return val;
-}
-
-void _set_env_from_IntAE(SEXP env, const IntAE *int_ae)
-{
- int nelt, symb_as_int, elt;
- SEXP symbol, value;
-
- nelt = IntAE_get_nelt(int_ae);
- for (symb_as_int = 1; symb_as_int <= nelt; symb_as_int++)
- {
- elt = int_ae->elts[symb_as_int - 1];
- if (elt == NA_INTEGER)
- continue;
- PROTECT(symbol = _SparseList_int2symb(symb_as_int));
- PROTECT(value = ScalarInteger(elt));
- defineVar(install(translateChar(symbol)), value, env);
- UNPROTECT(2);
- }
- return;
-}
-
-void _set_env_from_IntAEAE(SEXP env, const IntAEAE *int_aeae)
-{
- int nelt, symb_as_int;
- IntAE *ae;
- SEXP symbol, value;
-
- nelt = IntAEAE_get_nelt(int_aeae);
- for (symb_as_int = 1; symb_as_int <= nelt; symb_as_int++)
- {
- ae = int_aeae->elts[symb_as_int - 1];
- if (IntAE_get_nelt(ae) == 0)
- continue;
- PROTECT(symbol = _SparseList_int2symb(symb_as_int));
- PROTECT(value = new_INTEGER_from_IntAE(ae));
- defineVar(install(translateChar(symbol)), value, env);
- UNPROTECT(2);
- }
- return;
-}
-
@@ -0,0 +1,142 @@
From 7fe34542bff0183c3a6a35a62df9035a71698eb2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Herv=C3=A9=20Pag=C3=A8s?= <hpages.on.github@gmail.com>
Date: Fri, 6 Mar 2026 15:54:23 -0800
Subject: [PATCH] h5mread 1.3.2: Get rid of non-API calls to R
---
DESCRIPTION | 2 +-
R/H5File-class.R | 27 ++++++++++++++++-----------
src/h5mread_index.c | 5 +++--
src/h5mread_startscounts.c | 3 ++-
4 files changed, 22 insertions(+), 15 deletions(-)
diff --git a/R/H5File-class.R b/R/H5File-class.R
index 2735166..6aeb80f 100644
--- a/R/H5File-class.R
+++ b/R/H5File-class.R
@@ -73,19 +73,23 @@
}
}
-.h5openfile <- function(filepath, s3=FALSE, s3credentials=NULL, use.rhdf5=FALSE)
+.h5openfile <- function(filepath, readonly=TRUE,
+ s3=FALSE, s3credentials=NULL, use.rhdf5=FALSE)
{
if (!isSingleString(filepath))
stop(wmsg("'filepath' must be a single string specifying ",
"the path or URL to an HDF5 file"))
+ if (!isTRUEorFALSE(readonly))
+ stop(wmsg("'readonly' must be TRUE or FALSE"))
if (!isTRUEorFALSE(s3))
stop(wmsg("'s3' must be TRUE or FALSE"))
-
+ if (s3 && !readonly)
+ stop(wmsg("'readonly' must be set to TRUE when 's3' is TRUE"))
if (s3) {
ID <- .h5openS3file(filepath, s3credentials=s3credentials,
use.rhdf5=use.rhdf5)
} else {
- ID <- .h5openlocalfile(filepath, readonly=TRUE, use.rhdf5=use.rhdf5)
+ ID <- .h5openlocalfile(filepath, readonly=readonly, use.rhdf5=use.rhdf5)
}
ID
}
@@ -136,16 +140,16 @@
.ID_is_closed <- function(ID) { is.null(ID) || is.na(ID) }
-.open_H5FileID_xp <- function(xp, filepath, s3=FALSE, s3credentials=NULL,
- use.rhdf5=FALSE)
+.open_H5FileID_xp <- function(xp, filepath, readonly=TRUE,
+ s3=FALSE, s3credentials=NULL, use.rhdf5=FALSE)
{
ID <- .get_H5FileID_xp_ID(xp)
if (!.ID_is_closed(ID)) {
## H5FileID object is already open.
return(FALSE)
}
- ID <- .h5openfile(filepath, s3=s3, s3credentials=s3credentials,
- use.rhdf5=use.rhdf5)
+ ID <- .h5openfile(filepath, readonly=readonly,
+ s3=s3, s3credentials=s3credentials, use.rhdf5=use.rhdf5)
.set_H5FileID_xp_ID(xp, ID)
TRUE
}
@@ -183,10 +187,11 @@ close.H5FileID <- function(con, ...)
.close_H5FileID_xp(con@xp, ..., use.rhdf5=con@from_rhdf5)
}
-H5FileID <- function(filepath, s3=FALSE, s3credentials=NULL, use.rhdf5=FALSE)
+H5FileID <- function(filepath, readonly=TRUE,
+ s3=FALSE, s3credentials=NULL, use.rhdf5=FALSE)
{
- ID <- .h5openfile(filepath, s3=s3, s3credentials=s3credentials,
- use.rhdf5=use.rhdf5)
+ ID <- .h5openfile(filepath, readonly=readonly,
+ s3=s3, s3credentials=s3credentials, use.rhdf5=use.rhdf5)
xp <- .new_H5FileID_xp(ID)
reg.finalizer(xp,
function(e) .close_H5FileID_xp(e, use.rhdf5=use.rhdf5),
@@ -272,7 +277,7 @@ H5File <- function(filepath, s3=FALSE, s3credentials=NULL, .no_rhdf5_h5id=FALSE)
rhdf5_h5id <- new("H5FileID")
} else {
rhdf5_h5id <- H5FileID(filepath, s3=s3, s3credentials=s3credentials,
- use.rhdf5=TRUE)
+ use.rhdf5=TRUE)
}
if (!s3)
filepath <- file_path_as_absolute(filepath)
diff --git a/src/h5mread_index.c b/src/h5mread_index.c
index 7284815..ec93c25 100644
--- a/src/h5mread_index.c
+++ b/src/h5mread_index.c
@@ -9,6 +9,7 @@
#include "h5mread_helpers.h"
#include "TouchedChunks.h"
+#include <R_ext/Altrep.h> /* only for DATAPTR_RW() */
#include <stdlib.h> /* for malloc, free */
#include <string.h> /* for memcmp */
//#include <time.h>
@@ -444,7 +445,7 @@ static int read_chunk_data_4_5(const H5DSetDescriptor *h5dset,
const size_t *Rarray_dim, SEXP Rarray,
int method, int use_H5Dread_chunk)
{
- void *out = DATAPTR(Rarray);
+ void *out = DATAPTR_RW(Rarray);
if (out == NULL)
return -1;
@@ -874,7 +875,7 @@ static int read_data_6(const AllTChunks *all_tchunks,
size_t *inner_nchip_buf = R_alloc0_size_t_array(ndim);
LLongAEAE *inner_breakpoint_bufs = new_LLongAEAE(ndim, ndim);
- void *out = DATAPTR(Rarray);
+ void *out = DATAPTR_RW(Rarray);
if (out == NULL) {
_destroy_TChunkIterator(&tchunk_iter);
return -1;
diff --git a/src/h5mread_startscounts.c b/src/h5mread_startscounts.c
index de57fd5..959014f 100644
--- a/src/h5mread_startscounts.c
+++ b/src/h5mread_startscounts.c
@@ -8,6 +8,7 @@
#include "uaselection.h"
#include "h5mread_helpers.h"
+#include <R_ext/Altrep.h> /* only for DATAPTR_RW() */
#include <stdlib.h> /* for malloc, free */
//#include <time.h>
@@ -402,7 +403,7 @@ SEXP _h5mread_startscounts(const H5DSetDescriptor *h5dset,
SEXP ans = PROTECT(allocVector(h5dset->h5type->Rtype, ans_len));
if (ans_len != 0) {
- void *mem = DATAPTR(ans);
+ void *mem = DATAPTR_RW(ans);
if (mem == NULL)
goto on_error;
--
2.52.0
@@ -0,0 +1,67 @@
From a827c9fdeb77edefe6cca81bdb9e0344bc8d3742 Mon Sep 17 00:00:00 2001
From: Sebastian Gibb <mail@sebastiangibb.de>
Date: Sat, 13 Dec 2025 23:06:12 +0100
Subject: [PATCH] fix: non-API call to R: SETLENGTH by using lengthgets
---
DESCRIPTION | 2 +-
NEWS.md | 6 ++++++
src/join.c | 12 ++++--------
src/reduce.c | 6 ++----
4 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/src/join.c b/src/join.c
index f13a703..3849fdf 100644
--- a/src/join.c
+++ b/src/join.c
@@ -111,12 +111,10 @@ SEXP C_join_inner(SEXP x, SEXP y, SEXP tolerance, SEXP nomatch) {
++j;
}
}
- SETLENGTH(rx, j);
- SETLENGTH(ry, j);
SEXP out = PROTECT(allocVector(VECSXP, 2));
SEXP nms = PROTECT(allocVector(STRSXP, 2));
- SET_VECTOR_ELT(out, 0, rx);
- SET_VECTOR_ELT(out, 1, ry);
+ SET_VECTOR_ELT(out, 0, lengthgets(rx, j));
+ SET_VECTOR_ELT(out, 1, lengthgets(ry, j));
SET_STRING_ELT(nms, 0, mkChar("x"));
SET_STRING_ELT(nms, 1, mkChar("y"));
setAttrib(out, R_NamesSymbol, nms);
@@ -201,12 +199,10 @@ SEXP C_join_outer(SEXP x, SEXP y, SEXP tolerance, SEXP nomatch) {
++i;
}
- SETLENGTH(rx, i);
- SETLENGTH(ry, i);
SEXP out = PROTECT(allocVector(VECSXP, 2));
SEXP nms = PROTECT(allocVector(STRSXP, 2));
- SET_VECTOR_ELT(out, 0, rx);
- SET_VECTOR_ELT(out, 1, ry);
+ SET_VECTOR_ELT(out, 0, lengthgets(rx, i));
+ SET_VECTOR_ELT(out, 1, lengthgets(ry, i));
SET_STRING_ELT(nms, 0, mkChar("x"));
SET_STRING_ELT(nms, 1, mkChar("y"));
setAttrib(out, R_NamesSymbol, nms);
diff --git a/src/reduce.c b/src/reduce.c
index 5f87966..8e48058 100644
--- a/src/reduce.c
+++ b/src/reduce.c
@@ -66,11 +66,9 @@ SEXP C_reduce(SEXP start, SEXP end, SEXP check) {
}
}
- SETLENGTH(rs, pos + 1);
- SETLENGTH(re, pos + 1);
SEXP out = PROTECT(allocVector(VECSXP, 2));
- SET_VECTOR_ELT(out, 0, rs);
- SET_VECTOR_ELT(out, 1, re);
+ SET_VECTOR_ELT(out, 0, lengthgets(rs, pos + 1));
+ SET_VECTOR_ELT(out, 1, lengthgets(re, pos + 1));
UNPROTECT(4);
--
2.52.0
@@ -0,0 +1,114 @@
From 57dc6579d8b53af9e633016705fa9a1cbe58c8c8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Herv=C3=A9=20Pag=C3=A8s?= <hpages.on.github@gmail.com>
Date: Fri, 6 Mar 2026 16:48:20 -0800
Subject: [PATCH] Rsamtools 2.27.1: Get rid of non-API calls to R
---
DESCRIPTION | 2 +-
src/utilities.h | 3 +--
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/src/utilities.h b/src/utilities.h
index bffb98f7..f9d5e09f 100644
--- a/src/utilities.h
+++ b/src/utilities.h
@@ -51,8 +51,7 @@ SEXP find_mate_within_groups(SEXP group_sizes,
/* call-building macros */
#define NEW_CALL(S, T, NAME, ENV, N) \
- PROTECT(S = T = allocList(N)); \
- SET_TYPEOF(T, LANGSXP); \
+ PROTECT(S = T = LCONS(R_NilValue, allocList(N-1))); \
SETCAR(T, findFun(install(NAME), ENV)); \
T = CDR(T)
#define CSET_CDR(T, NAME, VALUE) \
From 8cdec143023e8348a4f8bdc310acd609d14fe493 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Herv=C3=A9=20Pag=C3=A8s?= <hpages.on.github@gmail.com>
Date: Fri, 6 Mar 2026 16:59:42 -0800
Subject: [PATCH] oops, forgot to also get rid of non-API call to FORMALS()
---
src/pileupbam.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/pileupbam.c b/src/pileupbam.c
index f3256ba..7725628 100644
--- a/src/pileupbam.c
+++ b/src/pileupbam.c
@@ -655,7 +655,7 @@ SEXP apply_pileups(SEXP files, SEXP names, SEXP regions, SEXP param,
if (R_NilValue == regions)
Rf_error("'NULL' regions not (yet) supported");
_checkparams(regions, R_NilValue, R_NilValue);
- if (!Rf_isFunction(callback) || 1L != Rf_length(FORMALS(callback)))
+ if (!Rf_isFunction(callback) || 1L != Rf_length(R_ClosureFormals(callback)))
Rf_error("'callback' must be a function of 1 argument");
call = PROTECT(Rf_lang2(callback, R_NilValue));
From ee01a1f13f3b012b0717247d1f21580225b6f3a0 Mon Sep 17 00:00:00 2001
From: vjcitn <stvjc@channing.harvard.edu>
Date: Wed, 8 Apr 2026 14:04:26 -0400
Subject: [PATCH] API solutions
---
DESCRIPTION | 2 +-
src/tabixfile.c | 4 ++++
src/utilities.c | 13 ++++++++++---
3 files changed, 15 insertions(+), 4 deletions(-)
diff --git a/src/tabixfile.c b/src/tabixfile.c
index 230a381..6f96568 100644
--- a/src/tabixfile.c
+++ b/src/tabixfile.c
@@ -187,8 +187,12 @@ SEXP index_tabix(SEXP filename, SEXP format, SEXP seq, SEXP begin, SEXP end,
LOGICAL(zeroBased)[0] == TRUE)
conf.preset |= TBX_UCSC;
+/* following is deprecated in HTSLIB with no precise replacement proposed */
+/* seems unimportant */
+/*
if (bgzf_is_bgzf(fn) != 1)
Rf_error("file does not appear to be bgzip'd");
+*/
if (tbx_index_build(fn, 0, &conf) == -1)
Rf_error("index build failed");
diff --git a/src/utilities.c b/src/utilities.c
index e224f91..d15c1d1 100644
--- a/src/utilities.c
+++ b/src/utilities.c
@@ -5,6 +5,13 @@
#include "XVector_interface.h"
#include <htslib/khash.h>
+#include <Rversion.h>
+
+#if R_VERSION < R_Version(4, 6, 0)
+# define R_getVar(x,y,z) findVar(x,y)
+#endif
+
+
void *_Rs_Realloc_impl(void *p, size_t n, size_t t)
{
/* R_Realloc(p, 0, *) fails inappropriately */
@@ -30,7 +37,7 @@ SEXP _get_namespace(const char *pkg)
void _as_strand(SEXP vec)
{
SEXP nmspc = PROTECT(_get_namespace("Rsamtools"));
- SEXP lvls = PROTECT(eval(findVar(install(".STRAND_LEVELS"), nmspc), nmspc));
+ SEXP lvls = PROTECT(eval(R_getVar(install(".STRAND_LEVELS"), nmspc, TRUE), nmspc));
_as_factor_SEXP(vec, lvls);
UNPROTECT(2);
}
@@ -38,8 +45,8 @@ void _as_strand(SEXP vec)
void _as_nucleotide(SEXP vec)
{
SEXP nmspc = PROTECT(_get_namespace("Rsamtools"));
- SEXP lvls = PROTECT(eval(findVar(install(".PILEUP_NUCLEOTIDE_LEVELS"),
- nmspc), nmspc));
+ SEXP lvls = PROTECT(eval(R_getVar(install(".PILEUP_NUCLEOTIDE_LEVELS"),
+ nmspc, TRUE), nmspc));
_as_factor_SEXP(vec, lvls);
UNPROTECT(2);
}
@@ -0,0 +1,103 @@
From e39852a54312bbc6ba435848890cc2a7f612357c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Herv=C3=A9=20Pag=C3=A8s?= <hpages.on.github@gmail.com>
Date: Fri, 6 Mar 2026 17:04:19 -0800
Subject: [PATCH] ShortRead 1.69.3: Get rid of non-API calls to R
---
DESCRIPTION | 2 +-
src/call.h | 3 +--
src/io.c | 10 +++++-----
3 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/src/call.h b/src/call.h
index e15bb5e..e72bbd6 100644
--- a/src/call.h
+++ b/src/call.h
@@ -6,8 +6,7 @@ extern "C" {
#endif
#define NEW_CALL(S, T, NAME, ENV, N) \
- PROTECT((S) = (T) = allocList((N))); \
- SET_TYPEOF((T), LANGSXP); \
+ PROTECT((S) = (T) = LCONS(R_NilValue, allocList((N)-1))); \
SETCAR((T), findFun(install((NAME)), (ENV))); \
(T) = CDR((T))
#define CSET_CDR(T, NAME, VALUE) \
diff --git a/src/io.c b/src/io.c
index 25a0111..9cf4bf8 100644
--- a/src/io.c
+++ b/src/io.c
@@ -46,9 +46,9 @@ SEXP write_fastq(SEXP id, SEXP sread, SEXP quality,
SEXP fname, SEXP fmode, SEXP full, SEXP compress,
SEXP max_width)
{
- if (!(IS_S4_OBJECT(id) && strcmp(get_classname(id), "BStringSet") == 0))
+ if (!(Rf_isS4(id) && strcmp(get_classname(id), "BStringSet") == 0))
Rf_error("'%s' must be '%s'", "id", "BStringSet");
- if (!(IS_S4_OBJECT(sread) &&
+ if (!(Rf_isS4(sread) &&
strcmp(get_classname(sread), "DNAStringSet") == 0))
Rf_error("'%s' must be '%s'", "sread", "DNAStringSet");
/* check in R -- C-level R_check_super... is not adequate */
@@ -693,14 +693,14 @@ int _solexa_export_make_id(SEXP result)
*x = INTEGER(VECTOR_ELT(result, SLX_X)),
*y = INTEGER(VECTOR_ELT(result, SLX_Y)), *pairedReadNumber = NULL;
const SEXP
- * run = STRING_PTR(VECTOR_ELT(result, SLX_RUN)),
+ * run = STRING_PTR_RO(VECTOR_ELT(result, SLX_RUN)),
*multiplexIndex = NULL,
- *machine = STRING_PTR(VECTOR_ELT(result, SLX_MACHINE));
+ *machine = STRING_PTR_RO(VECTOR_ELT(result, SLX_MACHINE));
const Rboolean
withMultiplexIndex = R_NilValue != VECTOR_ELT(result, SLX_MULTIPLEX),
withPairedReadNumber = R_NilValue != VECTOR_ELT(result, SLX_PAIRID);
if (withMultiplexIndex)
- multiplexIndex = STRING_PTR(VECTOR_ELT(result, SLX_MULTIPLEX));
+ multiplexIndex = STRING_PTR_RO(VECTOR_ELT(result, SLX_MULTIPLEX));
if (withPairedReadNumber)
pairedReadNumber = INTEGER(VECTOR_ELT(result, SLX_PAIRID));
--
2.52.0
From 2e3368a35e3955a0a92b7f3e2c8dface6709d135 Mon Sep 17 00:00:00 2001
From: vjcitn <stvjc@channing.harvard.edu>
Date: Thu, 16 Apr 2026 16:54:15 +0000
Subject: [PATCH] fixapi
---
src/util.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/util.c b/src/util.c
index 4a10a90..59c089b 100644
--- a/src/util.c
+++ b/src/util.c
@@ -6,6 +6,14 @@ unsigned char _bDecode(char);
unsigned char _dnaDecode(char);
unsigned char _rnaDecode(char);
+
+#include <Rversion.h>
+
+#if R_VERSION < R_Version(4, 6, 0)
+# define R_getVar(x,y,z) findVar(x,y)
+#endif
+
+
/*
* Encode / decode XString wrappers
*/
@@ -80,7 +88,7 @@ SEXP _get_namespace(const char *pkg)
SEXP _get_strand_levels()
{
SEXP nmspc = PROTECT(_get_namespace("ShortRead"));
- SEXP ans = eval(findVar(install(".STRAND_LEVELS"), nmspc), nmspc);
+ SEXP ans = eval(R_getVar(install(".STRAND_LEVELS"), nmspc, TRUE), nmspc);
UNPROTECT(1);
return ans;
}
--
2.52.0
@@ -0,0 +1,412 @@
From 803cda41994a22890e0a6e379e6588084d4bc91b Mon Sep 17 00:00:00 2001
From: vjcitn <stvjc@channing.harvard.edu>
Date: Fri, 13 Mar 2026 04:04:59 -0400
Subject: [PATCH 1/2] fixed non-API except for IS_S4_OBJECT
---
src/bind.c | 8 ++++----
src/glm_test_R.c | 20 ++++++++++----------
src/imputation.c | 8 ++++----
src/input.c | 2 +-
src/plink.c | 2 +-
src/read_uncertain.c | 4 ++--
src/readped.c | 2 +-
src/single_snp_tests.c | 8 ++++----
src/snp_summary.c | 8 ++++----
src/snpmpy.c | 8 ++++----
src/structure.c | 4 ++--
src/subset.c | 2 +-
src/switch.c | 2 +-
src/tdt.c | 8 ++++----
src/testBig.c | 2 +-
15 files changed, 44 insertions(+), 44 deletions(-)
diff --git a/src/bind.c b/src/bind.c
index 44b1536..fa87e7c 100644
--- a/src/bind.c
+++ b/src/bind.c
@@ -19,7 +19,7 @@ SEXP snp_rbind(SEXP args) {
const SEXP This = CAR(args);
Class = getAttrib(This, R_ClassSymbol);
if (TYPEOF(Class) != STRSXP) {
- Class = R_data_class(This, FALSE);
+ Class = R_class(This);
}
const char *cli = CHAR(STRING_ELT(Class, 0));
if(!IS_S4_OBJECT(This)) {
@@ -66,7 +66,7 @@ SEXP snp_rbind(SEXP args) {
SEXP Result, Rnames, Dnames, Diploid = R_NilValue;
PROTECT(Result = allocMatrix(RAWSXP, nr, nc));
classgets(Result, duplicate(Class));
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
PROTECT(Rnames = allocVector(STRSXP, nr));
PROTECT(Dnames = allocVector(VECSXP, 2));
SET_VECTOR_ELT(Dnames, 0, Rnames);
@@ -148,7 +148,7 @@ SEXP snp_cbind(SEXP args) {
SEXP This = CAR(args);
Class = getAttrib(This, R_ClassSymbol);
if (TYPEOF(Class) != STRSXP) {
- Class = R_data_class(This, FALSE);
+ Class = R_class(This);
}
const char *cli = CHAR(STRING_ELT(Class, 0));
if(!IS_S4_OBJECT(This)) {
@@ -205,7 +205,7 @@ SEXP snp_cbind(SEXP args) {
SEXP Result, Cnames, Dnames;
PROTECT(Result = allocMatrix(RAWSXP, nr, nc));
classgets(Result, duplicate(Class));
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
PROTECT(Dnames = allocVector(VECSXP, 2));
setAttrib(Result, R_DimNamesSymbol, Dnames);
PROTECT(Cnames = allocVector(STRSXP, nc));
diff --git a/src/glm_test_R.c b/src/glm_test_R.c
index d865182..dc8ebef 100644
--- a/src/glm_test_R.c
+++ b/src/glm_test_R.c
@@ -19,8 +19,8 @@ SEXP snp_lhs_score(const SEXP Y, const SEXP X, const SEXP Stratum,
/* Y should be a SnpMatrix or an XSnpMatrix */
const char *classY = NULL;
- if (TYPEOF(R_data_class(Y, FALSE)) == STRSXP) {
- classY = CHAR(STRING_ELT(R_data_class(Y, FALSE), 0));
+ if (TYPEOF(R_class(Y)) == STRSXP) {
+ classY = CHAR(STRING_ELT(R_class(Y), 0));
} else {
classY = CHAR(STRING_ELT(getAttrib(Y, R_ClassSymbol), 0));
}
@@ -431,8 +431,8 @@ SEXP snp_rhs_score(SEXP Y, SEXP family, SEXP link,
/* Z should be a SnpMatrix or an XSnpMatrix */
const char *classZ = NULL;
- if (TYPEOF(R_data_class(Z, FALSE)) == STRSXP) {
- classZ = CHAR(STRING_ELT(R_data_class(Z, FALSE), 0));
+ if (TYPEOF(R_class(Z)) == STRSXP) {
+ classZ = CHAR(STRING_ELT(R_class(Z), 0));
} else {
classZ = CHAR(STRING_ELT(getAttrib(Z, R_ClassSymbol), 0));
}
@@ -1003,8 +1003,8 @@ SEXP snp_lhs_estimate(const SEXP Y, const SEXP X, const SEXP Stratum,
/* Y should be a SnpMatrix or an XSnpMatrix */
const char *classY = NULL;
- if (TYPEOF(R_data_class(Y, FALSE)) == STRSXP) {
- classY = CHAR(STRING_ELT(R_data_class(Y, FALSE), 0));
+ if (TYPEOF(R_class(Y)) == STRSXP) {
+ classY = CHAR(STRING_ELT(R_class(Y), 0));
} else {
classY = CHAR(STRING_ELT(getAttrib(Y, R_ClassSymbol), 0));
}
@@ -1286,7 +1286,7 @@ SEXP snp_lhs_estimate(const SEXP Y, const SEXP X, const SEXP Stratum,
LOGICAL(Lhs)[0] = 1;
setAttrib(Estimates, install("snpLHS"), Lhs);
UNPROTECT(6);
- SET_S4_OBJECT(Estimates);
+ Rf_asS4(Estimates, TRUE, 0);
return(Estimates);
}
@@ -1360,8 +1360,8 @@ SEXP snp_rhs_estimate(SEXP Y, SEXP family, SEXP link,
/* Z should be a SnpMatrix or an XSnpMatrix */
const char *classZ = NULL;
- if (TYPEOF(R_data_class(Z, FALSE)) == STRSXP) {
- classZ = CHAR(STRING_ELT(R_data_class(Z, FALSE), 0));
+ if (TYPEOF(R_class(Z)) == STRSXP) {
+ classZ = CHAR(STRING_ELT(R_class(Z), 0));
} else {
classZ = CHAR(STRING_ELT(getAttrib(Z, R_ClassSymbol), 0));
}
@@ -1724,7 +1724,7 @@ SEXP snp_rhs_estimate(SEXP Y, SEXP family, SEXP link,
UNPROTECT(gen_names? 7: 6);
- SET_S4_OBJECT(Estimates);
+ Rf_asS4(Estimates, TRUE, 0);
return(Estimates);
}
diff --git a/src/imputation.c b/src/imputation.c
index ff9403b..d796c1b 100644
--- a/src/imputation.c
+++ b/src/imputation.c
@@ -77,7 +77,7 @@ SEXP snp_impute(const SEXP X, const SEXP Y, const SEXP Xord, const SEXP Yord,
int *diploid = NULL;
SEXP cl = GET_CLASS(X);
if (TYPEOF(cl) != STRSXP) {
- cl = R_data_class(X, FALSE); /* S4 way of getting class attribute */
+ cl = R_class(X); /* S4 way of getting class attribute */
}
if (!strcmp(CHAR(STRING_ELT(cl, 0)), "XSnpMatrix")) {
SEXP Diploid = R_do_slot(X, mkString("diploid"));
@@ -395,7 +395,7 @@ SEXP snp_impute(const SEXP X, const SEXP Y, const SEXP Xord, const SEXP Yord,
PROTECT(Maxpred = allocVector(INTSXP, 1));
INTEGER(Maxpred)[0] = maxpred;
setAttrib(Result, install("Max.predictors"), Maxpred);
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
/* Tidy up */
@@ -701,7 +701,7 @@ SEXP impute_snps(const SEXP Rules, const SEXP Snps, const SEXP Subset,
int *diploid_in=NULL, *diploid=NULL;
SEXP cl = GET_CLASS(Snps);
if (TYPEOF(cl) != STRSXP) {
- cl = R_data_class(Snps, FALSE); /* S4 way of getting class attribute */
+ cl = R_class(Snps); /* S4 way of getting class attribute */
}
if (!strcmp(CHAR(STRING_ELT(cl, 0)), "XSnpMatrix")) {
SEXP Diploid = R_do_slot(Snps, mkString("diploid"));
@@ -753,7 +753,7 @@ SEXP impute_snps(const SEXP Rules, const SEXP Snps, const SEXP Subset,
SET_STRING_ELT(Package, 0, mkChar("snpStats"));
setAttrib(Class, install("package"), Package);
classgets(Result, Class);
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
}
PROTECT(Dimnames = allocVector(VECSXP, 2));
SET_VECTOR_ELT(Dimnames, 0, VECTOR_ELT(names, 0));
diff --git a/src/input.c b/src/input.c
index 1d2a95b..60cdad8 100644
--- a/src/input.c
+++ b/src/input.c
@@ -330,7 +330,7 @@ SEXP insnp_new(const SEXP Filenames, const SEXP Sample_id, const SEXP Snp_id,
SET_STRING_ELT(Package, 0, mkChar("snpStats"));
setAttrib(Class, install("package"), Package);
classgets(Result, Class);
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
unsigned char *result = RAW(Result);
memset(result, 0x00, Nsample*Nsnp);
diff --git a/src/plink.c b/src/plink.c
index a413440..9095c2d 100644
--- a/src/plink.c
+++ b/src/plink.c
@@ -59,7 +59,7 @@ SEXP readbed(SEXP Bed, SEXP Id, SEXP Snps, SEXP Rsel, SEXP Csel) {
SET_STRING_ELT(Package, 0, mkChar("snpStats"));
setAttrib(Class, install("package"), Package);
classgets(Result, Class);
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
unsigned char *result = RAW(Result);
R_xlen_t ncell = (R_xlen_t)nrow*(R_xlen_t)ncol;
diff --git a/src/read_uncertain.c b/src/read_uncertain.c
index 2e3b901..fd82617 100644
--- a/src/read_uncertain.c
+++ b/src/read_uncertain.c
@@ -137,7 +137,7 @@ SEXP read_mach(const SEXP Filename, const SEXP Colnames, const SEXP Nsubject) {
SET_STRING_ELT(Package, 0, mkChar("snpStats"));
setAttrib(Class, install("package"), Package);
classgets(Result, Class);
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
UNPROTECT(2);
/* Read in data */
@@ -278,7 +278,7 @@ SEXP read_impute(const SEXP Filename, const SEXP Rownames, const SEXP Nsnp,
SET_STRING_ELT(Package, 0, mkChar("snpStats"));
setAttrib(Class, install("package"), Package);
classgets(Result, Class);
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
UNPROTECT(2);
char buffer[BUFFERSIZE];
diff --git a/src/readped.c b/src/readped.c
index 4e8563e..020d05f 100644
--- a/src/readped.c
+++ b/src/readped.c
@@ -327,7 +327,7 @@ SEXP readped(SEXP filename, SEXP snp_names, SEXP missing, SEXP X, SEXP sep) {
else
SET_STRING_ELT(SMClass, 0, mkChar("SnpMatrix"));
classgets(Smat, SMClass);
- SET_S4_OBJECT(Smat);
+ Rf_asS4(Smat, TRUE, 0);
PROTECT(DimNames = allocVector(VECSXP, 2));
SET_VECTOR_ELT(DimNames, 0, duplicate(Rnames));
protected += 2;
diff --git a/src/single_snp_tests.c b/src/single_snp_tests.c
index a242e17..08bd098 100644
--- a/src/single_snp_tests.c
+++ b/src/single_snp_tests.c
@@ -53,8 +53,8 @@ SEXP score_single(const SEXP Phenotype, const SEXP Stratum, const SEXP Snps,
/* SNPs ---- should be a SnpMatrix or an XSnpMatrix */
const char *classS = NULL;
- if (TYPEOF(R_data_class(Snps, FALSE)) == STRSXP) {
- classS = CHAR(STRING_ELT(R_data_class(Snps, FALSE), 0));
+ if (TYPEOF(R_class(Snps)) == STRSXP) {
+ classS = CHAR(STRING_ELT(R_class(Snps), 0));
} else {
classS = CHAR(STRING_ELT(getAttrib(Snps, R_ClassSymbol), 0));
}
@@ -108,8 +108,8 @@ SEXP score_single(const SEXP Phenotype, const SEXP Stratum, const SEXP Snps,
index_db name_index;
if (!isNull(Rules)) {
const char *classR = NULL;
- if (TYPEOF(R_data_class(Rules, FALSE)) == STRSXP) {
- classR = CHAR(STRING_ELT(R_data_class(Rules, FALSE), 0));
+ if (TYPEOF(R_class(Rules)) == STRSXP) {
+ classR = CHAR(STRING_ELT(R_class(Rules), 0));
} else {
classR = CHAR(STRING_ELT(getAttrib(Rules, R_ClassSymbol), 0));
}
diff --git a/src/snp_summary.c b/src/snp_summary.c
index 9b53693..6f181c9 100644
--- a/src/snp_summary.c
+++ b/src/snp_summary.c
@@ -47,8 +47,8 @@ SEXP X_snp_summary(const SEXP Snps, const SEXP Rules, const SEXP Uncertain) {
SEXP ruleNames = R_NilValue;
if (!isNull(Rules)) {
const char *classR = NULL;
- if (TYPEOF(R_data_class(Rules, FALSE)) == STRSXP) {
- classR = CHAR(STRING_ELT(R_data_class(Rules, FALSE), 0));
+ if (TYPEOF(R_class(Rules)) == STRSXP) {
+ classR = CHAR(STRING_ELT(R_class(Rules), 0));
} else {
classR = CHAR(STRING_ELT(getAttrib(Rules, R_ClassSymbol), 0));
}
@@ -321,8 +321,8 @@ SEXP snp_summary(const SEXP Snps, const SEXP Rules, const SEXP Uncertain) {
SEXP ruleNames = R_NilValue;
if (!isNull(Rules)) {
const char *classR = NULL;
- if (TYPEOF(R_data_class(Rules, FALSE)) == STRSXP) {
- classR = CHAR(STRING_ELT(R_data_class(Rules, FALSE), 0));
+ if (TYPEOF(R_class(Rules)) == STRSXP) {
+ classR = CHAR(STRING_ELT(R_class(Rules), 0));
} else {
classR = CHAR(STRING_ELT(getAttrib(Rules, R_ClassSymbol), 0));
}
diff --git a/src/snpmpy.c b/src/snpmpy.c
index 2447048..56b84d9 100644
--- a/src/snpmpy.c
+++ b/src/snpmpy.c
@@ -34,7 +34,7 @@ SEXP snp_pre(const SEXP Snps, const SEXP Mat, const SEXP Frequency,
int *ifdiploid = NULL;
SEXP cl = GET_CLASS(Snps);
if (TYPEOF(cl) != STRSXP) {
- cl = R_data_class(Snps, FALSE); /* S4 way of getting class attribute */
+ cl = R_class(Snps); /* S4 way of getting class attribute */
}
if (!strcmp(CHAR(STRING_ELT(cl, 0)), "XSnpMatrix")) {
SEXP diploid = R_do_slot(Snps, mkString("diploid"));
@@ -55,7 +55,7 @@ SEXP snp_pre(const SEXP Snps, const SEXP Mat, const SEXP Frequency,
cl = GET_CLASS(Mat);
if (TYPEOF(cl) != STRSXP) {
- cl = R_data_class(Mat, FALSE); /* S4 way of getting class attribute */
+ cl = R_class(Mat); /* S4 way of getting class attribute */
}
if (strcmp(CHAR(STRING_ELT(cl, 0)), "matrix"))
error("Argument error - Mat wrong type");
@@ -161,7 +161,7 @@ SEXP snp_post(const SEXP Snps, const SEXP Mat, const SEXP Frequency,
int *ifdiploid = NULL;
SEXP cl = GET_CLASS(Snps);
if (TYPEOF(cl) != STRSXP) {
- cl = R_data_class(Snps, FALSE); /* S4 way of getting class attribute */
+ cl = R_class(Snps); /* S4 way of getting class attribute */
}
if (!strcmp(CHAR(STRING_ELT(cl, 0)), "XSnpMatrix")) {
SEXP diploid = R_do_slot(Snps, mkString("diploid"));
@@ -182,7 +182,7 @@ SEXP snp_post(const SEXP Snps, const SEXP Mat, const SEXP Frequency,
cl = GET_CLASS(Mat);
if (TYPEOF(cl) != STRSXP) {
- cl = R_data_class(Mat, FALSE); /* S4 way of getting class attribute */
+ cl = R_class(Mat); /* S4 way of getting class attribute */
}
if (strcmp(CHAR(STRING_ELT(cl, 0)), "matrix"))
error("Argument error - Mat wrong type");
diff --git a/src/structure.c b/src/structure.c
index 2a05635..1f9b62e 100644
--- a/src/structure.c
+++ b/src/structure.c
@@ -66,7 +66,7 @@ SEXP xxt(const SEXP Snps, const SEXP Strata, const SEXP Correct_for_missing,
int *ifDiploid = NULL;
SEXP cl = GET_CLASS(Snps);
if (TYPEOF(cl) != STRSXP) {
- cl = R_data_class(Snps, FALSE); /* S4 way of getting class attribute */
+ cl = R_class(Snps); /* S4 way of getting class attribute */
}
if (!strcmp(CHAR(STRING_ELT(cl, 0)), "XSnpMatrix")) {
SEXP Diploid = R_do_slot(Snps, mkString("diploid"));
@@ -409,7 +409,7 @@ SEXP ibs_count(const SEXP Snps, const SEXP Uncertain) {
int *ifDiploid = NULL;
SEXP cl = GET_CLASS(Snps);
if (TYPEOF(cl) != STRSXP) {
- cl = R_data_class(Snps, FALSE); /* S4 way of getting class attribute */
+ cl = R_class(Snps); /* S4 way of getting class attribute */
}
if (!strcmp(CHAR(STRING_ELT(cl, 0)), "XSnpMatrix")) {
SEXP Diploid = R_do_slot(Snps, mkString("diploid"));
diff --git a/src/subset.c b/src/subset.c
index cc7992d..4c2e2c4 100644
--- a/src/subset.c
+++ b/src/subset.c
@@ -55,7 +55,7 @@ SEXP subset(SEXP X, SEXP Rows, SEXP Cols) {
SET_STRING_ELT(Package, 0, mkChar("snpStats"));
setAttrib(Rclass, install("package"), Package);
setAttrib(Result, R_ClassSymbol, Rclass);
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
PROTECT(Rdim = allocVector(INTSXP, 2));
int *rdim = INTEGER(Rdim);
rdim[0] = nrows;
diff --git a/src/switch.c b/src/switch.c
index 60f7e6c..e2a3287 100644
--- a/src/switch.c
+++ b/src/switch.c
@@ -16,7 +16,7 @@ SEXP test_switch(const SEXP Snps, const SEXP Snps2, const SEXP Split,
int *female = NULL;
SEXP cl = GET_CLASS(Snps);
if (TYPEOF(cl) != STRSXP) {
- cl = R_data_class(Snps, FALSE); /* S4 way of getting class attribute */
+ cl = R_class(Snps); /* S4 way of getting class attribute */
}
SEXP diploid = NULL;
if (!strcmp(CHAR(STRING_ELT(cl, 0)), "XSnpMatrix")) {
diff --git a/src/tdt.c b/src/tdt.c
index cece0d9..000d1c7 100644
--- a/src/tdt.c
+++ b/src/tdt.c
@@ -43,8 +43,8 @@ SEXP score_tdt(const SEXP Proband, const SEXP Father, const SEXP Mother,
/* SNPs ---- should be a SnpMatrix or an XSnpMatrix */
const char *classS = NULL;
- if (TYPEOF(R_data_class(Snps, FALSE)) == STRSXP) {
- classS = CHAR(STRING_ELT(R_data_class(Snps, FALSE), 0));
+ if (TYPEOF(R_class(Snps)) == STRSXP) {
+ classS = CHAR(STRING_ELT(R_class(Snps), 0));
} else {
classS = CHAR(STRING_ELT(getAttrib(Snps, R_ClassSymbol), 0));
}
@@ -84,8 +84,8 @@ SEXP score_tdt(const SEXP Proband, const SEXP Father, const SEXP Mother,
GTYPE **gt2ht = NULL;
if (!isNull(Rules)) {
const char *classR = NULL;
- if (TYPEOF(R_data_class(Rules, FALSE)) == STRSXP) {
- classR = CHAR(STRING_ELT(R_data_class(Rules, FALSE), 0));
+ if (TYPEOF(R_class(Rules)) == STRSXP) {
+ classR = CHAR(STRING_ELT(R_class(Rules), 0));
} else {
classR = CHAR(STRING_ELT(getAttrib(Rules, R_ClassSymbol), 0));
}
diff --git a/src/testBig.c b/src/testBig.c
index a6eb76f..3dca1da 100644
--- a/src/testBig.c
+++ b/src/testBig.c
@@ -18,7 +18,7 @@ SEXP snp_big(SEXP nrow, SEXP ncol) {
SET_STRING_ELT(Package, 0, mkChar("snpStats"));
setAttrib(Class, install("package"), Package);
classgets(Result, Class);
- SET_S4_OBJECT(Result);
+ Rf_asS4(Result, TRUE, 0);
PROTECT(Dnames = allocVector(VECSXP, 2));
setAttrib(Result, R_DimNamesSymbol, Dnames);
--
2.52.0
@@ -0,0 +1,149 @@
From a505297e347aa72510ecfc83e7009668693e1260 Mon Sep 17 00:00:00 2001
From: vjcitn <stvjc@channing.harvard.edu>
Date: Fri, 13 Mar 2026 04:06:37 -0400
Subject: [PATCH 2/2] fixed IS_S4_OBJECT
---
src/bind.c | 4 ++--
src/fst.c | 2 +-
src/glm_test_R.c | 8 ++++----
src/single_snp_tests.c | 2 +-
src/snp_summary.c | 6 +++---
src/tdt.c | 2 +-
6 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/src/bind.c b/src/bind.c
index fa87e7c..b3ef928 100644
--- a/src/bind.c
+++ b/src/bind.c
@@ -22,7 +22,7 @@ SEXP snp_rbind(SEXP args) {
Class = R_class(This);
}
const char *cli = CHAR(STRING_ELT(Class, 0));
- if(!IS_S4_OBJECT(This)) {
+ if(!Rf_isS4(This)) {
warning("rbinding SnpMatrix object without S4 object bit");
}
int nci = ncols(This);
@@ -151,7 +151,7 @@ SEXP snp_cbind(SEXP args) {
Class = R_class(This);
}
const char *cli = CHAR(STRING_ELT(Class, 0));
- if(!IS_S4_OBJECT(This)) {
+ if(!Rf_isS4(This)) {
warning("cbinding SnpMatrix object without S4 object bit");
}
SEXP Di = R_NilValue;
diff --git a/src/fst.c b/src/fst.c
index bbc39c0..5451a51 100644
--- a/src/fst.c
+++ b/src/fst.c
@@ -23,7 +23,7 @@ SEXP Fst(SEXP Snps, SEXP Group, SEXP HapMap) {
ifX = 0; /* to avoid warning message */
error("Argument error - class(Snps)");
}
- if(!IS_S4_OBJECT(Snps)) {
+ if(!Rf_isS4(Snps)) {
error("Argument error - Snps is not S4 object");
}
diff --git a/src/glm_test_R.c b/src/glm_test_R.c
index dc8ebef..fe9d9c8 100644
--- a/src/glm_test_R.c
+++ b/src/glm_test_R.c
@@ -24,7 +24,7 @@ SEXP snp_lhs_score(const SEXP Y, const SEXP X, const SEXP Stratum,
} else {
classY = CHAR(STRING_ELT(getAttrib(Y, R_ClassSymbol), 0));
}
- if(!IS_S4_OBJECT(Y)) {
+ if(!Rf_isS4(Y)) {
error("Y in snp_lhs_score is missing S4 Object bit");
}
int ifX = 0;
@@ -443,7 +443,7 @@ SEXP snp_rhs_score(SEXP Y, SEXP family, SEXP link,
ifX = 1;
else
error("Argument error - class(Z)");
- if (!IS_S4_OBJECT(Z)) {
+ if (!Rf_isS4(Z)) {
error("Z in snp_rhs_score is missing S4 Object bit");
}
@@ -1008,7 +1008,7 @@ SEXP snp_lhs_estimate(const SEXP Y, const SEXP X, const SEXP Stratum,
} else {
classY = CHAR(STRING_ELT(getAttrib(Y, R_ClassSymbol), 0));
}
- if(!IS_S4_OBJECT(Y)) {
+ if(!Rf_isS4(Y)) {
error("Y in snp_lhs_score is missing S4 Object bit");
}
int ifX = 0;
@@ -1365,7 +1365,7 @@ SEXP snp_rhs_estimate(SEXP Y, SEXP family, SEXP link,
} else {
classZ = CHAR(STRING_ELT(getAttrib(Z, R_ClassSymbol), 0));
}
- if(!IS_S4_OBJECT(Z)) {
+ if(!Rf_isS4(Z)) {
error("Z in snp_rhs_score is missing S4 Object bit");
}
int ifX = 0;
diff --git a/src/single_snp_tests.c b/src/single_snp_tests.c
index 08bd098..b577300 100644
--- a/src/single_snp_tests.c
+++ b/src/single_snp_tests.c
@@ -67,7 +67,7 @@ SEXP score_single(const SEXP Phenotype, const SEXP Stratum, const SEXP Snps,
ifX = 0; /* to avoid warning message */
error("Argument error - class(Snps)");
}
- if(!IS_S4_OBJECT(Snps)) {
+ if(!Rf_isS4(Snps)) {
error("Argument error - Snps is not S4 object");
}
diff --git a/src/snp_summary.c b/src/snp_summary.c
index 6f181c9..c2f1c73 100644
--- a/src/snp_summary.c
+++ b/src/snp_summary.c
@@ -24,7 +24,7 @@ SEXP X_snp_summary(const SEXP Snps, const SEXP Rules, const SEXP Uncertain) {
if (Snps == R_NilValue) {
error("Argument error - Snps = NULL");
}
- if(!IS_S4_OBJECT(Snps)) {
+ if(!Rf_isS4(Snps)) {
error("Argument error - Snps is not S4 object");
}
const unsigned char *snps = RAW(Snps);
@@ -298,7 +298,7 @@ SEXP snp_summary(const SEXP Snps, const SEXP Rules, const SEXP Uncertain) {
if (Snps == R_NilValue) {
error("Argument error - Snps = NULL");
}
- if(!IS_S4_OBJECT(Snps)) {
+ if(!Rf_isS4(Snps)) {
error("Argument error - Snps is not S4 object");
}
const unsigned char *snps = RAW(Snps);
@@ -538,7 +538,7 @@ SEXP row_summary(const SEXP Snps) {
if (Snps == R_NilValue) {
error("Argument error - Snps = NULL");
}
- if(!IS_S4_OBJECT(Snps)) {
+ if(!Rf_isS4(Snps)) {
error("Argument error - Snps is not S4 object");
}
const unsigned char *snps = RAW(Snps);
diff --git a/src/tdt.c b/src/tdt.c
index 000d1c7..634e1b3 100644
--- a/src/tdt.c
+++ b/src/tdt.c
@@ -57,7 +57,7 @@ SEXP score_tdt(const SEXP Proband, const SEXP Father, const SEXP Mother,
ifX = 0; /* to avoid warning message */
error("Argument error - class(Snps)");
}
- if(!IS_S4_OBJECT(Snps)) {
+ if(!Rf_isS4(Snps)) {
error("Argument error - Snps is not S4 object");
}
--
2.52.0
@@ -0,0 +1,259 @@
From 633aa6e3f671e9b58b3508b3944ff0dd45f34f8a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Herv=C3=A9=20Pag=C3=A8s?= <hpages.on.github@gmail.com>
Date: Thu, 5 Mar 2026 14:58:23 -0800
Subject: [PATCH] SparseArray 1.11.11: Get rid of non-API calls to R
From 65383c02f986832b1416c6ad39da800d8ced05df Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Herv=C3=A9=20Pag=C3=A8s?= <hpages.on.github@gmail.com>
Date: Tue, 31 Mar 2026 11:38:20 -0700
Subject: [PATCH] SparseArray 1.11.13: Use R_getVar() instead of findVar() when
R >= 4.6.0
---
DESCRIPTION | 2 +-
src/Makevars | 1 +
src/Rvector_utils.c | 15 ++++++++-------
src/SparseArray_aperm.c | 2 +-
src/SparseArray_matrixStats.c | 5 +++--
src/SparseArray_subassignment.c | 6 +++---
src/SparseVec.h | 3 ++-
src/leaf_utils.c | 5 +++--
src/test.c | 3 +++
9 files changed, 25 insertions(+), 17 deletions(-)
diff --git a/src/Makevars b/src/Makevars
index 0ee3615..1c5b86e 100644
--- a/src/Makevars
+++ b/src/Makevars
@@ -1,2 +1,3 @@
+## See https://cran.r-project.org/doc/manuals/r-release/R-exts.html#OpenMP-support
PKG_CFLAGS = $(SHLIB_OPENMP_CFLAGS)
PKG_LIBS = $(SHLIB_OPENMP_CFLAGS)
diff --git a/src/Rvector_utils.c b/src/Rvector_utils.c
index ad80168..7e61ac1 100644
--- a/src/Rvector_utils.c
+++ b/src/Rvector_utils.c
@@ -4,6 +4,7 @@
****************************************************************************/
#include "Rvector_utils.h"
+#include <R_ext/Altrep.h> /* only for DATAPTR_RW() */
#include <string.h> /* for memset() and memcpy() */
@@ -242,7 +243,7 @@ void _fill_Rvector_block_with_val(SEXP Rvector,
(const SEXP) val);
return;
}
- _set_elts_to_val(TYPEOF(Rvector), DATAPTR(Rvector),
+ _set_elts_to_val(TYPEOF(Rvector), DATAPTR_RW(Rvector),
block_offset, block_len, val);
}
@@ -260,7 +261,7 @@ void _fill_Rvector_block_with_zeros(SEXP Rvector,
R_NilValue);
return;
}
- _set_elts_to_zero(Rtype, DATAPTR(Rvector), block_offset, block_len);
+ _set_elts_to_zero(Rtype, DATAPTR_RW(Rvector), block_offset, block_len);
return;
}
@@ -268,7 +269,7 @@ void _fill_Rvector_block_with_zeros(SEXP Rvector,
void _fill_Rvector_block_with_ones(SEXP Rvector,
R_xlen_t block_offset, R_xlen_t block_len)
{
- _set_elts_to_one(TYPEOF(Rvector), DATAPTR(Rvector),
+ _set_elts_to_one(TYPEOF(Rvector), DATAPTR_RW(Rvector),
block_offset, block_len);
return;
}
@@ -277,7 +278,7 @@ void _fill_Rvector_block_with_ones(SEXP Rvector,
void _fill_Rvector_block_with_minus_one(SEXP Rvector,
R_xlen_t block_offset, R_xlen_t block_len)
{
- _set_elts_to_minus_one(TYPEOF(Rvector), DATAPTR(Rvector),
+ _set_elts_to_minus_one(TYPEOF(Rvector), DATAPTR_RW(Rvector),
block_offset, block_len);
return;
}
@@ -293,7 +294,7 @@ void _fill_Rvector_block_with_NA(SEXP Rvector,
NA_STRING);
return;
}
- _set_elts_to_NA(Rtype, DATAPTR(Rvector), block_offset, block_len);
+ _set_elts_to_NA(Rtype, DATAPTR_RW(Rvector), block_offset, block_len);
return;
}
@@ -460,7 +461,7 @@ void _fill_Rvector_subset_with_zeros(SEXP Rvector,
R_NilValue);
return;
}
- _set_selected_elts_to_zero(Rtype, DATAPTR(Rvector),
+ _set_selected_elts_to_zero(Rtype, DATAPTR_RW(Rvector),
selection, selection_len, selection_offset);
return;
}
@@ -470,7 +471,7 @@ void _fill_Rvector_subset_with_ones(SEXP Rvector,
const int *selection, int selection_len,
R_xlen_t selection_offset)
{
- _set_selected_elts_to_one(TYPEOF(Rvector), DATAPTR(Rvector),
+ _set_selected_elts_to_one(TYPEOF(Rvector), DATAPTR_RW(Rvector),
selection, selection_len, selection_offset);
return;
}
diff --git a/src/SparseArray_aperm.c b/src/SparseArray_aperm.c
index 0bd092e..bbeaf2c 100644
--- a/src/SparseArray_aperm.c
+++ b/src/SparseArray_aperm.c
@@ -721,7 +721,7 @@ static SEXP REC_grow_output_tree(const int *dim, int ndim,
const type *nzvals_p = NULL; /* -Wmaybe-uninitialized */ \
type v; \
if (nzvals != R_NilValue) { /* standard leaf */ \
- nzvals_p = (const type *) DATAPTR(nzvals); \
+ nzvals_p = DATAPTR_RO(nzvals); \
} else { /* lacunar leaf */ \
v = type ## 1; \
} \
diff --git a/src/SparseArray_matrixStats.c b/src/SparseArray_matrixStats.c
index b626553..debacf6 100644
--- a/src/SparseArray_matrixStats.c
+++ b/src/SparseArray_matrixStats.c
@@ -16,6 +16,7 @@
#include "leaf_utils.h"
#include "SparseArray_summarization.h"
+#include <R_ext/Altrep.h> /* only for DATAPTR_RW() */
#include <string.h> /* for memcpy() and memset() */
@@ -272,7 +273,7 @@ SEXP C_colStats_SVT(SEXP x_dim, SEXP x_dimnames, SEXP x_type,
int warn = 0;
REC_colStats_SVT(x_SVT, x_bg_is_na, INTEGER(x_dim), LENGTH(x_dim),
&summarize_op,
- DATAPTR(ans), ans_Rtype,
+ DATAPTR_RW(ans), ans_Rtype,
out_incs, ans_ndim, pardim,
&warn);
if (warn)
@@ -1175,7 +1176,7 @@ SEXP C_rowStats_SVT(SEXP x_dim, SEXP x_dimnames, SEXP x_type,
SVT_rowMinsMaxs(x_SVT, x_Rtype, x_bg_is_na,
INTEGER(x_dim), LENGTH(x_dim),
opcode, narm,
- DATAPTR(ans), LENGTH(ans), ans_Rtype,
+ DATAPTR_RW(ans), LENGTH(ans), ans_Rtype,
out_incs, ans_ndim, nstrata);
break;
case SUM_OPCODE:
diff --git a/src/SparseArray_subassignment.c b/src/SparseArray_subassignment.c
index 4cf1c3d..c3b2d5e 100644
--- a/src/SparseArray_subassignment.c
+++ b/src/SparseArray_subassignment.c
@@ -966,13 +966,13 @@ static inline int next_coords0(NindexIterator *Nindex_iter)
midx_p++;
coords0_p++;
}
- printf("coords0: ");
+ //printf("coords0: ");
coords0_p = Nindex_iter->coords0_buf;
for (along = Nindex_iter->margin; along < Nindex_iter->ndim; along++) {
- printf(" %3d", *coords0_p);
+ //printf(" %3d", *coords0_p);
coords0_p++;
}
- printf("\n");
+ //printf("\n");
return 1;
}
diff --git a/src/SparseVec.h b/src/SparseVec.h
index 894709b..73cd841 100644
--- a/src/SparseVec.h
+++ b/src/SparseVec.h
@@ -5,6 +5,7 @@
#include "Rvector_utils.h"
+#include <R_ext/Altrep.h> /* only for DATAPTR_RW() */
#include <limits.h> /* for INT_MAX */
@@ -122,7 +123,7 @@ static inline SparseVec toSparseVec(SEXP nzvals, SEXP nzoffs,
if (IS_STRSXP_OR_VECSXP(Rtype)) {
sv.nzvals = nzvals;
} else {
- sv.nzvals = DATAPTR(nzvals);
+ sv.nzvals = DATAPTR_RW(nzvals);
}
}
sv.nzoffs = INTEGER(nzoffs);
diff --git a/src/leaf_utils.c b/src/leaf_utils.c
index e8066c3..c5ff3aa 100644
--- a/src/leaf_utils.c
+++ b/src/leaf_utils.c
@@ -10,6 +10,7 @@
#include "SparseVec_subsetting.h"
#include "SparseVec_subassignment.h"
+#include <R_ext/Altrep.h> /* only for DATAPTR_RW() */
#include <string.h> /* for memcpy() */
@@ -129,7 +130,7 @@ SEXP _make_leaf_from_two_arrays(SEXPTYPE Rtype,
return ans;
}
ans_nzvals = PROTECT(allocVector(Rtype, nzcount));
- memcpy(DATAPTR(ans_nzvals), nzvals_p, Rtype_size * nzcount);
+ memcpy(DATAPTR_RW(ans_nzvals), nzvals_p, Rtype_size * nzcount);
}
SEXP ans = zip_leaf(ans_nzvals, ans_nzoffs, 0);
UNPROTECT(2);
@@ -156,7 +157,7 @@ static SEXP make_leaf_from_Rvector_subset(SEXP Rvector,
if (avoid_copy_if_all_selected &&
selection_offset == 0 && selection_len == XLENGTH(Rvector) &&
- ATTRIB(Rvector) == R_NilValue)
+ !ANY_ATTRIB(Rvector))
{
/* The full 'Rvector' is selected so can be reused as-is
with no need to copy the selected elements to a new SEXP. */
diff --git a/src/test.c b/src/test.c
index 493538f..2205fa2 100644
--- a/src/test.c
+++ b/src/test.c
@@ -111,6 +111,9 @@ SEXP C_simple_omp_parallel_for_loop(SEXP nloop)
for (int i = 0; i < INTEGER(nloop)[0]; i++) {
#ifdef _OPENMP
int thread_num = omp_get_thread_num();
+ /* Can't use Rprintf() here because it's not thread-safe (it
+ can trigger R's garbage collector which itself is not
+ thread-safe). */
printf("thread_num = %d\n", thread_num);
#endif
}
diff --git a/src/readSparseCSV.c b/src/readSparseCSV.c
index a3d8da0..de1cb95 100644
--- a/src/readSparseCSV.c
+++ b/src/readSparseCSV.c
@@ -11,6 +11,7 @@
#include "ExtendableJaggedArray.h"
#include <R_ext/Connections.h>
+#include <Rversion.h>
#include <string.h> /* for memcpy() */
@@ -111,7 +112,11 @@ static SEXP dump_env_as_list_or_R_NilValue(SEXP env, int ans_len)
is_empty = 1;
for (i = 0; i < ans_len; i++) {
key = PROTECT(idx0_to_key(i));
+#if R_VERSION < R_Version(4, 6, 0)
ans_elt = findVar(install(translateChar(key)), env);
+#else
+ ans_elt = R_getVar(install(translateChar(key)), env, FALSE);
+#endif
UNPROTECT(1);
if (ans_elt == R_UnboundValue)
continue;
@@ -1,46 +0,0 @@
From 1654599ea228efdd7b378ff44ed4e19d547641e0 Mon Sep 17 00:00:00 2001
From: Bradley Lowekamp <blowekamp@mail.nih.gov>
Date: Wed, 29 Apr 2026 16:22:49 +0000
Subject: [PATCH 1/8] BUG: Replace removed CLOENV with R_ClosureEnv for R 4.6.0
compatibility
R 4.6.0 removed the non-API macro CLOENV from its public headers.
The replacement R_ClosureEnv() was added in R 4.5.0. Add a version-
guarded backport so that builds against older R versions (< 4.5.0)
continue to work.
Fixes #2574
---
Wrapping/R/sitkRCommand.cxx | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/Wrapping/R/sitkRCommand.cxx b/Wrapping/R/sitkRCommand.cxx
index 216a9327b8..c3a62bead9 100644
--- a/Wrapping/R/sitkRCommand.cxx
+++ b/Wrapping/R/sitkRCommand.cxx
@@ -19,10 +19,15 @@
// The python header defines _POSIX_C_SOURCE without a preceding #undef
#include <iostream>
#include <Rinternals.h>
+#include <Rversion.h>
#include "sitkRCommand.h"
#include "sitkExceptionObject.h"
+// R_ClosureEnv was added in R 4.5.0, CLOENV was removed in R 4.6.0
+#if R_VERSION < R_Version(4, 5, 0)
+# define R_ClosureEnv(x) CLOENV(x)
+#endif
namespace itk
{
@@ -86,7 +91,7 @@ RCommand::SetFunctionClosure(SEXP FN)
// element
R_fcall = PROTECT(Rf_lang1(this->m_FunctionClosure));
this->SetCallbackRCallable(R_fcall);
- this->SetCallbackREnviron(CLOENV(this->m_FunctionClosure));
+ this->SetCallbackREnviron(R_ClosureEnv(this->m_FunctionClosure));
UNPROTECT(1);
}
}
@@ -1,171 +0,0 @@
From 494259f19b3ca4ad0b11c858bc3ba9b587fa2ed5 Mon Sep 17 00:00:00 2001
From: Bradley Lowekamp <blowekamp@mail.nih.gov>
Date: Thu, 30 Apr 2026 16:09:54 +0000
Subject: [PATCH 1/2] [R] Fix compilation with R 4.6.0 which removed non-API
macros #3407
R 4.6.0 (April 2025) removed the non-API macro SET_S4_OBJECT and made
CHARACTER_POINTER return a const pointer, breaking compilation of SWIG
generated R code.
Replace with proper R API equivalents:
- SET_S4_OBJECT(x) -> x = Rf_asS4(x, TRUE, 0) (3 sites in rrun.swg)
- CHARACTER_POINTER(v)[i] = ... -> SET_STRING_ELT(v, i, ...) (2 sites in std_vector.i)
- CHARACTER_POINTER() via pstr -> STRING_ELT(, i) directly (argcargv.i)
All replacement APIs have been available since R 2.x so no version
guards are required.
---
CHANGES.current | 6 ++++++
Lib/r/argcargv.i | 4 +---
Lib/r/rrun.swg | 6 +++---
Lib/r/std_vector.i | 4 ++--
4 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/Lib/r/argcargv.i b/Lib/r/argcargv.i
index 73380f4e2c9..af7aa14d66c 100644
--- a/Lib/r/argcargv.i
+++ b/Lib/r/argcargv.i
@@ -14,7 +14,6 @@
%}
%typemap(in) (int ARGC, char **ARGV) {
$1_ltype i;
- SEXP *pstr;
if ($input == R_NilValue) {
/* Empty array */
$1 = 0;
@@ -22,14 +21,13 @@
SWIG_exception_fail(SWIG_RuntimeError, "Wrong array type.");
} else {
$1 = Rf_length($input);
- pstr = CHARACTER_POINTER($input);
}
$2 = ($2_ltype) malloc(($1+1)*sizeof($*2_ltype));
if ($2 == NULL) {
SWIG_exception_fail(SWIG_MemoryError, "Memory allocation failed.");
}
for (i = 0; i < $1; i++) {
- $2[i] = ($*2_ltype)STRING_VALUE(pstr[i]);
+ $2[i] = ($*2_ltype)STRING_VALUE(STRING_ELT($input, i));
}
$2[i] = NULL;
}
diff --git a/Lib/r/rrun.swg b/Lib/r/rrun.swg
index 4c03d5884d7..5dee391f32f 100644
--- a/Lib/r/rrun.swg
+++ b/Lib/r/rrun.swg
@@ -267,7 +267,7 @@ SWIG_MakePtr(void *ptr, const char *typeName, int flags)
R_RegisterCFinalizer(external, R_SWIG_ReferenceFinalizer);
r_obj = SET_SLOT(r_obj, Rf_mkString((char *) "ref"), external);
- SET_S4_OBJECT(r_obj);
+ r_obj = Rf_asS4(r_obj, TRUE, 0);
Rf_unprotect(2);
return(r_obj);
@@ -285,7 +285,7 @@ R_SWIG_create_SWIG_R_Array(const char *typeName, SEXP ref, int len)
Rf_protect(arr = R_do_slot_assign(arr, Rf_mkString("dims"), Rf_ScalarInteger(len)));
Rf_unprotect(3);
- SET_S4_OBJECT(arr);
+ arr = Rf_asS4(arr, TRUE, 0);
return arr;
}
@@ -308,7 +308,7 @@ SWIG_R_NewPointerObj(void *ptr, swig_type_info *type, int flags) {
}
rptr = R_MakeExternalPtr(ptr,
R_MakeExternalPtr(type, R_NilValue, R_NilValue), R_NilValue);
- SET_S4_OBJECT(rptr);
+ rptr = Rf_asS4(rptr, TRUE, 0);
return rptr;
}
diff --git a/Lib/r/std_vector.i b/Lib/r/std_vector.i
index 6b32c9f6fc2..7db6d3814ac 100644
--- a/Lib/r/std_vector.i
+++ b/Lib/r/std_vector.i
@@ -203,7 +203,7 @@
PROTECT(result = Rf_allocVector(STRSXP, val->size()));
for (unsigned pos = 0; pos < val->size(); pos++)
{
- CHARACTER_POINTER(result)[pos] = Rf_mkChar(((*val)[pos]).c_str());
+ SET_STRING_ELT(result, pos, Rf_mkChar(((*val)[pos]).c_str()));
}
UNPROTECT(1);
return(result);
@@ -669,7 +669,7 @@
// Fill the R vector
for (unsigned vpos = 0; vpos < val->at(pos).size(); ++vpos)
{
- CHARACTER_POINTER(VECTOR_ELT(result, pos))[vpos] = Rf_mkChar(val->at(pos).at(vpos).c_str());
+ SET_STRING_ELT(VECTOR_ELT(result, pos), vpos, Rf_mkChar(val->at(pos).at(vpos).c_str()));
}
}
UNPROTECT(1);
From 77d8826b46a967af158e982d56008aea2c8f6cb1 Mon Sep 17 00:00:00 2001
From: Erez Geva <ErezGeva2@gmail.com>
Date: Fri, 1 May 2026 18:47:42 +0200
Subject: [PATCH 2/2] Add versioned `R` testing
Signed-off-by: Erez Geva <ErezGeva2@gmail.com>
---
.github/workflows/linux.yml | 7 +++++++
Tools/CI-linux-install.sh | 20 +++++++++++++++++++-
configure.ac | 11 +++++++++++
3 files changed, 37 insertions(+), 1 deletion(-)
diff --git a/Tools/CI-linux-install.sh b/Tools/CI-linux-install.sh
index ad74ad3f21f..8f459899906 100644
--- a/Tools/CI-linux-install.sh
+++ b/Tools/CI-linux-install.sh
@@ -181,7 +181,25 @@ case "$SWIGLANG" in
fi
;;
"r")
- $RETRY sudo apt-get -qq install r-base
+ if [[ -n "$VER" ]]; then
+ # Should helps with old version, but do not work
+ #$RETRY sudo apt-get -qq remove r-base r-base-core r-base-dev r-base-html r-doc-html r-recommended
+ sudo sed -i 's%^# deb-src %deb-src %' /etc/apt/sources.list
+ sudo sed -i 's%^Types: deb$%Types: deb deb-src%' /etc/apt/sources.list.d/*
+ $RETRY sudo apt-get -qq update
+ $RETRY sudo apt-get -qq build-dep r-base
+ r_build=`mktemp -d`
+ r_tarball=R-$VER.tar.gz
+ URL=https://cran.r-project.org/src/base/R-${VER:0:1}
+ $RETRY wget $URL/$r_tarball
+ tar -xf "$r_tarball" --strip-components=1 -C "$r_build"
+ cd "$r_build"
+ ./configure
+ make
+ sudo make install
+ else
+ $RETRY sudo apt-get -qq install r-base
+ fi
;;
"ruby")
if [[ "$VER" ]]; then
diff --git a/configure.ac b/configure.ac
index e113f4b877c..e309b36ff45 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2292,6 +2292,17 @@ else
if test "x$RBIN" = xyes; then
AC_PATH_PROG(RBIN, R)
fi
+if test -n "$RBIN" && test -x "$RBIN"; then
+ r_min_version=2.4.0
+ AC_MSG_CHECKING([for R version])
+ r_version=`R --version | grep 'R version' | sed 's%^R version %%;s% (.*%%'`
+ AS_VERSION_COMPARE(["$r_version"], ["$r_min_version"],
+ [AC_MSG_RESULT([older then $r_min_version])
+ AS_UNSET([RBIN])], dnl bellow r_min_version
+ [AC_MSG_RESULT([$r_version])], dnl equal r_min_version
+ [AC_MSG_RESULT([$r_version])]) dnl above r_min_version
+fi
+
fi
AC_SUBST(RBIN)
+2 -2
View File
@@ -237,7 +237,7 @@ it.")
(define-public trealla
(package
(name "trealla")
(version "2.100.24")
(version "2.100.10")
(source
(origin
(method git-fetch)
@@ -246,7 +246,7 @@ it.")
(url "https://github.com/trealla-prolog/trealla")
(commit (string-append "v" version))))
(sha256
(base32 "09jm5hs2lv481yzf76p646jx6467zx98bbbsg24xh3glk1f9gaaq"))
(base32 "09aqszk3kwjb8qznaywzvhir3nxkf6mkib68mkyn4f7siswb3apg"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs
-2
View File
@@ -32,7 +32,6 @@
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-compression)
@@ -334,7 +333,6 @@ and inhibition of alerts.")
(build-system go-build-system)
(arguments
(list
#:go go-1.24
#:skip-build? #t
;; XXX: Check if the most of the tests may be enabled:
;; api/prometheus/v1/api_test.go:1063:23: cannot use 1634644800304
+2 -14
View File
@@ -18311,21 +18311,9 @@ is binding LibSass.")
(sha256
(base32 "1fj4zkcnx3mk7kbnf4d6pjgv331n17wzpphpwdnmr498ghbsph9k"))))
(build-system pyproject-build-system)
(arguments
(list
#:tests? #f ;circular dependency with python-aiohttp
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'python3.12-compatibility
(lambda _
(substitute* '("idna_ssl.py"
"tests/test_base.py")
(("import ssl")
"import ssl\nimport urllib3")
(("ssl.match_hostname")
"urllib3.util.ssl_match_hostname")))))))
(arguments (list #:tests? #f)) ;circular dependency with python-aiohttp
(native-inputs (list python-setuptools))
(propagated-inputs (list python-idna python-urllib3))
(propagated-inputs (list python-idna))
(home-page "https://github.com/aio-libs/idna-ssl")
(synopsis "Support Unicode(idna) domains for Python's @code{ssl} module")
(description
+2 -2
View File
@@ -1255,7 +1255,7 @@ base, via the @file{pythoncapi_compat.h} header file.")
(define-public micropython
(package
(name "micropython")
(version "1.28.0")
(version "1.26.1")
(source
(origin
(method url-fetch)
@@ -1263,7 +1263,7 @@ base, via the @file{pythoncapi_compat.h} header file.")
"releases/download/v" version
"/micropython-" version ".tar.xz"))
(sha256
(base32 "05d2gd3g8v3paxf4fin4cv5scgnc4yl0jdahpjs37nmqaybcahsf"))
(base32 "165c8g60f5zf82gw2d94snyjmcgn999jn4i8ngyc0wk2vwa6bghj"))
(modules '((guix build utils)))
(snippet
'(begin
+30 -31
View File
@@ -202,7 +202,7 @@
;;
;; CODE:
(define %racket-version "9.1") ; Remember to update chez-scheme-for-racket!
(define %racket-version "8.18") ; Remember to update chez-scheme-for-racket!
(define %racket-commit
(string-append "v" %racket-version))
(define %racket-origin
@@ -212,7 +212,7 @@
(url "https://github.com/racket/racket")
(commit %racket-commit)))
(sha256
(base32 "1yc6lkydg32998ajnqws83zakksmbp3hb21spq0sfaq4v7wg2ng6"))
(base32 "0m38im7a3b3w7sdl15vpsrx7dxw5iz22f1zzffy1bkbbqz45pm87"))
(file-name (git-file-name "racket" %racket-version))
(patches (search-patches "racket-chez-scheme-bin-sh.patch"
"racket-launcher-config-dir.patch"
@@ -695,7 +695,6 @@ DrRacket IDE, are not included.")
("net-lib" "pkgs/net-lib")
("racket-doc" "pkgs/racket-doc")
("racket-index" "pkgs/racket-index")
("racket-index-exe" "pkgs/racket-index-exe")
("scheme-doc" "pkgs/scheme-doc")
("sandbox-lib" "pkgs/sandbox-lib")
("sequence-tools-lib" "pkgs/sequence-tools-lib")
@@ -707,10 +706,10 @@ DrRacket IDE, are not included.")
"class-iop" (base32 "08z57q83cr7wnh6g8ah3hdhmsmf9zp1jfs7yvxv188l3hzvygy5l")
'("class-iop-lib"))
(simple-racket-origin
"compatibility" (base32 "0q5k4p44sf2y4gl69js11qvicyzqwy16ry74bvj1vrn8i8xws55b")
"compatibility" (base32 "1d1py9wizi4jnzak7b6d0p9filxv1x9mlx5gsp3yhcjajigq182p")
'("compatibility" "compatibility-doc" "compatibility-lib"))
(simple-racket-origin
"contract-profile" (base32 "068z8flwcznqg0bjk227i2qapqbciyrckgqf8mvk57gxmr6zh3d3")
"contract-profile" (base32 "1xm2z8g0dpv5d9h2sg680vx1a8ix9gbsdpxxb8qv1w7akp73paj3")
'(("contract-profile" ".")))
(simple-racket-origin
"data" (base32 "11ai6c9h0brbblc6xn045ajj4gyrvbjpk1pqcqm1m0dy9q2rzd4a")
@@ -719,7 +718,7 @@ DrRacket IDE, are not included.")
"datalog" (base32 "0nf6cy4djpyhfvgpa6yn72apbz9s83gp0qg95pzjd0az4v6qwq1s")
'(("datalog" ".")))
(simple-racket-origin
"db" (base32 "09f2wysqmgs46nbzmwrhbn6jqnkpj6bsabm6s6kw8qmp6azca9q2")
"db" (base32 "0qwl8gyd71sm56kcs021g99cpw5bibaycvk1x7ng69jhkylg6q6f")
'("db" "db-doc" "db-lib"))
(simple-racket-origin
"deinprogramm" (base32 "1zkasf94gzp97q0fhrd065d56zv10h0j0ncmaghzglkmjj8c3vvx")
@@ -732,10 +731,10 @@ DrRacket IDE, are not included.")
"distributed-places" (base32 "1dajpkj9balqcpv6cdk9hwjz592h1vq8rrx5vncariiac4vbdpa0")
'("distributed-places" "distributed-places-doc" "distributed-places-lib"))
(simple-racket-origin
"draw" (base32 "157r861rx2avbjpqhrrxwdqxwf5ksvw38km3pw7rxiwvwh9nys8k")
"draw" (base32 "1nny22h0hnd40qs3ndkhfrgg793y6f4gl9jpdz1g2k0cpr3818rg")
'("draw" "draw-doc" "draw-lib"))
(simple-racket-origin
"drracket" (base32 "17sszhx5nd549w7kj6pd3c3cyjps2swbp7rmg36yaxm71pli5gs5")
"drracket" (base32 "07qh9dzgd2xhd0375z78vcsf32za08cacj4s2mcrhilcvcgw9s0j")
'("drracket"
"drracket-core"
"drracket-core-lib"
@@ -754,7 +753,7 @@ DrRacket IDE, are not included.")
"eopl" (base32 "0qihajdpwf2q7hbs6fsw6mmmzy57kgzgry3vyp9z8w7ay8df3w15")
'(("eopl" ".")))
(simple-racket-origin
"errortrace" (base32 "02z80khr4kqhcpq1k3djz7jgkwa31vnacid4qx8naab9dkbcp5x8")
"errortrace" (base32 "0l9k2rx6z4jkid7kxhbs763s66pxbzvfrgxajykbrmqkv77lhb3w")
'("errortrace" "errortrace-doc" "errortrace-lib"))
(simple-racket-origin
"expeditor" (base32 "1nk88jq0blzcw45fr8nwp024cysplayi3paaay4z824lkn1smzaa")
@@ -771,13 +770,13 @@ DrRacket IDE, are not included.")
"games" (base32 "13z7fnbr48s98lmfxc0nbfhbqkd4hphymy2r63hqm783xzn6ylzi")
'(("games" ".")))
(simple-racket-origin
"gui" (base32 "1c47622y5cf1p7nnbycaf53m8vakf55lqzv8byqzj7zcvcsh8s16")
"gui" (base32 "0qkxa8cq0cblriamd7x502g918kjvq4348l6c8qmqdpn9cw9mg2h")
'("gui" "gui-doc" "gui-lib" "tex-table"))
(simple-racket-origin
"gui-pkg-manager" (base32 "1f0ssg37kdk3xn9js616ns345565q39j9h51wzd99753iqd45m92")
"gui-pkg-manager" (base32 "024880k3wmvkqhjc954prrkavwv3bgafcw00ajz7h2llygh0aqpl")
'("gui-pkg-manager-lib"))
(simple-racket-origin
"htdp" (base32 "02a5zny1njys40jfsi2spw82ar0kkbfddpk10al822ajs1manhak")
"htdp" (base32 "14bdv86zxs87rvvvbwvq3x0sqpg1hj16whjcv20r96c26b1xxj36")
'("htdp" "htdp-doc" "htdp-lib"))
(simple-racket-origin
"html" (base32 "18n1jnjgzfknc8nv8dppi85nb8q08gqdwkg6hfjk08x0p00anx2x")
@@ -792,16 +791,16 @@ DrRacket IDE, are not included.")
"lazy" (base32 "0rn8kd0ih7aw6fj1g7jdvi5978a6q4hyd6gbh89nb6j5ijvlgn43")
'(("lazy" ".")))
(simple-racket-origin
"macro-debugger" (base32 "08qmkrvm3qvac4829izmlwl9qrlsc1f6y8yqiradibhm05k7rwg7")
"macro-debugger" (base32 "133b74pxavbafcsmp34kgvwmx1l6xx4bykzvgwwjg3kg2fa5bg1g")
'("macro-debugger" "macro-debugger-text-lib"))
(simple-racket-origin
"main-distribution" (base32 "0gk7wrwy0r1yllk827h8awfswngl1lhlq765d6s42y841v33jn0i")
"main-distribution" (base32 "0m2n9s32s8a4a2gn4ywrm9l8jycdm5ayi5w9kh5wchhrrw7qzq7y")
'(("main-distribution" ".")))
(simple-racket-origin
"make" (base32 "10852fj30bz5r46c3d99s37fkgy5yh44gb01j29sf3kxnhi0g2sa")
'(("make" ".")))
(simple-racket-origin
"math" (base32 "1mgqxx9lbwhd8if3mxz7ji2wryvihjmq5imn2316skkvr16yy8mx")
"math" (base32 "1399mynmcrybipjsy2ikzs600jjxda0lah653w3vx2lfspsn31if")
'("math" "math-doc" "math-lib"))
(simple-racket-origin
"mysterx" (base32 "11p9jzrafw0hizhl0cs4sxx7rv281185q8hryic2rpk0kzjdyr48")
@@ -810,7 +809,7 @@ DrRacket IDE, are not included.")
"mzcom" (base32 "0rc9pfj7gwm5azghqvcibz6si1x5s2v8mr2yngk7ssq9gzfbi6a4")
'(("mzcom" ".")))
(simple-racket-origin
"mzscheme" (base32 "0p7bp8rmzw7k12sjxdqlxf31d8ama4wv9qz6ryvnmjn2qyhrr3d1")
"mzscheme" (base32 "04kyrhznq46mklacf7pms4fv47zsimqqk3948r3w2ym9n04fhjsx")
'("mzscheme" "mzscheme-doc" "mzscheme-lib"))
(racket-packages-origin
"net-cookies" (origin
@@ -819,7 +818,7 @@ DrRacket IDE, are not included.")
(url "https://github.com/RenaissanceBug/racket-cookies")
(commit %racket-commit)))
(sha256 (base32
"0v6lbpv8ly4jwpjr3rk0q6izpsnfp45ysgrhngpw7jshkjc5wgyd"))
"1fbl717w5801bydx3nzwxddd1rh1cc0gxwpjc7ka9zh5ak09sb0w"))
(file-name
(git-file-name "RenaissanceBug-racket-cookies" %racket-version)))
'("net-cookies" "net-cookies-doc" "net-cookies-lib"))
@@ -839,16 +838,16 @@ DrRacket IDE, are not included.")
"option-contract" (base32 "1914dcxy6qzpg3cpnzdm9lj0kwyw8xdb85mwiamqfkbg0xlyyhpa")
'("option-contract" "option-contract-doc" "option-contract-lib"))
(simple-racket-origin
"parser-tools" (base32 "0dp99d1a47kqyg2iqdijm5781qnd571iwvg85dvrjc76ab4pccgd")
"parser-tools" (base32 "0i822p7ik6q03l7mrlf0qb63xdxvx06yl5lg1g1qri5wmi5xj0pb")
'("parser-tools" "parser-tools-doc" "parser-tools-lib"))
(simple-racket-origin
"pconvert" (base32 "0xw9f9692v2qp16fwmwmwmrb118kpz259vmx8cq6s9vsw0112zpq")
'("pconvert-lib" "pconvert-doc"))
(simple-racket-origin
"pict" (base32 "1xs1k98nr052p5v30abn7kl8pm1rdwj8xqvrghw8b62bvhhb072a")
"pict" (base32 "17pldgiifmwi968dwlk23c1wnrlks0x7aj5jdmdfsf9xgq31wkb5")
'("pict" "pict-doc" "pict-lib"))
(simple-racket-origin
"pict-snip" (base32 "1qrqbigw6arhccqgqzblfqqcpsdy15dwb0y22axwxgpw1ax0ki6f")
"pict-snip" (base32 "081nwiy4a0n4f7xws16hqbhf0j3kz5alizndi3nnyr3chm4kng6x")
'("pict-snip" "pict-snip-doc" "pict-snip-lib"))
(simple-racket-origin
"picturing-programs" (base32 "1a3d6nw9n827b4711nvgrnw7w47k4fxvk8c2a8br6a1l748kxkwy")
@@ -866,7 +865,7 @@ DrRacket IDE, are not included.")
"preprocessor" (base32 "1p5aid58ifnjy4xl0ysh85cq39k25661v975jrpk182z3k5621mg")
'(("preprocessor" ".")))
(simple-racket-origin
"profile" (base32 "1n6jlhkq0zs2sd132k92nvw08qscadjz3d6p2r5pjlcdawkmkik0")
"profile" (base32 "10lv3iz58hqk043llnbqrkmjnm1pbvr4j1j188g85zg798rqyjzs")
'("profile" "profile-doc" "profile-lib"))
(racket-packages-origin
"quickscript" (origin
@@ -896,7 +895,7 @@ DrRacket IDE, are not included.")
(git-file-name "jeapostrophe-racket-cheat" %racket-version)))
'(("racket-cheat" ".")))
(simple-racket-origin
"racklog" (base32 "0i2jnghb5vqmk2f0cppgggyp73zy1q0dlhpvxrzdxw39skmhmgkc")
"racklog" (base32 "0fr8xij0sssfnmwn6dfdi4jj3l62f2yj3jrjljv13kaycrfls032")
'(("racklog" ".")))
(simple-racket-origin
"rackunit" (base32 "191x4lgxg1bbkimdndg6j562zyxq48l0g21f9j2ln2hmh9s1v065")
@@ -915,7 +914,7 @@ DrRacket IDE, are not included.")
"realm" (base32 "0rlvwyd6rpyl0zda4a5p8dp346fvqzc8555dgfnrhliymkxb6x4g")
'(("realm" ".")))
(simple-racket-origin
"redex" (base32 "1gg36wpd5kw01dwz353j5xvd2c673aws5l3jn2h2rzqlslk49dw7")
"redex" (base32 "1h60mhaaiiwqcnmskqfrl6jhg4d97xjdcxnhw9krm4aysa9b9bwf")
'("redex"
"redex-benchmark"
"redex-doc"
@@ -930,7 +929,7 @@ DrRacket IDE, are not included.")
"scheme-lib" (base32 "0pcf0y8rp4qyjhaz5ww5sr5diq0wpcdfrrnask7zapyklzx1jx8x")
'(("scheme-lib" ".")))
(simple-racket-origin
"scribble" (base32 "1h6rkkbvxa6fwcpv6y5n14y984z4bxlhn04hhv8r7398a6jsldg6")
"scribble" (base32 "0pg8brgyyziw3y8fp6ls6ii7i02cmm5168i4zmqfxjzywswljf17")
'("scribble"
"scribble-doc"
"scribble-html-lib"
@@ -956,13 +955,13 @@ DrRacket IDE, are not included.")
"slatex" (base32 "0pkm2isbbdk63slrbsxcql7rr0wdrw5kapw1xq4ps5k8dhlzv8x0")
'(("slatex" ".")))
(simple-racket-origin
"slideshow" (base32 "1aprcapyj0362lfh2pbcyxf4r2k01zmp6yy9ppag0xbz0jw437im")
"slideshow" (base32 "0dyg20qs40s2d6ha28zb9h5x4v7phkddinqm446b4jishyrg7dqc")
'("slideshow" "slideshow-doc" "slideshow-exe" "slideshow-lib" "slideshow-plugin"))
(simple-racket-origin
"snip" (base32 "10727bi2ybn2ahlkpikdknwfzfsppaw5wkvjmzd380jp1fw91q67")
"snip" (base32 "1jpy5728w9bszgsjczlzrjjxsvqlcn4ah6gd3rp0plp8zzk9mq0s")
'("snip" "snip-lib"))
(simple-racket-origin
"typed-racket" (base32 "1cmp3065fp9lm6rsfml7x5bvnilh1fs9k0511l11qdismz2sndpy")
"typed-racket" (base32 "00d5pb5h34066q4prb9v5s5m9ggbby31f3anshd9vfsrzhd38p4n")
'("source-syntax"
"typed-racket"
"typed-racket-compatibility"
@@ -973,7 +972,7 @@ DrRacket IDE, are not included.")
"srfi" (base32 "07q7wdgnf88z1rq0bfpn4b41abhfswa38c0s2hkn325blk53k4a6")
'("srfi" "srfi-doc" "srfi-lib" "srfi-lite-lib"))
(simple-racket-origin
"string-constants" (base32 "085anm6s5ghg5bfggavknpr52py1a72qwjihvp0rnxpkf181sn8c")
"string-constants" (base32 "0llalgdncn18ix5xnx82yyms221g47xh7s3w6inch53ip3yc6ksr")
'("string-constants" "string-constants-doc" "string-constants-lib"))
(simple-racket-origin
"swindle" (base32 "1q8vdxpzczzwdw2mys2caab45yvadmqkixsr29k8pl03n8dsg8j9")
@@ -985,16 +984,16 @@ DrRacket IDE, are not included.")
"trace" (base32 "1zx0kfbacidg5rllbvx842x949ra22n004irs3vm1hqmwmixy3is")
'(("trace" ".")))
(simple-racket-origin
"unix-socket" (base32 "039r2aqc6xc4b3x95ggjg4ab1pfiff6pavi4d40662zgwbi61pwk")
"unix-socket" (base32 "02dfwas5ynbpyz74w9kwb4wgb37y5wys7svrlmir8k0n9ph9vq0y")
'("unix-socket" "unix-socket-doc" "unix-socket-lib"))
(simple-racket-origin
"web-server" (base32 "0v66z9dklf02lc0g357h4rnfq5pnk87d1qz59sfrlzz24phxg9g6")
"web-server" (base32 "0ry5vwjd06ml9hmspgrwci8c99syx7zhp9sgldmhwwfvf5m1g29d")
'("web-server" "web-server-doc" "web-server-lib"))
(simple-racket-origin
"wxme" (base32 "1qp5gr9gqsakiq3alw6m4yyv5vw4i3hp4y4nhq8vl2nkjmirvn0b")
'("wxme" "wxme-lib"))
(simple-racket-origin
"xrepl" (base32 "1kkcm68qyck2d6mp56h1j5fnfbx938a15dnyn1cf5yqpj9cc637m")
"xrepl" (base32 "0sw531zvd8xqckmrh5da4fiq0sfjyg1nj5d508l7bl3azn35khil")
'("xrepl" "xrepl-doc" "xrepl-lib"))))
(build-system gnu-build-system)
(arguments
+7 -15
View File
@@ -31,7 +31,7 @@
;;; Copyright © 2022-2025 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2022 Taiju HIGASHI <higashi@taiju.info>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2023, 2024, 2025, 2026 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2023, 2024, 2025 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2023, 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023-2025 Hartmut Goebel <h.goebel@crazy-compilers.com>
@@ -8201,27 +8201,19 @@ differences (added or removed nodes) between two XML/HTML documents.")
(define-public ruby-racc
(package
(name "ruby-racc")
(version "1.8.1")
(version "1.5.2")
(source
(origin
(method git-fetch) ;for tests
(uri (git-reference
(url "https://github.com/ruby/racc")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(method url-fetch)
(uri (rubygems-uri "racc" version))
(sha256
(base32
"1sg2mqp6yxdxrn9kbbsxkd6930fxvm4yjl8knsc0wq6fkipnhm8q"))))
"178k7r0xn689spviqzhvazzvxfq6fyjldxb3ywjbgipbfi4s8j1g"))))
(build-system ruby-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'compile
(lambda _
(invoke "rake" "compile"))))))
`(#:tests? #f)) ; Fails while parsing test instructions.
(native-inputs
(list ruby-rake-compiler ruby-test-unit-ruby-core))
(list ruby-hoe ruby-rake-compiler))
(synopsis "LALR(1) parser generator for Ruby")
(description
"Racc is a LALR(1) parser generator. It is written in Ruby itself, and
File diff suppressed because it is too large Load Diff
-44
View File
@@ -37,8 +37,6 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages rust)
#:use-module (gnu packages statistics)
#:use-module (gnu packages textutils)
#:use-module (gnu packages virtualization))
@@ -248,48 +246,6 @@ transliterating them. It supports Emoji and Chinese.")
;; checkout and does not need a cargo input.
(inputs (cargo-inputs 'rust-deunicode-1.6.2.cfb8552))))))
;; Workspace dependency of r-pizzarr.
(define-public rust-extendr-0.8.1.93d7244
(let ((commit "93d7244e3145d94186bc2f35258ad0ef25a28908")
(revision "1"))
(hidden-package
(package
(name "rust-extendr")
(version (git-version "0.8.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/extendr/extendr")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"03d16y7f1r0y1s8gwzw7wzn5yhcqr1wn0vga9dvdjxpbga372vx7"))))
(build-system cargo-build-system)
(arguments
(list
#:cargo-package-crates
;; Note that the order matters!
'(list "extendr-ffi"
"extendr-macros"
"extendr-api"
"extendr-engine")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-R_HOME
(lambda _
(delete-file-recursively ".cargo")
(setenv "R_HOME"
(string-append
#$(this-package-input "r-minimal")
"/lib/R")))))))
(inputs (cons r-minimal (cargo-inputs 'extendr)))
(home-page "https://extendr.rs/")
(synopsis "R extension library for Rust")
(description "This library allows you to extend R with Rust. It can be
used to write R packages that link with Rust libraries.")
(license license:expat)))))
;; Workspace dependency of zed.
;;
;; Cargo side: Cargo unifies dependency versions across zed's
+12 -8
View File
@@ -244,21 +244,26 @@ This Guix package is built to use the nettle cryptographic library.")
(define-public sequoia-wot-tools
(package
(name "sequoia-wot-tools")
(version "0.15.2")
(version "0.15.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/sequoia-pgp/sequoia-wot.git/")
(commit (string-append "sequoia-wot/v" version))))
(url "https://gitlab.com/sequoia-pgp/sequoia-wot")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "18v713n36sq5pvd1pbs34v7dly1bi614kwra09qxpsxk0ffp225z"))))
(base32 "03wa4l582hx0qq28pkhrf0pagckyx6df01pb4chyngadk49q1xn7"))))
(build-system cargo-build-system)
(arguments
(list
#:features '(list "sequoia-openpgp/crypto-nettle")
#:cargo-package-crates ''("tools")
#:cargo-test-flags
'(list "--"
"--skip=gpg_trust_roots"
"--skip=backward_propagation::tests::cliques"
"--skip=tests::cliques")
#:install-source? #f
#:cargo-install-paths ''("tools")
#:phases
@@ -271,12 +276,11 @@ This Guix package is built to use the nettle cryptographic library.")
(for-each (lambda (file)
(install-file file man1))
(find-files "target/release" "\\.1$"))
(mkdir-p (string-append out "/share/bash-completion/completions"))
(mkdir-p (string-append out "/etc/bash_completion.d"))
(mkdir-p (string-append share "/fish/vendor_completions.d"))
(mkdir-p (string-append share "/elvish/lib"))
(copy-file (car (find-files "target/release" "sq-wot.bash"))
(string-append
out "/share/bash-completion/completions/sq-wot"))
(string-append out "/etc/bash_completion.d/sq-wot"))
(copy-file (car (find-files "target/release" "sq-wot.fish"))
(string-append
share "/fish/vendor_completions.d/sq-wot.fish"))
@@ -288,7 +292,7 @@ This Guix package is built to use the nettle cryptographic library.")
(inputs
(cons* nettle openssl sqlite (cargo-inputs 'sequoia-wot-tools)))
(native-inputs
(list clang gnupg pkg-config))
(list clang pkg-config))
(home-page "https://sequoia-pgp.org/")
(synopsis "Implementation of OpenPGP's web of trust")
(description
+2 -2
View File
@@ -924,7 +924,7 @@ and aims to be maximally portable across operating systems and C compilers.")
(define-public loksh
(package
(name "loksh")
(version "7.9")
(version "7.8")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -936,7 +936,7 @@ and aims to be maximally portable across operating systems and C compilers.")
(file-name (git-file-name name version))
(sha256
(base32
"0nwssdxcqs3fypfg884cwcmp21kmwsqrr5rvm1cck1qx5240hyjb"))))
"1x5kg01r0k7g825ia71f8an6585azba8x5khwdvq4dmnib11vakm"))))
(build-system meson-build-system)
(inputs (list ncurses))
(native-inputs (list pkg-config))
+1 -3
View File
@@ -88,9 +88,7 @@ you tailor the wrapping process to suit your application.")
name "-" version ".tar.gz"))
(sha256
(base32
"1kqz533599d00rrz0g2ryf8w2ynb25ayylpx10nmkxsndiq2l5j0"))
(patches
(search-patches "swig-support-r-4.6.0.patch"))))
"1kqz533599d00rrz0g2ryf8w2ynb25ayylpx10nmkxsndiq2l5j0"))))
(native-inputs (list boost
pcre2 ; for pcre2-config
;; The following are for tests and examples:
+2 -9
View File
@@ -28,7 +28,6 @@
(define-module (gnu packages sync)
#:use-module (gnu packages acl)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
@@ -689,13 +688,7 @@ Feature:
;; As seen in Makefile
(setenv "RCLONE_CONFIG" "/notfound"))))))
(native-inputs
(append
;; On aarch64-linux, Go passes '-fuse-ld=gold' when invoking
;; the external linker; provide ld.gold via binutils-gold.
(if (target-aarch64?)
(list binutils-gold)
'())
(list go-bazil-org-fuse
(list go-bazil-org-fuse
go-github-com-a1ex3-zstd-seekable-format-go-pkg
go-github-com-a8m-tree
go-github-com-aalpar-deheap
@@ -795,7 +788,7 @@ Feature:
go-gopkg-in-natefinch-lumberjack-v2
go-gopkg-in-validator-v2
go-gopkg-in-yaml-v3
go-storj-io-uplink)))
go-storj-io-uplink))
(synopsis "@code{rsync} for cloud storage")
(description "@code{Rclone} is a command line program to sync files and
directories to and from different cloud storage providers.
+1
View File
@@ -73,6 +73,7 @@
#:import-path "github.com/syncthing/syncthing"
;; Check 'go.mod' in the source distribution for the required version of Go.
;; We don't need to install the source code for end-user applications.
#:go go-1.25
#:install-source? #f
#:phases
#~(modify-phases %standard-phases
+2 -2
View File
@@ -1094,7 +1094,7 @@ minimalistic.")
(define-public fzf
(package
(name "fzf")
(version "0.73.1")
(version "0.73.0")
(source
(origin
(method git-fetch)
@@ -1103,7 +1103,7 @@ minimalistic.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1wyaggd00jgr519pxvik6hszgnp6dq71rn7xa20kf2qyi5p6bn65"))))
(base32 "1p6xda7ncpi38c5jyyi7ybsjmyj07axmax68iag0ccszm42hnq60"))))
(build-system go-build-system)
(arguments
(list
+1 -3
View File
@@ -1413,9 +1413,7 @@ interface with CI pipeline UIs.")
(lambda _
(substitute* "packages/linux/icons.sh"
(("/usr/share")
(string-append #$output "/share")))
(substitute* "TeXmacs/misc/mime/texmacs.desktop"
(("Icon=.*$") "Icon=TeXmacs\n"))))
(string-append #$output "/share")))))
(add-before 'configure 'gzip-flags
(lambda _
(substitute* "Makefile.in"
+4 -4
View File
@@ -2016,7 +2016,7 @@ Expressions, and being faster to type than grep.")
(define-public yq
(package
(name "yq")
(version "4.53.2")
(version "4.52.4")
(source
(origin
(method git-fetch)
@@ -2025,7 +2025,7 @@ Expressions, and being faster to type than grep.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "10910496h435jdiwmcpdqhc70gyfgbmarhazqcdvii20p58k53aa"))))
(base32 "1gha586k0gscgq8jjx3nna70bc0xjy3b8d8gg62wgl9gra6ymfxx"))))
(build-system go-build-system)
(arguments
(list
@@ -2062,9 +2062,9 @@ Expressions, and being faster to type than grep.")
go-github-com-yuin-gopher-lua
go-github-com-zclconf-go-cty
go-go-yaml-in-yaml-v4
go-golang-org-x-mod
go-golang-org-x-net
go-golang-org-x-text))
go-golang-org-x-text
go-gopkg-in-op-go-logging-v1))
(home-page "https://mikefarah.gitbook.io/yq/")
(synopsis "Command-line YAML, JSON, XML, CSV, TOML and properties processor")
(description
+1
View File
@@ -1090,6 +1090,7 @@ the date of the most recent commit that modified them
(arguments
(list
#:import-path "go.abhg.dev/gs"
#:go go-1.25
#:install-source? #f
#:build-flags
#~(list (string-append "-ldflags=-X main._version=" #$version))
+5 -5
View File
@@ -2804,7 +2804,7 @@ XDG-Output for wlclock to work.")
(define-public wlroots
(package
(name "wlroots")
(version "0.20.1")
(version "0.20.0")
(source
(origin
(method git-fetch)
@@ -2813,7 +2813,7 @@ XDG-Output for wlclock to work.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0n9wkmqnja5fnwn8an36jqn6nzlb1vjdzi0v932pn5bpgmv3brxs"))))
(base32 "1gdmy4mpi7x23g81cdmcr9aakk3g6csl69h9j98yzssa48k6all5"))))
(build-system meson-build-system)
(arguments
(list #:phases
@@ -4717,7 +4717,7 @@ read and write, and compatible with JSON.")
(define-public labwc
(package
(name "labwc")
(version "0.20.0")
(version "0.9.7")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -4726,7 +4726,7 @@ read and write, and compatible with JSON.")
(file-name (git-file-name name version))
(sha256
(base32
"0hq88p8ij1zd595rrfr6pxxkzbflgnafdvqjdw7p1y9l5dgkaar5"))))
"12mm4w9djgh7q30lswhl1q1cxf6h0pf8xr744jkcyjcqqsavynpf"))))
(build-system meson-build-system)
(native-inputs
(list pkg-config gettext-minimal scdoc))
@@ -4739,7 +4739,7 @@ read and write, and compatible with JSON.")
libxcb
libxml2
pango
wlroots-0.20))
wlroots-0.19))
(home-page "https://labwc.github.io")
(synopsis "Window-stacking compositor for Wayland")
(description
+2 -2
View File
@@ -202,9 +202,9 @@ package definition."
(define %cran-canonical-url "https://cran.r-project.org/package=")
(define %bioconductor-url "https://bioconductor.org/packages/")
;; The latest Bioconductor release is 3.23. Bioconductor packages should be
;; The latest Bioconductor release is 3.22. Bioconductor packages should be
;; updated together.
(define %bioconductor-version "3.23")
(define %bioconductor-version "3.22")
(define* (bioconductor-packages-list-url #:optional type)
(string-append "https://bioconductor.org/packages/"