Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package c3p0 for openSUSE:Factory checked in 
at 2026-03-04 21:04:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/c3p0 (Old)
 and      /work/SRC/openSUSE:Factory/.c3p0.new.561 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "c3p0"

Wed Mar  4 21:04:16 2026 rev:9 rq:1336263 version:0.12.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/c3p0/c3p0.changes        2025-09-29 
16:34:24.595910236 +0200
+++ /work/SRC/openSUSE:Factory/.c3p0.new.561/c3p0.changes       2026-03-04 
21:04:23.158371642 +0100
@@ -1,0 +2,219 @@
+Wed Mar  4 04:24:41 UTC 2026 - Fridrich Strba <[email protected]>
+
+- Upgrade to upstream version 0.12.0
+  * Changes of version 0.12.0
+    + Replace com.mchange.v2.naming.permitNonlocalJndiNames with
+      more configurable com.mchange.v2.naming.nameGuardClassName.
+      By default, it is null, and the same "apparently local"
+      restriction previously enforced by
+      com.mchange.v2.naming.permitNonlocalJndiNames is enforced. But
+      users can supply custom com.mchange.v2.naming.NameGuard
+      instances to control what names are permissible, and four
+      implementations of NameGuard are provided.
+    + Documentation updates.
+    + Disable by default reflective instantiation of
+      javax.naming.spi.ObjectFactory instances unless their
+      classname is included on a whitelist. Define properties-style
+      config parameter com.mchange.v2.naming.objectFactoryWhitelist
+      where the comma-separated whitelist can be provided. By
+      default this parameter contains the two ObjectFactory classes
+      c3p0 includes in references it creates.
+    + Change the format of userOverridesAsString, which is just a
+      String representation of Map<String,Map<String,String>>. Use a
+      CSV-inspired format, and the mchange-commons-java fastcsv
+      utility, rather than dangerous Java Object serialization of
+      the Map of Maps.
+    + Disable by default support for resolving references serialized
+      with their own InitialContext custom environment. Define
+      properties-style config parametercom.mchange.v2.naming
+      .acceptDeserializedInitialContextEnvironment, defaulting to
+      false, to manage this dangerous functionality.
+    + Disable by default JNDI lookups of nonlocal names
+      (conservatively, names that do not seem to be local). For now
+      only String names beginning with "java:" or Name objects whose
+      first component starts with "java:" are considered to be local.
+         Define properties-style config parameter com.mchange.v2.naming
+      .permitNonlocalJndiNames, defaulting to false, to manage this
+      dangerous functionality.
+    + Disable by default support for loading of
+      javax.naming.spi.ObjectFactory from remote locations via
+      Reference.factoryClassLocation. Define properties-style config
+      parameter com.mchange.v2.naming
+      .supportReferenceRemoteFactoryClassLocation, defaulting to
+      false, to manage this dangerous functionality.
+    * Fix rare issue in Statement caching (GooGooStatementCache),
+      make sure any Statement we remove is checked into the cache in
+      order to ensure we don't see internal inconsistencies when
+      Statements we mean to cull fail to be removed by
+      removeStatement(...) because they are checked out.
+  * Changes of version 0.11.2
+    * Expose utilities `overwriteJavaBeanProperties` and
+      `overwriteC3P0PrefixedProperties` in the `DataSources` class,
+      and refactor existing functions to use those.
+  * Changes of version 0.11.1
+    + in BasicResourcePool, forceKillAcquires() accidentally failed
+      to surrender its lock, leading to deadlocks following a full
+      round of acquisition failures.
+  * Changes of version 0.11.0
+    + Additional testing.
+  * Changes of version 0.11.0-pre2
+    + Define new property cancelAutomaticallyClosedStatements,
+      which, if true, ensures that Statement.cancel() will be called
+      prior to Statement.close() when c3p0 automatically close()es
+      statements because a client has neglected to, a Connection
+      with open Statements has exceeded its
+      unreturnedConnectionTimeout, or the Statement cache is
+      expiring a PreparedStatement.
+  * Changes of version 0.11.0-pre1
+    + Rewrite BasicResourcePool and GooGooStatementCache in terms of
+      ReentrantLock and Condition.{await/signalAll} rather than
+      native monitors and wait()/notifyAll(), because wait() pins
+      loom virtual threads.
+    + Double check after termination of BasicResourcePool
+      .awaitAvailable(...) that following notification/termination a
+      resource (Connection) remains available.
+    + Prevent fragility under non-bootstrap/non-system CLASSLOADERs
+      under Java 8, where references to java.sql.ShardingKey not
+      available under Java 8 provoke NoClassDefFoundError. Bifurcate
+      Connection proxies, generate version without sharding key
+      methods under JVMs where ShardingKey is unavailable, full JDBC
+      4.3 Connection API proxies where ShardingKey is present.
+  * Changes of version 0.10.2
+    + Prevent freeze due to re-waiting if a non-Exception Throwable
+      occurs while acquiring a PreparedStatement to cache.
+  * Changes of version 0.10.1
+    + Implement more and "louder" (log ugly stack traces) validation
+      of config properties.
+    + Modify former InUseLock (now InternalUseLock) and
+      NewProxyConnection to use ReentrantLock rather than native
+      monitors, to prevent pinning when clients run on loom virtual
+      threads.
+    + Implement config parameter markSessionBoundaries, so that
+      users can disable JDBC 4.3 beginRequest / endRequest session
+      boundary marking when JDBC drivers so undesirable things with
+      those hints.
+    + Implement more careful examination of begin/endRequest
+      methods, to take into account the case where those methods
+      exist on the JDBC driver Connection implementation, but not in
+      the Connection interface of a pre-Java-9 JVM. We still support
+      begin/endRequest in this case, but reflectively.
+  * Changes of version 0.10.0
+    + A bit more testing
+  * Changes of version 0.10.0-pre7
+    + Improve performance of begin/endRequest support
+    + Implement c3p0-loom
+      UninstrumentedVirtualThreadPerTaskTaskRunnerFactory
+    + Change mind. Eliminate naggingly prescriptive equals/hashCode
+      pseudorequirements from plugin interfaces, because our
+      canonicalization strategy is by key, doesn't actually rely
+      upon those implementations.
+    + Guard collection of MBeanAttributeInfo against items that
+      would have no getter or setter to prevent ugly
+      IntrospectionExceptions.
+    + Let C3P0PooledConnectionPool manager test introspected
+      authentication that appears perhaps incomplete, and revert to
+      NULL_AUTH (no-arg DataSource.getConnection()) if the test
+      fails.
+  * Changes of version 0.10.0-pre6
+    + Lots of documentation work.
+    + Implement attemptResurrectOnCheckin config parameter.
+    + Add guard to automaticTestTable preventing use of weird or
+      potentially malicious table names.
+    * Pick up com.mchange.v2.c3p0.impl.DefaultConnectionTester
+      .isValidTimeout as default value of new
+      connectionIsValidTimeout property, so that users upgrading
+      from previous version still capture the setting from the old
+      config, even as their ConnectionTester now falls back to null.
+  * Changes of version 0.10.0-pre5
+    + Lots of documenting, condensing, clean-up, etc.
+    + Define connectionIsValidTimeout as an ordinary bean-style
+      config parameter. Previously users had to set a universal
+      property (in c3p0.properties or System properties) to set this
+      timeout.
+    + Use simplified isValid(...) based timeout by default, use
+      traditional ConnectionTester logic only when users specify or
+      force a ConnectionTester
+  * Changes of version 0.10.0-pre4
+    + Define (in a separate, Java 21, project) a loom
+      virtual-threads based TaskRunnerFactory,
+      VirtualThreadPerTaskExecutorTaskRunnerFactory.
+    + DefineFixedThreadPoolExecutorTaskRunnerFactory, a simple
+      example that replaces c3p0's traditional Thread pool with an
+      unshared ThreadPoolExecutor of size numHelperThreads.
+    + Define AbstractExecutorTaskRunnerFactory, which users can
+      extend to use or share java.util.concurrent.Executor instances
+      rather than c3p0's traditional hand-rolled Thread pool.
+    + Define TaskRunnerFactory, and config param
+      TaskRunnerFactoryClassName. Users can provide implementations
+      of TaskRunnerFactory with a public no-arg constructor to take
+      full control of threading, thread-pooling, etc.
+    + Support SOURCE_DATE_EPOCH for deterministic builds. (Here and
+      in mchange-commons-java.)
+    + Eliminate support for traditional reflective proxies.
+    + Fix bad anchor in docs.
+    + Relicense to allow users to opt for LGPL-2.1 or later, rather
+      than LGPL-2.1-only. (Here and in mchange-commons-java.)
+    + Update to mchange-commons-java 0.3.0
+  * Changes of version 0.10.0-pre3
+    + Have build fail if we try to build with an unexpected JVM
+      version. We want to use a consistent JVM version (currently
+      11) and target version (currently 7) when we build c3p0.
+    + Remove vestiges of unsupported BasicResourcePool.AcquireTask
+    + Disable very slow handholding function intended to help with
+      misspellings / misspecifications of resource
+      "/c3p0-config.xml"
+    + Let PooledDataSource implement AutoCloseable. This
+      necessitates targeting Java 7, rather than Java 6, classfiles.
+    + Bring documentation of acquireRetryAttempts into sync with
+      c3p0's actual behavior.
+    + Include license files in published source jar. (Here and in
+      mchange-commons-java.)
+  * Changes of version 0.10.0-pre2
+    + Add "Automatic-Module-Name" entry to jar manifest for
+      interoperability with Project Jigsaw / Java 9 modules
+    + Try context ClassLoader if library ClassLoader fails to load a
+      named, necessary driver class.
+    + Let statement cache fail not-quietly if drivers provide
+      PreparedStatements without a proper equals implementation.
+    + Be slightly less negative in the docs about
+      unreturnedConnectionTimeout.
+    + Implement more robustly accurate checkoutTimeout.
+    + Add support for JDBC 4.3 beginRequest and endRequest methods.
+    + Consider ourselves to be a wrapper for a thing if the thing we
+      wrap itself declares itself as the wrapper of that thing.
+    + Fix rare ConcurrentModificationException in
+      GooGooStatementCache when Connections are closed.
+  * Changes of version 0.10.0-pre1
+    + Fix doc comments no longer acceptable under persnicketty JDK
+      11
+    + Build with JDK 11 JVM (still emitting JDK 1.6 compatible
+      sources)
+    + Get tests working under new mill build
+    + Reorganize to switch build from ant to mill
+    + Update to mchange-commons-java 0.2.20
+- Build it from the *-sources.jar distributed to maven central,
+  since the project changed to mill tool for build
+- Removed patches:
+  * c3p0-javadoc.patch
+  * c3p0-mchange-commons-0.4.0.patch
+    + not needed with this version
+- Build using Java >= 11 (since the APIs of this version are needed
+  in some files), but still produce Java 1.8 bytecode, to make it
+  usable for older versions that don't need the files using these
+  APIs.
+- Remove RHEL conditions, since the build.xml file we created is
+  simple and does not need ant features from contrib.
+
+-------------------------------------------------------------------
+Tue Mar  3 14:40:24 UTC 2026 - Fridrich Strba <[email protected]>
+
+- Bumped the minimal mchange-commons requirement to 0.4.0 because
+  of bsc#1258913, CVE-2026-27727
+- Added patch:
+  * c3p0-mchange-commons-0.4.0.patch
+    + Supply config to IndirectingSerializableExtension subclass in
+      order to support 'com.mchange.v2.naming
+      .supportReferenceRemoteFactoryClassLocation'
+    + Track mchange-commons-java change in package of IndentedWriter
+
+-------------------------------------------------------------------

