Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package yast2-add-on for openSUSE:Factory checked in at 2026-07-23 23:08:31 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-add-on (Old) and /work/SRC/openSUSE:Factory/.yast2-add-on.new.2004 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-add-on" Thu Jul 23 23:08:31 2026 rev:126 rq:1366879 version:5.0.2 Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-add-on/yast2-add-on.changes 2023-10-20 23:17:55.197043740 +0200 +++ /work/SRC/openSUSE:Factory/.yast2-add-on.new.2004/yast2-add-on.changes 2026-07-23 23:08:51.529161101 +0200 @@ -1,0 +2,12 @@ +Tue Jul 21 07:02:56 UTC 2026 - Josef Reidinger <[email protected]> + +- fix invalid entry in changelog ( needed to submit jsc#PED-14507) +- 5.0.2 + +------------------------------------------------------------------- +Tue Mar 10 09:00:28 UTC 2026 - Michal Filka <[email protected]> + +- jsc#PED-14507 + - Removed reference to update-desktop-files from spec file + - 5.0.1 +------------------------------------------------------------------- @@ -449 +460,0 @@ - Old: ---- yast2-add-on-5.0.0.tar.bz2 New: ---- yast2-add-on-5.0.2.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-add-on.spec ++++++ --- /var/tmp/diff_new_pack.UvMsYR/_old 2026-07-23 23:08:52.361190317 +0200 +++ /var/tmp/diff_new_pack.UvMsYR/_new 2026-07-23 23:08:52.365190458 +0200 @@ -1,7 +1,7 @@ # # spec file for package yast2-add-on # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2026 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: yast2-add-on -Version: 5.0.0 +Version: 5.0.2 Release: 0 Summary: YaST2 - Add-On media installation code License: GPL-2.0-only @@ -26,7 +26,6 @@ Source0: %{name}-%{version}.tar.bz2 -BuildRequires: update-desktop-files BuildRequires: rubygem(%{rb_default_ruby_abi}:rspec) BuildRequires: rubygem(%{rb_default_ruby_abi}:yast-rake) # UIExtensionChecker ++++++ yast2-add-on-5.0.0.tar.bz2 -> yast2-add-on-5.0.2.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/.github/workflows/ci.yml new/yast2-add-on-5.0.2/.github/workflows/ci.yml --- old/yast2-add-on-5.0.0/.github/workflows/ci.yml 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/.github/workflows/ci.yml 2026-07-21 09:25:00.000000000 +0200 @@ -1,9 +1,8 @@ - # See https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions name: CI -on: [push, pull_request] +on: [ push, pull_request ] jobs: Tests: @@ -12,33 +11,32 @@ strategy: fail-fast: false matrix: - distro: [ "tumbleweed", "leap_latest" ] + distro: [ "tumbleweed" ] container: image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby steps: + - name: Git Checkout + uses: actions/checkout@v2 - - name: Git Checkout - uses: actions/checkout@v2 - - # just for easier debugging... - - name: Inspect Installed Packages - run: rpm -qa | sort - - - name: Unit Tests - run: rake test:unit - # enable code coverage reporting - env: - COVERAGE: 1 - - # send the coverage report to coveralls.io - - name: Coveralls Report - # send it only from the TW build to avoid duplicate submits - if: ${{ matrix.distro == 'tumbleweed' }} - uses: coverallsapp/github-action@master - with: - github-token: ${{ secrets.GITHUB_TOKEN }} + # just for easier debugging... + - name: Inspect Installed Packages + run: rpm -qa | sort + + - name: Unit Tests + run: rake test:unit + # enable code coverage reporting + env: + COVERAGE: 1 + + # send the coverage report to coveralls.io + - name: Coveralls Report + # send it only from the TW build to avoid duplicate submits + if: ${{ matrix.distro == 'tumbleweed' }} + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.GITHUB_TOKEN }} Rubocop: runs-on: ubuntu-latest @@ -46,37 +44,38 @@ strategy: fail-fast: false matrix: - distro: [ "leap_latest" ] + distro: [ "tumbleweed" ] container: image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby steps: + - name: Git Checkout + uses: actions/checkout@v2 - - name: Git Checkout - uses: actions/checkout@v2 - - - name: Rubocop - run: rake check:rubocop + - name: Rubocop + run: rake check:rubocop Package: + # skip in master, but run in forks + if: github.ref_name != 'master' || github.repository_owner != 'yast' + runs-on: ubuntu-latest strategy: fail-fast: false matrix: - distro: [ "tumbleweed", "leap_latest" ] + distro: [ "tumbleweed" ] container: image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby steps: + - name: Git Checkout + uses: actions/checkout@v2 - - name: Git Checkout - uses: actions/checkout@v2 - - - name: Package Build - run: yast-ci-ruby -o package + - name: Package Build + run: yast-ci-ruby -o package Yardoc: runs-on: ubuntu-latest @@ -84,18 +83,17 @@ strategy: fail-fast: false matrix: - distro: [ "leap_latest" ] + distro: [ "tumbleweed" ] container: image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby steps: + - name: Git Checkout + uses: actions/checkout@v2 - - name: Git Checkout - uses: actions/checkout@v2 - - - name: Yardoc - run: rake check:doc + - name: Yardoc + run: rake check:doc # downloading the Docker image takes some time so bundling several fast # checks into one job avoids that overhead @@ -105,18 +103,17 @@ strategy: fail-fast: false matrix: - distro: [ "leap_latest" ] + distro: [ "tumbleweed" ] container: image: registry.opensuse.org/yast/head/containers_${{matrix.distro}}/yast-ruby steps: + - name: Git Checkout + uses: actions/checkout@v2 - - name: Git Checkout - uses: actions/checkout@v2 - - - name: Perl Syntax - run: yast-ci-ruby -o perl_syntax + - name: Perl Syntax + run: yast-ci-ruby -o perl_syntax - - name: POT Check - run: rake check:pot + - name: POT Check + run: rake check:pot diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/.github/workflows/submit.yml new/yast2-add-on-5.0.2/.github/workflows/submit.yml --- old/yast2-add-on-5.0.0/.github/workflows/submit.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-add-on-5.0.2/.github/workflows/submit.yml 2026-07-21 09:25:00.000000000 +0200 @@ -0,0 +1,29 @@ +# See https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions + +name: OBS + +on: + # only when committing to master + push: + branches: master + + # allow running manually from GitHub Web + workflow_dispatch: + +jobs: + submit: + # do not run in forks + if: github.repository_owner == 'yast' + + runs-on: ubuntu-latest + + # the default timeout is 6 hours, do not wait for that long if osc gets stucked + timeout-minutes: 30 + + steps: + - name: Submit the package + # see https://github.com/yast/actions/blob/master/submit/action.yml + uses: yast/actions/submit@master + with: + obs_user: ${{ secrets.OBS_USER }} + obs_password: ${{ secrets.OBS_PASSWORD }} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/.rubocop.yml new/yast2-add-on-5.0.2/.rubocop.yml --- old/yast2-add-on-5.0.0/.rubocop.yml 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/.rubocop.yml 2026-07-21 09:25:00.000000000 +0200 @@ -1,6 +1,6 @@ # use the shared Yast defaults inherit_from: - /usr/share/YaST2/data/devtools/data/rubocop-0.71.0_yast_style.yml + /usr/share/YaST2/data/devtools/data/rubocop-1.24.1_yast_style.yml # this needs more testing if we can have frozen string literals Style/FrozenStringLiteralComment: @@ -15,15 +15,9 @@ Naming/MethodName: Enabled: false -Naming/VariableName: - Enabled: false - -Lint/Loop: - Enabled: false - # Offense count: 11 Metrics/AbcSize: - Max: 200 + Max: 210 # Offense count: 24 # Configuration parameters: CountComments, ExcludedMethods. @@ -46,7 +40,7 @@ # Cop supports --auto-correct. # Configuration parameters: AutoCorrect, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns. # URISchemes: http, https -Metrics/LineLength: +Layout/LineLength: Max: 122 # Offense count: 16 @@ -66,7 +60,7 @@ # Offense count: 10 Metrics/PerceivedComplexity: - Max: 41 + Max: 50 # Offense count: 10 # Configuration parameters: ExpectMatchingDefinition, Regex, IgnoreExecutableScripts, AllowedAcronyms. @@ -104,3 +98,9 @@ # (even for derived classes) # https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Style/ClassVars - 'src/include/add-on/add-on-workflow.rb' + - 'spec/**/*' + - 'test/**/*' + +# disable optional boolean parameter to avoid API breakage +Style/OptionalBooleanParameter: + Enabled: false diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/README.md new/yast2-add-on-5.0.2/README.md --- old/yast2-add-on-5.0.0/README.md 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/README.md 2026-07-21 09:25:00.000000000 +0200 @@ -2,6 +2,4 @@ []( https://github.com/yast/yast-add-on/actions?query=branch%3Amaster) -[]( -https://ci.opensuse.org/view/Yast/job/yast-yast-add-on-master/) [](https://coveralls.io/github/yast/yast-add-on?branch=master) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/package/yast2-add-on.changes new/yast2-add-on-5.0.2/package/yast2-add-on.changes --- old/yast2-add-on-5.0.0/package/yast2-add-on.changes 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/package/yast2-add-on.changes 2026-07-21 09:25:00.000000000 +0200 @@ -1,4 +1,16 @@ ------------------------------------------------------------------- +Tue Jul 21 07:02:56 UTC 2026 - Josef Reidinger <[email protected]> + +- fix invalid entry in changelog ( needed to submit jsc#PED-14507) +- 5.0.2 + +------------------------------------------------------------------- +Tue Mar 10 09:00:28 UTC 2026 - Michal Filka <[email protected]> + +- jsc#PED-14507 + - Removed reference to update-desktop-files from spec file + - 5.0.1 +------------------------------------------------------------------- Wed Aug 30 20:16:10 UTC 2023 - Josef Reidinger <[email protected]> - 5.0.0 (bsc#1185510) @@ -294,7 +306,7 @@ Tue Nov 20 11:10:09 CET 2018 - [email protected] - Function SelectProduct removed in order NOT to select All - available products (bsc#1116332). + available products (bsc#1116332). - 4.1.8 ------------------------------------------------------------------- @@ -446,7 +458,6 @@ - 3.2.0 ------------------------------------------------------------------- - Thu Aug 11 15:59:06 CEST 2016 - [email protected] - Added "confirm_license" to the RNC file. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/package/yast2-add-on.spec new/yast2-add-on-5.0.2/package/yast2-add-on.spec --- old/yast2-add-on-5.0.0/package/yast2-add-on.spec 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/package/yast2-add-on.spec 2026-07-21 09:25:00.000000000 +0200 @@ -17,7 +17,7 @@ Name: yast2-add-on -Version: 5.0.0 +Version: 5.0.2 Release: 0 Summary: YaST2 - Add-On media installation code License: GPL-2.0-only @@ -28,7 +28,6 @@ BuildRequires: rubygem(%{rb_default_ruby_abi}:yast-rake) BuildRequires: rubygem(%{rb_default_ruby_abi}:rspec) -BuildRequires: update-desktop-files # UIExtensionChecker BuildRequires: yast2 >= 4.4.19 BuildRequires: yast2-devtools >= 3.1.10 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/src/clients/add-on.rb new/yast2-add-on-5.0.2/src/clients/add-on.rb --- old/yast2-add-on-5.0.0/src/clients/add-on.rb 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/src/clients/add-on.rb 2026-07-21 09:25:00.000000000 +0200 @@ -29,8 +29,8 @@ "help" => format( _( "Add On Management - This module does not support the command line " \ - "interface, use '%{zypper}' instead for adding a new repository or " \ - "'%{SUSEConnect}' to register a new add-on." + "interface, use '%{zypper}' instead for adding a new repository or " \ + "'%{SUSEConnect}' to register a new add-on." ), zypper: "zypper", SUSEConnect: "SUSEConnect" ), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/src/clients/add-on_proposal.rb new/yast2-add-on-5.0.2/src/clients/add-on_proposal.rb --- old/yast2-add-on-5.0.0/src/clients/add-on_proposal.rb 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/src/clients/add-on_proposal.rb 2026-07-21 09:25:00.000000000 +0200 @@ -23,7 +23,8 @@ @param = Convert.to_map(WFM.Args(1)) @ret = {} - if @func == "MakeProposal" + case @func + when "MakeProposal" @force_reset = Ops.get_boolean(@param, "force_reset", false) @language_changed = Ops.get_boolean(@param, "language_changed", false) @@ -48,7 +49,7 @@ WorkflowManager.RedrawWizardSteps @ret = { "raw_proposal" => @items } - elsif @func == "AskUser" + when "AskUser" Wizard.CreateDialog @result = RunAddOnMainDialog( false, @@ -64,7 +65,7 @@ # Fill return map @ret = { "workflow_sequence" => @result, "mode_changed" => false } - elsif @func == "Description" + when "Description" # Fill return map. # # Static values do just nicely here, no need to call a function. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/src/clients/inst_add-on_software.rb new/yast2-add-on-5.0.2/src/clients/inst_add-on_software.rb --- old/yast2-add-on-5.0.0/src/clients/inst_add-on_software.rb 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/src/clients/inst_add-on_software.rb 2026-07-21 09:25:00.000000000 +0200 @@ -88,20 +88,17 @@ @dialog_ret = :abort if @ret == :cancel - if @ret == :accept || @ret == :ok - # Add-on requires packages to be installed right now - if Ops.get_boolean(@argmap, "skip_installation", false) != true - Builtins.y2milestone("Selected resolvables will be installed now") + if (@ret == :accept || @ret == :ok) && (Ops.get_boolean(@argmap, "skip_installation", false) != true) + Builtins.y2milestone("Selected resolvables will be installed now") - if WFM.CallFunction( - "inst_rpmcopy", - [GetInstArgs.Buttons(false, false)] - ) == :abort - @dialog_ret = :abort - else - Kernel.InformAboutKernelChange - Builtins.y2milestone("Done") - end + if WFM.CallFunction( + "inst_rpmcopy", + [GetInstArgs.Buttons(false, false)] + ) == :abort + @dialog_ret = :abort + else + Kernel.InformAboutKernelChange + Builtins.y2milestone("Done") end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/src/clients/vendor.rb new/yast2-add-on-5.0.2/src/clients/vendor.rb --- old/yast2-add-on-5.0.0/src/clients/vendor.rb 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/src/clients/vendor.rb 2026-07-21 09:25:00.000000000 +0200 @@ -92,18 +92,16 @@ @update_dir = Convert.to_string( SCR.Read(path(".target.string"), ["/var/lib/YaST2/vendor_update", ""]) ) - if @update_dir != "" - @cdpath = Ops.add(@cdpath, @update_dir) - else + if @update_dir == "" Pkg.TargetInit(Installation.destdir, false) base = Y2Packager::Resolvable.find(kind: :product, - status: :installed, - category: "base") + status: :installed, + category: "base") if base.empty? # fallback base = Y2Packager::Resolvable.find(kind: :product, - status: :installed) + status: :installed) end version = base[0] ? base[0].version_version : "" @@ -137,6 +135,8 @@ Ops.add(Ops.add(Ops.add(@cdpath, "/suse/"), Arch.architecture), "-"), version ) + else + @cdpath = Ops.add(@cdpath, @update_dir) end Builtins.y2milestone("Trying %1", @cdpath) @@ -227,29 +227,27 @@ ) end # show contents - if Ops.greater_than(Builtins.size(description), 0) - if Popup.YesNo(description) - # VENDOR: dialog heading - Wizard.SetContents( - @title, - HVCenter(Label(_("Installing driver..."))), - "", - true, - true - ) - inst_result = run_inst(@cdpath, Ops.add(fname, ".inst")) - if inst_result == 0 - @inst_count = Ops.add(@inst_count, 1) - else - # VENDOR: popup if installation of driver failed - Popup.Message( - _( - "The installation failed.\nContact the address on the CD-ROM.\n" - ) + if Ops.greater_than(Builtins.size(description), 0) && Popup.YesNo(description) + # VENDOR: dialog heading + Wizard.SetContents( + @title, + HVCenter(Label(_("Installing driver..."))), + "", + true, + true + ) + inst_result = run_inst(@cdpath, Ops.add(fname, ".inst")) + if inst_result == 0 + @inst_count = Ops.add(@inst_count, 1) + else + # VENDOR: popup if installation of driver failed + Popup.Message( + _( + "The installation failed.\nContact the address on the CD-ROM.\n" ) - end - Wizard.SetContents(@title, Empty(), "", true, true) + ) end + Wizard.SetContents(@title, Empty(), "", true, true) end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/src/include/add-on/add-on-workflow.rb new/yast2-add-on-5.0.2/src/include/add-on/add-on-workflow.rb --- old/yast2-add-on-5.0.0/src/include/add-on/add-on-workflow.rb 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/src/include/add-on/add-on-workflow.rb 2026-07-21 09:25:00.000000000 +0200 @@ -55,8 +55,6 @@ Yast.include include_target, "add-on/misc.rb" # Used for adding sources - @createResult = :again - @new_addon_name = "" @product_infos = {} @@ -279,8 +277,8 @@ # help text help_text = _( "<p><big><b>Software Repository Selection</b></big><br>\n" \ - "Multiple repositories were found on the selected medium.\n" \ - "Select the repository to use.</p>\n" + "Multiple repositories were found on the selected medium.\n" \ + "Select the repository to use.</p>\n" ) contents = HBox( @@ -317,12 +315,7 @@ end end - if ret != :next - Builtins.foreach(SourceManager.newSources) do |src| - Builtins.y2milestone("Deleting source %1", src) - Pkg.SourceDelete(src) - end - else + if ret == :next Builtins.foreach(SourceManager.newSources) do |src| if src != selected Builtins.y2milestone("Deleting unused source %1", src) @@ -335,6 +328,11 @@ AddOnProduct.src_id = selected SourceManager.newSources = [selected] + else + Builtins.foreach(SourceManager.newSources) do |src| + Builtins.y2milestone("Deleting source %1", src) + Pkg.SourceDelete(src) + end end AddOnProduct.last_ret = ret @@ -364,7 +362,7 @@ # Product is not available (either `installed or `selected or ...) if product.status != :available log.info("Skipping product #{product.name} with status " \ - "#{product.status}") + "#{product.status}") next end @@ -537,7 +535,9 @@ AddOnProduct.add_on_products = Builtins.add( AddOnProduct.add_on_products, "media" => AddOnProduct.src_id, - "product" => if [nil, ""].include?(@new_addon_name) != "" + "product" => if [nil, ""].include?(@new_addon_name) == "" + @new_addon_name + else Ops.get_string( prod, "display_name", @@ -547,8 +547,6 @@ Ops.get_string(prod, "name", "") ) ) - else - @new_addon_name end, "autoyast_product" => Ops.get_string(prod, "name", ""), "media_url" => url, @@ -590,8 +588,8 @@ # help text help_text = _( "<p><b><big>Product Selection</big></b><br/>\n" \ - "Multiple products were found in the repository. Select the products\n" \ - "to install.</p>\n" + "Multiple products were found in the repository. Select the products\n" \ + "to install.</p>\n" ) Wizard.SetContents(title, contents, help_text, true, true) while ret.nil? @@ -750,9 +748,9 @@ # Help for add-on products help = _( "<p><big><b>Add-On Product Installation</b></big><br/>\n" \ - "Here see all add-on products that are selected for installation.\n" \ - "To add a new product, click <b>Add</b>. To remove an already added one,\n" \ - "select it and click <b>Delete</b>.</p>" + "Here see all add-on products that are selected for installation.\n" \ + "To add a new product, click <b>Add</b>. To remove an already added one,\n" \ + "select it and click <b>Delete</b>.</p>" ) Builtins.y2milestone("Current products: %1", AddOnProduct.add_on_products) @@ -894,14 +892,12 @@ # It might be dangerous to add more installation sources in installation # on machine with less memory # Do not report when some add-ons are already in use - if not_enough_memory && !no_addons - if !ContinueIfInsufficientMemory() - # next time, it will be skipped too - Installation.add_on_selected = false - Installation.productsources_selected = false + if not_enough_memory && !no_addons && !ContinueIfInsufficientMemory() + # next time, it will be skipped too + Installation.add_on_selected = false + Installation.productsources_selected = false - return :next - end + return :next end # FATE #301928 - Saving one click @@ -927,7 +923,7 @@ # added / removed some_addon_changed = false - begin + loop do # FATE #301928 - Saving one click ret = Convert.to_symbol(UI.UserInput) unless ret == :skip_to_add @@ -1004,10 +1000,12 @@ if ret2 == :next # FIXME: can be these two iterations joined? + # rubocop:disable Style/CombinableLoops # Add-On product has been added, integrate it (change workflow, use y2update) @added_repos.each { |src_id| AddOnProduct.Integrate(src_id) } # check whether it requests registration (FATE #301312) @added_repos.each { |src_id| AddOnProduct.PrepareForRegistration(src_id) } + # rubocop:enable Style/CombinableLoops some_addon_changed = true # do not keep first_time, otherwise summary won't be shown during installation @@ -1048,7 +1046,8 @@ ret = :next if ret2 == :skip end end - end until [:next, :back, :abort].include?(ret) + break if [:next, :back, :abort].include?(ret) + end Builtins.y2milestone( "Ret: %1, Some Add-on Added/Removed: %2", @@ -1062,9 +1061,9 @@ # First stage installation, #247892 # installation, update or autoinstallation - if Stage.initial + if Stage.initial && some_addon_changed # bugzilla #221377 - AddOnProduct.ReIntegrateFromScratch if some_addon_changed + AddOnProduct.ReIntegrateFromScratch end # bugzilla #293428 @@ -1309,10 +1308,10 @@ repository_info = ( one_product_ref = arg_ref(one_product) all_products_ref = arg_ref(all_products) - _GetRepoInfo_result = GetRepoInfo(one_product_ref, all_products_ref) + result = GetRepoInfo(one_product_ref, all_products_ref) one_product = one_product_ref.value all_products = all_products_ref.value - _GetRepoInfo_result + result ) Ops.set( @product_infos, @@ -1452,9 +1451,9 @@ Builtins.sformat( _( "Deleting the add-on product %1 may result in removing all the packages\n" \ - "installed from this add-on.\n" \ - "\n" \ - "Are sure you want to delete it?" + "installed from this add-on.\n" \ + "\n" \ + "Are sure you want to delete it?" ), product_name ), @@ -1811,7 +1810,11 @@ log.info("Added source ID: #{source}") end - if !@added_repos.empty? + if @added_repos.empty? + # TODO: can this situation actually happen? + @added_repos << sources_after.last + log.warn("Fallback src_id: #{sources_after.last}") + else # rename the repository to the product name if user left the name field empty if SourceDialogs.GetRepoName.empty? # first set the fallback name for the added repository because the @@ -1834,10 +1837,6 @@ # used add-ons are stored in a special list AddAddOnToStore(src_id) end - else - # TODO: can this situation actually happen? - @added_repos << sources_after.last - log.warn("Fallback src_id: #{sources_after.last}") end # BNC #441380 @@ -1900,7 +1899,7 @@ require "registration/registration" !Registration::Registration.is_registered? rescue LoadError - return false + false end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/src/include/add-on/misc.rb new/yast2-add-on-5.0.2/src/include/add-on/misc.rb --- old/yast2-add-on-5.0.0/src/include/add-on/misc.rb 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/src/include/add-on/misc.rb 2026-07-21 09:25:00.000000000 +0200 @@ -70,10 +70,10 @@ # TRANSLATORS: pop-up question _( "Your system does not seem to have enough memory to use add-on products\n" \ - "during installation. You can enable add-on products later when the\n" \ - "system is running.\n" \ - "\n" \ - "Do you want to skip using add-on products?" + "during installation. You can enable add-on products later when the\n" \ + "system is running.\n" \ + "\n" \ + "Do you want to skip using add-on products?" ) ) Builtins.y2milestone("User decided to skip Add-Ons") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/src/lib/add-on/clients/add-on_auto.rb new/yast2-add-on-5.0.2/src/lib/add-on/clients/add-on_auto.rb --- old/yast2-add-on-5.0.0/src/lib/add-on/clients/add-on_auto.rb 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/src/lib/add-on/clients/add-on_auto.rb 2026-07-21 09:25:00.000000000 +0200 @@ -92,16 +92,16 @@ add_on_summary = [] # TRANSLATORS: %s is an add-on URL - add_on_summary << _("URL: %s") % CGI.escapeHTML(stripped_media_url(add_on)) + add_on_summary << (_("URL: %s") % CGI.escapeHTML(stripped_media_url(add_on))) if [nil, "", "/"].none?(product_dir) # TRANSLATORS: %s is a product path - add_on_summary << _("Path: %s") % CGI.escapeHTML(product_dir) + add_on_summary << (_("Path: %s") % CGI.escapeHTML(product_dir)) end if !(product.nil? || product.empty?) # TRANSLATORS: %s is the product - add_on_summary << _("Product: %s") % CGI.escapeHTML(product) + add_on_summary << (_("Product: %s") % CGI.escapeHTML(product)) end "<li>#{add_on_summary.join(", ")}</li>" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/test/add-on-workflow_test.rb new/yast2-add-on-5.0.2/test/add-on-workflow_test.rb --- old/yast2-add-on-5.0.0/test/add-on-workflow_test.rb 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/test/add-on-workflow_test.rb 2026-07-21 09:25:00.000000000 +0200 @@ -2,7 +2,7 @@ require_relative "./test_helper" -require_relative "../src/include/add-on/add-on-workflow.rb" +require_relative "../src/include/add-on/add-on-workflow" Yast.import "AddOnProduct" Yast.import "SourceDialogs" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-add-on-5.0.0/test/addon_others_test.rb new/yast2-add-on-5.0.2/test/addon_others_test.rb --- old/yast2-add-on-5.0.0/test/addon_others_test.rb 2023-10-18 23:13:56.000000000 +0200 +++ new/yast2-add-on-5.0.2/test/addon_others_test.rb 2026-07-21 09:25:00.000000000 +0200 @@ -8,7 +8,7 @@ let(:available_products) do [Y2Packager::Resolvable.new(kind: :product, - name: "SLE_RT", status: :available, source: 2), + name: "SLE_RT", status: :available, source: 2), Y2Packager::Resolvable.new(kind: :product, name: "SLE_HPC", status: :available, source: 2), Y2Packager::Resolvable.new(kind: :product, @@ -35,7 +35,7 @@ let(:installed_products) do [Y2Packager::Resolvable.new(kind: :product, - name: "sle-module-desktop-applications", status: :installed, source: -1), + name: "sle-module-desktop-applications", status: :installed, source: -1), Y2Packager::Resolvable.new(kind: :product, name: "sle-module-basesystem", status: :installed, source: -1), Y2Packager::Resolvable.new(kind: :product,
