Tagir Valeev
d17aa59d6d
IDEA-237601 Infer mutation signature from the bytecode
...
GitOrigin-RevId: d3c47f6a35f948f65f5d447d8561044d7ec9ce23
2020-04-14 12:31:00 +00:00
Tagir Valeev
097416297a
Duplicate class files removed
...
GitOrigin-RevId: 7fa735dd7eaefadc358d6c6876f71d5fa2d14e2e
2020-04-14 12:31:00 +00:00
Tagir Valeev
6ed3465b66
BytecodeAnalysisIndex: use faster hashes; encode key in 12 bytes instead of 14
...
Bytes per class in integration test reduced from 2083 to 1900
GitOrigin-RevId: 1c0e84b6c70869283e9db48b718e44e78dc3c554
2019-11-07 02:40:58 +00:00
Tagir Valeev
79cc904ff9
BytecodeAnalysis: infer @NotNull for static final fields (for now: non-branching clinit only)
...
Fixes IDEA-223861 Infer static field nullability from the bytecode
GitOrigin-RevId: 2ee3102df5677e567defbe849900769237a728bc
2019-10-02 10:07:03 +00:00
Rustam Vishnyakov
123242c4b2
EditorConfig documentation test
...
GitOrigin-RevId: fd52ace3d7a32ecd02c2c5ab90e077967604c15e
2019-06-16 04:03:21 +03:00
Egor Zhdan
c1813cfb52
Cleanup: NotNull/Nullable
...
GitOrigin-RevId: b8e892f32ea84c2115973155dba7127b892cc36e
2019-06-16 04:02:08 +03:00
Anna Kozlova
91f7445298
constructor reference: don't ignore constructor parameters during method reference inference (IDEA-185578)
...
GitOrigin-RevId: e836468e05db28157713e9edd3c70382f8ecdebc
2019-06-13 03:15:49 +03:00
Egor Zhdan
39d2d77155
Cleanup: NotNull/Nullable
...
GitOrigin-RevId: b8e892f32ea84c2115973155dba7127b892cc36e
2019-06-13 03:14:35 +03:00
Dmitry Avdeev
83f21c7197
Merge remote-tracking branch 'origin/master'
...
GitOrigin-RevId: 211e84dab4063848c1d3d835a526271ee1466636
2019-05-07 17:03:19 +03:00
Dmitry Avdeev
f9664fc455
IDEA-211555 Freeze on completion in XML file
...
do not process xincludes in ExtensionDomExtender
GitOrigin-RevId: d631dcd52d5bf500b61960473e16237008ad02a3
2019-05-07 17:02:41 +03:00
Alexey Kudravtsev
5910039653
attach JDK Annotations automatically on JDK creation to fix IDEA-211771
...
GitOrigin-RevId: 975cffd646b68abb31a61eb6ac50de264c428cdc
2019-05-03 03:07:50 +03:00
peter
506f7989e0
Revert "IDEA-201136 Update velocity library to 2.0"
...
it's too troublesome and has no clear benefits for now
we can return to this when we have more convincing reasons to upgrade than just "it's too old"
2019-01-14 22:18:42 +01:00
peter
c1d1037f47
IDEA-201136 Update velocity library to 2.0
2019-01-02 12:59:17 +01:00
Tagir Valeev
5422868682
BytecodeAnalysisIntegrationTest: depend on exact versions of velocity and collections
2018-10-26 16:00:05 +07:00
nik
224d9ced70
update commons-collection (IDEA-198976)
2018-10-25 09:37:06 +03:00
Roman Shevchenko
e0589b585f
[tests] migrates bytecode analysis tests to light test case
...
... and moves test data out of source code
2018-09-14 14:45:43 +02:00
Tagir Valeev
8446c4bce4
Testdata fixed after dfa_refactoring
2018-08-08 17:48:41 +07:00
Tagir Valeev
1aae19b0df
BytecodeAnalysisIndex: support new/this/paramX contracts
...
IDEA-191302 Introduce new contract return values: this, new, paramX
2018-05-04 17:44:23 +07:00
Tagir Valeev
37a4a385ab
BytecodeAnalysisIntegrationTest: add missing commons-collection annotations after moving velocity to maven
...
Before commons-collections was packed inside the velocity.jar and many classes were removed from there
2018-03-30 14:14:22 +07:00
Tagir Valeev
b144fc264e
Purity inference: fix expected data (which was not updated due to non-invalidated local cache)
2018-01-19 10:22:28 +07:00
Tagir Valeev
1aa64e3da2
IDEA-185138 Bytecode purity inference: do not infer method as pure if it reads the volatile field
2018-01-18 17:57:51 +07:00
Tagir Valeev
b414748d24
BytecodeAnalysis: force purity of enum.ordinal() and array.clone()
2018-01-15 16:29:57 +07:00
Maxim.Mossienko
4d165172dd
update testdata to reflect newer mock jdk 1.7
2017-06-13 15:09:42 +02:00
Tagir Valeev
82da560c31
Introduced AggressiveHardCodedPurity under registry key (IDEA-CR-21434)
...
New key = java.annotations.inference.aggressive.hardcoded.purity (true
by default). Implies purity for Object.toString(), Iterable.iterator(),
Iterator.hasNext() and this-changing Iterator.next(). Parameter-changing
mode supported for hardcoded purity.
2017-05-30 17:38:23 +07:00
Tagir Valeev
97eaee737b
BytecodeAnalysis refactoring: HKey and Key merged to EKey; hashing is encapsulated inside HMethod/Method pair
2017-05-30 13:17:05 +07:00
Tagir Valeev
60e8eb5948
PurityAnalysis: Object.toString hardcoded pure
2017-05-29 15:14:46 +07:00
Tagir Valeev
668fcdd985
PurityAnalysis: more native methods hardcoded
2017-05-25 15:22:20 +07:00
Tagir Valeev
5599cc543f
BytecodeAnalysis: infer failing contracts; infer contracts for input boolean arguments; squash inferred contracts; refactoring
2017-05-24 11:49:05 +07:00
Tagir Valeev
871ef095bb
PurityAnalysis: StringBuffer.toString is also hardcoded (used for string concatenation in older java versions)
2017-05-24 10:45:15 +07:00
Tagir Valeev
9f7b27a7cc
BytecodeAnalysisIntegrationTest: expected annotations fixed (somehow these two were missing)
2017-05-18 14:40:57 +07:00
Tagir Valeev
c41245708f
Bytecode analysis: purity inference improvement (also fixes IDEA-172989):
...
1. Lambda/method reference creation is pure
2. String concatenation is pure
3. Constructor which only modifies own fields (calls setters, etc.) is pure
4. Exception creation is pure
5. A few hardcoded native methods
2017-05-18 10:52:53 +07:00
Roman Shevchenko
c1e9f34a41
[java] improves resolve inside .class file
2016-06-06 15:30:39 +03:00
Ilya Klyuchnikov
00712ecdf5
new annotations
2015-12-30 13:22:42 +03:00
Ilya Klyuchnikov
414ec9db35
IDEA-145968: a change in test data
2015-10-12 15:00:23 +03:00
peter
4d76c50f69
add LinkedHashMap to mockJdk7
2015-10-06 15:27:44 +02:00
Ilya Klyuchnikov
7944b7a260
IDEA-145494: reformatting test data
2015-10-05 18:27:37 +03:00
Ilya Klyuchnikov
ac3ee3b425
IDEA-144129: support for inferred negated contracts
2015-09-25 15:01:31 +03:00
peter
e5d728e7a4
don't return inferred annotations that will be neglected anyway (e.g. on overrideable methods)
2014-12-03 17:40:04 +01:00
Ilya Klyuchnikov
2cec677727
Testing Inference of '@Contract(pure=true)' annotations: delta in test data
2014-10-16 08:51:38 +04:00
Ilya Klyuchnikov
582239346e
bytecode analysis: no inference of "true|false->..." contracts
2014-10-01 17:50:41 +04:00
Ilya Klyuchnikov
e0f6567a5d
bytecode analysis: test data delta
...
IDEA-129645
2014-09-25 17:01:49 +04:00
peter
70b03fb0f0
correct bytecode analysis test data
2014-09-16 17:34:57 +02:00
peter
e2ee62224c
display hardcoded contracts on the gutter
2014-09-16 13:50:45 +02:00
Ilya Klyuchnikov
f28955f810
testing new @Nullable annotations
2014-09-01 17:51:25 +04:00
Ilya Klyuchnikov
44f95a9b26
testing inference of @Nullable annotations for parameters
2014-08-25 18:30:43 +04:00
Ilya Klyuchnikov
d4eb76a1c3
bytecode analysis: delta in testdata
2014-08-19 09:04:39 +04:00
Ilya Klyuchnikov
b6b6ea1880
bytecode analysis: lite persistent hashCode for Configuration
...
Also subtle bug with Configuration generalization was fixed - so, update in annotations.xml
2014-07-11 16:05:43 +04:00
Ilya Klyuchnikov
ce6450136f
no contract annotation if method is already @NotNull
2014-07-10 10:35:49 +02:00
Ilya Klyuchnikov
6dd49cb404
update annotations after mockJDK update
2014-07-10 10:35:48 +02:00
Ilya Klyuchnikov
1e54e26b25
simple smoke test that inferred annotations are visible to codeInspection
2014-07-10 10:35:46 +02:00