unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* guix refresh --update Removes Needed Dependencies
@ 2023-11-18  1:59 jgart
  2023-11-22  9:47 ` Csepp
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: jgart @ 2023-11-18  1:59 UTC (permalink / raw)
  To: guix-devel

Hi Guixers,

`guix refresh --update` removes Tex Dependencies that are needed. This makes it more tedious to update packages :(

See the diff below which was the result of running:

./pre-inst-env guix refresh --update python-sphinx

Diff:

[jgart@fedora guix] [env]$ git diff
diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
index eee1f1c4a8..92658a3632 100644
--- a/gnu/packages/sphinx.scm
+++ b/gnu/packages/sphinx.scm
@@ -64,14 +64,14 @@ (define-module (gnu packages sphinx)
 (define-public python-sphinx
   (package
     (name "python-sphinx")
-    (version "5.1.1")
+    (version "7.2.6")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "Sphinx" version))
        (sha256
         (base32
-         "12cdy3m5c09lpf2bbxzbhm5v5y9fk7jgm94qrzggpq86waj28cms"))))
+         "1dasilib5w98hwr5rdnv1ri2dmdxv3fa42dscdcqss4hxbhn0lcs"))))
     (build-system python-build-system)
     (arguments
      '(#:phases
@@ -87,57 +87,39 @@ (define-public python-sphinx
                (setenv "HOME" "/tmp")   ;for test_cython
                (invoke "make" "test")))))))
     (propagated-inputs
-     (list python-babel
+     (list python-alabaster
+           python-babel
+           python-colorama
+           python-cython
            python-docutils
-           python-jinja2
+           python-docutils-stubs
+           python-filelock
+           python-flake8
+           python-flake8-simplify
+           python-html5lib
            python-imagesize
            python-importlib-metadata
+           python-isort
+           python-jinja2
+           python-mypy
            python-packaging
            python-pygments
+           python-pytest
            python-requests
+           python-ruff
+           python-setuptools
            python-snowballstemmer
-           python-sphinx-alabaster-theme
+           python-sphinx-lint
            python-sphinxcontrib-applehelp
            python-sphinxcontrib-devhelp
            python-sphinxcontrib-htmlhelp
            python-sphinxcontrib-jsmath
            python-sphinxcontrib-qthelp
            python-sphinxcontrib-serializinghtml
-
-           ;; The Sphinx LaTeX library '\RequirePackage' or \\usepackage
-           ;; these:
-           texlive-amsfonts             ;amsmath, amssymb, amstext
-           texlive-amsmath
-           texlive-capt-of
-           texlive-carlisle             ;remreset
-           texlive-cmap
-           texlive-etoolbox
-           texlive-fancyhdr
-           texlive-fancyvrb
-           texlive-float
-           texlive-fncychap
-           texlive-framed
-           texlive-geometry
-           texlive-hyperref
-           texlive-kvoptions
-           texlive-latex-bin
-           texlive-ltxcmds
-           texlive-needspace
-           texlive-oberdiek             ;hypcap
-           texlive-parskip
-           texlive-preview
-           texlive-tabulary
-           texlive-titlesec
-           texlive-tools                ;multicol, longtable
-           texlive-upquote
-           texlive-varwidth
-           texlive-wrapfig
-           texlive-xcolor))
+           python-sphinxcontrib-websupport
+           python-types-requests))
     (native-inputs
-     (list imagemagick                  ;for "convert"
-           python-cython
-           python-html5lib
-           python-pytest))
+     (list))
     (home-page "https://www.sphinx-doc.org")
     (synopsis "Python documentation generator")
     (description "Sphinx is a tool that makes it easy to create documentation


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: guix refresh --update Removes Needed Dependencies
  2023-11-18  1:59 guix refresh --update Removes Needed Dependencies jgart
@ 2023-11-22  9:47 ` Csepp
  2023-11-22 21:45 ` Ludovic Courtès
  2024-02-10 12:09 ` Ricardo Wurmus
  2 siblings, 0 replies; 5+ messages in thread
From: Csepp @ 2023-11-22  9:47 UTC (permalink / raw)
  To: jgart; +Cc: guix-devel


"jgart" <jgart@dismail.de> writes:

