Hello community,
here is the log from the commit of package yast2-ruby-bindings for openSUSE:Factory checked in at 2013-11-07 09:15:33
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/yast2-ruby-bindings (Old)
and /work/SRC/openSUSE:Factory/.yast2-ruby-bindings.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-ruby-bindings"
Changes:
--------
--- /work/SRC/openSUSE:Factory/yast2-ruby-bindings/yast2-ruby-bindings.changes 2013-10-19 11:21:00.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.yast2-ruby-bindings.new/yast2-ruby-bindings.changes 2013-11-07 09:15:34.000000000 +0100
@@ -1,0 +2,8 @@
+Fri Oct 25 14:26:08 UTC 2013 - jreidinger@suse.com
+
+- report exceptions via Report.Error so there is no hidden failures
+- detect invalid response type from clients
+ (gh#yast/yast-ruby-bindings#81)
+- 3.1.2
+
+-------------------------------------------------------------------
Old:
----
yast2-ruby-bindings-3.1.1.tar.bz2
New:
----
yast2-ruby-bindings-3.1.2.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2-ruby-bindings.spec ++++++
--- /var/tmp/diff_new_pack.2y7uVk/_old 2013-11-07 09:15:35.000000000 +0100
+++ /var/tmp/diff_new_pack.2y7uVk/_new 2013-11-07 09:15:35.000000000 +0100
@@ -17,7 +17,7 @@
Name: yast2-ruby-bindings
-Version: 3.1.1
+Version: 3.1.2
Release: 0
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Source0: yast2-ruby-bindings-%{version}.tar.bz2
++++++ yast2-ruby-bindings-3.1.1.tar.bz2 -> yast2-ruby-bindings-3.1.2.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-3.1.1/CONTRIBUTING.md new/yast2-ruby-bindings-3.1.2/CONTRIBUTING.md
--- old/yast2-ruby-bindings-3.1.1/CONTRIBUTING.md 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-ruby-bindings-3.1.2/CONTRIBUTING.md 2013-11-04 17:05:39.000000000 +0100
@@ -0,0 +1,87 @@
+YaST Contribution Guidelines
+============================
+
+YaST is an open source project and as such it welcomes all kinds of
+contributions. If you decide to contribute, please follow these guidelines to
+ensure the process is effective and pleasant both for you and YaST maintainers.
+
+There are two main forms of contribution: reporting bugs and performing code
+changes.
+
+Bug Reports
+-----------
+
+If you find a problem, please report it either using
+[Bugzilla](https://bugzilla.novell.com/enter_bug.cgi?format=guided&product=openSUSE+Factory&component=YaST2)
+or [GitHub issues](../../issues). (For Bugzilla, use the [simplified
+registration](https://secure-www.novell.com/selfreg/jsp/createSimpleAccount.jsp)
+if you don't have an account yet.)
+
+If you find a problem, please report it either using
+[Bugzilla](https://bugzilla.novell.com/) or GitHub issues. We can't guarantee
+that every bug will be fixed, but we'll try.
+
+When creating a bug report, please follow our [bug reporting
+guidelines](http://en.opensuse.org/openSUSE:Report_a_YaST_bug).
+
+Code Changes
+------------
+
+We welcome all kinds of code contributions, from simple bug fixes to significant
+refactorings and implementation of new features. However, before making any
+non-trivial contribution, get in touch with us first — this can prevent wasted
+effort on both sides. Also, have a look at our [development
+documentation](http://en.opensuse.org/openSUSE:YaST_development).
+
+To send us your code change, use GitHub pull requests. The workflow is as
+follows:
+
+ 1. Fork the project.
+
+ 2. Create a topic branch based on `master`.
+
+ 3. Implement your change, including tests (if possible). Make sure you adhere
+ to the [Ruby style
+ guide](https://github.com/SUSE/style-guides/blob/master/Ruby.md).
+
+ 4. Make sure your change didn't break anything by building the RPM package
+ (`rake osc:build`). The build process includes running the full testsuite.
+
+ 5. Publish the branch and create a pull request.
+
+ 6. YaST developers will review your change and possibly point out issues.
+ Adapt the code under their guidance until they are all resolved.
+
+ 7. Finally, the pull request will get merged or rejected.
+
+See also [GitHub's guide on
+contributing](https://help.github.com/articles/fork-a-repo).
+
+If you want to do multiple unrelated changes, use separate branches and pull
+requests.
+
+Do not change the `VERSION` and `*.changes` files as this could lead to
+conflicts.
+
+### Commits
+
+Each commit in the pull request should do only one thing, which is clearly
+described by its commit message. Especially avoid mixing formatting changes and
+functional changes into one commit. When writing commit messages, adhere to
+[widely used
+conventions](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html).
+
+If your commit is related to a bug in Buzgilla or an issue on GitHub, make sure
+you mention it in the commit message for cross-reference. Use format like
+bnc#775814 or gh#yast/yast-foo#42. See also [GitHub
+autolinking](https://help.github.com/articles/github-flavored-markdown#references)
+and [openSUSE abbreviation
+reference](http://en.opensuse.org/openSUSE:Packaging_Patches_guidelines#Current_set_of_...).
+
+Additional Information
+----------------------
+
+If you have any question, feel free to ask at the [development mailing
+list](http://lists.opensuse.org/yast-devel/) or at the
+[#yast](http://webchat.freenode.net/?channels=%23yast) IRC channel on freenode.
+We'll do our best to provide a timely and accurate answer.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-3.1.1/VERSION new/yast2-ruby-bindings-3.1.2/VERSION
--- old/yast2-ruby-bindings-3.1.1/VERSION 2013-10-15 15:26:18.000000000 +0200
+++ new/yast2-ruby-bindings-3.1.2/VERSION 2013-11-04 17:05:39.000000000 +0100
@@ -1 +1 @@
-3.1.1
+3.1.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-3.1.1/package/yast2-ruby-bindings.changes new/yast2-ruby-bindings-3.1.2/package/yast2-ruby-bindings.changes
--- old/yast2-ruby-bindings-3.1.1/package/yast2-ruby-bindings.changes 2013-10-15 15:26:18.000000000 +0200
+++ new/yast2-ruby-bindings-3.1.2/package/yast2-ruby-bindings.changes 2013-11-04 17:05:39.000000000 +0100
@@ -1,4 +1,12 @@
-------------------------------------------------------------------
+Fri Oct 25 14:26:08 UTC 2013 - jreidinger@suse.com
+
+- report exceptions via Report.Error so there is no hidden failures
+- detect invalid response type from clients
+ (gh#yast/yast-ruby-bindings#81)
+- 3.1.2
+
+-------------------------------------------------------------------
Tue Oct 15 13:01:18 UTC 2013 - lslezak@suse.cz
- float_to_lstring(): do not crash when glibc-locale is missing,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-3.1.1/package/yast2-ruby-bindings.spec new/yast2-ruby-bindings-3.1.2/package/yast2-ruby-bindings.spec
--- old/yast2-ruby-bindings-3.1.1/package/yast2-ruby-bindings.spec 2013-10-15 15:26:18.000000000 +0200
+++ new/yast2-ruby-bindings-3.1.2/package/yast2-ruby-bindings.spec 2013-11-04 17:05:39.000000000 +0100
@@ -3,7 +3,7 @@
#
Name: yast2-ruby-bindings
-Version: 3.1.0
+Version: 3.1.2
Release: 0
License: GPL-2.0
Group: System/YaST
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-3.1.1/src/binary/CMakeLists.txt new/yast2-ruby-bindings-3.1.2/src/binary/CMakeLists.txt
--- old/yast2-ruby-bindings-3.1.1/src/binary/CMakeLists.txt 2013-10-15 15:26:18.000000000 +0200
+++ new/yast2-ruby-bindings-3.1.2/src/binary/CMakeLists.txt 2013-11-04 17:05:39.000000000 +0100
@@ -67,10 +67,9 @@
# tight control) CMake should be able to handle this. However, it somehow does
# not work.
#
-#set_target_properties( yastx PROPERTIES SKIP_BUILD_RPATH FALSE)
-#set_target_properties( yastx PROPERTIES BUILD_WITH_INSTALL_RPATH FALSE)
-#set_target_properties( yastx PROPERTIES INSTALL_RPATH_USE_LINK_PATH FALSE)
-#set_target_properties( yastx PROPERTIES INSTALL_RPATH "${YAST_PLUGIN_DIR}")
+# jreidinger: new cmake start stripping it, so it need to be explicitelly added
+set_target_properties( yastx PROPERTIES INSTALL_RPATH "${YAST_PLUGIN_DIR}")
+set_target_properties( builtinx PROPERTIES INSTALL_RPATH "${YAST_PLUGIN_DIR}")
#
# So using an explicit linker option instead:
# (http://www.cmake.org/pipermail/cmake/2008-January/019321.html)
@@ -109,4 +108,5 @@
target_link_libraries( py2lang_ruby ${YAST_YCP_LIBRARY} )
target_link_libraries( py2lang_ruby ${YAST_PLUGIN_WFM_LIBRARY} )
target_link_libraries( py2lang_ruby ${RUBY_LIBRARY} )
+set_target_properties( py2lang_ruby PROPERTIES INSTALL_RPATH "${YAST_PLUGIN_DIR}")
install(TARGETS py2lang_ruby LIBRARY DESTINATION ${YAST_PLUGIN_DIR} )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-3.1.1/src/ruby/yast/scr.rb new/yast2-ruby-bindings-3.1.2/src/ruby/yast/scr.rb
--- old/yast2-ruby-bindings-3.1.1/src/ruby/yast/scr.rb 2013-10-15 15:26:18.000000000 +0200
+++ new/yast2-ruby-bindings-3.1.2/src/ruby/yast/scr.rb 2013-11-04 17:05:39.000000000 +0100
@@ -4,47 +4,110 @@
# Wrapper class for SCR component in Yast
# See yast documentation for SCR
module SCR
- def self.Read *args
- call_builtin_wrapper("Read",*args)
- end
-
- def self.Write *args
- call_builtin_wrapper("Write", *args)
- end
-
- def self.Execute *args
- call_builtin_wrapper("Execute", *args)
- end
-
- def self.Dir *args
- call_builtin_wrapper("Dir", *args)
- end
-
- def self.Error *args
- call_builtin_wrapper("Error", *args)
- end
-
- def self.RegisterAgent *args
- call_builtin_wrapper("RegisterAgent", *args)
- end
-
- def self.RegisterNewAgents *args
- call_builtin_wrapper("RegisterNewAgents", *args)
- end
-
- def self.UnregisterAgent *args
- call_builtin_wrapper("UnregisterAgent", *args)
- end
-
- def self.UnregisterAllAgents *args
- call_builtin_wrapper("UnregisterAllAgents", *args)
- end
- def self.UnmountAgent *args
- call_builtin_wrapper("UnmountAgent", *args)
+ # Reads data
+ # @param path[Yast::Path] path that is combination of path where agent is
+ # attached and path inside agent
+ # @param args additional arguments depending on agent, usually optional
+ #
+ # @example Get netcards discovered by probe agent
+ # SCR.Read(path(".probe.netcard"))
+ # @example Read content of file /tmp/test
+ # SCR.Read(path(".target.string"), "tmp/test")
+ def self.Read (path, *args)
+ call_builtin_wrapper("Read", path, *args)
+ end
+
+ # Writes data
+ # @param path[Yast::Path] path that is combination of path where agent is
+ # attached and path inside agent
+ # @param args additional arguments depending on agent
+ # @return [true,false] success
+ #
+ # @example change default desktop in sysconfig to kde
+ # SCR.Write(path(".sysconfig.windowmanager.DEFAULT_WM"), "kde")
+ # @example write string s to file /tmp/f
+ # SCR.Write(path(".target.string"), "/tmp/f", "s")
+ def self.Write (path, *args)
+ call_builtin_wrapper("Write", path, *args)
+ end
+
+ # Executes command
+ # @param path[Yast::Path] path to agent
+ # @param args additional arguments depending on agent
+ # @example halt computer
+ # SCR.Execute(path(".target.bash"), "/sbin/halt -f -n -p")
+ # @example umount /mnt path
+ # SCR.Execute(path(".target.umount"), "/mnt")
+ def self.Execute (path, *args)
+ call_builtin_wrapper("Execute", path, *args)
+ end
+
+ # Gets array of all children attached directly below path
+ # @param path[Yast::Path] sub-path where to search for children
+ # @return [Array<String>] list of children names
+ #
+ # @example get all sysconfig agents
+ # SCR.Dir(path(".sysconfig"))
+ # @example get all keys in install inf
+ # SCR.Dir(path(".etc.install_inf"))
+ def self.Dir (path)
+ call_builtin_wrapper("Dir", path)
+ end
+
+ # Gets detailled error description from agent
+ # @param path[Yast::Path] path to agent
+ # @return [Hash] with keys "code" and "summary"
+ def self.Error (path)
+ call_builtin_wrapper("Error", path)
+ end
+
+ # Register an agent at given path with description
+ #
+ # @param path [Yast::Path] path to agent
+ # @param description [Yast::Term,String] path to file description or direct
+ # term with agent description
+ # @return [true,false] if succeed
+ def self.RegisterAgent (path, description)
+ call_builtin_wrapper("RegisterAgent", path, description)
+ end
+
+ # Register new agents. (bnc#245508#c16)
+ #
+ # Rescan the scrconf registration directories and register any
+ # agents at new(!) paths. Agents, even new ones, on paths that
+ # are registered already, will not be replaced. This means that
+ # .oes.specific.agent will start to work but something like
+ # adding /usr/local/etc/sysconfig to .sysconfig.network would not.
+ # @return [true,false] if succeed
+ def self.RegisterNewAgents
+ call_builtin_wrapper("RegisterNewAgents")
+ end
+
+ # Unregister agent from given path
+ # @param path [Yast::Path] path to agent
+ # @return [true,false] if succeed
+ def self.UnregisterAgent (path)
+ call_builtin_wrapper("UnregisterAgent", path)
+ end
+
+ # Unregister all agents
+ # @return [true,false] if succeed
+ def self.UnregisterAllAgents
+ call_builtin_wrapper("UnregisterAllAgents")
+ end
+
+ # Unmounts agent. The agent is detached, but when needed it is mounted again automatically.
+ #
+ # It sends to component result() which force to terminate component.
+ # If there is any lazy write, then it is properly finished.
+ # @param path[Yast::Path] path to agent
+ def self.UnmountAgent (path)
+ call_builtin_wrapper("UnmountAgent", path)
end
- def self.call_builtin_wrapper *args
+ # @private wrapper to C bindings
+ def self.call_builtin_wrapper (*args)
# caller[0] is one of the functions above
caller[1].match BACKTRACE_REGEXP
call_builtin($1, $2.to_i, *args)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-3.1.1/src/ruby/yast/wfm.rb new/yast2-ruby-bindings-3.1.2/src/ruby/yast/wfm.rb
--- old/yast2-ruby-bindings-3.1.1/src/ruby/yast/wfm.rb 2013-10-15 15:26:18.000000000 +0200
+++ new/yast2-ruby-bindings-3.1.2/src/ruby/yast/wfm.rb 2013-11-04 17:05:39.000000000 +0100
@@ -1,5 +1,6 @@
require "yast/builtinx"
require "yast/builtins"
+require "yast/ops"
# @private we need it as clients is called in global contenxt
GLOBAL_WFM_CONTEXT = Proc.new {}
@@ -7,86 +8,204 @@
# Wrapper class for WFM component in Yast
# See yast documentation for WFM
module WFM
+
+ # Returns list of arguments passed to client or element at given index
+ #
+ # @example Get all args
+ # Yast::WFM.Args
+ #
+ # @example Get only first argument
+ # Yast::WFM.Args 0
def self.Args *args
call_builtin_wrapper("Args", *args)
end
- def self.ClientExists *args
- call_builtin_wrapper("ClientExists", *args)
- end
-
- def self.Execute *args
- call_builtin_wrapper("Execute", *args)
- end
-
- def self.GetEncoding *args
- call_builtin_wrapper("GetEncoding", *args)
- end
-
- def self.GetEnvironmentEncoding *args
- call_builtin_wrapper("GetEnvironmentEncoding", *args)
- end
-
- def self.GetLanguage *args
- call_builtin_wrapper("GetLanguage", *args)
- end
-
- def self.Read *args
- call_builtin_wrapper("Read", *args)
- end
-
- def self.SCRClose *args
- call_builtin_wrapper("SCRClose", *args)
- end
-
- def self.SCRGetDefault *args
- call_builtin_wrapper("SCRGetDefault", *args)
- end
-
- def self.SCRGetName *args
- call_builtin_wrapper("SCRGetName", *args)
- end
-
- def self.SCROpen *args
- call_builtin_wrapper("SCROpen", *args)
- end
-
- def self.SCRSetDefault *args
- call_builtin_wrapper("SCRSetDefault", *args)
- end
-
- def self.SetLanguage *args
- call_builtin_wrapper("SetLanguage", *args)
- end
-
- def self.Write *args
- call_builtin_wrapper("Write", *args)
+ # Checks if client of given name exists on system
+ #
+ # @note useful for checking before calling given client
+ # @see Yast::WFM.CallFunction
+ # @return [true,false]
+ #
+ # @example Check if there is client "inst_bootloader"
+ # Yast::WFM.ClientExists "inst_bootloader"
+ def self.ClientExists client
+ call_builtin_wrapper("ClientExists", client)
+ end
+
+ # Runs execute on local system agent operating on inst-sys
+ #
+ # @param path[Yast::Path] agent path
+ # @param args arguments to agent
+ #
+ # @note very limited use-case. It is needed only if installer switched to
+ # scr on target system and agent from inst-sys must be called
+ #
+ # @see SCR.Execute common agent execute
+ #
+ # @example Run command in bash in inst-sys
+ # Yast::WFM.Execute(Yast::Path.new(".local.bash"), "halt -p")
+ def self.Execute path, *args
+ call_builtin_wrapper("Execute", path, *args)
+ end
+
+ # Returns current encoding code as string
+ #
+ # @deprecated enconding is now always UTF-8
+ # @return [String]
+ def self.GetEncoding
+ call_builtin_wrapper("GetEncoding")
+ end
+
+ # Returns enconding of environment where Yast start
+ #
+ # @return [String]
+ def self.GetEnvironmentEncoding
+ call_builtin_wrapper("GetEnvironmentEncoding")
+ end
+
+ # Returns current language without modifiers as string
+ #
+ # @return [String]
+ # @example return value
+ # Yast::WFM.GetLanguage
+ # => "en_US.UTF-8"
+ def self.GetLanguage
+ call_builtin_wrapper("GetLanguage")
+ end
+
+ # Runs read on local system agent operating on inst-sys
+ #
+ # @param path[Yast::Path] agent path
+ # @param args arguments to agent
+ #
+ # @note very limited use-case. It is needed only if installer switched to
+ # scr on target system and agent from inst-sys must be called
+ #
+ # @see SCR.Read common agent read
+ #
+ # @example Read kernel cmdline
+ # Yast::WFM.Read(path(".local.string"), "/proc/cmdline")
+ def self.Read path, *args
+ call_builtin_wrapper("Read", path, *args)
+ end
+
+ # Closes SCR handle obtained via {SCROpen}
+ #
+ # If SCR is set as default, then try to switch to another reasonable SCR
+ # openned
+ def self.SCRClose handle
+ call_builtin_wrapper("SCRClose", handle)
+ end
+
+ # Gets handle of current default SCR
+ def self.SCRGetDefault
+ call_builtin_wrapper("SCRGetDefault")
+ end
+
+ # Gets name of SCR associated with handle
+ #
+ # @return [String]
+ def self.SCRGetName handle
+ call_builtin_wrapper("SCRGetName", handle)
+ end
+
+ # Creates new SCR instance
+ #
+ # It is useful for installation where agents start operation on installed system
+ #
+ # @param name[String] name for instance. Currently it is supported on scr name
+ # with possible chrooting in format `"chroot=