Hello community,

here is the log from the commit of package yast2-dhcp-server for 
openSUSE:Factory checked in at 2017-04-14 13:41:53
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-dhcp-server (Old)
 and      /work/SRC/openSUSE:Factory/.yast2-dhcp-server.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "yast2-dhcp-server"

Fri Apr 14 13:41:53 2017 rev:50 rq:487611 version:3.2.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-dhcp-server/yast2-dhcp-server.changes      
2016-10-20 23:10:40.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-dhcp-server.new/yast2-dhcp-server.changes 
2017-04-14 13:41:55.279773543 +0200
@@ -1,0 +2,9 @@
+Wed Jan 18 11:52:24 UTC 2017 - [email protected]
+
+- Fixed a crash at start when the "dhcp-server" package was not
+  installed in the system. The crash happens with the latest
+  yast2-core and yast2-ruby-bindings packages (it is related to the
+  bsc#932331 fix).
+- 3.2.2
+
+-------------------------------------------------------------------

Old:
----
  yast2-dhcp-server-3.2.1.tar.bz2

New:
----
  yast2-dhcp-server-3.2.2.tar.bz2

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

Other differences:
------------------
++++++ yast2-dhcp-server.spec ++++++
--- /var/tmp/diff_new_pack.crkaoj/_old  2017-04-14 13:41:55.891687059 +0200
+++ /var/tmp/diff_new_pack.crkaoj/_new  2017-04-14 13:41:55.895686494 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package yast2-dhcp-server
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # 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-dhcp-server
-Version:        3.2.1
+Version:        3.2.2
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build

++++++ yast2-dhcp-server-3.2.1.tar.bz2 -> yast2-dhcp-server-3.2.2.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-dhcp-server-3.2.1/.travis.yml 
new/yast2-dhcp-server-3.2.2/.travis.yml
--- old/yast2-dhcp-server-3.2.1/.travis.yml     2016-10-20 10:14:38.607640744 
+0200
+++ new/yast2-dhcp-server-3.2.2/.travis.yml     2017-01-18 13:49:32.419542000 
+0100
@@ -1,17 +1,11 @@
-language: cpp
-compiler:
-    - gcc
+sudo: required
+language: bash
+services:
+  - docker
+
 before_install:
-    # disable rvm, use system Ruby
-    - rvm reset
-    - wget 
https://raw.githubusercontent.com/yast/yast-devtools/master/travis-tools/travis_setup.sh
-    - sh ./travis_setup.sh -p "rake yast2-devtools yast2-testsuite yast2 
yast2-perl-bindings" -g "rspec:3.3.0 yast-rake gettext simplecov coveralls"
+  - docker build -t yast-dhcp-server-image .
 script:
-    - rake check:syntax
-    - rake check:pot
-    - make -f Makefile.cvs
-    - make
-    - sudo make install
-    - make check
-    - COVERAGE=1 rake test:unit
-
+  # the "yast-travis-ruby" script is included in the base yastdevel/ruby image
+  # see https://github.com/yast/docker-yast-ruby/blob/master/yast-travis-ruby
+  - docker run -it -e TRAVIS=1 -e TRAVIS_JOB_ID="$TRAVIS_JOB_ID" 
yast-dhcp-server-image yast-travis-ruby
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/yast2-dhcp-server-3.2.1/Dockerfile 
new/yast2-dhcp-server-3.2.2/Dockerfile
--- old/yast2-dhcp-server-3.2.1/Dockerfile      1970-01-01 01:00:00.000000000 
+0100
+++ new/yast2-dhcp-server-3.2.2/Dockerfile      2017-01-18 13:49:32.451542000 
+0100
@@ -0,0 +1,5 @@
+FROM yastdevel/ruby
+RUN zypper --gpg-auto-import-keys --non-interactive in --no-recommends \
+  yast2-dns-server
+COPY . /usr/src/app
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-dhcp-server-3.2.1/package/yast2-dhcp-server.changes 
new/yast2-dhcp-server-3.2.2/package/yast2-dhcp-server.changes
--- old/yast2-dhcp-server-3.2.1/package/yast2-dhcp-server.changes       
2016-10-20 10:14:38.635640744 +0200
+++ new/yast2-dhcp-server-3.2.2/package/yast2-dhcp-server.changes       
2017-01-18 13:49:32.463542000 +0100
@@ -1,4 +1,13 @@
 -------------------------------------------------------------------
+Wed Jan 18 11:52:24 UTC 2017 - [email protected]
+
+- Fixed a crash at start when the "dhcp-server" package was not
+  installed in the system. The crash happens with the latest
+  yast2-core and yast2-ruby-bindings packages (it is related to the
+  bsc#932331 fix).
+- 3.2.2
+
+-------------------------------------------------------------------
 Thu Oct 20 07:31:59 UTC 2016 - [email protected]
 
 - allow empty string in primary name server field for dynamic DNS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-dhcp-server-3.2.1/package/yast2-dhcp-server.spec 
new/yast2-dhcp-server-3.2.2/package/yast2-dhcp-server.spec
--- old/yast2-dhcp-server-3.2.1/package/yast2-dhcp-server.spec  2016-10-20 
10:14:38.635640744 +0200
+++ new/yast2-dhcp-server-3.2.2/package/yast2-dhcp-server.spec  2017-01-18 
13:49:32.463542000 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           yast2-dhcp-server
-Version:        3.2.1
+Version:        3.2.2
 Release:        0
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-dhcp-server-3.2.1/src/include/dhcp-server/dialogs.rb 
new/yast2-dhcp-server-3.2.2/src/include/dhcp-server/dialogs.rb
--- old/yast2-dhcp-server-3.2.1/src/include/dhcp-server/dialogs.rb      
2016-10-20 10:14:38.651640744 +0200
+++ new/yast2-dhcp-server-3.2.2/src/include/dhcp-server/dialogs.rb      
2017-01-18 13:49:32.491542000 +0100
@@ -37,8 +37,13 @@
       return :abort if !Confirm.MustBeRoot
 
       ret = DhcpServer.Read
-      return DhcpServer.WasConfigured ? :next : :wizard if ret
-      :abort
+      return :abort unless ret
+
+      # initialize the service widget, it needs the "dhcp-server" package
+      # which might be just installed by the DhcpServer.Read call
+      DhcpServerUI.InitServiceWidget
+
+      DhcpServer.WasConfigured ? :next : :wizard
     end
 
     # Write settings dialog
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/yast2-dhcp-server-3.2.1/src/include/dhcp-server/widgets.rb 
new/yast2-dhcp-server-3.2.2/src/include/dhcp-server/widgets.rb
--- old/yast2-dhcp-server-3.2.1/src/include/dhcp-server/widgets.rb      
2016-10-20 10:14:38.687640744 +0200
+++ new/yast2-dhcp-server-3.2.2/src/include/dhcp-server/widgets.rb      
2017-01-18 13:49:32.551542000 +0100
@@ -1031,14 +1031,6 @@
           #FIXME CWM should be able to handle virtual widgets
           "widget"        => :textentry
         },
-        "service_status"         => {
-          "widget" => :custom,
-          "custom_widget" => status_widget.widget,
-          "help"   => status_widget.help,
-          "init"   => fun_ref(method(:init_service_status), "void (string)"),
-          "handle" => fun_ref(method(:handle_service_status), "symbol (string, 
map)"),
-          "store"  => fun_ref(method(:store_service_status), "void (string, 
map)")
-        },
         "apply"           => {
           "widget" => :push_button,
           "label"  => _("Apply Changes"),
@@ -1329,5 +1321,21 @@
 
       nil
     end
+
+    # lazy initialization of the service status widget
+    # it needs the "dhcp-server" package already installed in the system
+    # otherwise it crashes
+    def InitServiceWidget
+      return if @widgets["service_status"]
+
+      @widgets["service_status"] = {
+        "widget" => :custom,
+        "custom_widget" => status_widget.widget,
+        "help"   => status_widget.help,
+        "init"   => fun_ref(method(:init_service_status), "void (string)"),
+        "handle" => fun_ref(method(:handle_service_status), "symbol (string, 
map)"),
+        "store"  => fun_ref(method(:store_service_status), "void (string, 
map)")
+      }
+    end
   end
 end


Reply via email to