]>
source.dussan.org Git - javassist.git/log
catsalty [Thu, 25 Jul 2024 11:16:23 +0000 (19:16 +0800)]
[bugfix]fix TransformCallToStatic with invokeinterface or invokedynamic
Replacing invokeinterface or invokedynamic with invokestatic will result in a missing instruction. This solution can fix the problem.
Reference document:
https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5.invokestatic
https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5.invokedynamic
https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5.invokeinterface
chibash [Fri, 3 May 2024 13:20:31 +0000 (22:20 +0900)]
updates testJIRA150 since it sometimes fails
Shigeru Chiba [Fri, 3 May 2024 10:01:47 +0000 (19:01 +0900)]
Merge pull request #484 from kuznet1/master
Line numbers support
Shigeru Chiba [Fri, 3 May 2024 09:57:34 +0000 (18:57 +0900)]
Merge pull request #480 from likey3/master
support bootstrap method coping when using code coping
LiuChuliang 刘楚梁 [Thu, 18 Jan 2024 08:11:16 +0000 (16:11 +0800)]
support bootstrap method coping when using code coping
Shigeru Chiba [Sun, 31 Dec 2023 01:07:03 +0000 (10:07 +0900)]
Merge pull request #477 from oldratlee/improve-pom
improve pom
Jerry Lee [Sat, 30 Dec 2023 10:53:14 +0000 (18:53 +0800)]
improve pom
- add `inceptionYear` element, and use it in `copyright bottom`
- add missing version declaration for `maven-gpg-plugin`
more stable build and fix related warning message
- add `maven-enforcer-plugin`
more straightforward error message when `maven`/`java` version is not satisfied
akuznetsov [Fri, 29 Dec 2023 13:29:28 +0000 (17:29 +0400)]
line numbers for undefined ids & more
chibash [Sun, 24 Dec 2023 16:28:37 +0000 (01:28 +0900)]
3.30.2-GA release
Shigeru Chiba [Sun, 24 Dec 2023 07:06:28 +0000 (16:06 +0900)]
Merge pull request #476 from oldratlee/dev/polish-pom
polish pom format
Jerry Lee [Sun, 24 Dec 2023 05:13:54 +0000 (13:13 +0800)]
polish pom format
- reorder pom elements
- sort `GAV` elements together
- bring user concerned info(e.g. licenses) forward
- bring dev concerned basic info(e.g. dependencies) before profiles
- use `https` instead of `http` for URLs
- change whitespace tabs to spaces for consistency
Shigeru Chiba [Fri, 22 Dec 2023 17:04:56 +0000 (02:04 +0900)]
Merge pull request #475 from oldratlee/add-editor-config
add `.editorconfig`
Jerry Lee [Fri, 22 Dec 2023 11:38:10 +0000 (19:38 +0800)]
add `.editorconfig`
ease the view and edit settings of the editor/IDE
more info see https://editorconfig.org/
Shigeru Chiba [Thu, 21 Dec 2023 14:57:01 +0000 (23:57 +0900)]
Merge pull request #473 from shifujun/fix_bytecode_version
Fix bytecode compatible back to 52(JDK8)
shifujun [Mon, 18 Dec 2023 08:39:09 +0000 (16:39 +0800)]
Fix bytecode compatible back to 52(JDK8)
This project need JDK 11 to compile, but target to JDK 8.
IDEA need uncheck "use --release" in Preferences |
Build, Execution, Deployment | Compiler | Java Compiler
, to build success.
fix #470
Shigeru Chiba [Sun, 17 Dec 2023 14:07:13 +0000 (23:07 +0900)]
Merge pull request #472 from merks/issue-471
Use current latest org.apache.felix:maven-bundle-plugin:5.1.9
chibash [Sun, 17 Dec 2023 14:04:10 +0000 (23:04 +0900)]
fixes github issue #471
Ed Merks [Sun, 17 Dec 2023 13:15:41 +0000 (14:15 +0100)]
Use current latest org.apache.felix:maven-bundle-plugin:5.1.9
https://github.com/jboss-javassist/javassist/issues/471
chibash [Sat, 16 Dec 2023 15:47:57 +0000 (00:47 +0900)]
3.30.0-GA release
Shigeru Chiba [Sat, 16 Dec 2023 13:12:35 +0000 (22:12 +0900)]
Merge pull request #470 from shifujun/repair_IDEA
Minimal changes make IDEA 2023.2 work out-of-box
Shigeru Chiba [Sat, 16 Dec 2023 13:04:12 +0000 (22:04 +0900)]
Merge pull request #469 from shifujun/insertAuxInitializer_stacksize
Fix insertAuxInitializer may cause inconsistent stack height problem
Shigeru Chiba [Sat, 16 Dec 2023 13:02:41 +0000 (22:02 +0900)]
Merge pull request #468 from vimfun/patch-1
Update tutorial.html: `javassist.util.HotSwapper`
shifujun [Tue, 12 Dec 2023 06:10:23 +0000 (14:10 +0800)]
Minimal changes make IDEA 2023.2 work out-of-box
Correct maven-compiler-plugin JDK version for IDEA import Compiler bytecode version.
Remove JvstTestRoot's constructor, otherwise IDEA cannot show Run icon aside testMethod.
Another way is adding suite() static method to those classes.
Now we can clone and open project with IDEA 2023.2. Debug single test case with IDEA is very useful.
shifujun [Mon, 11 Dec 2023 09:52:52 +0000 (17:52 +0800)]
Fix insertAuxInitializer may cause inconsistent stack height problem
Usually, constructor only load super class's constructor's init params into stack.
After this() or super() called, stack will be empty. If so, we insertAuxInitializer
right after this() or super() can reuse max stack size if it enough.
But, there is some weird class out there, their constructors load all in-constructor
init field value into stack before this() or super() call. In this case,
after this() or super() call, stack is not empty, even maybe full.
In summary, insertAuxInitializer should increase MaxStack anyway.
⸮o-o ? 林 [Mon, 11 Dec 2023 07:19:07 +0000 (15:19 +0800)]
Update tutorial.html: `javassist.util.HotSwapper`
The code path is fixed.
Shigeru Chiba [Sat, 9 Dec 2023 15:49:49 +0000 (00:49 +0900)]
Merge pull request #467 from shifujun/453
Remove DUP check in TransformNewClass
Shigeru Chiba [Sat, 9 Dec 2023 15:48:42 +0000 (00:48 +0900)]
Merge pull request #448 from catsalty/patch-2
Fix issue in no-standard [new] instruction replace
Shigeru Chiba [Sat, 9 Dec 2023 15:47:26 +0000 (00:47 +0900)]
Merge pull request #466 from shifujun/pr-fix-lookupMethod
Fix MemberResolver.lookupMethod bug when super class has more precise…
shifujun [Fri, 8 Dec 2023 13:36:45 +0000 (21:36 +0800)]
Remove DUP check in TransformNewClass
DUP usually come after NEW, but not necessary.
#453
shifujun [Fri, 8 Dec 2023 06:48:28 +0000 (14:48 +0800)]
Fix MemberResolver.lookupMethod bug when super class has more precise match
When onlyExact=false and super class have a more precise match,
it should not return with current class's maybe result.
New added testSuperCall reveals the problem.
Shigeru Chiba [Mon, 4 Dec 2023 09:49:40 +0000 (18:49 +0900)]
Merge pull request #463 from wuwen5/java21-inner-class
fixes Issue 462 (In Java21, the ConstPool API throws NPE for MethodParameters attributes without parameter names)
wuwen [Sun, 8 Oct 2023 08:31:26 +0000 (16:31 +0800)]
fixes GitHub Issue 462 (Internal class issues in the Java 21)
akuznetsov [Thu, 2 Nov 2023 11:59:48 +0000 (15:59 +0400)]
fix line numbers in blocks & refactor test
akuznetsov [Wed, 4 Oct 2023 10:22:28 +0000 (14:22 +0400)]
save line number count though all methods/ctors
akuznetsov [Tue, 26 Sep 2023 11:57:53 +0000 (15:57 +0400)]
add line numbers and test
LayHool [Thu, 16 Mar 2023 03:01:40 +0000 (11:01 +0800)]
Fix issue in no-standard [new] instruction replace
A standard *new* construct bytecode will generate like:
```
new okhttp3/OkHttpClient
dup
invokespecial okhttp3/OkHttpClient <init> ()V
astore 1
```
but a few part of compiler will generate no-standard bytecode like:
```
new okhttp3/OkHttpClient
dup
astore 1
invokespecial okhttp3/OkHttpClient <init> ()V
```
which will cause javassist build stack error.
This commit will fix it
Shigeru Chiba [Sun, 2 Oct 2022 15:49:13 +0000 (00:49 +0900)]
Update README.md
Shigeru Chiba [Sun, 2 Oct 2022 15:48:27 +0000 (00:48 +0900)]
Merge pull request #434 from fanofxiaofeng/patch-1
try to fix trivial link error
靳阳 [Sun, 2 Oct 2022 15:04:42 +0000 (23:04 +0800)]
try to fix trivial link error
try to fix trivial link error
chibash [Tue, 13 Sep 2022 21:19:11 +0000 (06:19 +0900)]
updates javassist.jar for 3.29.2-GA.
chibash [Tue, 13 Sep 2022 20:48:02 +0000 (05:48 +0900)]
prepares a new release
Shigeru Chiba [Sun, 11 Sep 2022 00:16:04 +0000 (09:16 +0900)]
Merge pull request #427 from dakusui/master-issue-426_includeAutomaticModuleNameInManifestMf
Includes Automatic-Module-Name in MANIFEST.MF
Hiroshi Ukai [Mon, 29 Aug 2022 21:28:35 +0000 (06:28 +0900)]
Issue-#426 Format a line in the pom.xml.
Hiroshi Ukai [Mon, 29 Aug 2022 21:09:37 +0000 (06:09 +0900)]
Issue-#426 Include Automatic-Module-Name in MANIFEST.MF and bump up the version to 3.29.2-GA
chibash [Thu, 11 Aug 2022 16:23:50 +0000 (01:23 +0900)]
updates README.md
chibash [Thu, 11 Aug 2022 16:13:42 +0000 (01:13 +0900)]
adds Issue #423 to Changes.md
chibash [Thu, 11 Aug 2022 15:17:58 +0000 (00:17 +0900)]
for releasing 3.29.1
chibash [Sat, 6 Aug 2022 19:06:50 +0000 (04:06 +0900)]
prohibits too many items from being added to a constant pool.
the previous commit was wrong.
chibash [Sat, 6 Aug 2022 18:01:40 +0000 (03:01 +0900)]
prohibits too many items from being added to a constant pool
chibash [Wed, 18 May 2022 13:25:12 +0000 (22:25 +0900)]
updates Changes.md to note Issue #414
chibash [Tue, 17 May 2022 04:09:44 +0000 (13:09 +0900)]
fixes typos in *.md
chibash [Tue, 17 May 2022 04:05:58 +0000 (13:05 +0900)]
removes Readme.html and adds Changes.md and Examples.md
chibash [Fri, 13 May 2022 13:58:52 +0000 (22:58 +0900)]
prepares for 3.29.0-GA release
chibash [Thu, 12 May 2022 17:49:08 +0000 (02:49 +0900)]
removes an unused import declaration as PR 384 mentions.
Shigeru Chiba [Thu, 12 May 2022 17:45:42 +0000 (02:45 +0900)]
Merge pull request #382 from tim-hoffman/PR_RemoveStringBuffer
Replace StringBuffer with StringBuilder, other minor String optimizations
Shigeru Chiba [Thu, 12 May 2022 17:41:05 +0000 (02:41 +0900)]
Merge pull request #383 from tim-hoffman/PR_ArrayCopyPerformance
Replace array copy loops with System.arraycopy
chibash [Thu, 12 May 2022 17:39:03 +0000 (02:39 +0900)]
uncomments test code suggested by PR405
chibash [Thu, 12 May 2022 17:32:49 +0000 (02:32 +0900)]
cancels PR#391, which does not pass all the tests
chibash [Thu, 12 May 2022 17:25:44 +0000 (02:25 +0900)]
fixes a wrong indentation
Shigeru Chiba [Thu, 12 May 2022 17:24:13 +0000 (02:24 +0900)]
Merge pull request #391 from derklaro/fix-method-naming-syntax
Only wrap the method name if the method doesn't come from the same declaring class
chibash [Thu, 12 May 2022 17:15:47 +0000 (02:15 +0900)]
does refactoring
chibash [Thu, 12 May 2022 16:33:19 +0000 (01:33 +0900)]
fixes a bug in SignatureAttribute.renameClass().
chibash [Wed, 11 May 2022 15:50:44 +0000 (00:50 +0900)]
fixs a compilation problem although one test still fails.
Shigeru Chiba [Wed, 11 May 2022 15:42:15 +0000 (00:42 +0900)]
Merge pull request #299 from pietrobraione/master
Fix renaming of classes in presence of generic signatures and nested classes.
This pull request has some problems but I'll fix them later.
Shigeru Chiba [Tue, 10 May 2022 16:54:28 +0000 (01:54 +0900)]
Merge branch 'master' into master
Shigeru Chiba [Tue, 10 May 2022 10:54:48 +0000 (19:54 +0900)]
Merge pull request #278 from ximsfei/master
fixes a bug of ClassFile#renameClass(), some imports could not be successfully renamed.
Shigeru Chiba [Tue, 10 May 2022 09:22:31 +0000 (18:22 +0900)]
Merge pull request #390 from derklaro/master
Lower requirement for an extra type in constructor to Java 7-
chibash [Tue, 10 May 2022 09:21:13 +0000 (18:21 +0900)]
changes test code because package java.rmi.activation.ActivationGroupDesc does not exist any longer.
chibash [Tue, 10 May 2022 09:07:12 +0000 (18:07 +0900)]
deletes src/test/test2/*.class
Shigeru Chiba [Tue, 10 May 2022 04:55:34 +0000 (13:55 +0900)]
Merge pull request #399 from carldea/master
Using TCK Tested JDK builds of OpenJDK
Shigeru Chiba [Tue, 10 May 2022 04:42:33 +0000 (13:42 +0900)]
Merge pull request #409 from aschleck/patch-1
Remove redundant type check
April Schleck [Fri, 1 Apr 2022 04:35:37 +0000 (21:35 -0700)]
Remove redundant type check
The same condition is repeated twice (caught by FindBugs.)
Carl Dea [Mon, 4 Oct 2021 13:47:25 +0000 (09:47 -0400)]
Using TCK Tested JDK builds of OpenJDK
The AdoptOpenJDK has been discontinued since July 2021. When using Zulu you get all the latest updated (TCK Tested) builds for all versions of OpenJDK.
Also added are fixed (major) release version(s) such as 11.0.3. This is often a good practice whenever a build/test triggers (push/pull events) this can determine if the latest JDK (11) had failed the build vs something in your code that caused it. For example, when building with JDK 11.0.3 (fixed version) the build passes (green) and JDK 11 fails (red) will mean that the latest JDK (11) was the cause and not your code.
Note: Other distributions such as Temurin do not support archived fixed release prior to Sept. 2021.
Shigeru Chiba [Tue, 21 Sep 2021 09:11:01 +0000 (18:11 +0900)]
Merge pull request #395 from aburaksahin/master
Fix for NullPointerException on detach()
Burak Şahin [Tue, 21 Sep 2021 08:13:48 +0000 (11:13 +0300)]
Fix for NullPointerException on detach()
derklaro [Tue, 7 Sep 2021 19:44:24 +0000 (21:44 +0200)]
Only wrap the method name if the method doesn't come from the same decl class
derklaro [Tue, 7 Sep 2021 17:22:36 +0000 (19:22 +0200)]
Lower requirement for an extra type in constructor to Java 7-
Timothy Hoffman [Fri, 16 Jul 2021 18:29:45 +0000 (13:29 -0500)]
Replace array copy loop with System.arraycopy
Timothy Hoffman [Fri, 16 Jul 2021 15:59:01 +0000 (10:59 -0500)]
Replace remaining StringBuffer uses with StringBuilder
Timothy Hoffman [Fri, 16 Jul 2021 15:55:33 +0000 (10:55 -0500)]
Replace StringBuffer with StringBuilder and other minor String optimizations
chibash [Wed, 30 Jun 2021 10:25:07 +0000 (19:25 +0900)]
fixes GitHub Issue 378 (wrong link for apache license)
chibash [Thu, 13 May 2021 17:08:08 +0000 (02:08 +0900)]
updates javassist.Loader to exclude jdk.internal.
chibash [Fri, 7 May 2021 17:01:12 +0000 (02:01 +0900)]
release 3.28.0-GA
Shigeru Chiba [Thu, 6 May 2021 04:08:55 +0000 (13:08 +0900)]
Add an action badge.
Shigeru Chiba [Thu, 6 May 2021 03:52:43 +0000 (12:52 +0900)]
Create maven.yml
chibash [Sun, 25 Apr 2021 17:37:47 +0000 (02:37 +0900)]
updates Readme.html since #305 has been fixed by PR #306
Shigeru Chiba [Sun, 25 Apr 2021 17:35:45 +0000 (02:35 +0900)]
Merge pull request #306 from nschaefe/master
fix issue 305: CodeConverter.replaceArrayAccess leads to java.util.ConcurrentModificationException
chibash [Sun, 25 Apr 2021 17:28:45 +0000 (02:28 +0900)]
updates Readme.html since #363 has been mergeed
Shigeru Chiba [Sun, 25 Apr 2021 17:27:10 +0000 (02:27 +0900)]
Merge pull request #363 from michalkurka/master
Fix a race condition in CtClassType#getClassFile3
chibash [Sun, 25 Apr 2021 17:18:48 +0000 (02:18 +0900)]
updates Readme.html since #350 has been fixed
Shigeru Chiba [Sun, 25 Apr 2021 17:13:44 +0000 (02:13 +0900)]
Merge pull request #351 from sgjesse/issue-350
This fixes Issue #350.
Check for extended frame type when updating StackMapTable offset.
michalkurka [Wed, 17 Mar 2021 17:12:21 +0000 (13:12 -0400)]
Fix a race condition in CtClassType#getClassFile3
javassist fails to find a class when concurrently running process
compresses the class (converts classfile to raw bytes)
the idea of the fix is to make sure to only update rawClassfile and classfile
under lock in getClassFile3, all other places that modify classfile are
already synchronized
when reading the object state, we need to read under lock both classfile and
rawClassFile otherwise we might get an inconsistent state
chibash [Sat, 30 Jan 2021 02:16:52 +0000 (11:16 +0900)]
fixes a security problem in pom.xml
chibash [Sat, 30 Jan 2021 02:05:23 +0000 (11:05 +0900)]
fixes typos for #357
Shigeru Chiba [Sat, 30 Jan 2021 01:57:46 +0000 (10:57 +0900)]
Merge pull request #357 from eshizhan/master
add functions for getting the parameter names of method
eshizhan [Fri, 29 Jan 2021 04:34:08 +0000 (12:34 +0800)]
add unit tests for LocalVariableAttribute.variableNameByIndex and MethodParametersAttribute.parameterName
eshizhan [Tue, 26 Jan 2021 09:39:20 +0000 (17:39 +0800)]
add functions for getting the parameter names of method
Søren Gjesse [Mon, 14 Dec 2020 13:52:31 +0000 (14:52 +0100)]
Check for extended frame type when updating StackTableOffset offset
Fixes #350
chibash [Fri, 16 Oct 2020 10:23:07 +0000 (19:23 +0900)]
fixes Issue #339
chibash [Mon, 13 Jul 2020 01:06:13 +0000 (10:06 +0900)]
updates the version number