Old:
----
  c3p0-0.9.5.5.src.tgz
  c3p0-javadoc.patch

New:
----
  c3p0-0.12.0-sources.jar
  c3p0-0.12.0.pom
  c3p0-build.xml

----------(Old B)----------
  Old:- Removed patches:
  * c3p0-javadoc.patch
  * c3p0-mchange-commons-0.4.0.patch
----------(Old E)----------

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

Other differences:
------------------
++++++ c3p0.spec ++++++
--- /var/tmp/diff_new_pack.Q6Fv2W/_old  2026-03-04 21:04:23.966405028 +0100
+++ /var/tmp/diff_new_pack.Q6Fv2W/_new  2026-03-04 21:04:23.970405194 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package c3p0
 #
-# Copyright (c) 2024 SUSE LLC
+# Copyright (c) 2026 SUSE LLC and contributors
 # Copyright (c) 2000-2008, JPackage Project
 #
 # All modifications and additions to the file contributed by third parties
@@ -17,33 +17,23 @@
 #
 
 
-%define mchange_commons_min_version 0.2.15
 Name:           c3p0
-Version:        0.9.5.5
+Version:        0.12.0
 Release:        0
 Summary:        JDBC DataSources/Resource Pools
 License:        LGPL-2.0-or-later
 Group:          Development/Libraries/Java
 URL:            https://www.mchange.com/projects/c3p0/
