Ilya Chernikov
a96a938f87
Fix creating of the script definition from legacy template
...
adding classpath needed to load template and related class to the
appropriate host configuration
fixes tests
2019-07-08 13:20:06 +02:00
Ilya Chernikov
4940f64265
Refactor scripting infrastructure - convert usages to the new entities
2019-07-05 17:02:10 +02:00
Vyacheslav Gerasimov
db3b01d2d4
Build: Centralize compiler dist build logic in :kotlin-compiler project
2019-06-27 17:56:48 +03:00
Ilya Chernikov
432d500c40
Fix custom script definition cashing and script validity check:
...
- reorder initialization logic, so that script definitions are
requested only after plugins loading
- clear definitions cache after adding explicit definitions or sources
#KT-32206 fixed
#KT-32169 fixed
Note: any of these modification fix the problem alone, but the second
may prevent other similar problems, while the first fixes actual logic
of the script validity checks as well.
2019-06-26 13:01:39 +02:00
Vyacheslav Gerasimov
5a664a86a8
Build: Fix test runtime for kotlin-scripting-compiler tests
2019-06-14 18:10:24 +03:00
Vyacheslav Gerasimov
0514437fba
Build: Workaround scripting dependencies on full Idea
2019-06-13 21:03:55 +03:00
Ilya Chernikov
e542c9ea84
Refactor script definitions and resolving/refining infrastructure:
...
- implement wrappers to wrap old and new API providers and resolvers
- make old API deprecated (with error where possible)
- drop old internal classes related to the old API
- refactor usages accordingly
- fix and add missing features to the scripting API where necessary
2019-06-06 17:21:00 +02:00
Ilya Chernikov
e95569a273
Report definition-related error diagnostic on the whole script file
...
#KT-31452 fixed
2019-05-31 13:34:17 +02:00
Ilya Chernikov
e7c99cd494
Fix scripting-compiler tests, add them to the global scriptingTest task
2019-05-25 10:10:34 +02:00
Ilya Chernikov
46915df56f
Implement "legacy" REPL wrappers on top of the "new" scripting infrastructure
2019-05-25 10:10:29 +02:00
Ilya Chernikov
89006f16cd
Prepare scripting infrastructure for REPL:
...
- refactor script compiler to simplify extending it for repl
- add repl snippet compilation functions to the new scripting compiler
- extract util functions into appropriate files
- extract repl part into separate class
- extract bridge definition and related definitions into separate file
2019-05-25 10:10:28 +02:00
Ilya Chernikov
a4c049d26e
Replace message collector with reporting lambda
...
to simplify usages and slightly reduce dependencies
2019-05-25 10:10:28 +02:00
Ilya Chernikov
61c1312f1a
Add another method for fetching classpath from classloader, refactor
2019-05-25 10:10:27 +02:00
Natalia Selezneva
ba7d66eb4b
Fix 'Invalid file' Exception during script definition search (EA-125840)
...
EA-125840 - assert: FileManagerImpl.findFile
2019-05-08 15:17:12 +03:00
Dmitry Gridin
37c856290f
Fix minor compile warnings
2019-04-25 19:47:39 +07:00
nikita.movshin
deb416484c
Update copyright. Fix 2 lines comments after rebase
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
2019-04-23 20:15:03 +03:00
nikita.movshin
65244b4bea
Update copyright.
...
Change the copyright from "JetBrains s.r.o." to
"JetBrains s.r.o. and Kotlin Project contributors"
Update only 2 lines copyright.
2019-04-23 20:09:22 +03:00
Dmitry Gridin
3bed360c98
Fix "Should be replaced with Kotlin function" warnings
2019-04-18 15:28:52 +07:00
Ilya Chernikov
ada3edb222
Fix after rebase - adapting to the new idea plugin handling scheme
2019-04-17 22:03:59 +02:00
Ilya Chernikov
7c4efb2772
Disable ScriptingGradleSubplugin if applied in the gradle prior to 5.0
...
Allows to avoid limiting scripting infrastructure to languageVersion 1.2,
since kotlin compiler 1.3+ is bundled with gradle only starting from 5.0
2019-04-17 22:03:59 +02:00
Ilya Chernikov
f688bc5140
Add diagnostics for plugin classpath problems
2019-04-17 22:03:59 +02:00
Ilya Chernikov
64c3bcd9ab
Drop refactored-out frontend.script module
2019-04-17 22:03:58 +02:00
Ilya Chernikov
a65dafc37d
Move scripting support classes to the scripting compiler impl module
2019-04-17 22:03:58 +02:00
Ilya Chernikov
8df829a7cd
Move scripting-compiler-impl definition to another package...
...
to continue merging with the refactoring with further scripting improvements
2019-04-17 22:03:58 +02:00
Ilya Chernikov
f71cc4e480
Drop long deprecated legacy script annotations and resolvers support
2019-04-17 22:03:58 +02:00
Ilya Chernikov
4f135a5fe5
Move REPL implementations to the scripting compiler impl module
2019-04-17 22:03:57 +02:00
Ilya Chernikov
199b32cad7
Merge scripting-impl to scripting-compiler-impl module...
...
to continue merging with the branch with further scripting refactorings
2019-04-17 22:03:57 +02:00
Ilya Chernikov
a82b386d81
Add a new module for scripting compilation infrastructure...
...
add embeddable variant as well
2019-04-17 22:03:57 +02:00
Ilya Chernikov
4625468de7
Expose project environment from core env, to allow usages of plugins...
...
before core env construction. Refactor script evaluation extension to
this scheme.
Plus some refactorings of the logic of script/repl evaluation in K2JVMCompiler
2019-04-17 22:03:57 +02:00
Vyacheslav Gerasimov
92248d609f
Build: Centralize build logic for kotlin-plugin in :prepare:idea-plugin
2019-04-10 17:54:06 +03:00
Vyacheslav Gerasimov
d554b5aafa
Build: Embed projects not published to maven into kotlin-plugin.jar
2019-04-10 17:54:05 +03:00
Ilya Chernikov
3a3ba5bd8d
Fix scripts discovery in IDEA after adding optional marker extension
2019-03-29 15:47:39 +01:00
Ilya Chernikov
99a5885aa7
Fix ScriptingCompilerPluginTest after creating a separate jar with shared plugin code
2019-03-23 09:52:02 +01:00
Ilya Chernikov
c56382a62b
Move common idea and compiler parts of the scripting plugin to the new jar
2019-03-21 12:02:29 +01:00
Ilya Chernikov
fc9a6dec7e
Add optional suffix to the script template markers
...
add suffix to the markers in the repo
#KT-28593 fixed
2019-03-20 21:19:24 +01:00
Ilya Chernikov
e99715cf82
Extract extra imports provision into an extension, implement one ...
...
for script in the plugin, drop direct dependency on scripts from
FileScopeFactory
2019-03-02 08:10:17 +01:00
Ilya Chernikov
57ac149f5b
Extract script cli evaluation to the plugin
2019-03-02 08:10:17 +01:00
Ilya Chernikov
7c3bdde102
Fix sequence of the script definitions search - explicit ones should be tried first
2019-03-02 08:10:16 +01:00
Ilya Chernikov
196e274929
Move calculating dependencies from script sources to plugin
2019-03-02 08:10:16 +01:00
Ilya Chernikov
336f43dbf2
Reorganize files and folders in the scripting plugin
2019-03-02 08:10:16 +01:00
Ilya Chernikov
adb4d264ec
Move script definition extraction functions to the plugin
...
plus finish refactoring of these functions
2019-03-02 08:10:16 +01:00
Vyacheslav Gerasimov
a42f607ecf
Build: Fix artifacts signing for maven central
...
With gradle > 5.0 `publish()` helper call should be done before
`noDefaultJar()` or any other artifact hacks, otherwise singing plugin doesn't sign any jars
2019-02-27 13:21:17 +03:00
Ilya Chernikov
d1a1594f26
Remove redundant direct usages of the ScriptDefinition in compiler
...
plus some refactoring around definition extraction
2019-02-21 15:59:48 +01:00
Ilya Chernikov
cc4aedb807
Move the rest of script descriptor implementation details to plugin, cleanup
2019-02-21 15:59:48 +01:00
Ilya Chernikov
e28017039d
Split scripts and class/object declarations in DeclarationsProvider
...
simplifies code in most places, avoids filtering in places where they
should be processed independently
2019-02-21 15:59:48 +01:00
Ilya Chernikov
a218455193
Extract script descriptor creation to scripting plugin
2019-02-21 15:59:48 +01:00
Ilya Chernikov
c6a24c03e4
Move CliScriptDefinition provider to the plugin too, fix tests
2019-02-10 13:33:22 +01:00
Ilya Chernikov
0732b48701
Move script related configuration to the plugin
2019-02-10 13:31:55 +01:00
Vyacheslav Gerasimov
f58acbeef5
Build: implement useBootstrapStdlib flag
...
Excludes stdlib projects from build and uses bootstrap stdlib artifacts
#KT-29205
2019-01-21 21:09:40 +03:00
Ilya Chernikov
a3217982f7
Fix script filename extension discovery from asm-readed class
...
and improve diagnostics on definition loading failure
2018-12-21 15:44:28 +01:00