File c3p0.changes of Package c3p0

-------------------------------------------------------------------
Wed Mar  4 04:24:41 UTC 2026 - Fridrich Strba <fstrba@suse.com>

- 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 <fstrba@suse.com>

- 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

-------------------------------------------------------------------
Fri Sep  5 07:37:14 UTC 2025 - Fridrich Strba <fstrba@suse.com>

- Do not provide the hibernate_jdbc_cache alternative

-------------------------------------------------------------------
Tue Apr 30 11:48:06 UTC 2024 - Fridrich Strba <fstrba@suse.com>

- Simplify the spec: remove old macros and avoid versioned jars

-------------------------------------------------------------------
Wed Feb 21 08:35:16 UTC 2024 - Fridrich Strba <fstrba@suse.com>

- Use %patch -P N instead of deprecated %patchN.

-------------------------------------------------------------------
Tue May  3 19:03:18 UTC 2022 - Stefan Bluhm <stefan.bluhm@clacee.eu>

- Added additional class alias.

-------------------------------------------------------------------
Thu Apr 14 13:30:53 UTC 2022 - Stefan Bluhm <stefan.bluhm@clacee.eu>

- Added building on Enterprise Linux 9.

-------------------------------------------------------------------
Tue Mar 29 14:50:43 UTC 2022 - Michael Calmer <mc@suse.com>

- fix building on EL8 OSes

-------------------------------------------------------------------
Fri Apr 16 20:10:24 UTC 2021 - Ferdinand Thiessen <rpm@fthiessen.de>

- Update to 0.9.5.5
  * Fixed CVE-2018-20433, version 0.9.5.2 allowed XXE in
    extractXmlConfigFromInputStream during initialization.
    (bsc#1120648)
  * Properly implement the JDBC 4.1 abort method.
  * Make XML parsing much more restrictove by default, but allow
    users to revert to the old, permissive behavior by setting config
    property 'com.mchange.v2.c3p0.cfg.xml.usePermissiveParser' to true
    CVE-2019-5427 (bsc#1133198)
  * Address situation where a throwable during forceKillAcquires() left
    the force_kill_acquires flag set to true, making it impossible for
    the pool to restart acquisition attempts on recovery.
  * Upgrade dependency to mchange-commons-java 0.2.15, which
    includes support for log4j2

-------------------------------------------------------------------
Sun Jul  7 10:00:30 UTC 2019 - Jan Engelhardt <jengelh@inai.de>

- Ensure neutrality of description.
- Update RPM group for c3p0-javadoc.

-------------------------------------------------------------------
Fri Dec 21 09:11:41 UTC 2018 - Fridrich Strba <fstrba@suse.com>

- Do not bundle mchange-commons, but build against the new
  mchange-commons package
- Removed patch
  * c3p0-embed-mchange-common.patch
    + Do not embed mchange-commons
- Add alias c3p0:c3p0 to the maven artifact

-------------------------------------------------------------------
Tue Dec  4 15:05:37 UTC 2018 - Fridrich Strba <fstrba@suse.com>

- Add maven pom files

-------------------------------------------------------------------
Wed May 16 08:21:52 UTC 2018 - fstrba@suse.com

- Build with source and target 8 to prepare for a possible removal
  of 1.6 compatibility

-------------------------------------------------------------------
Fri May  4 11:03:32 UTC 2018 - pmonrealgonzalez@suse.com

- Added fdupes to fix building error with file jquery-1.10.2.js

-------------------------------------------------------------------
Mon Sep 18 06:16:59 UTC 2017 - fstrba@suse.com

- Added patch:
  * c3p0-javadoc.patch
    + Use test-classpath for javadoc generation, since it tries
      to document also junit test files
- Add dependency on junit
- Clean spec file

-------------------------------------------------------------------
Fri Apr 22 14:14:47 UTC 2016 - dmacvicar@suse.de

- update to version 0.9.5.2
- update mchange-commons-java component to version 0.2.11
- clean spec file

-------------------------------------------------------------------
Fri Jun 27 17:56:06 UTC 2014 - smoioli@suse.com

- bugfix: dependent library was not embedded correctly

-------------------------------------------------------------------
Fri Jun 27 16:14:57 UTC 2014 - smoioli@suse.com

- updated to upstream 0.9.5, that is compatible with Java 7 / JDBC 4

-------------------------------------------------------------------
Tue Sep 24 09:51:34 UTC 2013 - dmacvicar@suse.de

- Explicitly BuildRequires java-devel

-------------------------------------------------------------------
Thu Dec  9 11:23:06 CET 2010 - mc@suse.de

- initial release

openSUSE Build Service is sponsored by