-Source0:        
http://downloads.sourceforge.net/sourceforge/c3p0/c3p0-%{version}.src.tgz
-Patch1:         %{name}-javadoc.patch
+Source0:        
https://repo1.maven.org/maven2/com/mchange/%{name}/%{version}/%{name}-%{version}-sources.jar
+Source1:        
https://repo1.maven.org/maven2/com/mchange/%{name}/%{version}/%{name}-%{version}.pom
+Source100:      %{name}-build.xml
 BuildRequires:  ant
 BuildRequires:  fdupes
-BuildRequires:  java-devel >= 1.8
+BuildRequires:  java-devel >= 11
 BuildRequires:  javapackages-local >= 6
-BuildRequires:  junit
-BuildRequires:  mchange-commons >= %{mchange_commons_min_version}
+BuildRequires:  mchange-commons >= 0.4.0
+BuildRequires:  unzip
 BuildArch:      noarch
-%if !0%{?rhel}
-BuildRequires:  ant-nodeps
-%endif
-%if 0%{?rhel} >= 9
-BuildRequires:  xmvn-tools
-%endif
-%if 0%{?rhel}
-Requires(post): chkconfig
-Requires(postun): chkconfig
-%endif
 
 %description
 c3p0 is a library for augmenting traditional (DriverManager-based)
