Alexander.Likhachev
a19bd2ed2e
[Build] Migrate most of the build logic from Project.buildDir usage
...
It's going to be deprecated in Gradle 8.3
There's currently no way to pass a `org.gradle.api.provider.Provider` to the JavaExec.systemProperty or Test.systemProperty. There's a workaround using `org.gradle.process.CommandLineArgumentProvider`, but I intentionally don't rework these calls as Gradle is going to allow passing providers to configure system properties: https://github.com/gradle/gradle/issues/12247#issuecomment-1568427242
^KTI-1473 In Progress
2023-12-07 18:31:06 +00:00
Brian Norman
0d36462c58
[Parcelize] Align checker and generator on valid Parcelize classes
...
A previous fix to the generator made the generator and checker
validation of classes which could be parcelized different. The checker
would report error in cases where the generator would not generate
anything. Align these checks, with improved code sharing, so errors are
not reported on classes which will not have parcelize components
generated.
^KT-63086 Fixed
2023-11-08 14:35:28 +00:00
Brian Norman
f8ee8adfde
[Parcelize] Fully expand type aliases when checking for RawValue
...
^KT-61432 Fixed
2023-11-08 12:48:36 +00:00
Kirill Rakhman
87563f3aea
[FIR] Rename diagnostic renderers that insert quotes and fix some messages
...
#KT-62386
2023-10-27 13:27:35 +00:00
Dmitriy Novozhilov
fb8bf19091
[IR] Rename IrSymbolInternals to UnsafeDuringIrConstructionAPI
...
The new name more precisely describes the meaning of this opt-int
2023-10-25 11:32:46 +00:00
vladislav.grechko
897eab6b50
Do not add nullability annotations to the methods of local classes
...
Nullability annotations are useless for the methods of local classes
due to their restricted scope.
^KT-62513: Fixed
2023-10-18 19:48:38 +00:00
Ilya Gulya
f6b2c642c2
Support kotlinx.collections.immutable in kotlin-parcelize plugin
...
#KT-57685 Fixed
Co-authored-by: Ilya Gulya <ilyagulya@gmail.com >
2023-10-02 23:29:43 +00:00
Nikolay Lunyak
986f1624ec
[FIR] Remove jvm-specific annotations from common compiler code
...
^KT-54596 Fixed
2023-09-19 22:14:09 +00:00
Alexander.Likhachev
6eaccc997f
[Build] Fix the typo junit jupyter -> jupiter
2023-09-06 22:47:34 +00:00
Alexander.Likhachev
6f96be0b76
[Build] Get rid of the testApiJUnit5 method
...
#KTI-1349 In Progress
2023-09-06 22:47:34 +00:00
Alexander.Likhachev
53fde520d5
[Build] Add jUnit dependencies in testApiJUnit5 to the implementation configuration
...
Adding these dependencies to the `api` configuration pollutes classpath for each dependant modules even if it doesn't need them. Instead, the dependencies should be declared more granularly if they're required
#KTI-1349 In Progress
2023-09-06 22:47:34 +00:00
Alexander.Likhachev
357d12fc8e
[Build] Move JUnit dependencies into the version catalog
...
The `kotlin-test` dependencies are left untouched as changing them affects publications, thus these versions are independent from the used inside our build
#KTI-1349 In Progress
2023-09-06 22:47:33 +00:00
Vyacheslav Gerasimov
009cda0c60
Build: Make robolectric tests run offline without downloading artifacts
...
#KTI-1367
2023-09-04 08:57:19 +00:00
Kirill Rakhman
de1c92a32f
[FIR] Update diagnostic messages
2023-08-21 16:28:48 +00:00
Kirill Rakhman
5b9c35de2e
[Tests] Update test data with error suppression warnings
...
#KT-61129 Fixed
2023-08-18 13:29:20 +00:00
Ilya Kirillov
bdfc68468f
[FIR] optimize direct allocation of empty ConeTypeProjection arrays
...
On the snapshot from KTIJ-26260 empty ConeTypeProjection arrays take about 10mb
2023-08-18 11:36:42 +00:00
Dmitriy Novozhilov
697d0d5638
[IR] Mark IrSymbol.owner with OptIn annotation
...
^KT-60923 Fixed
2023-08-16 17:47:29 +00:00
Alexander Udalov
755d140e16
Parcelize: do not copy call in ParcelizeIrTransformer
...
This is just a refactoring/optimization that makes use of the fact that
IrCall.symbol and IrFunctionReference.symbol are now mutable.
2023-06-22 17:19:00 +00:00
Sergej Jaskiewicz
0b7db067e6
[IR] Reorder parameters in IrFactory#createField
...
This is to prepare for IrFactory auto-generation (KT-59308).
2023-06-22 15:55:02 +00:00
Brian Norman
b595328192
[Parcelize] Ignore all sealed classes in Parcelize FIR generator
...
Sealed classes are inherently abstract and should not have Parcelable
functions added via the FIR declaration generator.
#KT-59112 Fixed
2023-06-08 12:58:32 +00:00
Alexander Udalov
d757847ed6
JVM: enable -Xlambdas=class for some backend tests
...
These tests are checking the specifics of the class-generated lambdas.
2023-05-12 15:21:00 +00:00
Kirill Rakhman
a818c543a9
[FIR] Verify diagnostic messages don't reference non-existent parameters
2023-04-27 12:54:31 +00:00
Nikolay Lunyak
e3d313dd02
[FIR] Introduce the proper Fir2IrResultsConverter
...
Sometimes when running MPP tests we may
observe js-specific modules running with
the jvm-specific fir2ir converter
(probably because the name didn't contain
the JVM affix).
2023-04-25 11:29:34 +00:00
Roman Golyshev
83f9e0f87e
[213] Add more missing runtime dependencies
...
KTI-1114
2023-04-21 13:19:04 +00:00
Roman Golyshev
ac388010b1
[213] Add missing test runtime dependencies
...
KTI-1114
2023-04-21 13:19:04 +00:00
Nikolay Lunyak
20786bb35a
[FIR] Refactor the default messages presence checking
...
Forbid calling `checkMissingMessages` accidentally
outside tests.
Checking Parcelize default messages inside a test.
2023-04-14 13:07:03 +00:00
Alexander Udalov
163a052f98
Remove old JVM backend implementation of Parcelize
...
There's no way for the end user to use this implementation anymore,
since old JVM backend cannot be enabled, and nothing else from Kotlin
depends on it.
2023-03-13 13:53:08 +01:00
Steven Schäfer
669ac1ae30
Parcelize: Handle nullable sparse arrays
...
Fixes https://issuetracker.google.com/269956252
2023-03-02 12:47:17 +01:00
Kirill Rakhman
9dda5e4fcd
[Test] Remove redundant FIR_DISABLE_LAZY_RESOLVE_CHECKS directives
...
KT-56177
2023-02-28 10:19:18 +00:00
Kirill Rakhman
c9d68f6d3e
[FIR, Parcelize] Fix checkers after primary ctor annotation changes
...
KT-56177
2023-02-28 10:19:17 +00:00
Dmitriy Novozhilov
da581f38e1
[Test] Require specifying parser for FIR test. Unify names for FIR tests
...
Now all tests with `Fir` in name are named accordingly to parser which
is used in them -- `FirPsi` or `FirLightTree`. This is needed to keep
consistency between different types of tests, because there is no
single default in parser mode between different scenarios of using FIR
2023-02-24 11:15:26 +00:00
Dmitriy Novozhilov
41192b022d
[FIR] Pass context to all relevant methods of FirDeclarationGenerationExtension
...
^KT-53470 Fixed
2023-02-10 12:30:14 +00:00
Dmitriy Novozhilov
89c42e20c9
[FIR] Consistently use _function_ instead of _functional_ in names of classes and functions
2023-02-02 08:24:52 +00:00
Dmitriy Novozhilov
c86495dcae
[FIR] Introduce ConeFunctionalTypeKind as a replacement of FunctionClassKind
...
This is needed to provide an ability to extend different kinds of
functional types
Also, cleanup and rename utilities related to functional types to avoid
possible confusions
2023-02-02 08:24:49 +00:00
Dmitriy Novozhilov
125b773205
[FIR] Introduce utility for creating ConeClassLikeLookupTagImpl from ClassId
...
`classId.toLookupTag()` looks much cleaner than `ConeClassLikeLookupTagImpl(classId)`
2023-02-02 08:24:48 +00:00
Dmitriy Novozhilov
36bb418049
[Parcelize] Add test for KT-47074
2023-01-31 07:53:08 +00:00
Ivan Kochurkin
c103da98dd
[FIR] Add missing dependencies to :compiler:fir:checkers:checkers.native
2023-01-24 15:27:12 +00:00
Sergej Jaskiewicz
1f76d39e66
[IR] Make IrTypeArgument a sealed interface
2023-01-20 10:58:28 +00:00
Nikolay Lunyak
23301e3369
[FIR] Remove annotations.any from FirParcelizeAnnotationChecker
2023-01-17 06:26:39 +00:00
Nikolay Lunyak
cf73d59e29
[FIR] Remove FirAnnotation.classId from FirParcelize
...
The same reasoning as with the serialization. If we
decide to support it, we wouldn't need to think
about unexpanded types.
2023-01-17 06:26:35 +00:00
Ilya Kirillov
a55b4a977b
[FIR] refactoring: extract registration of lazy declaration resolve contract checking to a separate function in tests
2023-01-13 15:57:05 +00:00
Ilya Kirillov
747ab5fdb3
[FIR] get rid of FirFrontendFacadeForDiagnosticTests
2023-01-13 15:57:05 +00:00
Ivan Kochurkin
041f9c4700
[Testing] Simplify test functions
2023-01-13 12:55:56 +00:00
Dmitriy Novozhilov
5fedb2f72d
[Parcelize] Use new DSL for generating declarations
2023-01-12 17:45:41 +00:00
Dmitriy Novozhilov
4f3add8f7a
[FIR] Fix resolution of plugin annotations if only meta annotations are registered
2023-01-04 11:02:01 +00:00
Mikhail Glukhikh
0d50f71fb8
K2: expand type aliases in annotation position #KT-55615 Fixed
2023-01-04 10:06:39 +00:00
Alexander Udalov
3c4b5529af
Update year to 2023 in COPYRIGHT_HEADER.txt
...
This commit is the result of changing the year to 2023 in
COPYRIGHT_HEADER.txt and running all `generate*` tasks in
`generators/build.gradle.kts`.
2023-01-02 22:52:15 +01:00
Ilya Kirillov
644d1bf0d0
[FIR] ignore tests which fail because of resolve contracts violation
2022-12-12 16:21:07 +00:00
Ilya Kirillov
7bac119f20
[FIR] add lazy resolution contract checks in resolve
2022-12-12 16:21:06 +00:00
Alexander Udalov
0d8d91f803
Remove unsafe cast function usages from compiler plugins
2022-12-06 19:44:56 +00:00