Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package yast2-installation for 
openSUSE:Factory checked in at 2021-12-12 00:55:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-installation (Old)
 and      /work/SRC/openSUSE:Factory/.yast2-installation.new.2520 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2-installation"

Sun Dec 12 00:55:50 2021 rev:485 rq:939171 version:4.4.28

Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-installation/yast2-installation.changes    
2021-12-03 20:35:53.284115787 +0100
+++ 
/work/SRC/openSUSE:Factory/.yast2-installation.new.2520/yast2-installation.changes
  2021-12-12 00:56:03.446520433 +0100
@@ -1,0 +2,15 @@
+Thu Dec  9 16:07:34 UTC 2021 - Ladislav Slez??k <lsle...@suse.cz>
+
+- Improve the self-update process, do not read the products from
+  the installation medium (bsc#1193536)
+- Adde more /etc/os-release replacements in the self-update URL
+- 4.4.28
+
+-------------------------------------------------------------------
+Thu Dec  9 14:11:35 UTC 2021 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- Display the correct title in the welcome screen depending
+  on its content (related to bsc#1193223 and bsc#1192230).
+- 4.4.27
+
+-------------------------------------------------------------------

Old:
----
  yast2-installation-4.4.26.tar.bz2

New:
----
  yast2-installation-4.4.28.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ yast2-installation.spec ++++++
--- /var/tmp/diff_new_pack.Nx22z4/_old  2021-12-12 00:56:04.150520915 +0100
+++ /var/tmp/diff_new_pack.Nx22z4/_new  2021-12-12 00:56:04.154520918 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-installation
-Version:        4.4.26
+Version:        4.4.28
 Release:        0
 Summary:        YaST2 - Installation Parts
 License:        GPL-2.0-only

++++++ yast2-installation-4.4.26.tar.bz2 -> yast2-installation-4.4.28.tar.bz2 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.4.26/doc/SELF_UPDATE.md 
new/yast2-installation-4.4.28/doc/SELF_UPDATE.md
--- old/yast2-installation-4.4.26/doc/SELF_UPDATE.md    2021-12-03 
16:46:11.000000000 +0100
+++ new/yast2-installation-4.4.28/doc/SELF_UPDATE.md    2021-12-10 
16:21:25.000000000 +0100
@@ -8,9 +8,9 @@
 ### :information_source: Note
 
 The self update feature is removed from the updated SLE Service Pack media
-(the updated media released after the initial SP release), these media already
-contain the updated installer and the included updates could conflict with
-the self updates.
+(the updated media released after the initial SP release, so called "quarterly
+updates"), these media already contain the updated installer and the included
+updates could conflict with the self updates.
 
 If you need to patch the installer on these updated media you have to use
 a driver update disk (DUD).
@@ -31,7 +31,7 @@
 Please, take into account that self-update will be skipped if any option
 disables it (boot parameter *or* AutoYaST profile).
 
-During the rest of this document it is assumed that self-update is enabled.
+For the rest of this document it is assumed that the self-update is enabled.
 
 ## Basic Workflow
 
@@ -136,11 +136,11 @@
 
    The registration server is then asked for the list of update repositories.
    In order to determine such list, the product `name`, `version` and
-   `architecture` are used
+   `architecture` are used.
 
-   In case of a multi-product installation medium, as the installer is the same
-   for all the included products, the product `name` can be hard-coded in the
-   `control.xml` file with the `/globals/self_update_id` XML node.
+   The product `name` and `version` are hard-coded in the
+   `control.xml` file in the `/globals/self_update_id` and
+   `/globals/self_update_version` XML nodes.
 
    ```xml
    <globals>
@@ -148,6 +148,9 @@
    </globals>
    ```
 
+   If the `self_update_version` value is missing then the `VERSION_ID` value
+   from the `/etc/os-release` file is used as a fallback.
+
 4. Hard-coded in the `control.xml` file on the installation medium (thus it
    depends on the base product):
 
@@ -157,6 +160,9 @@
    </globals>
    ```
 
+   The variables are documented in the [variable 
expansion](#variable-expansion)
+   section below.
+
 The first suitable URL will be used. There are two exceptions:
 
 * If no update URL is found then the self-update is skipped.
@@ -201,9 +207,15 @@
 The URL can contain a variable `$arch` that will be replaced by the system's
 architecture, such as `x86_64`, `i586`, `s390x`, etc.
 
-YaST uses 
[libzypp](https://github.com/openSUSE/libzypp/blob/e68b5df6c96e3f1d140ba15e2a9e85a990210f37/zypp/ZConfig.cc#L63)
-for detecting the system architecture so the `$arch` expansion is compatible
-with the expansion used in usual repository URLs.
+The URLs can contain these variables which are replaced by YaST:
+- `$arch` - is replaced by the RPM package architecture used by the machine
+ (like `x86_64` or `ppc64le`)
+- These variables are replaced by the value from the `/etc/os-release` file:
+ - `$os_release_name`       => `NAME`       (e.g. `SLE`)
+ - `$os_release_id`         => `ID`         (e.g. `sle`)
+ - `$os_release_version`    => `VERSION`    (e.g. `15-SP4`)
+ - `$os_release_version_id` => `VERSION_ID` (e.g. `15.4`)
+
 
 ### Actual URLs
 
@@ -211,7 +223,8 @@
 `https://updates.suse.com/SUSE/Updates/$PRODUCT/$VERSION/$ARCH/update` where
 - PRODUCT is like OpenStack-Cloud, SLE-DESKTOP, SLE-SDK, SLE-SERVER,
 - VERSION (for SLE-SERVER) is like 12, 12-SP1,
-- ARCH is one of `aarch64` `ppc64le` `s390x` `x86_64`
+- ARCH is one of `aarch64`, `ppc64le`, `s390x` or `x86_64`
+  (all archs supported by the SLE product line)
 
 For the self-update the *PRODUCT* is replaced
 with *PRODUCT*-INSTALLER, producing these repository paths
@@ -230,7 +243,7 @@
 If any unexpected version is found then an error is displayed and the 
self-update
 step is completely skipped.
 
-Is is possible to skip this validation is special cases and force applying the
+It is possible to skip this validation is special cases and force applying the
 updates despite the version mismatch by setting environment variable
 `Y2_FORCE_SELF_UPDATE=1`. *This should be done only in special cases (testing)
 when you know what you are doing!*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-installation-4.4.26/doc/control-file.md 
new/yast2-installation-4.4.28/doc/control-file.md
--- old/yast2-installation-4.4.26/doc/control-file.md   2021-12-03 
16:46:11.000000000 +0100
+++ new/yast2-installation-4.4.28/doc/control-file.md   2021-12-10 
16:21:25.000000000 +0100
@@ -1028,6 +1028,9 @@
 
   * `mount_point` *(string, no default value)*
     Directory where the volume will be mounted in the system.
+  * `mount_options` *(string, no default value)*
+    Fstab options separated by comma. If this option is not given, then YaST 
will set
+    default mount options depending on the mount point and the filesystem type.
   * `proposed` *(boolean, default: `true`)*
     Default value of the user setting deciding whether this volume should be
     created or skipped.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.26/package/yast2-installation.changes 
new/yast2-installation-4.4.28/package/yast2-installation.changes
--- old/yast2-installation-4.4.26/package/yast2-installation.changes    
2021-12-03 16:46:11.000000000 +0100
+++ new/yast2-installation-4.4.28/package/yast2-installation.changes    
2021-12-10 16:21:25.000000000 +0100
@@ -1,4 +1,19 @@
 -------------------------------------------------------------------
+Thu Dec  9 16:07:34 UTC 2021 - Ladislav Slez??k <lsle...@suse.cz>
+
+- Improve the self-update process, do not read the products from
+  the installation medium (bsc#1193536)
+- Adde more /etc/os-release replacements in the self-update URL
+- 4.4.28
+
+-------------------------------------------------------------------
+Thu Dec  9 14:11:35 UTC 2021 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
+
+- Display the correct title in the welcome screen depending
+  on its content (related to bsc#1193223 and bsc#1192230).
+- 4.4.27
+
+-------------------------------------------------------------------
 Fri Dec  3 06:53:52 UTC 2021 - Imobach Gonzalez Sosa <igonzalezs...@suse.com>
 
 - Display the product's license when only 1 product is available
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.26/package/yast2-installation.spec 
new/yast2-installation-4.4.28/package/yast2-installation.spec
--- old/yast2-installation-4.4.26/package/yast2-installation.spec       
2021-12-03 16:46:11.000000000 +0100
+++ new/yast2-installation-4.4.28/package/yast2-installation.spec       
2021-12-10 16:21:25.000000000 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-installation
-Version:        4.4.26
+Version:        4.4.28
 Release:        0
 Summary:        YaST2 - Installation Parts
 License:        GPL-2.0-only
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.26/src/lib/installation/dialogs/complex_welcome.rb 
new/yast2-installation-4.4.28/src/lib/installation/dialogs/complex_welcome.rb
--- 
old/yast2-installation-4.4.26/src/lib/installation/dialogs/complex_welcome.rb   
    2021-12-03 16:46:11.000000000 +0100
+++ 
new/yast2-installation-4.4.28/src/lib/installation/dialogs/complex_welcome.rb   
    2021-12-10 16:21:25.000000000 +0100
@@ -59,9 +59,13 @@
       #
       # @return [String] Dialog's title
       def title
-        return license_or_product_title if available_products?
-
-        _("Language and Keyboard Selection")
+        if products.size > 1
+          _("Language, Keyboard and Product Selection")
+        elsif show_license?
+          _("Language, Keyboard and License Agreement")
+        else
+          _("Language and Keyboard Selection")
+        end
       end
 
       # Dialog content
@@ -184,20 +188,6 @@
           VWeight(1, VStretch())
         end
       end
-
-      # Title of the dialog in case there is some product available.
-      #
-      # The title can vary depending if the license agreement or the product
-      # selection is shown.
-      #
-      # @return [String] Dialog's title
-      def license_or_product_title
-        if show_license?
-          _("Language, Keyboard and License Agreement")
-        else
-          _("Language, Keyboard and Product Selection")
-        end
-      end
     end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.26/src/lib/installation/update_repositories_finder.rb
 
new/yast2-installation-4.4.28/src/lib/installation/update_repositories_finder.rb
--- 
old/yast2-installation-4.4.26/src/lib/installation/update_repositories_finder.rb
    2021-12-03 16:46:11.000000000 +0100
+++ 
new/yast2-installation-4.4.28/src/lib/installation/update_repositories_finder.rb
    2021-12-10 16:21:25.000000000 +0100
@@ -86,7 +86,6 @@
       return [] unless defined?(::Registration::UrlHelpers)
       # load the base product from the installation medium,
       # the registration server needs it for evaluating the self update URL
-      add_installation_repo
       urls = update_urls_from_connect
       urls ? urls.map { |u| UpdateRepository.new(u, :default) } : []
     end
@@ -152,7 +151,11 @@
     # Converts the string into an URI if it's valid
     #
     # Substituting $arch pattern with the architecture of the current system.
-    # Substituting $os_release_version pattern with the release of the current 
system.
+    # Substituting these variables with the /etc/os-release content:
+    #   $os_release_name       => NAME
+    #   $os_release_id         => ID
+    #   $os_release_version    => VERSION
+    #   $os_release_version_id => VERSION_ID
     #
     # @return [URI,nil] The string converted into a URL; nil if it's
     #                   not a valid URL.
@@ -161,28 +164,17 @@
     def get_url_from(url)
       return nil unless url.is_a?(::String)
       real_url = url.gsub(/\$arch\b/, Yast::Pkg.GetArchitecture)
+      real_url = real_url.gsub(/\$os_release_name\b/,
+        Yast::OSRelease.ReleaseName)
+      real_url = real_url.gsub(/\$os_release_id\b/,
+        Yast::OSRelease.id)
+      real_url = real_url.gsub(/\$os_release_version_id\b/,
+        Yast::OSRelease.ReleaseVersion)
       real_url = real_url.gsub(/\$os_release_version\b/,
         Yast::OSRelease.ReleaseVersionHumanReadable)
       URI.regexp.match(real_url) ? URI(real_url) : nil
     end
 
-    # Loads the base product from the installation medium
-    def add_installation_repo
-      base_url = Yast::InstURL.installInf2Url("")
-      initial_repository = Yast::Pkg.SourceCreateBase(base_url, "")
-
-      until initial_repository
-        log.error "Adding the installation repository failed"
-        # ask user to retry
-        base_url = Packages.UpdateSourceURL(base_url)
-
-        # aborted by user
-        return false if base_url == ""
-
-        initial_repository = Yast::Pkg.SourceCreateBase(base_url, "")
-      end
-    end
-
     # Return the URL of the preferred registration server
     #
     # Determined in the following order:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-installation-4.4.26/test/lib/dialogs/complex_welcome_test.rb 
new/yast2-installation-4.4.28/test/lib/dialogs/complex_welcome_test.rb
--- old/yast2-installation-4.4.26/test/lib/dialogs/complex_welcome_test.rb      
2021-12-03 16:46:11.000000000 +0100
+++ new/yast2-installation-4.4.28/test/lib/dialogs/complex_welcome_test.rb      
2021-12-10 16:21:25.000000000 +0100
@@ -29,8 +29,42 @@
   let(:products) { [] }
 
   describe "#title" do
-    it "returns a string" do
-      expect(widget.title).to be_a(::String)
+    context "when more than one product exists" do
+      let(:products) do
+        [instance_double("Y2Packager::ProductSpec"), 
instance_double("Y2Packager::ProductSpec")]
+      end
+
+      it "returns 'Language, Keyboard and Product Selection'" do
+        expect(widget.title).to eq("Language, Keyboard and Product Selection")
+      end
+    end
+
+    context "when just a single product exists" do
+      let(:products) do
+        [instance_double("Y2Packager::ProductSpec", license?: license?)]
+      end
+
+      context "and it has a license" do
+        let(:license?) { true }
+
+        it "returns 'Language, Keyboard and License Agreement" do
+          expect(widget.title).to eq("Language, Keyboard and License 
Agreement")
+        end
+      end
+
+      context "but it has no license" do
+        let(:license?) { false }
+
+        it "returns 'Language and Keyboard Selection" do
+          expect(widget.title).to eq("Language and Keyboard Selection")
+        end
+      end
+    end
+
+    context "when there are not products" do
+      it "returns 'Language and Keyboard Selection" do
+        expect(widget.title).to eq("Language and Keyboard Selection")
+      end
     end
   end
 

Reply via email to