π a missing Java std lib(simple & 0-dependency) for framework/middleware, provide an enhanced InheritableThreadLocal that transmits values between threads even using thread pooling components.
Upgrading is recommended for all users.
[!NOTE] From
TTL v2.13+
upgrade toJava 8
. π If you needJava 6
support, use version2.12.x
3.30.2-GA
(issue #555 submitted by @brucelwl)
javassist
project: π
java 8
support of new javassit
version π«‘
TtlExecutorTransformlet.java
]: remove redundant qualified package name; extract local varClassInfo.java
] simplify classpath setting of javassist classpoolpom version
validation β
3.9.6
πͺΆJAVA_HOME
of java versions when run CI in GitHub Actions βοΈhttps://alibaba.github.io/transmittable-thread-local/apidocs/2.14.5/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.14.5</version>
</dependency>
Upgrading is recommended for all users.
[!NOTE] From
TTL v2.13+
upgrade toJava 8
. π If you needJava 6
support, use version2.12.x
ScheduledThreadPoolExecutor
" when use TTL agent(issue #547 submitted by @robin-g-20230331)strong_ci.yaml
instead of appveyor.yml
21-ea
to 21
3.9.5
πͺΆbash-buddy
appveyor
fileshttps://alibaba.github.io/transmittable-thread-local/apidocs/2.14.4/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.14.4</version>
</dependency>
Upgrading is recommended for all users.
[!NOTE] from
2.13.x
upgrade toJava 8
π
If you needJava 6
support, use version2.12.x
ClassCircularityError
of ConcurrentHashMap
under JDK 17
(#399 by @dongshuke @primitiveheart)JDK 20/21-ea
into and remove 18
fromΒ GitHub CIversions-maven-plugin
, dependabot.yml
Github workflow is enough π€https://alibaba.github.io/transmittable-thread-local/apidocs/2.14.3/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.14.3</version>
</dependency>
Upgrading is recommended for all users.
[!NOTE] from
2.13.x
upgrade toJava 8
π
If you needJava 6
support, use version2.12.x
expected size
to initialize hash map
instead of capacity
fix improper implementation of v2.14.0
jdk
19 into appveyor ci
https://alibaba.github.io/transmittable-thread-local/apidocs/2.14.2/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.14.2</version>
</dependency>
[!NOTE] from
2.13.x
upgrade toJava 8
π
If you needJava 6
support, use version2.12.x
javassist
to 3.29.2-GA
from 3.29.0-GA
==/!=
for null
checkjavadoc
codecov
badge on branch 2.x
https://alibaba.github.io/transmittable-thread-local/apidocs/2.14.1/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.14.1</version>
</dependency>
Upgrading is recommended for all users.
[!NOTE] from
2.13.x
upgrade toJava 8
π
If you needJava 6
support, use version2.12.x
Transmittee Register
, the extension point for other ThreadLocal
Transmitter#registerTransmittee
and Transmitter#unregisterTransmittee
initialCapacity
of HashMap
explicitly for performancemanagement
sectionnexus-staging-maven-plugin
to deploy-settings
profileorg.jetbrains:annotations
dependency when run test under agentmaven wrapper
to 3.8.6https://alibaba.github.io/transmittable-thread-local/apidocs/2.14.0/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.14.0</version>
</dependency>
Upgrading is recommended for all users.
[!NOTE] from
2.13.x
upgrade toJava 8
π
If you needJava 6
support, use version2.12.x
@Contract(pure)
for wrapper
methods, more user/IDE
friendly:
IDE
warning if discard wrapper
resultBefore: π Now: π
final
modifier of classregisterThreadLocal*
methods, add note for getting ThreadLocal
instances by reflection
https://alibaba.github.io/transmittable-thread-local/apidocs/2.13.2/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.13.2</version>
</dependency>
[!NOTE] from
2.13.x
upgrade toJava 8
π
If you needJava 6
support, use version2.12.x
@contract
for wrapper methods
fine control of null
check, more user/IDE
friendly π₯°Before: π Now: π
kotest
library for testing π©github
workflow CIwindows
ci on appveyor
, use github
workflow insteadmaven command
instead of hand-writing command scripts run-junit.sh
/run-agent-test.sh
since upgrade to java 8https://alibaba.github.io/transmittable-thread-local/apidocs/2.13.1/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.13.1</version>
</dependency>
[!NOTE] from
2.13.x
upgrade toJava 8
π
If you needJava 6
support, use version2.12.x
javassist
(#388 by @howardliu-cn)https://alibaba.github.io/transmittable-thread-local/apidocs/2.13.0/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.13.0</version>
</dependency>
[!IMPORTANT]
2.12.x is the last minor version supported
Java6
, and is end-of-life.The 2.12.x version is end-of-life. No further development, support, maintenance, PRs and updates will happen.
It's time to say goodbye, my friend
It's been a long day without you my friend And I'll tell you all about it when I see you again We've come a long way from where we began Oh I'll tell you all about it when I see you again
TTL Agent
do NOT set TtlAttachments.KEY_IS_AUTO_WRAPPER
if input Runnable
has not been auto wrapped
https://alibaba.github.io/transmittable-thread-local/apidocs/2.12.6/index.html
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>transmittable-thread-local</artifactId>
<version>2.12.6</version>
</dependency>