Hello community, here is the log from the commit of package cmpi-bindings for openSUSE:Factory checked in at 2015-05-18 22:30:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/cmpi-bindings (Old) and /work/SRC/openSUSE:Factory/.cmpi-bindings.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cmpi-bindings" Changes: -------- --- /work/SRC/openSUSE:Factory/cmpi-bindings/cmpi-bindings.changes 2015-01-29 13:18:42.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.cmpi-bindings.new/cmpi-bindings.changes 2015-05-18 22:30:07.000000000 +0200 @@ -1,0 +2,8 @@ +Thu Jan 29 07:15:49 UTC 2015 - [email protected] + +- Update to 1.0.1 + - fix comment characters in .i files for swig 3.0.4 + ([email protected]) + - improve documentation coverage + +------------------------------------------------------------------- Old: ---- cmpi-bindings-1.0.0.tar.bz2 cmpi-bindings-swig-3.0.patch New: ---- cmpi-bindings-1.0.1.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cmpi-bindings.spec ++++++ --- /var/tmp/diff_new_pack.jxm3WI/_old 2015-05-18 22:30:08.000000000 +0200 +++ /var/tmp/diff_new_pack.jxm3WI/_new 2015-05-18 22:30:08.000000000 +0200 @@ -20,7 +20,7 @@ Url: http://github.com/kkaempf/cmpi-bindings Name: cmpi-bindings -Version: 1.0.0 +Version: 1.0.1 Release: 0 Summary: Adapter to write and run CMPI-type CIM providers License: BSD-3-Clause and CPL-1.0 @@ -94,14 +94,12 @@ %endif Source: %{name}-%{version}.tar.bz2 -Patch0: cmpi-bindings-swig-3.0.patch %description - %prep %setup -q -%patch0 -p1 %build ++++++ cmpi-bindings-1.0.0.tar.bz2 -> cmpi-bindings-1.0.1.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/VERSION.cmake new/cmpi-bindings-1.0.1/VERSION.cmake --- old/cmpi-bindings-1.0.0/VERSION.cmake 2014-06-25 12:37:58.000000000 +0200 +++ new/cmpi-bindings-1.0.1/VERSION.cmake 2015-01-29 13:57:05.000000000 +0100 @@ -1,3 +1,3 @@ SET(VERSION_MAJOR "1") SET(VERSION_MINOR "0") -SET(VERSION_PATCH "0") +SET(VERSION_PATCH "1") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/package/cmpi-bindings.changes new/cmpi-bindings-1.0.1/package/cmpi-bindings.changes --- old/cmpi-bindings-1.0.0/package/cmpi-bindings.changes 2014-06-25 12:38:45.000000000 +0200 +++ new/cmpi-bindings-1.0.1/package/cmpi-bindings.changes 2015-01-29 13:55:14.000000000 +0100 @@ -1,4 +1,12 @@ ------------------------------------------------------------------- +Thu Jan 29 07:15:49 UTC 2015 - [email protected] + +- Update to 1.0.1 + - fix comment characters in .i files for swig 3.0.4 + ([email protected]) + - improve documentation coverage + +------------------------------------------------------------------- Wed Jun 25 10:35:41 UTC 2014 - [email protected] - Update to 1.0.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/package/cmpi-bindings.spec.in new/cmpi-bindings-1.0.1/package/cmpi-bindings.spec.in --- old/cmpi-bindings-1.0.0/package/cmpi-bindings.spec.in 2014-03-11 09:34:51.000000000 +0100 +++ new/cmpi-bindings-1.0.1/package/cmpi-bindings.spec.in 2015-01-29 13:53:35.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package cmpi-bindings # -# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 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 @@ -151,7 +151,6 @@ %dir %{ruby_sitelib}/cmpi/providers %{ruby_sitelib}/cmpi/provider.rb - %package -n cmpi-bindings-ruby-doc Summary: RDoc-style documentation for cmpi-bindings-ruby Group: Documentation/HTML @@ -164,7 +163,6 @@ %dir %{_docdir}/cmpi-bindings-ruby-docs %{_docdir}/cmpi-bindings-ruby-docs - %package -n cmpi-bindings-pywbem Summary: Adapter to write and run CMPI-type CIM providers in Python Group: Development/Languages/Python diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/src/target_python.c new/cmpi-bindings-1.0.1/src/target_python.c --- old/cmpi-bindings-1.0.0/src/target_python.c 2013-04-11 16:06:06.000000000 +0200 +++ new/cmpi-bindings-1.0.1/src/target_python.c 2015-01-29 13:53:35.000000000 +0100 @@ -265,7 +265,7 @@ prstr = PyTuple_GetItem(prv, 1); } - if (! PyInt_Check(prc) || (! PyString_Check(prstr) && prstr != Py_None)) + if (! PyInt_Check(prc) || (prstr != Py_None && ! PyString_Check(prstr) && ! PyUnicode_Check(prstr))) { TARGET_THREAD_BEGIN_ALLOW; char* str = fmtstr("Python function \"%s\" didn't return a {<int>, <str>) two-tuple", opname); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/CMakeLists.txt new/cmpi-bindings-1.0.1/swig/CMakeLists.txt --- old/cmpi-bindings-1.0.0/swig/CMakeLists.txt 2013-04-11 16:06:06.000000000 +0200 +++ new/cmpi-bindings-1.0.1/swig/CMakeLists.txt 2015-01-29 13:53:36.000000000 +0100 @@ -4,13 +4,6 @@ enable_testing() -FIND_PACKAGE(Ruby) -IF (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) - MESSAGE(STATUS "Building Ruby...") - ADD_SUBDIRECTORY(ruby) - OPTION( BUILD_RUBY_GEM "Build Ruby GEM" YES ) -ENDIF (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) - FIND_PACKAGE(PythonLibs) IF (PYTHON_LIBRARY) FIND_PACKAGE(PythonInterp REQUIRED) @@ -27,4 +20,10 @@ MESSAGE(STATUS "Building Perl...") ADD_SUBDIRECTORY(perl) ENDIF (PERL_EXECUTABLE) - \ No newline at end of file + +FIND_PACKAGE(Ruby) +IF (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) + MESSAGE(STATUS "Building Ruby...") + ADD_SUBDIRECTORY(ruby) + OPTION( BUILD_RUBY_GEM "Build Ruby GEM" YES ) +ENDIF (RUBY_LIBRARY AND RUBY_INCLUDE_PATH) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/cmpi.i new/cmpi-bindings-1.0.1/swig/cmpi.i --- old/cmpi-bindings-1.0.0/swig/cmpi.i 2014-06-25 11:07:04.000000000 +0200 +++ new/cmpi-bindings-1.0.1/swig/cmpi.i 2015-01-29 13:55:14.000000000 +0100 @@ -1,4 +1,3 @@ -%{ /* Document-module: Cmpi * * Cmpi is the module namespace for cmpi-bindings. @@ -7,10 +6,14 @@ * target language by using the SWIG bindings generator. * */ -%} +#if defined(SWIGRUBY) +/* fix doc generation, has no influence on code */ +%module Cmpi +#else %module cmpi +#endif %feature("autodoc","1"); %include "typemaps.i" @@ -1005,11 +1008,11 @@ %apply SWIGTYPE *DISOWN { CMPIInstance *instance_disown }; %apply SWIGTYPE *DISOWN { CMPIObjectPath *path_disown }; -# Definitions +/* Definitions */ %include "cmpi_defs.i" -# Data types +/* Data types */ %include "cmpi_types.i" -# Broker callbacks +/* Broker callbacks */ %include "cmpi_callbacks.i" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/cmpi_callbacks.i new/cmpi-bindings-1.0.1/swig/cmpi_callbacks.i --- old/cmpi-bindings-1.0.0/swig/cmpi_callbacks.i 2013-04-11 16:06:06.000000000 +0200 +++ new/cmpi-bindings-1.0.1/swig/cmpi_callbacks.i 2015-01-29 13:54:11.000000000 +0100 @@ -1,20 +1,22 @@ -# cmpi_callbacks.i -# -# swig bindings for CMPI broker callbacks -# +/* cmpi_callbacks.i + * + * swig bindings for CMPI broker callbacks + */ +%rename(CMPIBroker) _CMPIBroker; %nodefault _CMPIBroker; -%rename(CMPIBroker) CMPIBroker; typedef struct _CMPIBroker {} CMPIBroker; /* + * Document-class: CMPIBroker + * * The CMPIBroker represents the running CIMOM and provides utility * functions to the Provider * */ -%extend CMPIBroker +%extend _CMPIBroker { #if defined(SWIGPERL) int __eq__( const CMPIBroker *broker ) @@ -443,10 +445,10 @@ return result; } -#----------------------------------------------------- -# -# TODO: CMPIMsgFileHandle stuff -# +/*----------------------------------------------------- + * + * TODO: CMPIMsgFileHandle stuff + */ /* * query: The select expression. * lang: The query language. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/cmpi_defs.i new/cmpi-bindings-1.0.1/swig/cmpi_defs.i --- old/cmpi-bindings-1.0.0/swig/cmpi_defs.i 2013-04-11 16:06:06.000000000 +0200 +++ new/cmpi-bindings-1.0.1/swig/cmpi_defs.i 2015-01-29 13:53:36.000000000 +0100 @@ -1,7 +1,7 @@ -# cmpi_defs.i -# -# swig bindings for CMPI constant definitions -# +/* cmpi_defs.i + * + * swig bindings for CMPI constant definitions + */ %nodefault CMPIData; #%ignore _CMPIData::type; @@ -23,9 +23,9 @@ #----------------------------------------------------- #if defined(SWIGRUBY) -# -# Conversion from list of Ruby string array to null terminated char** array. -# + +/* Conversion from list of Ruby string array to null terminated char** array. */ + %typemap(in) char ** { if ($input == Qnil) { @@ -77,9 +77,9 @@ #endif #if defined(SWIGPYTHON) -# -# Conversion from list of python strings to null terminated char** array. -# + +/* Conversion from list of python strings to null terminated char** array. */ + %typemap(in) char ** { @@ -127,16 +127,19 @@ } #endif /* defined(SWIGPYTHON) */ -#----------------------------------------------------- -# -# CMPIData -# +/*----------------------------------------------------- + * Document-class: CMPIData + * + * Representation of data with value, type, and flags (null, key, array) + * + */ -%extend _CMPIData { /* type, state, value are created by SWIG via %include cmpidt above */ + +%extend _CMPIData { _CMPIData(CMPIData *data) { return data_clone(data); @@ -197,10 +200,13 @@ } -#----------------------------------------------------- -# -# CMPIStatus -# +/*----------------------------------------------------- + * + * Document-class: CMPIStatus + * + * Status (return) value from a CMPI operation + * + */ %extend _CMPIStatus { _CMPIStatus() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/cmpi_types.i new/cmpi-bindings-1.0.1/swig/cmpi_types.i --- old/cmpi-bindings-1.0.0/swig/cmpi_types.i 2014-06-25 12:28:57.000000000 +0200 +++ new/cmpi-bindings-1.0.1/swig/cmpi_types.i 2015-01-29 13:53:36.000000000 +0100 @@ -29,16 +29,20 @@ * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *****************************************************************************/ -# cmpift.i -# -# swig bindings for CMPI function tables -# - -# -# Prevent default con-/destructors for all types -# CMPI types are handled through function tables -# and the broker. -# +/* cmpift.i + * + * swig bindings for CMPI function tables + */# + +/* + * Prevent default con-/destructors for all types + * CMPI types are handled through function tables + * and the broker. + */ + +%nodefault _CMPIException; +%rename(CMPIException) _CMPIException; +typedef struct _CMPIException {} CMPIException; %nodefault _CMPIError; %rename(CMPIError) _CMPIError; @@ -100,18 +104,16 @@ %rename(CMPIDateTime) _CMPIDateTime; typedef struct _CMPIDateTime {} CMPIDateTime; -#----------------------------------------------------- -# -# CMPIException -# -#----------------------------------------------------- - -%nodefault _CMPIException; -%rename(CMPIException) CMPIException; -typedef struct _CMPIException {} CMPIException; +/*----------------------------------------------------- + * + * CMPIException + * + *----------------------------------------------------- + */ /* - * + * Document-class: CMPIException + * * Container for a fault, contains numeric error_code and textual * description * @@ -153,11 +155,12 @@ } } -#----------------------------------------------------- -# -# %exception -# -#----------------------------------------------------- +/*----------------------------------------------------- + * + * %exception + * + *----------------------------------------------------- + */ %exception { @@ -175,14 +178,17 @@ } } -#----------------------------------------------------- -# -# CMPIError -# +/*----------------------------------------------------- + * + * CMPIError + * + */ /* * Document-class: CMPIError * + * Representation of error information + * */ %extend _CMPIError { @@ -370,14 +376,17 @@ } } -#----------------------------------------------------- -# -# CMPIResult -# +/*----------------------------------------------------- + * + * CMPIResult + * + */ /* * Document-class: CMPIResult * + * Result of a CMPI operation + * */ %extend _CMPIResult { @@ -407,14 +416,33 @@ } } -#----------------------------------------------------- -# -# CMPIObjectPath -# +/*----------------------------------------------------- + * + * CMPIMsgFileHandle + * + */ + +/* + * Document-class: CMPIMsgFileHandle + * + * Message File Handle + * + */ +%extend _CMPIMsgFileHandle +{ +} + +/*----------------------------------------------------- + * + * CMPIObjectPath + * + */ /* * Document-class: CMPIObjectPath * + * Represents the access path to a class or an instance + * */ %extend _CMPIObjectPath { @@ -867,14 +895,17 @@ } } -#----------------------------------------------------- -# -# CMPIInstance -# +/*----------------------------------------------------- + * + * CMPIInstance + * + */ /* * Document-class: CMPIInstance * + * Class instance (object) + * */ %extend _CMPIInstance { @@ -959,7 +990,7 @@ * get a named property value * Property access in Ruby: * data = instance[:propname] # access by name (symbol) - * data = instance["propname" # access by name (string) + * data = instance["propname"] # access by name (string) * data = instance[1] # access by index * * See get_property_at to retrieve property name and value @@ -1180,11 +1211,15 @@ } } -#----------------------------------------------------- -# -# CMPIArgs +/*----------------------------------------------------- + * + * CMPIArgs + * + */ /* + * Document-class: CMPIArgs + * * CMPI Arguments * * Arguments are passed in an ordered Hash-like fashion (name/value pairs) and can @@ -1296,15 +1331,20 @@ } } -#----------------------------------------------------- -# -# CMPISelectExp +/*----------------------------------------------------- + * + * CMPISelectExp + * + */ /* + * Document-class: CMPISelectExp + * * This structure encompasses queries * and provides mechanism to operate on the query. */ -%extend _CMPISelectExp { +%extend _CMPISelectExp +{ #if HAVE_CMPI_BROKER _CMPISelectExp(const char *query, const char *language, char **keys = NULL) #else @@ -1357,16 +1397,20 @@ } } -#----------------------------------------------------- -# -# CMPISelectCond +/*----------------------------------------------------- + * + * CMPISelectCond + * + */ /* - * Select conditions + * Document-class: CMPISelectCond * + * Select condition * */ -%extend _CMPISelectCond { +%extend _CMPISelectCond +{ /* Return string representation */ #if HAVE_CMPI_BROKER #ifdef SWIGPYTHON @@ -1386,28 +1430,36 @@ #endif } -#----------------------------------------------------- -# -# CMPISubCond +/*----------------------------------------------------- + * + * CMPISubCond + * + */ /* - * Sub Conditions + * Document-class: CMPISubCond * + * Sub Conditions * */ -%extend _CMPISubCond { +%extend _CMPISubCond +{ } -#----------------------------------------------------- -# -# CMPIPredicate +/*----------------------------------------------------- + * + * CMPIPredicate + * + */ /* - * Predicate + * Document-class: CMPIPredicate * + * Predicate * */ -%extend _CMPIPredicate { +%extend _CMPIPredicate +{ /* Return string representation */ #if HAVE_CMPI_BROKER #ifdef SWIGPYTHON @@ -1427,13 +1479,16 @@ #endif } -#----------------------------------------------------- -# -# CMPIEnumeration +/*----------------------------------------------------- + * + * CMPIEnumeration + * + */ /* - * Enumeration provide a linked-list type access to multiple elements + * Document-class: CMPIEnumeration * + * Enumeration provide a linked-list type access to multiple elements * */ %extend _CMPIEnumeration @@ -1488,13 +1543,16 @@ } -#----------------------------------------------------- -# -# CMPIArray +/*----------------------------------------------------- + * + * CMPIArray + * + */ /* - * Array of equally-typed elements + * Document-class: CMPIArray * + * Array of equally-typed elements * */ %extend _CMPIArray @@ -1562,17 +1620,22 @@ } } -#BOOKMARK +/* BOOKMARK */ -#----------------------------------------------------- -# -# CMPIString +/*----------------------------------------------------- + * + * CMPIString + * + */ /* + * Document-class: CMPIString + * * A string * */ -%extend _CMPIString { +%extend _CMPIString +{ ~_CMPIString() { CMRelease( $self ); } @@ -1587,16 +1650,20 @@ } } -#----------------------------------------------------- -# -# CMPIContext +/*----------------------------------------------------- + * + * CMPIContext + * + */ /* - * Context of the provider invocation + * Document-class: CMPIContext * + * Context of the provider invocation * */ -%extend _CMPIContext { +%extend _CMPIContext +{ ~_CMPIContext() { CMRelease( $self ); } @@ -1708,16 +1775,20 @@ } -#----------------------------------------------------- -# -# CMPIDateTime +/*----------------------------------------------------- + * + * CMPIDateTime + * + */ /* - * Date and Time + * Document-class: CMPIDateTime * + * Date and Time * */ -%extend _CMPIDateTime { +%extend _CMPIDateTime +{ ~_CMPIDateTime() { CMRelease( $self ); @@ -1752,4 +1823,4 @@ } } -# EOF +/* EOF */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/CMakeLists.txt new/cmpi-bindings-1.0.1/swig/ruby/CMakeLists.txt --- old/cmpi-bindings-1.0.0/swig/ruby/CMakeLists.txt 2013-12-12 14:27:05.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/CMakeLists.txt 2015-01-29 13:53:35.000000000 +0100 @@ -89,9 +89,9 @@ OUTPUT ${rdoc_dir} COMMAND ${CMAKE_COMMAND} -E echo_append "Creating rdoc documentation ..." COMMAND rm -rf ${rdoc_dir} - COMMAND ./ruby/rdoc${RUBY_VERSION_MAJOR}.${RUBY_VERSION_MINOR} -o ${rdoc_dir} -t "cmpi-bindings - writing CIM providers in Ruby" -m cmpi.i *.i ruby/cmpi.rb ruby/cmpi/*.rb + COMMAND ./rdoc ${RUBY_VERSION_MAJOR}.${RUBY_VERSION_MINOR} -o ${rdoc_dir} -t "cmpi-bindings - write CIM providers in any language" -m README.rdoc README.rdoc ../cmpi.i ../*.i cmpi.rb cmpi/*.rb COMMAND ${CMAKE_COMMAND} -E echo "Done." - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/swig + WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} DEPENDS ${CMAKE_SOURCE_DIR}/swig/*.i DEPENDS ${CMAKE_SOURCE_DIR}/swig/ruby/*.rb DEPENDS ${CMAKE_SOURCE_DIR}/swig/ruby/cmpi/*.rb diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/README.rdoc new/cmpi-bindings-1.0.1/swig/ruby/README.rdoc --- old/cmpi-bindings-1.0.0/swig/ruby/README.rdoc 2013-12-12 11:35:27.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/README.rdoc 2015-01-29 13:53:35.000000000 +0100 @@ -1,56 +1,33 @@ -= \Openwsman - WS-Management for all += \cmpi-bindings - write CIM providers in any programming language -home :: http://openwsman.github.io -wiki :: https://github.com/Openwsman/openwsman/wiki -mailing list :: [email protected] -source :: https://github.com/Openwsman/openwsman -rdoc :: http://www.suse.de/~kkaempf/openwsman -bugs :: https://github.com/Openwsman/openwsman/issues -code climate :: {<img src="https://codeclimate.com/github/Openwsman/openwsman.png">}[https://codeclimate.com/github/Openwsman/openwsman] +home :: https://github.com/kkaempf/cmpi-bindings +wiki :: https://github.com/~kkaempf/cmpi-bindings/wiki +source :: https://github.com/~kkaempf/cmpi-bindings +rdoc :: http://www.suse.de/~kkaempf/cmpi-bindings +bugs :: https://github.com/~kkaempf/cmpi-bindings/issues == Description -Openwsman is an open source implementation of WS-Management; enabling -the in-band management of Linux/uni*/Windows platforms. -Openwsman supports the generic WS-Management protocol as well as -specific protocol extensions for the -{Common Information Model}[http://www.dmtf.org/standards/cim] (CIM) - -Openwsman provides 'C' language API by default and a 'C++' API in an -'alpha' state. For other languages, see the bindings. - -== About the bindings - -The bindings provide the simplest way to perform WS-Management -operations with Openwsman. - -Bindings exist for -{Ruby}[https://github.com/Openwsman/openwsman/tree/master/bindings/ruby], -{Python}[https://github.com/Openwsman/openwsman/tree/master/bindings/python], -{Perl}[https://github.com/Openwsman/openwsman/tree/master/bindings/perl], and -{Java}[https://github.com/Openwsman/openwsman/tree/master/bindings/java]. -with plenty of examples in the respective 'tests' directories. +This implements a CMPI-compliant provider interface for various +languages via SWIG. -The Ruby bindings are fully maintained an considered 'production' -quality. +Currently supported languages -== Bugs +- Ruby +- Python +- Perl (beginning support) -If you have problems using Openwsman, report to the -{mailing list}[mailto:[email protected]] -first. +== Bugs If you are sure to have found a bug, please report it via the -{Github issue tracker}[https://github.com/Openwsman/openwsman/issues] +{Github issue tracker}[https://github.com/cmpi-bindings/~kkaempf/issues] == License -Openwsman is copyright (C) 2004-2006 by Intel Corp, 2006-2013 by SUSE -Linux Products GmbH. +cmpi-bindings is copyright (C) 2006-2015 by SUSE Linux GmbH. -Openwsman is free software, and may be redistributed under the terms -of the -{BSD-3-Clause}[https://github.com/Openwsman/openwsman/blob/master/COPYING] +cmpi-bindings is free software, and may be redistributed under the terms +of the {BSD-3-Clause}[https://github.com/cmpi-bindings/cmpi-bindings/blob/master/COPYING] license. == Warranty diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/cmpi.rb new/cmpi-bindings-1.0.1/swig/ruby/cmpi.rb --- old/cmpi-bindings-1.0.0/swig/ruby/cmpi.rb 2014-06-25 11:07:51.000000000 +0200 +++ new/cmpi-bindings-1.0.1/swig/ruby/cmpi.rb 2015-01-29 13:53:36.000000000 +0100 @@ -192,29 +192,92 @@ CMPI_ARRAY | self.embedded_instance end + # generic Error class, derived from ::Exception + # class RCErr < ::StandardError def initialize rc,msg super msg @rc = rc end + # CMPI result code + # + # normally not needed since errors are + # encapsulated into respective RCErrxxx subclasses + def rc + @rc + end end + # CMPIStatus as Exception: failed + # + # See Cmpi::RCErr class RCErrFailed < RCErr; end + # CMPIStatus as Exception: access denied + # + # See Cmpi::RCErr class RCErrAccessDenied < RCErr; end + # CMPIStatus as Exception: invalid namespace + # + # See Cmpi::RCErr class RCErrInvalidNamespace < RCErr; end + # CMPIStatus as Exception: invalid parameter + # + # See Cmpi::RCErr class RCErrInvalidParameter < RCErr; end + # CMPIStatus as Exception: invalid class + # + # See Cmpi::RCErr class RCErrInvalidClass < RCErr; end + # CMPIStatus as Exception: not found + # + # See Cmpi::RCErr class RCErrNotFound < RCErr; end + # CMPIStatus as Exception: not supported + # + # See Cmpi::RCErr class RCErrNotSupported < RCErr; end + # CMPIStatus as Exception: class has children + # + # See Cmpi::RCErr class RCErrClassHasChildren < RCErr; end + # CMPIStatus as Exception: class has instances + # + # See Cmpi::RCErr class RCErrClassHasInstances < RCErr; end + # CMPIStatus as Exception: invalid superclass + # + # See Cmpi::RCErr class RCErrInvalidSuperclass < RCErr; end + # CMPIStatus as Exception: already exits + # + # See Cmpi::RCErr class RCErrAlreadyExists < RCErr; end + # CMPIStatus as Exception: no such property + # + # See Cmpi::RCErr class RCErrNoSuchProperty < RCErr; end + # CMPIStatus as Exception: type mismatch + # + # See Cmpi::RCErr class RCErrTypeMismatch < RCErr; end + # CMPIStatus as Exception: query language not supported + # + # See Cmpi::RCErr class RCErrQueryLanguageNotSupported < RCErr; end + # CMPIStatus as Exception: invalid query + # + # See Cmpi::RCErr class RCErrInvalidQuery < RCErr; end + # CMPIStatus as Exception: method not available + # + # See Cmpi::RCErr class RCErrMethodNotAvailable < RCErr; end + # CMPIStatus as Exception: method not found + # + # See Cmpi::RCErr class RCErrMethodNotFound < RCErr; end + # CMPIStatus as Exception: system error + # + # See Cmpi::RCErr class RCErrSystem < RCErr; end # convert CMPIStatus rc code to Ruby exception def self.rc_to_exception rc diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/rdoc new/cmpi-bindings-1.0.1/swig/ruby/rdoc --- old/cmpi-bindings-1.0.0/swig/ruby/rdoc 2013-04-11 16:06:06.000000000 +0200 +++ new/cmpi-bindings-1.0.1/swig/ruby/rdoc 2015-01-29 13:53:35.000000000 +0100 @@ -1,21 +1,55 @@ -#!/usr/bin/ruby - -ARGV.uniq! +#!/usr/bin/env ruby # This is ./rdoc # +# Call as +# ./rdoc <version-major>.<version-minor> ... +# + +def usage msg=nil + STDERR.puts "*** Error: #{msg}" if msg + STDERR.puts "Usage:" + STDERR.puts " rdoc <version-major>.<version-minor> ..." + exit 1 +end -home = File.dirname __FILE__ +home = File.expand_path(File.dirname(__FILE__)) $:.unshift(home) -new_rdoc = home+"/rdoc.rb" + +version = ARGV.shift +usage "Called without arguments" unless version + +if version =~ /(\d+)\.(\d+)/ + major = $1.to_i + minor = $2.to_i +else + usage "Version argument malformed, must be X.Y" +end + +# can't directly require /usr/bin/rdoc since it does not have a '.rb' extension +# work around: create temporary symlink + +rdoc = "rdoc#{major}_#{minor}.rb" +new_rdoc = File.join(home, rdoc) # Symlink ./rdoc.rb to /usr/bin/rdoc # File.symlink("/usr/bin/rdoc", new_rdoc) unless File.symlink?(new_rdoc) begin - require 'parse_swig.rb' # load the swig parser - require 'rdoc' # load the original rdoc + if major == 1 && minor == 8 + require 'parse_swig.rb' # load the swig parser + else + require 'rdoc' + + require 'rdoc/encoding' + require 'rdoc/parser' + + # Simple must come first + require 'rdoc/parser/simple' + require File.join(home, 'rdoc_parser_swig') + end + require "./#{rdoc}" # load the original rdoc ensure File.delete new_rdoc # Discard the symlink end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/rdoc1.8 new/cmpi-bindings-1.0.1/swig/ruby/rdoc1.8 --- old/cmpi-bindings-1.0.0/swig/ruby/rdoc1.8 2013-12-12 11:35:27.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/rdoc1.8 1970-01-01 01:00:00.000000000 +0100 @@ -1,19 +0,0 @@ -#!/usr/bin/ruby - -# This is ./rdoc -# - -home = File.dirname __FILE__ -$:.unshift(home) -new_rdoc = home+"/rdoc.rb" - -# Symlink ./rdoc.rb to /usr/bin/rdoc -# -File.symlink("/usr/bin/rdoc", new_rdoc) unless File.symlink?(new_rdoc) - -begin - require 'parse_swig.rb' # load the swig parser - require 'rdoc' # load the original rdoc -ensure - File.delete new_rdoc # Discard the symlink -end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/rdoc1.9 new/cmpi-bindings-1.0.1/swig/ruby/rdoc1.9 --- old/cmpi-bindings-1.0.0/swig/ruby/rdoc1.9 2013-12-12 11:35:27.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/rdoc1.9 1970-01-01 01:00:00.000000000 +0100 @@ -1,10 +0,0 @@ -#!/usr/bin/env ruby -require 'rdoc' - -require 'rdoc/encoding' -require 'rdoc/parser' - -# Simple must come first -require 'rdoc/parser/simple' -require File.join(File.dirname(__FILE__),'rdoc_parser_swig') -require File.join(File.dirname(__FILE__),'rdoc1_9') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/rdoc1_9.rb new/cmpi-bindings-1.0.1/swig/ruby/rdoc1_9.rb --- old/cmpi-bindings-1.0.0/swig/ruby/rdoc1_9.rb 2013-12-12 11:35:27.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/rdoc1_9.rb 1970-01-01 01:00:00.000000000 +0100 @@ -1,40 +0,0 @@ -#!/usr/bin/ruby1.9 -# -# RDoc: Documentation tool for source code -# (see lib/rdoc/rdoc.rb for more information) -# -# Copyright (c) 2003 Dave Thomas -# Released under the same terms as Ruby - -begin - gem 'rdoc' -rescue NameError => e # --disable-gems - raise unless e.name == :gem -rescue Gem::LoadError -end - -require 'rdoc/rdoc' - -begin - r = RDoc::RDoc.new - r.document ARGV -rescue SystemExit - raise -rescue Exception => e - if $DEBUG_RDOC then - $stderr.puts e.message - $stderr.puts "#{e.backtrace.join "\n\t"}" - $stderr.puts - elsif Interrupt === e then - $stderr.puts - $stderr.puts 'Interrupted' - else - $stderr.puts "uh-oh! RDoc had a problem:" - $stderr.puts e.message - $stderr.puts - $stderr.puts "run with --debug for full backtrace" - end - - exit 1 -end - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/rdoc2.0 new/cmpi-bindings-1.0.1/swig/ruby/rdoc2.0 --- old/cmpi-bindings-1.0.0/swig/ruby/rdoc2.0 2013-12-12 11:35:27.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/rdoc2.0 1970-01-01 01:00:00.000000000 +0100 @@ -1,10 +0,0 @@ -#!/usr/bin/env ruby -require 'rdoc' - -require 'rdoc/encoding' -require 'rdoc/parser' - -# Simple must come first -require 'rdoc/parser/simple' -require File.join(File.dirname(__FILE__),'rdoc_parser_swig') -require File.join(File.dirname(__FILE__),'rdoc2_0') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/rdoc2.1 new/cmpi-bindings-1.0.1/swig/ruby/rdoc2.1 --- old/cmpi-bindings-1.0.0/swig/ruby/rdoc2.1 2014-02-05 10:46:07.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/rdoc2.1 1970-01-01 01:00:00.000000000 +0100 @@ -1,10 +0,0 @@ -#!/usr/bin/env ruby -require 'rdoc' - -require 'rdoc/encoding' -require 'rdoc/parser' - -# Simple must come first -require 'rdoc/parser/simple' -require File.join(File.dirname(__FILE__),'rdoc_parser_swig') -require File.join(File.dirname(__FILE__),'rdoc2_1') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/rdoc2_0.rb new/cmpi-bindings-1.0.1/swig/ruby/rdoc2_0.rb --- old/cmpi-bindings-1.0.0/swig/ruby/rdoc2_0.rb 2014-02-05 10:46:38.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/rdoc2_0.rb 1970-01-01 01:00:00.000000000 +0100 @@ -1,40 +0,0 @@ -#!/usr/bin/ruby2.0 -# -# RDoc: Documentation tool for source code -# (see lib/rdoc/rdoc.rb for more information) -# -# Copyright (c) 2003 Dave Thomas -# Released under the same terms as Ruby - -begin - gem 'rdoc' -rescue NameError => e # --disable-gems - raise unless e.name == :gem -rescue Gem::LoadError -end - -require 'rdoc/rdoc' - -begin - r = RDoc::RDoc.new - r.document ARGV -rescue SystemExit - raise -rescue Exception => e - if $DEBUG_RDOC then - $stderr.puts e.message - $stderr.puts "#{e.backtrace.join "\n\t"}" - $stderr.puts - elsif Interrupt === e then - $stderr.puts - $stderr.puts 'Interrupted' - else - $stderr.puts "uh-oh! RDoc had a problem:" - $stderr.puts e.message - $stderr.puts - $stderr.puts "run with --debug for full backtrace" - end - - exit 1 -end - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/rdoc2_1.rb new/cmpi-bindings-1.0.1/swig/ruby/rdoc2_1.rb --- old/cmpi-bindings-1.0.0/swig/ruby/rdoc2_1.rb 2014-02-05 10:46:29.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/rdoc2_1.rb 1970-01-01 01:00:00.000000000 +0100 @@ -1,40 +0,0 @@ -#!/usr/bin/ruby -# -# RDoc: Documentation tool for source code -# (see lib/rdoc/rdoc.rb for more information) -# -# Copyright (c) 2003 Dave Thomas -# Released under the same terms as Ruby - -begin - gem 'rdoc' -rescue NameError => e # --disable-gems - raise unless e.name == :gem -rescue Gem::LoadError -end - -require 'rdoc/rdoc' - -begin - r = RDoc::RDoc.new - r.document ARGV -rescue SystemExit - raise -rescue Exception => e - if $DEBUG_RDOC then - $stderr.puts e.message - $stderr.puts "#{e.backtrace.join "\n\t"}" - $stderr.puts - elsif Interrupt === e then - $stderr.puts - $stderr.puts 'Interrupted' - else - $stderr.puts "uh-oh! RDoc had a problem:" - $stderr.puts e.message - $stderr.puts - $stderr.puts "run with --debug for full backtrace" - end - - exit 1 -end - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/cmpi-bindings-1.0.0/swig/ruby/rdoc_parser_swig.rb new/cmpi-bindings-1.0.1/swig/ruby/rdoc_parser_swig.rb --- old/cmpi-bindings-1.0.0/swig/ruby/rdoc_parser_swig.rb 2013-12-12 11:35:33.000000000 +0100 +++ new/cmpi-bindings-1.0.1/swig/ruby/rdoc_parser_swig.rb 2015-01-29 13:53:36.000000000 +0100 @@ -176,7 +176,7 @@ # Scans #content for %rename def do_renames - @content.scan(/\s*%rename\s*\(\s*"?([\w_=]+)"?\s*\)\s*([\w_]+)\s*\(?([\w_,\*\s]+)?\s*\)?;/) do + @content.scan(/\s*%rename\s*\(\s*"?([\w=]+)"?\s*\)\s*(\w+)\s*\(?([\w,\*\s]+)?\s*\)?;/) do |new_name, old_name, args| @renames[old_name] = [new_name, args] end @@ -188,7 +188,7 @@ def do_modules @content.scan(/%module\s+(\w+)/) do |match_data| module_name = match_data[0] - @module = handle_class_module(nil, "module", module_name, @toplevel) + @module = handle_class_module(nil, "module", module_name, @top_level) break # first %module only end @@module ||= @module @@ -201,16 +201,16 @@ def do_classes content found = false # puts "do_classes #{content.inspect}" - content.scan(/%extend\s+([\w_]+)(.*)/m) do |class_name, content| - real_name = @renames[class_name][0] rescue nil + content.scan(/%extend\s+(\w+)(.*)/m) do |class_name, ext_content| + real_name = (@renames[class_name]) ? @renames[class_name][0] : nil klass = handle_class_module(class_name, "class", real_name, @module) # now check if we have multiple %extend, the regexp above is greedy and will match all of them - while content =~ /%extend/ + while ext_content =~ /%extend/ do_classes $& + $' # ' add the %extend back in - content = $` # real content is everything before the embedded %extend + ext_content = $` # real content is everything before the embedded %extend end -# puts "%extend #{class_name}: #{content.inspect}" - do_methods klass, class_name, content +# puts "%extend #{class_name}: #{ext_content.inspect}" + do_methods klass, class_name, ext_content found = true end found @@ -222,7 +222,7 @@ def do_constants # %constant <type>[*] <name> = <c-constant>; - @content.scan(/(\/\*.*?\*\/)?\s*%constant\s+([\w_]+)([\s\*]+)([\w_]+)\s*=\s*([\w_]+);/) do |comment, type, pointer, const_name, definition| + @content.scan(/(\/\*.*?\*\/)?\s*%constant\s+(\w+)([\s\*]+)(\w+)\s*=\s*(\w+);/) do |comment, type, pointer, const_name, definition| # puts "\nConst #{const_name} : #{comment.inspect}" handle_constants comment, const_name, definition end @@ -249,20 +249,20 @@ def do_methods klass, name, content # Find class constructor as 'new' - content.scan(/^\s+#{name}\s*\(([^\)]*)\)\s*\{/m) do |args| + content.scan(/^\s+#{name}\s*\(([\w\,\*\s]*)\)\s*\{/m) do |args| handle_method("method", klass.name, "initialize", name, (args.to_s.split(",")||[]).size, content) end - content.scan(%r{static\s+((const\s+)?\w+)([\s\*]+)(\w+)\s*\(([^\)]*)\)\s*;}) do + content.scan(%r{static\s+(const\s+)?(\w+)([\s\*]+)(\w+)\s*\(([\w\,\*\s]*)\)\s*;}) do |const,type,pointer,meth_name,args| handle_method("method", klass.name, meth_name, nil, (args.split(",")||[]).size, content) end - content.scan(/((const\s+)?\w+) # <const>? <type> + content.scan(/(const\s+)?(\w+) # <const>? <type> ([ \t\*]+) # <pointer>? (\w+) # <meth> - \s*\(([^\)]*)\) # args + \s*\(([\w\,\*\s]*)\) # args \s*\{/xm) do # function def start |const,type,pointer,meth_name,args| -# puts "do_methods klass #{klass}, name #{name}: const #{const.inspect}, type #{type.inspect}, pointer #{pointer.inspect}, meth_name #{meth_name.inspect}" +# STDERR.puts "do_methods klass #{klass}, name #{name}: const #{const.inspect}, type #{type.inspect}, pointer #{pointer.inspect}, meth_name #{meth_name.inspect}, args #{args.inspect}" next unless meth_name next if meth_name =~ /~/ type = "string" if type =~ /char/ && pointer =~ /\*/ @@ -330,7 +330,7 @@ # when %r%(/\*.*\*/\s*#{meth_obj.c_function})%xm when %r%((?>/\*.*?\*/\s+)?) ((?:(?:static\s*)?(?:\s*const)?(?:\s*unsigned)?(?:\s*struct)?\s+)? - (VALUE|[\w_]+)(\s+\*|\*\s+|\s+)#{meth_name} + (VALUE|\w+)(\s+\*|\*\s+|\s+)#{meth_name} \s*(\([^)]*\))([^;]|$))%xm, %r%(/\*.*?\*/\s+) #{meth_name} @@ -473,7 +473,7 @@ return unless comment - comment = strip_stars comment + comment = strip_stars( "/* " + comment ) comment = look_for_directives_in class_mod, comment @@ -634,8 +634,6 @@ return end - class_name = class_obj.name - if comment comment = strip_stars comment comment = normalize_comment comment @@ -659,27 +657,27 @@ result << $` # copy everything before #if after = $' #' if $1 =~ /RUBY/ # if defined(SWIGRUBY) - raise "Unmatched #if SWIGRUBY\n#{after}" unless after.match /^#(if|else|endif)/ + raise "Unmatched #if SWIGRUBY\n#{after}" unless after.match(/^#(if|else|endif)/) result << $` # copy everything between SWIGRUBY and #if/else/endif case $1 when "if" result << handle_ifdefs_in($& + $') #' when "else" after = $' #' - raise "Unclosed #else" unless after.match /^#endif/ + raise "Unclosed #else" unless after.match(/^#endif/) result << handle_ifdefs_in($') #' when "endif" result << handle_ifdefs_in($') #' end else # if defined(SWIG...) # throw away everything between SIWG... and #if/else/endif - raise "Unmatched #if" unless after.match /^#(if|else|endif)/ + raise "Unmatched #if" unless after.match(/^#(if|else|endif)/) case $1 when "if" result << handle_ifdefs_in($& + $') #' when "else" after = $' #' - raise "Unclosed #else" unless after.match /^#endif/ + raise "Unclosed #else" unless after.match(/^#endif/) result << $` # copy everything between #else and #endif result << handle_ifdefs_in($') #' when "endif" @@ -699,8 +697,8 @@ def handle_method(type, klass_name, meth_name, function, param_count, content = nil, source_file = nil) - ruby_name = (@renames[meth_name][0] rescue nil) || meth_name -# puts "\n\thandle_method #{type},#{klass_name},#{meth_name}[#{ruby_name}],#{function},#{param_count} args" # if meth_name == "initialize" + ruby_name = (@renames[meth_name]) ? @renames[meth_name][0] : meth_name +# STDERR.puts "\n\thandle_method #{type},#{klass_name},#{meth_name}[#{ruby_name}],#{function},#{param_count} args" # if meth_name == "initialize" class_name = @known_classes[klass_name] singleton = @singleton_classes.key? klass_name
