Commit Graph

2856 Commits

Author SHA1 Message Date
Dmitry Gridin ac83d5fcbc Revert "Revert "[light classes] drop old light classes and backend: iteration #7""
This reverts commit d1cde22254.
2022-06-28 17:57:33 +02:00
Dmitry Gridin 9dcc92e394 Revert "Revert "[light classes] drop old light classes and backend: iteration #6""
This reverts commit 8db53c0ca7.
2022-06-28 17:57:32 +02:00
Dmitry Gridin 4d43312cfe Revert "Revert "[light classes] drop old light classes and backend: iteration #5""
This reverts commit 8f7969549b.
2022-06-28 17:57:31 +02:00
Dmitry Gridin 2eaea66a0c Revert "Revert "[light classes] drop old light classes and backend: iteration #4""
This reverts commit 3d9a58627f.
2022-06-28 17:57:31 +02:00
Dmitry Gridin ce183a8eeb Revert "Revert "[light classes] drop old light classes and backend: iteration #3""
This reverts commit 074dd1c19d.
2022-06-28 17:57:30 +02:00
Dmitry Gridin dd824aacb6 Revert "Revert "[light classes] drop old light classes and backend: iteration #2""
This reverts commit 43b4df74bc.
2022-06-28 17:57:30 +02:00
Dmitry Gridin f10c5c28a5 Revert "Revert "[light classes] drop old light classes and backend: iteration #1""
This reverts commit 57de064251.
2022-06-28 17:57:29 +02:00
Mikhael Bogdanov 8f60f73207 JvmDefault. Add deprecation warning for '-Xjvm-default=enable|compatibility' options
#KT-46329
2022-06-28 14:11:49 +02:00
Dmitry Gridin 57de064251 Revert "[light classes] drop old light classes and backend: iteration #1"
This reverts commit 3cb2df9360.
2022-06-28 13:52:11 +02:00
Dmitry Gridin 43b4df74bc Revert "[light classes] drop old light classes and backend: iteration #2"
This reverts commit 97ce502cbe.
2022-06-28 13:52:10 +02:00
Dmitry Gridin 074dd1c19d Revert "[light classes] drop old light classes and backend: iteration #3"
This reverts commit 3c711d42b3.
2022-06-28 13:52:10 +02:00
Dmitry Gridin 3d9a58627f Revert "[light classes] drop old light classes and backend: iteration #4"
This reverts commit 9d1fe58f9d.
2022-06-28 13:52:09 +02:00
Dmitry Gridin 8f7969549b Revert "[light classes] drop old light classes and backend: iteration #5"
This reverts commit fa77c618bd.
2022-06-28 13:52:09 +02:00
Dmitry Gridin 8db53c0ca7 Revert "[light classes] drop old light classes and backend: iteration #6"
This reverts commit 8aeda37d2e.
2022-06-28 13:52:08 +02:00
Dmitry Gridin d1cde22254 Revert "[light classes] drop old light classes and backend: iteration #7"
This reverts commit 545a316241.
2022-06-28 13:52:08 +02:00
Dmitry Gridin 91fa6af556 Revert "[light classes] drop old light classes and backend: iteration #8"
This reverts commit 0df6ac688a.
2022-06-28 13:52:08 +02:00
Dmitry Gridin 38c623bc3a Revert "[light classes] drop old light classes and backend: iteration #9"
This reverts commit 38378309b1.
2022-06-28 13:52:07 +02:00
Dmitry Gridin 4b3e48dc47 Revert "[light classes] drop old light classes and backend: iteration #10"
This reverts commit 10e8d4befa.
2022-06-28 13:52:07 +02:00
Dmitry Gridin 357e15085e Revert "[light classes] drop old light classes and backend: iteration #11"
This reverts commit 9d81a4abea.
2022-06-28 13:52:06 +02:00
Dmitry Gridin 732a08f0df Revert "[light classes] drop old light classes and backend: iteration #12"
This reverts commit 36d1eef6fe.
2022-06-28 13:52:06 +02:00
Dmitry Gridin 36d1eef6fe [light classes] drop old light classes and backend: iteration #12
drop LightClassDataHolder

^KT-48773
2022-06-28 11:44:46 +00:00
Dmitry Gridin 9d81a4abea [light classes] drop old light classes and backend: iteration #11
drop redundant builder for scripts

^KT-48773
2022-06-28 11:44:45 +00:00
Dmitry Gridin 10e8d4befa [light classes] drop old light classes and backend: iteration #10
add missing is InvalidLightClassDataHolder check

^KT-48773
2022-06-28 11:44:45 +00:00
Dmitry Gridin 38378309b1 [light classes] drop old light classes and backend: iteration #9
drop KotlinExtraDiagnosticsProvider

^KT-48773
2022-06-28 11:44:44 +00:00
Dmitry Gridin 0df6ac688a [light classes] drop old light classes and backend: iteration #8
reduce usages of KotlinTypeMapper

^KT-48773
2022-06-28 11:44:43 +00:00
Dmitry Gridin 545a316241 [light classes] drop old light classes and backend: iteration #7
drop StubComputationTracker

^KT-48773
2022-06-28 11:44:43 +00:00
Dmitry Gridin 8aeda37d2e [light classes] drop old light classes and backend: iteration #6
move light class builder to cli and drop MemberIndex

^KT-48773
2022-06-28 11:44:42 +00:00
Dmitry Gridin fa77c618bd [light classes] drop old light classes and backend: iteration #5
drop LightClassDataHolder from LightClassGenerationSupport

