I opened a bug on this problem as https://bugzilla.novell.com/show_bug.cgi?id=804070 I was told the reason for this was the fault of Perl and their binary instability. Additionally, I was asked for a patch to fix the problem with Gvim (which I provided though it seems that was ignored) to dynamically load those libs (python, perl & ruby) that can be dynamically loaded -- with the result being that if they are not present, the user will be able to still run Vim and it can still do it's job (Editing), but the specific scripting language that is not loadable won't work. In the perl bug for this (https://rt.perl.org:443/rt3/Ticket/Display.html?id=117015), It was said: -------------- 1) Due to Perl's current rapid release policy and maintenance patch policies, ABI changes in minor versions are not necessary anymore. New or radically redesigned (internally) features just dont get added anymore like they did in 5.8. If the interp ABI compatibility system is ever reintroduced (not likely), I would suggest a const table of offsets to the members in the interp library, and a "*(SV ***)(char*)my_perl+PL_ginterpoffsets[ABI_STACK_SP]" for "PL_stack_sp". ------------------------------------------- I.e. 5.16.0, 5.16.1 and 5.16.2 should be binary API compat. and 2) They wanted to better know what the problem is that is causing OpenSUSE to force each version to be incompatible (In installing a factory binary on my 12.1 system (that has all preconditions met -- I'm running a new enough glibc, & such), a new perl (5.16.2) was installed over my previous 5.16.1. Over 1000 modules stopped working due to SuSE not following normal practice and including previous version lib paths (at LEAST anything in the 5.16.x series, if not 5.14 included!). A quick solution was cp -alu <5.16.1-lib> <5.16.2-lib>...which seemed to be the quickest solution at the time. If it was a major version, I likely would have done it as well and planned on doing a cpan-recompile of all binary modules in the near future. Anyway, they asked: ------------------ Can someone explain what the *technical* complaint or feature request here is? Are some vendor linux perl scripts in pure perl hard coded to check $^V/$]? Or are the vendor Perls "XS_VERSION_BOOTCHECK;" and "XS_APIVERSION_BOOTCHECK;" modified to not allow forward compatibility to newer minor releases (and when upgrading the perl to a newer minor perl, all existing XS libs won't load)? Or are absolute versioned paths to perl baked into the OS in C or on shebangs (why wouldn't symlinks fix this?)? Or I want an XS lib compiled with 5.12.4 to load into a 5.16.1 process (change the current policy so major versions are compatible)? ------------------ Are version checks in perl or are they at the binary level so things won't load? And what do you need from the perl community to stop doing this -- they claim it isn't necessary for minor versions. -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org