@@ -59,46 +49,34 @@
 Javadoc documentation for c3p0.
 
 %prep
-%setup -q -n %{name}-%{version}.src
-%patch -P 1 -p1
-%{mvn_file} :c3p0 %{name}/%{name} %{name}
+%setup -q -T -c
+mkdir -p src/main/java
+unzip %{SOURCE0} -d src/main/java
+cp %{SOURCE100} build.xml
 
 %build
-export CLASSPATH=
-export OPT_JAR_LIST="ant/ant-nodeps"
-ant \
-    
-Dmchange-commons-java.jar.file=%{_javadir}/mchange-commons/mchange-commons-java.jar
 \
-    -Djunit.jar.file=$(build-classpath junit) -Djvm.target.version=8 \
-    jar javadoc
-
-sed -i "s/@c3p0.version.maven@/%{version}/g" src/maven/pom.xml
-sed -i 
"s/@mchange-commons-java.version.maven@/%{mchange_commons_min_version}/g" \
-  src/maven/pom.xml
-%{mvn_artifact} src/maven/pom.xml build/%{name}-%{version}.jar
+mkdir -p lib
+build-jar-repository -s lib mchange-commons
+ant jar javadoc
 
 %install
-%if 0%{?rhel}
-%mvn_install
-%else
 # jars
 install -d -m 0755 %{buildroot}%{_javadir}