^KT-48773
2022-06-28 11:44:41 +00:00
Dmitry Gridin 9d1fe58f9d [light classes] drop old light classes and backend: iteration #4
move LightClassDataProvider to cli

^KT-48773
2022-06-28 11:44:41 +00:00
Dmitry Gridin 3c711d42b3 [light classes] drop old light classes and backend: iteration #3
introduce KotlinExtraDiagnosticsProvider

^KT-48773
2022-06-28 11:44:40 +00:00
Dmitry Gridin 97ce502cbe [light classes] drop old light classes and backend: iteration #2
drop javaFileStub and fix tests

^KT-48773
2022-06-28 11:44:39 +00:00
Dmitry Gridin 3cb2df9360 [light classes] drop old light classes and backend: iteration #1
drop clsDelegate and related

^KT-48773
2022-06-28 11:44:38 +00:00
Jinseong Jeon 911963bafd CLI: utilize JRT path split (w/o magic number) 2022-06-21 11:34:09 +02:00
Mikhael Bogdanov 41d6f0dca4 Remove ir.tree.impl from build 2022-06-20 11:42:52 +00:00
Simon Ogorodnik b7a215334e KT-52409 Report error when using K2 with multi-platform 2022-06-20 10:39:25 +00:00
Alexander Udalov 2a9fd47755 Minor, update JVM target versions in -Xjdk-release help 2022-06-17 10:40:35 +00:00
Ilya Chernikov c2316ca305 Scripting: avoid definitions discovery when compiling regular kotlin
If only regular kotlin .kt (and .java) files are compiled, do not
register file extensions that may come from discovered script
definitions. Since the discovery is lazy by itself, this should
skip jars processing for regular compilation scenarios without scripts.
#KT-47816 fixed
2022-06-16 21:28:07 +00:00
Ilya Chernikov 5caf2a2aca Scripting: refactor plugin command line processing
- process command line properly when plugin is autoloaded
- add and fix options to disable definitions autoloading and discovery
- cleanup unused code
(partial test is added to "avoid definitions discovery" commit)
2022-06-16 21:28:07 +00:00
Ilya Chernikov a8c4ea04c8 Scripting: add check for 'kotlin' package similar to the regular sources
#KT-52598 fixed
2022-06-16 21:28:06 +00:00
Ilya Chernikov 855059b93c Scripting: update scripts in source roots handling
#KT-52525 fixed
related to #KT-52735
2022-06-16 21:28:06 +00:00
Ilya Chernikov bffe94e48a minor: simplify dependencies of setIdeaIoUseFallback
since kotlin needs now jvm 8 or above, we can drop the checks
2022-06-16 21:28:05 +00:00
Ilya Chernikov 597677dae3 Scripting: refactor history handling in legacy REPL using new infra
#KT-47187 fixed
2022-06-16 21:28:03 +00:00
Ilya Chernikov 92bf260057 Scripting: Implement conditional conversion for REPL result values
to support value types erased from runtime classes. See example
in added tests for motivation.
#KT-45065 fixed
also refactor launcher repl test and result type rendering
2022-06-16 21:28:03 +00:00
Ilya Chernikov b36d1be5f8 Scripting: switch legacy CLI REPL to the new infrastructure 2022-06-16 21:28:02 +00:00
Sergej Jaskiewicz 53233c487e [JS] Factor out source map path rewriting 2022-06-16 10:02:05 +00:00
Sergej Jaskiewicz 0320d49ddc [JS IR] Generate sourcemaps for JS IR tests 2022-06-16 10:02:04 +00:00
Alexander Korepanov 9e780afdca [JS IR] Rework incremental cache invalidation
Replace loading the whole world IR with loading only exported (reachable) IR.

 For that purpose the direct and inverse dependency graph is used.
 It is stored in a cache directory and the cache updater keeps it up to date.
 If after loading it is found that other files must be also implicitly rebuilt
 (see rebuilt reasons below), IR for that files also will be loaded.
 This algorithm repeats until the number of implicitly rebuilt files is not 0.

 More rebuilt reasons (dirty state) have been added:
  - added file: this is a new file;
  - modified ir: ir of the file has been updated;
  - updated exports: exports from the file have been added or removed
    (e.g. a function has been used from another file);
  - updated inline imports: imported inline function has been modified
    (transitively);
  - removed inverse depends: a dependent file has been removed;
  - removed direct depends: a dependency file has been removed;
  - removed file: this file has been removed.

 Incremental cache tests has been refactored:
  - The supporting of all rebuilt reasons (dirty states) has been added;
  - New file name format "*.$suffix.kt" for the test steps has been allowed,
    so the syntax highlight works now;
  - Explicit stdlib dependency usage has been removed.
2022-06-13 20:04:05 +00:00
Jinseong Jeon 2eab61d75f FIR CLI: remove redundant cast and run 2022-06-13 18:41:17 +02:00
Jinseong Jeon d2663cfb94 FIR CLI: fix typos in contentRootToVirtualFile util 2022-06-13 18:41:17 +02:00
Alexander Udalov ec9d929532 Remove dependency of fir2ir:jvm-backend on backend.jvm.entrypoint
Extract JvmIrDeserializer(Impl), similarly to the existing
JvmIrSerializer(Impl). Remove `allowErrorNodes` which is always false
anyway.
2022-06-13 12:35:51 +00:00