> Hi Guixers,
>
> `guix refresh --update` removes Tex Dependencies that are needed. This makes it more tedious to update packages :(
>
> See the diff below which was the result of running:
>
> ./pre-inst-env guix refresh --update python-sphinx
>
> Diff:
>
> [jgart@fedora guix] [env]$ git diff
> diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm
> index eee1f1c4a8..92658a3632 100644
> --- a/gnu/packages/sphinx.scm
> +++ b/gnu/packages/sphinx.scm
> @@ -64,14 +64,14 @@ (define-module (gnu packages sphinx)
>  (define-public python-sphinx
>    (package
>      (name "python-sphinx")
> -    (version "5.1.1")
> +    (version "7.2.6")
>      (source
>       (origin
>         (method url-fetch)
>         (uri (pypi-uri "Sphinx" version))
>         (sha256
>          (base32
> -         "12cdy3m5c09lpf2bbxzbhm5v5y9fk7jgm94qrzggpq86waj28cms"))))
> +         "1dasilib5w98hwr5rdnv1ri2dmdxv3fa42dscdcqss4hxbhn0lcs"))))
>      (build-system python-build-system)
>      (arguments
>       '(#:phases
> @@ -87,57 +87,39 @@ (define-public python-sphinx
>                 (setenv "HOME" "/tmp")   ;for test_cython
>                 (invoke "make" "test")))))))
>      (propagated-inputs
> -     (list python-babel
> +     (list python-alabaster
> +           python-babel
> +           python-colorama
> +           python-cython
>             python-docutils
> -           python-jinja2
> +           python-docutils-stubs
> +           python-filelock
> +           python-flake8
> +           python-flake8-simplify
> +           python-html5lib
>             python-imagesize
>             python-importlib-metadata
> +           python-isort
> +           python-jinja2
> +           python-mypy
>             python-packaging
>             python-pygments
> +           python-pytest
>             python-requests
> +           python-ruff
> +           python-setuptools
>             python-snowballstemmer
> -           python-sphinx-alabaster-theme
> +           python-sphinx-lint
>             python-sphinxcontrib-applehelp
>             python-sphinxcontrib-devhelp
>             python-sphinxcontrib-htmlhelp
>             python-sphinxcontrib-jsmath
>             python-sphinxcontrib-qthelp
>             python-sphinxcontrib-serializinghtml
> -
> -           ;; The Sphinx LaTeX library '\RequirePackage' or \\usepackage
> -           ;; these:
> -           texlive-amsfonts             ;amsmath, amssymb, amstext
> -           texlive-amsmath
> -           texlive-capt-of
> -           texlive-carlisle             ;remreset
> -           texlive-cmap
> -           texlive-etoolbox
> -           texlive-fancyhdr
> -           texlive-fancyvrb
> -           texlive-float
> -           texlive-fncychap
> -           texlive-framed
> -           texlive-geometry
> -           texlive-hyperref
> -           texlive-kvoptions
> -           texlive-latex-bin
> -           texlive-ltxcmds
> -           texlive-needspace
> -           texlive-oberdiek             ;hypcap
> -           texlive-parskip
> -           texlive-preview
> -           texlive-tabulary
> -           texlive-titlesec
> -           texlive-tools                ;multicol, longtable
> -           texlive-upquote
> -           texlive-varwidth
> -           texlive-wrapfig
> -           texlive-xcolor))
> +           python-sphinxcontrib-websupport
> +           python-types-requests))
>      (native-inputs
> -     (list imagemagick                  ;for "convert"
> -           python-cython
> -           python-html5lib
> -           python-pytest))
> +     (list))
>      (home-page "https://www.sphinx-doc.org")
>      (synopsis "Python documentation generator")
>      (description "Sphinx is a tool that makes it easy to create documentation

Temporary workaround: you could use git add --patch and not add the
removals.
But yeah, this is an annoying bug.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: guix refresh --update Removes Needed Dependencies
  2023-11-18  1:59 guix refresh --update Removes Needed Dependencies jgart
  2023-11-22  9:47 ` Csepp
@ 2023-11-22 21:45 ` Ludovic Courtès
  2023-11-23  7:08   ` Efraim Flashner
  2024-02-10 12:09 ` Ricardo Wurmus
  2 siblings, 1 reply; 5+ messages in thread
From: Ludovic Courtès @ 2023-11-22 21:45 UTC (permalink / raw)
  To: jgart; +Cc: guix-devel

Hi jgart,

"jgart" <jgart@dismail.de> skribis:

> ./pre-inst-env guix refresh --update python-sphinx

[...]

> -           ;; The Sphinx LaTeX library '\RequirePackage' or \\usepackage
> -           ;; these:
> -           texlive-amsfonts             ;amsmath, amssymb, amstext
> -           texlive-amsmath
> -           texlive-capt-of
> -           texlive-carlisle             ;remreset

To avoid this problem one can add package properties such as
‘updater-extra-native-inputs’ in this case:

  https://guix.gnu.org/manual/devel/en/html_node/Invoking-guix-refresh.html#index-updater_002dextra_002dinputs_002c-package-property

However, the way it’s implemented right now, you have to list the name
of every input that should be preserved by ‘guix refresh -u’, which is
inconvenient in this particular case because there are many of them.

I can think of two ways to improve on that:

  1. Use one of the ‘texlive-scheme-*’ packages instead of this long
     list.  :-)

  2. Change the code to interpret extra inputs are regexps instead of
     names.