-install -p -m 0644 build/%{name}-%{version}.jar \
+install -p -m 0644 target/%{name}-%{version}.jar \
   %{buildroot}%{_javadir}/%{name}.jar
 
 # poms
 install -d -m 0755 %{buildroot}%{_mavenpomdir}
-%{mvn_install_pom} src/maven/pom.xml %{buildroot}%{_mavenpomdir}/%{name}.pom
+%{mvn_install_pom} %{SOURCE1} %{buildroot}%{_mavenpomdir}/%{name}.pom
 %add_maven_depmap %{name}.pom %{name}.jar -a c3p0:c3p0
-%endif
 
 # javadoc
 mkdir -p %{buildroot}%{_javadocdir}/%{name}
-cp -pr build/apidocs/* %{buildroot}%{_javadocdir}/%{name}
+cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}
 %fdupes -s %{buildroot}%{_javadocdir}/%{name}
 
 %files -f .mfiles
-%license src/dist-static/LICENSE
-%doc src/doc/index.html
+%license src/main/java/LICENSE*
 
 %files javadoc
 %{_javadocdir}/%{name}

++++++ _scmsync.obsinfo ++++++
--- /var/tmp/diff_new_pack.Q6Fv2W/_old  2026-03-04 21:04:24.018407177 +0100
+++ /var/tmp/diff_new_pack.Q6Fv2W/_new  2026-03-04 21:04:24.022407342 +0100
@@ -1,6 +1,6 @@
-mtime: 1757057847
-commit: 6fe7e30ebfcabfa718becaf245ba637243d6503942e12e320184a6510fe0392c
+mtime: 1772601473
+commit: 4a46c7164fec6b02e96a35a00d859e74035d7343d65e8830434140447e45b789
 url: https://src.opensuse.org/java-packages/c3p0.git
-revision: 6fe7e30ebfcabfa718becaf245ba637243d6503942e12e320184a6510fe0392c
+revision: 4a46c7164fec6b02e96a35a00d859e74035d7343d65e8830434140447e45b789
 projectscmsync: https://src.opensuse.org/java-packages/_ObsPrj
 

++++++ build.specials.obscpio ++++++

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2026-03-04 06:18:24.000000000 +0100
@@ -0,0 +1 @@
+.osc

++++++ c3p0-0.12.0.pom ++++++
<?xml version="1.0" encoding="UTF-8"?>
<project 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd"; 
xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";>
    <modelVersion>4.0.0</modelVersion>
    <name>c3p0</name>
    <groupId>com.mchange</groupId>
    <artifactId>c3p0</artifactId>
    <packaging>jar</packaging>
    <description>A mature JDBC3+ Connection pooling library</description>
    <version>0.12.0</version>
    <url>https://www.mchange.com/projects/c3p0</url>
    <licenses>
        <license>
            <name>LGPL-2.1-or-later</name>
            <url>https://spdx.org/licenses/LGPL-2.1-or-later.html</url>
            <distribution>repo</distribution>
        </license>
        <license>
            <name>EPL-1.0</name>
            <url>https://spdx.org/licenses/EPL-1.0.html</url>
            <distribution>repo</distribution>
        </license>
    </licenses>
    <scm>
        <connection>scm:git:git://github.com/swaldman/c3p0.git</connection>
        
<developerConnection>scm:git:ssh://[email protected]:swaldman/c3p0.git</developerConnection>
        <url>https://github.com/swaldman/c3p0</url>
    </scm>
    <developers>
        <developer>
            <id>swaldman</id>
            <name>Steve Waldman</name>
            <url>https://github.com/swaldman</url>
        </developer>
    </developers>
    <dependencies>
        <dependency>
            <groupId>com.mchange</groupId>
            <artifactId>mchange-commons-java</artifactId>
            <version>0.4.0</version>
        </dependency>
    </dependencies>
</project>

++++++ c3p0-build.xml ++++++
<?xml version="1.0" encoding="UTF-8"?>

<project name="c3p0" default="package" basedir=".">

  <!-- ====================================================================== 
-->
  <!-- Build environment properties                                           
-->
  <!-- ====================================================================== 
-->

  <property file="build.properties"/>

  <property name="project.artifactId" value="c3p0"/>
  <property name="project.version" value="0.12.0"/>

  <property name="compiler.release" value="8"/>
  <property name="compiler.source" value="1.${compiler.release}"/>
  <property name="compiler.target" value="${compiler.source}"/>

  <property name="build.finalName" 
value="${project.artifactId}-${project.version}"/>
  <property name="build.dir" value="target"/>
  <property name="build.outputDir" value="${build.dir}/classes"/>
  <property name="build.srcDir" value="src/main/java"/>

  <property name="reporting.outputDirectory" value="${build.dir}/site"/>

  <!-- ====================================================================== 
-->
  <!-- Defining classpaths                                                    
-->
  <!-- ====================================================================== 
-->

  <path id="build.classpath">
    <fileset dir="lib">
      <include name="**/*.jar"/>
    </fileset>
  </path>

  <!-- ====================================================================== 
