aboutsummaryrefslogtreecommitdiffstats
path: root/tests/bugs153
Commit message (Collapse)AuthorAgeFilesLines
* Workaround for defining classes during LTWAlexander Kriegisch2024-01-293-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | Overhaul ClassLoaderWeavingAdaptor to use statically initialised Unsafe instances and method handles pointing to their 'defineClass' methods. Those now work universally on JDKs 8-21. In older JDKs, the method used to be in sun.misc.Unsafe, in more recent ones on jdk.internal.misc.Unsafe. It is challenging to fetch instances, especially as reflection protection and module boundaries have been increased in the JDK progressively. But finally, a solution was adapted from Byte Buddy (BB). Kudos to BB author Rafael Winterhalter. The previous solution to use ClassLoader::defineClass and require '--add-opens' is no longer necessary for the first time since it became necessary in AspectJ 1.9.7 with Java 16 support. Add org.ow2.asm:asm-common as a dependency everywhere org.ow2.asm:asm was used before. Maybe that is too many places, but no worse than before. Add missing dependency on loadtime to aspectjweaver. This kept a build like "mvn install -am -pl aspectjweaver" from picking up changed loadtime classes. Fixes #117. Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
* Upgrade license from CPLv1/EPLv1 to EPLv2Alexander Kriegisch2021-06-041-8/+8
| | | | | | | This was required by the Eclipse team as one precondition for the next release. Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
* Make all tests run on Java 16 via '-add-opens' JVM optionjava16-add-opensAlexander Kriegisch2021-03-233-4/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to JEP 260 (Encapsulate Most Internal APIs), aspect weaving on Java 16 now requires '--add-opens java.base/java.lang=ALL-UNNAMED' on the command line. Otherwise there will be illegal access exceptions for some internal API calls AspectJ needs, most prominently when trying to define classes in other packages or modules. This had to be done on several levels: - Maven Surefire: running tests in a JVM directly forked by Surefire. In order to make this backwards compatible, I added two profiles with JDK-level-dependent auto-activation, one 8-15 and one 16+. In the latter a property containing the JVM parameter is defined, in the former it is empty, i.e. the JVM is started without the parameter. In Java 8 the parameter did not even exist, in Java 9+ we could use it, but we need to test how users use AspectJ. - RunSpec: Whenever an XML test is declared to use '<run>', we need to determine the current JVM version and again dynamically add the parameter when forking the target JVM. - AntSpec: Whenever an XML test is declared to use '<ant>', we need to determine the current JVM version dynamically add two properties usable from within Ant scripts: 'aj.addOpensKey' and 'aj.addOpensValue'. Unfortunately, Ant needs to use two '<argLine>' parameters, because the two parts of the option are separated by a space character. - Ant scripts: When triggered by an AntSpec, each Ant target using LTW needs to manually set <jvmarg value="${aj.addOpensKey}"/> <jvmarg value="${aj.addOpensValue}"/> for each '<java>' task. It was quite tedious to find all(?) of them. TODO: In the AspectJ 1.9.7 release notes we need to document that this parameter is now needed for LTW. Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
* 257277: Incorrect generated Source Signature for FieldDeclarationsaclement2009-02-041-1/+18
|
* 162135: test and fixaclement2008-12-043-0/+81
|
* 245307: test and fix: Aspected annotations cause ajdoc to generate ↵aclement2008-08-283-0/+15
| | | | ClassCastExceptions
* 245286: test and fix: ajdoc does not generate signature correctly for ↵aclement2008-08-281-0/+3
| | | | generic constructer
* 230234 comment 10 - ajdoc modifications and testsaclement2008-07-184-0/+40
|
* 164340: ajdoc fix and testaclement2008-06-111-0/+15
|
* 164356: test and fix: ajdocaclement2008-03-201-0/+21
|
* 145018 - moved testcode to 16aclement2008-03-181-30/+0
|
* test and fix for 164633 - problem with decp incorrectly targetting an inner typeaclement2006-11-211-0/+35
|
* tests and fixes for pr164384aclement2006-11-177-0/+62
|
* Bug 155033 "Use ajcore for LTW problems" (add ajcore LTW testcases)mwebster2006-11-068-0/+88
|
* tests for 162135 (commented out) and 162657 (not commented out)aclement2006-10-301-0/+31
|
* testcode for 162135aclement2006-10-265-0/+183
|
* tests and fixes for 161502: annotation style generic pointcuts (!)aclement2006-10-242-0/+68
|
* tests and fix for 149908: NPE in org.aspectj.weaver.MemberImpl.getModifiersaclement2006-10-239-0/+81
|
* test and fix for 161217aclement2006-10-192-0/+22
|
* test and fix for 160674: simpler strategy for loading bytecode on SAPBEFORE_133532aclement2006-10-123-0/+31
|
* tests for 156058 and 159983aclement2006-10-061-0/+25
|
* Bug 158957 "NPE in LTW with RMI dynamic proxies w/ pointcut reuse" (restore ↵mwebster2006-10-056-0/+65
| | | | catch(Throwable) in Aj.preProcess() and make adaptor disabled by default)
* Bug 132080 "LTW concrete-aspect definitions not exposed to weaver"mwebster2006-10-0413-1/+117
|
* test from Wes (bug 159143)aclement2006-10-041-0/+65
|
* 153464 - testcase in progressaclement2006-10-031-0/+30
|
* test and fix for 156904: missing type warning then it matches anywayaclement2006-10-037-0/+78
|
* test and fix for 149071aclement2006-10-031-1/+7
|
* test and fix for 158624: generic types and arraysaclement2006-09-291-0/+27
|
* test and fixes for 145442 - line number info for stack traces.aclement2006-09-281-0/+0
|
* test and fix for 148908: structure modelaclement2006-09-261-0/+11
|
* testcase for 153464 - commented out at the moaclement2006-09-251-0/+29
|
* test and fix for 158412: annotation style reference pointcuts don't workaclement2006-09-253-0/+26
|
* tests for 151772, 125981: incorrect scope for dec soft reportingaclement2006-09-223-0/+73
|
* 154054 testcode and fix: noticing changes in around advice and forcing full ↵aclement2006-09-226-0/+78
| | | | builds
* test code for 158126 - already fixed ;) just a nice test to haveaclement2006-09-214-0/+43
|
* Bug 157474 "Handle duplicate aop.xml definitions more gracefully" (tests for ↵mwebster2006-09-196-0/+58
| | | | duplicate aop.xml and -Dorg.aspectj.weaver.loadtime.configuration)
* test and fix for 153845: Rogue signature containing a 'P' getting into the ↵aclement2006-09-145-0/+9
| | | | classfile.
* test for 156058 - commented outaclement2006-09-131-0/+11
|
* testcode for 153490: nested delegate problems.aclement2006-09-1211-0/+43
|
* testcode for 156962: Problems with @Deprecated in method signaturesaclement2006-09-123-0/+10
|
* test and fix for 155763 - incorrect codegen from compiler leads to NPEaclement2006-09-111-0/+31
|
* Bug 155972 "NullPointerException in ConstructorSignature.getConstructor()"mwebster2006-09-044-0/+55
|
* testcode for 152848 'deploying generics code when non-generics types are about'aclement2006-08-254-0/+8
|
* fixes for 149560: (1) correct the bcel code for creating clinit call (2) ↵aclement2006-08-222-0/+37
| | | | don't let singleton aspects be implemented as late type mungers, the clinit manipulation breaks.
* tests for pr153572acolyer2006-08-184-0/+25
|
* test and fix for 154332: broken java.lang.<annotation> processingaclement2006-08-181-0/+45
|
* testcode for problem found whilst looking into 153380aclement2006-08-107-0/+25
|
* test and fix for pr148219aclement2006-08-081-0/+8
|
* testcode for 152871: parsing bytecode too often (needs a wildcard pattern in ↵aclement2006-08-073-0/+32
| | | | the exclude list)
* test and fix for 152631: decp targetting aspect using cflowaclement2006-08-041-0/+13
|