Hello community, here is the log from the commit of package yast2-ruby-bindings for openSUSE:Factory checked in at 2012-01-26 14:09:24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-ruby-bindings (Old) and /work/SRC/openSUSE:Factory/.yast2-ruby-bindings.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-ruby-bindings", Maintainer is "dmacvi...@suse.com" Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-ruby-bindings/yast2-ruby-bindings.changes 2011-10-04 17:05:34.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.yast2-ruby-bindings.new/yast2-ruby-bindings.changes 2012-01-26 14:09:25.000000000 +0100 @@ -1,0 +2,23 @@ +Thu Jan 19 12:11:56 UTC 2012 - jreidin...@suse.com + +- improve previous fix to allow loading also file in namespace ( + e.g. Name::Test in name/test ) (bnc#705417) + +------------------------------------------------------------------- +Mon Jan 16 15:16:39 UTC 2012 - co...@suse.com + +- license should be GPL-2.0 without or later + +------------------------------------------------------------------- +Mon Jan 16 14:47:57 UTC 2012 - jreidin...@suse.com + +- allows loading modules which follows rails ruby convention + ( ActiveSupport module is in active_support.rb file ) + (bnc#705417) + +------------------------------------------------------------------- +Wed Dec 7 10:06:27 UTC 2011 - co...@suse.com + +- fix license to be in spdx.org format + +------------------------------------------------------------------- Old: ---- yast2-ruby-bindings-0.3.8.tar.bz2 New: ---- yast2-ruby-bindings-0.3.9.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-ruby-bindings.spec ++++++ --- /var/tmp/diff_new_pack.BP97No/_old 2012-01-26 14:09:26.000000000 +0100 +++ /var/tmp/diff_new_pack.BP97No/_new 2012-01-26 14:09:26.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package yast2-ruby-bindings # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,19 +15,19 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # -# norootforbuild - Name: yast2-ruby-bindings -Version: 0.3.8 +Version: 0.3.9 Release: 0 -License: GPL -Group: System/YaST BuildRoot: %{_tmppath}/%{name}-%{version}-build Source0: yast2-ruby-bindings-%{version}.tar.bz2 Prefix: /usr -BuildRequires: cmake gcc-c++ libxcrypt-devel swig yast2-core-devel +BuildRequires: cmake +BuildRequires: gcc-c++ +BuildRequires: libxcrypt-devel +BuildRequires: swig +BuildRequires: yast2-core-devel BuildRequires: yast2-devtools >= 2.16.3 # libzypp-devel is missing .la requires BuildRequires: ruby-devel @@ -37,6 +37,8 @@ BuildRequires: yast2-ycp-ui-bindings-devel >= 2.16.37 Requires: ruby Summary: Ruby bindings for the YaST platform +License: GPL-2.0+ +Group: System/YaST %description The bindings allow YaST modules to be written using the Ruby language @@ -67,9 +69,6 @@ make test ARGS=-V cd .. -%clean -rm -rf "$RPM_BUILD_ROOT" - %files %defattr (-, root, root) %{_libdir}/YaST2/plugin/libpy2lang_ruby.so ++++++ yast2-ruby-bindings-0.3.8.tar.bz2 -> yast2-ruby-bindings-0.3.9.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/.mme-makepac new/yast2-ruby-bindings-0.3.9/.mme-makepac --- old/yast2-ruby-bindings-0.3.8/.mme-makepac 2011-10-03 17:37:50.000000000 +0200 +++ new/yast2-ruby-bindings-0.3.9/.mme-makepac 1970-01-01 01:00:00.000000000 +0100 @@ -1,40 +0,0 @@ -#! /bin/sh -x -# mme getpac yast2-network sp1 - -# fd3 will be our output, stdout goes stderr -exec 3>&1 >&2 - -set -o errexit - -if [ "$1" = --clone ]; then - DEST=$2 - cp $0 $DEST - chmod +x $DEST - exit -fi - -PKG=$1 -SHORT_PRJ=$2 -shift 2 - -if test -f Makefile.cvs; then - # assuming yast2, svn - make -f Makefile.cvs - make package-local CHECK_SYNTAX=false -elif test -f CMakeLists.txt; then - mkdir build - cd build - # from spec - cmake -DCMAKE_INSTALL_PREFIX=/usr \ - -DLIB=lib \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_SKIP_RPATH=1 \ - .. - make srcpackage -else - echo >&2 "Did not recognize the build system" - exit 1 -fi - -cd package -pwd >&3 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/VERSION.cmake new/yast2-ruby-bindings-0.3.9/VERSION.cmake --- old/yast2-ruby-bindings-0.3.8/VERSION.cmake 2011-10-03 17:37:50.000000000 +0200 +++ new/yast2-ruby-bindings-0.3.9/VERSION.cmake 2012-01-25 16:57:33.000000000 +0100 @@ -1,3 +1,3 @@ SET(VERSION_MAJOR "0") SET(VERSION_MINOR "3") -SET(VERSION_PATCH "8") +SET(VERSION_PATCH "9") Files old/yast2-ruby-bindings-0.3.8/package/yast2-ruby-bindings-0.3.9.tar.bz2 and new/yast2-ruby-bindings-0.3.9/package/yast2-ruby-bindings-0.3.9.tar.bz2 differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/package/yast2-ruby-bindings.changes new/yast2-ruby-bindings-0.3.9/package/yast2-ruby-bindings.changes --- old/yast2-ruby-bindings-0.3.8/package/yast2-ruby-bindings.changes 2011-10-03 17:37:50.000000000 +0200 +++ new/yast2-ruby-bindings-0.3.9/package/yast2-ruby-bindings.changes 2012-01-25 16:57:33.000000000 +0100 @@ -1,4 +1,27 @@ ------------------------------------------------------------------- +Thu Jan 19 12:11:56 UTC 2012 - jreidin...@suse.com + +- improve previous fix to allow loading also file in namespace ( + e.g. Name::Test in name/test ) (bnc#705417) + +------------------------------------------------------------------- +Mon Jan 16 15:16:39 UTC 2012 - co...@suse.com + +- license should be GPL-2.0 without or later + +------------------------------------------------------------------- +Mon Jan 16 14:47:57 UTC 2012 - jreidin...@suse.com + +- allows loading modules which follows rails ruby convention + ( ActiveSupport module is in active_support.rb file ) + (bnc#705417) + +------------------------------------------------------------------- +Wed Dec 7 10:06:27 UTC 2011 - co...@suse.com + +- fix license to be in spdx.org format + +------------------------------------------------------------------- Mon Oct 3 17:18:29 CEST 2011 - mvid...@suse.cz - WIP: Ruby objects usable from YCP (FATE#312825). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/package/yast2-ruby-bindings.spec new/yast2-ruby-bindings-0.3.9/package/yast2-ruby-bindings.spec --- old/yast2-ruby-bindings-0.3.8/package/yast2-ruby-bindings.spec 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-ruby-bindings-0.3.9/package/yast2-ruby-bindings.spec 2012-01-25 16:57:33.000000000 +0100 @@ -0,0 +1,60 @@ + + +# +# spec file for package yast2-ruby-bindings (Version 0.1) +# +# norootforbuild + +Name: yast2-ruby-bindings +Version: 0.3.9 +Release: 0 +License: GPL-2.0+ +Group: System/YaST +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Source0: yast2-ruby-bindings-%{version}.tar.bz2 +Prefix: /usr + +BuildRequires: swig cmake gcc-c++ libxcrypt-devel yast2-core-devel +BuildRequires: yast2-devtools >= 2.16.3 +# libzypp-devel is missing .la requires +BuildRequires: ruby-devel +Requires: yast2-core >= 2.18.1 +BuildRequires: yast2-core-devel >= 2.18.1 +Requires: yast2-ycp-ui-bindings >= 2.16.37 +BuildRequires: yast2-ycp-ui-bindings-devel >= 2.16.37 +Requires: ruby +Summary: Ruby bindings for the YaST platform + +%description +The bindings allow YaST modules to be written using the Ruby language +and also Ruby scripts can use YaST agents, APIs and modules. + +%prep +%setup -n yast2-ruby-bindings-%{version} +%build +mkdir build +cd build +cmake -DCMAKE_INSTALL_PREFIX=%{prefix} \ + -DLIB=%{_lib} \ + -DCMAKE_C_FLAGS="%{optflags}" \ + -DCMAKE_CXX_FLAGS="%{optflags}" \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=1 \ + .. +make %{?jobs:-j %jobs} VERBOSE=1 + +%install +cd build +make install DESTDIR=$RPM_BUILD_ROOT +cd .. + +%check +cd build +make test ARGS=-V +cd .. + +%files +%defattr (-, root, root) +%{_libdir}/YaST2/plugin/libpy2lang_ruby.so +%{_libdir}/ruby/vendor_ruby/%{rb_ver}/ycp.rb +%{_libdir}/ruby/vendor_ruby/%{rb_ver}/%{rb_arch}/ycpx.so diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/src/ruby/Y2CCRuby.cc new/yast2-ruby-bindings-0.3.9/src/ruby/Y2CCRuby.cc --- old/yast2-ruby-bindings-0.3.8/src/ruby/Y2CCRuby.cc 2011-10-03 17:37:50.000000000 +0200 +++ new/yast2-ruby-bindings-0.3.9/src/ruby/Y2CCRuby.cc 2012-01-25 16:57:33.000000000 +0100 @@ -46,6 +46,11 @@ // is there a ruby module? // must be the same in Y2CCRuby and Y2RubyComponent string module = YCPPathSearch::find (YCPPathSearch::Module, string (name) + ".rb"); + //lets try convert it with rails coding convention + if (module.empty()) + { + module = YCPPathSearch::find (YCPPathSearch::Module, Y2RubyComponent::CamelCase2DelimSepated(name) + ".rb"); + } if (!module.empty ()) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/src/ruby/Y2RubyComponent.cc new/yast2-ruby-bindings-0.3.9/src/ruby/Y2RubyComponent.cc --- old/yast2-ruby-bindings-0.3.8/src/ruby/Y2RubyComponent.cc 2011-10-03 17:37:50.000000000 +0200 +++ new/yast2-ruby-bindings-0.3.9/src/ruby/Y2RubyComponent.cc 2012-01-25 16:57:33.000000000 +0100 @@ -57,8 +57,12 @@ string module = YCPPathSearch::find (YCPPathSearch::Module, string (name) + ".rb"); if (module.empty ()) { - y2internal ("Couldn't find %s after Y2CCRuby pointed to us", name); - return NULL; + module = YCPPathSearch::find (YCPPathSearch::Module, Y2RubyComponent::CamelCase2DelimSepated(name) + ".rb"); + if (module.empty ()) + { + y2internal ("Couldn't find %s after Y2CCRuby pointed to us", name); + return NULL; + } } y2milestone("Found in '%s'", module.c_str()); module.erase (module.size () - 3 /* strlen (".pm") */); @@ -73,3 +77,29 @@ return ns; } + +const string Y2RubyComponent::CamelCase2DelimSepated( const char* name) +{ + string res(name); + size_t size = res.size(); + if (size==0) + return res; + res[0] = tolower(res[0]); + //first character and first char after :: is lowercase without underscore + for(size_t i = res.find("::",i+1); i!= string::npos; i = res.find("::",i+1)) + { + size_t c_pos = i+2; //::<c> so we want c + if (c_pos >= size) break; //handle string finishing with :: + res[c_pos] = tolower(res[c_pos]); + } + for (size_t i = 1; i< res.size();i++) + { + if (isupper(res[i])) + { + string tmp = "_"; + tmp.push_back (tolower(res[i])); + res.replace(i,1,tmp); //replace upper by _lower + } + } + return res; +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/src/ruby/Y2RubyComponent.h new/yast2-ruby-bindings-0.3.9/src/ruby/Y2RubyComponent.h --- old/yast2-ruby-bindings-0.3.8/src/ruby/Y2RubyComponent.h 2011-10-03 17:37:50.000000000 +0200 +++ new/yast2-ruby-bindings-0.3.9/src/ruby/Y2RubyComponent.h 2012-01-25 16:57:33.000000000 +0100 @@ -23,6 +23,7 @@ #define Y2RubyComponent_h #include "Y2.h" +#include <string.h> /** @@ -71,6 +72,13 @@ * free it. Thus, it's possible to share the instance. */ Y2Namespace *import (const char* name); + + /** + * Utility method to translate camelcase name of module to delimeter + * separated one. It is useful for loading modules which follows conventions + * so ActiveSupport namespace is from active_support.rb. + */ + static const std::string CamelCase2DelimSepated (const char* name); }; #endif // Y2RubyComponent_h diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/tests/ycp/camel_case.rb new/yast2-ruby-bindings-0.3.9/tests/ycp/camel_case.rb --- old/yast2-ruby-bindings-0.3.8/tests/ycp/camel_case.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-ruby-bindings-0.3.9/tests/ycp/camel_case.rb 2012-01-25 16:57:33.000000000 +0100 @@ -0,0 +1,5 @@ +module CamelCase + def self.inc (n) + n+1 + end +end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/tests/ycp/ruby_from_ycp.ycp new/yast2-ruby-bindings-0.3.9/tests/ycp/ruby_from_ycp.ycp --- old/yast2-ruby-bindings-0.3.8/tests/ycp/ruby_from_ycp.ycp 2011-10-03 17:37:50.000000000 +0200 +++ new/yast2-ruby-bindings-0.3.9/tests/ycp/ruby_from_ycp.ycp 2012-01-25 16:57:33.000000000 +0100 @@ -3,4 +3,7 @@ import "InRuby"; string result = tostring(InRuby::multiply_by_eight(10)); y2milestone("result: %1", result); + import "CamelCase"; + result = tostring(CamelCase::inc(10)); + y2milestone("result: %1", result); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/tests/ycp/run_ycp_test.sh new/yast2-ruby-bindings-0.3.9/tests/ycp/run_ycp_test.sh --- old/yast2-ruby-bindings-0.3.8/tests/ycp/run_ycp_test.sh 2011-10-03 17:37:50.000000000 +0200 +++ new/yast2-ruby-bindings-0.3.9/tests/ycp/run_ycp_test.sh 2012-01-25 16:57:33.000000000 +0100 @@ -2,7 +2,11 @@ # $1 is the test case DIR=${1%/*} # RPM_BUILD_ROOT will hold the YCP Ruby plugin at rpm build time -export Y2DIR=$RPM_BUILD_ROOT/usr/lib*/YaST2 +if [ -d $RPM_BUILD_ROOT/usr/lib64 ]; then #we are on 64bit + export Y2DIR=$RPM_BUILD_ROOT/usr/lib64/YaST2 +else + export Y2DIR=$RPM_BUILD_ROOT/usr/lib/YaST2 +fi # DEBUG=valgrind # DEBUG="strace -s1000 -o log -e trace=file" : ${PREFIX=/usr} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/tests/ycp/y2signal.log new/yast2-ruby-bindings-0.3.9/tests/ycp/y2signal.log --- old/yast2-ruby-bindings-0.3.8/tests/ycp/y2signal.log 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-ruby-bindings-0.3.9/tests/ycp/y2signal.log 2012-01-25 16:57:33.000000000 +0100 @@ -0,0 +1,55 @@ +=== 2012-01-16 14:42:45 +0000 === +YaST got signal 11 at YCP file :0 +Liberating suppressed debugging messages: +End of suppressed debugging messages +Backtrace: (use c++filt to demangle) +/usr/lib64/liby2.so.2(_Z20signal_log_backtracev+0x15)[0x7f2617f77475] +/usr/lib64/liby2.so.2(_Z14signal_handleri+0x147)[0x7f2617f77657] +/lib64/libc.so.6(+0x34e10)[0x7f2616040e10] +/usr/lib64/liby2.so.2(main+0x70a)[0x7f2617f721da] +/lib64/libc.so.6(__libc_start_main+0xed)[0x7f261602d23d] +/usr/lib/YaST2/bin/y2base[0x400669] +=== 2012-01-16 14:43:28 +0000 === +YaST got signal 11 at YCP file :0 +Liberating suppressed debugging messages: +End of suppressed debugging messages +Backtrace: (use c++filt to demangle) +/usr/lib64/liby2.so.2(_Z20signal_log_backtracev+0x15)[0x7faeab397475] +/usr/lib64/liby2.so.2(_Z14signal_handleri+0x147)[0x7faeab397657] +/lib64/libc.so.6(+0x34e10)[0x7faea9460e10] +/usr/lib64/liby2.so.2(main+0x70a)[0x7faeab3921da] +/lib64/libc.so.6(__libc_start_main+0xed)[0x7faea944d23d] +/usr/lib/YaST2/bin/y2base[0x400669] +=== 2012-01-16 14:43:59 +0000 === +YaST got signal 11 at YCP file :0 +Liberating suppressed debugging messages: +End of suppressed debugging messages +Backtrace: (use c++filt to demangle) +/usr/lib64/liby2.so.2(_Z20signal_log_backtracev+0x15)[0x7ffa312af475] +/usr/lib64/liby2.so.2(_Z14signal_handleri+0x147)[0x7ffa312af657] +/lib64/libc.so.6(+0x34e10)[0x7ffa2f378e10] +/usr/lib64/liby2.so.2(main+0x70a)[0x7ffa312aa1da] +/lib64/libc.so.6(__libc_start_main+0xed)[0x7ffa2f36523d] +/usr/lib/YaST2/bin/y2base[0x400669] +=== 2012-01-25 15:49:34 +0000 === +YaST got signal 11 at YCP file :0 +Liberating suppressed debugging messages: +End of suppressed debugging messages +Backtrace: (use c++filt to demangle) +/usr/lib64/liby2.so.2(_Z20signal_log_backtracev+0x15)[0x7fa5b8dd7475] +/usr/lib64/liby2.so.2(_Z14signal_handleri+0x147)[0x7fa5b8dd7657] +/lib64/libc.so.6(+0x34e10)[0x7fa5b6ea0e10] +/usr/lib64/liby2.so.2(main+0x70a)[0x7fa5b8dd21da] +/lib64/libc.so.6(__libc_start_main+0xed)[0x7fa5b6e8d23d] +/usr/lib/YaST2/bin/y2base[0x400669] +=== 2012-01-25 15:50:03 +0000 === +YaST got signal 11 at YCP file :0 +Liberating suppressed debugging messages: +End of suppressed debugging messages +Backtrace: (use c++filt to demangle) +/usr/lib64/liby2.so.2(_Z20signal_log_backtracev+0x15)[0x7f4629010475] +/usr/lib64/liby2.so.2(_Z14signal_handleri+0x147)[0x7f4629010657] +/lib64/libc.so.6(+0x34e10)[0x7f46270d9e10] +/usr/lib64/liby2.so.2(main+0x70a)[0x7f462900b1da] +/lib64/libc.so.6(__libc_start_main+0xed)[0x7f46270c623d] +/usr/lib/YaST2/bin/y2base[0x400669] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-ruby-bindings-0.3.8/yast2-ruby-bindings.spec.in new/yast2-ruby-bindings-0.3.9/yast2-ruby-bindings.spec.in --- old/yast2-ruby-bindings-0.3.8/yast2-ruby-bindings.spec.in 2011-10-03 17:37:50.000000000 +0200 +++ new/yast2-ruby-bindings-0.3.9/yast2-ruby-bindings.spec.in 2012-01-25 16:57:33.000000000 +0100 @@ -8,7 +8,7 @@ Name: yast2-ruby-bindings Version: @VERSION@ Release: 0 -License: GPL +License: GPL-2.0+ Group: System/YaST BuildRoot: %{_tmppath}/%{name}-%{version}-build Source0: yast2-ruby-bindings-%{version}.tar.bz2 -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org