-->
  <!-- Cleaning up target                                                     
-->
  <!-- ====================================================================== 
-->

  <target name="clean" description="Clean the output directory">
    <delete dir="${build.dir}"/>
  </target>

  <!-- ====================================================================== 
-->
  <!-- Compilation target                                                     
-->
  <!-- ====================================================================== 
-->

  <target name="compile" description="Compile the code">
    <mkdir dir="${build.outputDir}"/>
    <javac destdir="${build.outputDir}"
           nowarn="false"
           debug="true"
           optimize="false"
           deprecation="true"
           target="${compiler.target}"
           verbose="false"
           fork="false"
           source="${compiler.source}">
      <src>
        <pathelement location="${build.srcDir}"/>
      </src>
      <classpath refid="build.classpath"/>
    </javac>
    <copy todir="${build.outputDir}">
      <fileset dir="${build.srcDir}">
        <exclude name="**/*~"/>
        <exclude name="**/*.java"/>
      </fileset>
    </copy>
  </target>

  <!-- ====================================================================== 
-->
  <!-- Javadoc target                                                         
-->
  <!-- ====================================================================== 
-->

  <target name="javadoc" description="Generates the Javadoc of the application">
    <javadoc sourcepath="${build.srcDir}"
             packagenames="*"
             destdir="${reporting.outputDirectory}/apidocs"
             access="protected"
             source="${compiler.source}"
             verbose="false"
             version="true"
             use="true"
             author="true"
             splitindex="false"
             nodeprecated="false"
             nodeprecatedlist="false"
             notree="false"
             noindex="false"
             nohelp="false"
             nonavbar="false"
             serialwarn="false"
             encoding="utf-8"
             linksource="false"
             breakiterator="false">
      <classpath refid="build.classpath"/>
    </javadoc>
  </target>

  <!-- ====================================================================== 
-->
  <!-- Package target                                                         
-->
  <!-- ====================================================================== 
-->

  <target name="package" depends="compile" description="Package the 
application">
    <jar jarfile="${build.dir}/${build.finalName}.jar"
         compress="true"
         index="false"
         basedir="${build.outputDir}"
         excludes="**/package.html">
      <manifest>
        <attribute name="Automatic-Module-Name" value="com.mchange.v2.c3p0"/>
      </manifest>
    </jar>
  </target>

  <!-- ====================================================================== 
-->
  <!-- A dummy target for the package named after the type it creates         
-->
  <!-- ====================================================================== 
-->

  <target name="jar" depends="package" description="Builds the jar for the 
application"/>

</project>

Reply via email to