Thoughts?

Ludo’.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: guix refresh --update Removes Needed Dependencies
  2023-11-22 21:45 ` Ludovic Courtès
@ 2023-11-23  7:08   ` Efraim Flashner
  0 siblings, 0 replies; 5+ messages in thread
From: Efraim Flashner @ 2023-11-23  7:08 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: jgart, guix-devel

[-- Attachment #1: Type: text/plain, Size: 1466 bytes --]

On Wed, Nov 22, 2023 at 10:45:48PM +0100, Ludovic Courtès wrote:
> Hi jgart,
> 
> "jgart" <jgart@dismail.de> skribis:
> 
> > ./pre-inst-env guix refresh --update python-sphinx
> 
> [...]
> 
> > -           ;; The Sphinx LaTeX library '\RequirePackage' or \\usepackage
> > -           ;; these:
> > -           texlive-amsfonts             ;amsmath, amssymb, amstext
> > -           texlive-amsmath
> > -           texlive-capt-of
> > -           texlive-carlisle             ;remreset
> 
> To avoid this problem one can add package properties such as
> ‘updater-extra-native-inputs’ in this case:
> 
>   https://guix.gnu.org/manual/devel/en/html_node/Invoking-guix-refresh.html#index-updater_002dextra_002dinputs_002c-package-property
> 
> However, the way it’s implemented right now, you have to list the name
> of every input that should be preserved by ‘guix refresh -u’, which is
> inconvenient in this particular case because there are many of them.
> 
> I can think of two ways to improve on that:
> 
>   1. Use one of the ‘texlive-scheme-*’ packages instead of this long
>      list.  :-)
> 
>   2. Change the code to interpret extra inputs are regexps instead of
>      names.

I like both ideas

-- 
Efraim Flashner   <efraim@flashner.co.il>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: guix refresh --update Removes Needed Dependencies
  2023-11-18  1:59 guix refresh --update Removes Needed Dependencies jgart
  2023-11-22  9:47 ` Csepp
  2023-11-22 21:45 ` Ludovic Courtès
@ 2024-02-10 12:09 ` Ricardo Wurmus
  2 siblings, 0 replies; 5+ messages in thread
From: Ricardo Wurmus @ 2024-02-10 12:09 UTC (permalink / raw)
  To: jgart; +Cc: guix-devel


"jgart" <jgart@dismail.de> writes:

> Hi Guixers,
>
> `guix refresh --update` removes Tex Dependencies that are needed. This makes it more tedious to update packages :(

“guix refresh” considers the importers’ output to be authoritative.  Can
the Python importer be improved to discover the need for TeX things?
(If not the whole list of packages perhaps a collection package.)

In the CRAN importer we routinely check the contents of Makefiles,
configure scripts, etc to detect otherwise undeclared dependencies.
Perhaps the pypi importer could do something similar.

-- 
Ricardo


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-02-10 12:13 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-18  1:59 guix refresh --update Removes Needed Dependencies jgart
2023-11-22  9:47 ` Csepp
2023-11-22 21:45 ` Ludovic Courtès
2023-11-23  7:08   ` Efraim Flashner
2024-02-10 12:09 ` Ricardo Wurmus

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).