Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package opam for openSUSE:Factory checked in at 2025-07-23 16:36:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/opam (Old) and /work/SRC/openSUSE:Factory/.opam.new.8875 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "opam" Wed Jul 23 16:36:40 2025 rev:19 rq:1295298 version:2.4.1 Changes: -------- --- /work/SRC/openSUSE:Factory/opam/opam.changes 2025-07-18 16:00:58.968615736 +0200 +++ /work/SRC/openSUSE:Factory/.opam.new.8875/opam.changes 2025-07-23 16:39:59.987577642 +0200 @@ -1,0 +2,6 @@ +Tue Jul 22 12:34:56 UTC 2025 - oher...@suse.de + +- Update to version 2.4.1 + see included CHANGES file for details + +------------------------------------------------------------------- Old: ---- opam-2.4.0.tar.xz New: ---- opam-2.4.1.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ opam.spec ++++++ --- /var/tmp/diff_new_pack.czbvSt/_old 2025-07-23 16:40:00.559601266 +0200 +++ /var/tmp/diff_new_pack.czbvSt/_new 2025-07-23 16:40:00.563601431 +0200 @@ -17,7 +17,7 @@ Name: opam -Version: 2.4.0 +Version: 2.4.1 Release: 0 Summary: Source-based package manager for OCaml License: LGPL-2.1-only WITH OCaml-LGPL-linking-exception ++++++ _service ++++++ --- /var/tmp/diff_new_pack.czbvSt/_old 2025-07-23 16:40:00.591602587 +0200 +++ /var/tmp/diff_new_pack.czbvSt/_new 2025-07-23 16:40:00.595602752 +0200 @@ -1,7 +1,7 @@ <services> <service mode="manual" name="tar_scm"> <param name="filename">opam</param> - <param name="revision">38abdc42d5caacba0576d8a521e3de61b868e4c1</param> + <param name="revision">7c92631391984f698f31ee24f3ae4dc1cd3698ff</param> <param name="scm">git</param> <param name="submodules">disable</param> <param name="url">https://github.com/ocaml/opam.git</param> ++++++ opam-2.4.0.tar.xz -> opam-2.4.1.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/CHANGES new/opam-2.4.1/CHANGES --- old/opam-2.4.0/CHANGES 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/CHANGES 2025-07-23 11:12:04.000000000 +0200 @@ -3,6 +3,11 @@ are not marked). Those prefixed with "(+)" are new command/option (since 2.1.0~alpha2). +2.4.1: +* Fix pin-depends being ignored on simulated pins + (e.g. `opam install --deps-only`) [#6612 @kit-ty-kate - fix #6610] +* Improve and extend the testsuite [#6612 @kit-ty-kate] + 2.4.0: * Fix a regression in `opam pin list` which crashed when the source of the pinned package doesn't exist [#6598 @kit-ty-kate - fix #6600] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/configure new/opam-2.4.1/configure --- old/opam-2.4.0/configure 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/configure 2025-07-23 11:12:04.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.71 for opam 2.4.0. +# Generated by GNU Autoconf 2.71 for opam 2.4.1. # # # Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation, @@ -609,8 +609,8 @@ # Identity of this package. PACKAGE_NAME='opam' PACKAGE_TARNAME='opam' -PACKAGE_VERSION='2.4.0' -PACKAGE_STRING='opam 2.4.0' +PACKAGE_VERSION='2.4.1' +PACKAGE_STRING='opam 2.4.1' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1302,7 +1302,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures opam 2.4.0 to adapt to many kinds of systems. +\`configure' configures opam 2.4.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1364,7 +1364,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of opam 2.4.0:";; + short | recursive ) echo "Configuration of opam 2.4.1:";; esac cat <<\_ACEOF @@ -1481,7 +1481,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -opam configure 2.4.0 +opam configure 2.4.1 generated by GNU Autoconf 2.71 Copyright (C) 2021 Free Software Foundation, Inc. @@ -1598,7 +1598,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by opam $as_me 2.4.0, which was +It was created by opam $as_me 2.4.1, which was generated by GNU Autoconf 2.71. Invocation command line was $ $0$ac_configure_args_raw @@ -7687,7 +7687,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by opam $as_me 2.4.0, which was +This file was extended by opam $as_me 2.4.1, which was generated by GNU Autoconf 2.71. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -7742,7 +7742,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config='$ac_cs_config_escaped' ac_cs_version="\\ -opam config.status 2.4.0 +opam config.status 2.4.1 configured by $0, generated by GNU Autoconf 2.71, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/configure.ac new/opam-2.4.1/configure.ac --- old/opam-2.4.0/configure.ac 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/configure.ac 2025-07-23 11:12:04.000000000 +0200 @@ -1,5 +1,5 @@ dnl The line below must be formatted AC_INIT([opam],[VERSION]) with no extra spaces -AC_INIT([opam],[2.4.0]) +AC_INIT([opam],[2.4.1]) AC_COPYRIGHT(Copyright 2012-2019 OcamlPro SAS) AC_CONFIG_MACRO_DIR([m4]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/opam-client.opam new/opam-2.4.1/opam-client.opam --- old/opam-2.4.0/opam-client.opam 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/opam-client.opam 2025-07-23 11:12:04.000000000 +0200 @@ -1,5 +1,5 @@ opam-version: "2.0" -version: "2.4.0" +version: "2.4.1" synopsis: "Client library for opam 2.4" description: """ Actions on the opam root, switches, installations, and front-end. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/opam-core.opam new/opam-2.4.1/opam-core.opam --- old/opam-2.4.0/opam-core.opam 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/opam-core.opam 2025-07-23 11:12:04.000000000 +0200 @@ -1,5 +1,5 @@ opam-version: "2.0" -version: "2.4.0" +version: "2.4.1" synopsis: "Core library for opam 2.4" description: "Small standard library extensions, and generic system interaction modules used by opam." diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/opam-devel.opam new/opam-2.4.1/opam-devel.opam --- old/opam-2.4.0/opam-devel.opam 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/opam-devel.opam 2025-07-23 11:12:04.000000000 +0200 @@ -1,5 +1,5 @@ opam-version: "2.0" -version: "2.4.0" +version: "2.4.1" synopsis: "Bootstrapped development binary for opam 2.4" description: """ This package compiles (bootstraps) opam. For consistency and safety of the installation, the binaries are not installed into the PATH, but into lib/opam-devel, from where the user can manually install them system-wide. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/opam-format.opam new/opam-2.4.1/opam-format.opam --- old/opam-2.4.0/opam-format.opam 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/opam-format.opam 2025-07-23 11:12:04.000000000 +0200 @@ -1,5 +1,5 @@ opam-version: "2.0" -version: "2.4.0" +version: "2.4.1" synopsis: "Format library for opam 2.4" description: """ Definition of opam datastructures and its file interface. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/opam-installer.opam new/opam-2.4.1/opam-installer.opam --- old/opam-2.4.0/opam-installer.opam 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/opam-installer.opam 2025-07-23 11:12:04.000000000 +0200 @@ -1,5 +1,5 @@ opam-version: "2.0" -version: "2.4.0" +version: "2.4.1" synopsis: "Installation of files to a prefix, following opam conventions" description: """ opam-installer is a small tool that can read *.install files, as defined by opam [1], and execute them to install or remove package files without going through opam. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/opam-repository.opam new/opam-2.4.1/opam-repository.opam --- old/opam-2.4.0/opam-repository.opam 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/opam-repository.opam 2025-07-23 11:12:04.000000000 +0200 @@ -1,5 +1,5 @@ opam-version: "2.0" -version: "2.4.0" +version: "2.4.1" synopsis: "Repository library for opam 2.4" description: """ This library includes repository and remote sources handling, including curl/wget, rsync, git, mercurial, darcs backends. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/opam-solver.opam new/opam-2.4.1/opam-solver.opam --- old/opam-2.4.0/opam-solver.opam 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/opam-solver.opam 2025-07-23 11:12:04.000000000 +0200 @@ -1,5 +1,5 @@ opam-version: "2.0" -version: "2.4.0" +version: "2.4.1" synopsis: "Solver library for opam 2.4" description: """ Solver and Cudf interaction. This library is based on the Cudf and Dose libraries, and handles calls to the external solver from opam. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/opam-state.opam new/opam-2.4.1/opam-state.opam --- old/opam-2.4.0/opam-state.opam 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/opam-state.opam 2025-07-23 11:12:04.000000000 +0200 @@ -1,5 +1,5 @@ opam-version: "2.0" -version: "2.4.0" +version: "2.4.1" synopsis: "State library for opam 2.4" description: """ Handling of the ~/.opam hierarchy, repository and switch states. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/src/client/opamAuxCommands.ml new/opam-2.4.1/src/client/opamAuxCommands.ml --- old/opam-2.4.0/src/client/opamAuxCommands.ml 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/src/client/opamAuxCommands.ml 2025-07-23 11:12:04.000000000 +0200 @@ -545,6 +545,14 @@ else OpamUpdate.dev_packages st ~working_dir:OpamPackage.Set.empty already_pinned in + let st = + (* NOTE: We skip pin-depends on non-simulated because handle_pin_depends has + already been called in source_pin *) + if not simulate || OpamClientConfig.(!r.ignore_pin_depends) then st else + OpamPackage.Set.fold (fun nv st -> + OpamPinCommand.handle_pin_depends st nv (OpamSwitchState.opam st nv)) + (OpamPackage.Set.union pins already_pinned_set) st + in st, simulate_pinned_atoms pins atoms let check_and_revert_sandboxing root config = diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opam-2.4.0/tests/reftests/autopin.test new/opam-2.4.1/tests/reftests/autopin.test --- old/opam-2.4.0/tests/reftests/autopin.test 2025-07-17 19:04:07.000000000 +0200 +++ new/opam-2.4.1/tests/reftests/autopin.test 2025-07-23 11:12:04.000000000 +0200 @@ -311,3 +311,84 @@ + echo "some-depext" - some-depext Nothing to do. +### : Make sure pin-depends are installed when using "opam install --deps-only" +### opam switch create pin-deps --empty +### <pin:pin-dep/opam> +opam-version: "2.0" +### <pin:local-with-pin-deps/opam> +opam-version: "2.0" +depends: "pin-dep" +### <add-pin-depends.sh> +basedir=$(printf '%s' "$BASEDIR" | sed 's/\\/\\\\/g') +cat >> local-with-pin-deps/opam << EOF +pin-depends: ["pin-dep.dev" "file://$basedir/pin-dep"] +EOF +### sh add-pin-depends.sh +### opam install --show ./local-with-pin-deps +[ERROR] Package conflict! + * Missing dependency: + - local-with-pin-deps -> pin-dep + unknown package + +No solution found, exiting +# Return code 20 # +### opam pin +### opam install --dry-run ./local-with-pin-deps +[ERROR] Package conflict! + * Missing dependency: + - local-with-pin-deps -> pin-dep + unknown package + +No solution found, exiting +# Return code 20 # +### opam pin +### opam install --deps-only ./local-with-pin-deps +The following additional pinnings are required by local-with-pin-deps.dev: + - pin-dep.dev at file://${BASEDIR}/pin-dep +Pin and install them? [Y/n] y +[NOTE] Package pin-dep does not exist in opam repositories registered in the current switch. +[pin-dep.dev] synchronised (no changes) +pin-dep is now pinned to file://${BASEDIR}/pin-dep (version dev) +The following actions will be performed: +=== install 1 package + - install pin-dep dev (pinned) [required by local-with-pin-deps] + +<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> +-> retrieved pin-dep.dev (file://${BASEDIR}/pin-dep) +-> installed pin-dep.dev +Done. +### opam pin +pin-dep.dev rsync file://${BASEDIR}/pin-dep +### opam pin remove pin-dep +Ok, pin-dep is no longer pinned to file://${BASEDIR}/pin-dep (version dev) +The following actions will be performed: +=== remove 1 package + - remove pin-dep dev + +<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> +-> removed pin-dep.dev +Done. +### opam pin +### opam install ./local-with-pin-deps +[NOTE] Package local-with-pin-deps does not exist in opam repositories registered in the current switch. +The following additional pinnings are required by local-with-pin-deps.dev: + - pin-dep.dev at file://${BASEDIR}/pin-dep +Pin and install them? [Y/n] y +[NOTE] Package pin-dep does not exist in opam repositories registered in the current switch. +[pin-dep.dev] synchronised (no changes) +pin-dep is now pinned to file://${BASEDIR}/pin-dep (version dev) +local-with-pin-deps is now pinned to file://${BASEDIR}/local-with-pin-deps (version dev) +The following actions will be performed: +=== install 2 packages + - install local-with-pin-deps dev (pinned) + - install pin-dep dev (pinned) [required by local-with-pin-deps] + +<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><> +-> retrieved local-with-pin-deps.dev (file://${BASEDIR}/local-with-pin-deps) +-> retrieved pin-dep.dev (file://${BASEDIR}/pin-dep) +-> installed pin-dep.dev +-> installed local-with-pin-deps.dev +Done. +### opam pin +local-with-pin-deps.dev rsync file://${BASEDIR}/local-with-pin-deps +pin-dep.dev rsync file://${BASEDIR}/pin-dep