Ilya Chernikov
731df8d3cc
Proper handling of the scripting compiler plugin in JSR-223 with daemon
2019-02-10 13:33:21 +01:00
Ilya Chernikov
4f9e844735
Improve standard libs search logic for script compilation:
...
- refactor appropriate functions to accept optional classloader (not used yet)
- try to load from thread context classloader first
- fallback to marker class classloader in the appropriate function
2019-01-28 13:15:36 +01:00
Ilya Chernikov
95d782b6ca
Implement diagnostics for ignored compiler arguments on script compilation
2019-01-28 13:15:36 +01:00
Ilya Chernikov
7ee9801c5f
Implement additional compiler arguments support in scripts
2019-01-28 13:15:36 +01:00
Ilya Chernikov
298aaf999e
[minor] fix function name typo
2019-01-28 13:15:36 +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
2bb5e8f51f
Implement and use helpers for economical classpath update in script configs
2019-01-18 18:17:45 +01:00
Mikhail Zarechenskiy
d5ebe2e66a
Reorganize dependencies around kotlin-compiler.jar
...
#KT-26807 Fixed
2019-01-11 00:14:23 +03:00
Marcin Moskala
686cfa6fd2
Fix common misspellings
2018-12-21 16:13:42 +03:00
Ilya Chernikov
1e74ab5a62
Implement import test, fix import support in compiler and evaluator
2018-12-20 17:09:19 +01:00
Ilya Chernikov
729ebcac9b
Implement simple "add to compilation" functionality for scripts
...
(incomplete import - scripts added to the compilation but not yet
imported into scope)
Base functionality needed for #KT-27960
2018-12-20 17:09:16 +01:00
Ilya Chernikov
e0a542234f
Add script config refinement before compilation into API
2018-12-13 18:00:10 +01:00
Ilya Gorbunov
a64a76d5fc
Remove experimental coroutines opt-in from build scripts
...
It has no effect in Kotlin 1.3
Only enable coroutines if '-ReleaseCoroutines' is used
2018-11-09 04:00:26 +03:00
Ilya Chernikov
ae0b2405bc
Add ide script settings for sources and accepted location
2018-10-25 13:09:34 +02:00
Ilya Chernikov
492abd08bc
Fix bridge resolver behaviour on static dependencies
2018-10-25 13:09:32 +02:00
Ilya Chernikov
dd28d55c7d
Implement proper JDK home passing logic for scripts, deprecating old one
...
KT-27497 fixed, as well as failing tests on TC
2018-10-22 09:48:49 +02:00
Ilya Chernikov
7fbfad814e
Fix default host configuration property - make it not shared:
...
Shared instance is incorrect here and causes clashes when many
definitions are loaded in the same process.
Also make the diagnostics in case of clashes more verbose.
2018-10-10 10:53:57 +02:00
Dmitry Petrov
0191e3d1cf
Migrate to release coroutines
2018-09-27 21:59:31 +03:00
Ilya Chernikov
d760299dc1
Implement context classpath extraction using particular class,...
...
Use it in the main-kts.
Also improve diagnoistics related to the definition loading.
#KT-26828 fixed (after this commit - finally, see also another related commit)
2018-09-15 15:44:53 +02:00
Ilya Chernikov
d9760f00f6
Move context classpath utils from script-util to scripting-jvm
...
since it is the right place to have it in the new structure.
Solves the problem that script-util classes not found then script
definition with context classpath is loaded by the scripting compiler
plugin, since script-util is not packed into embeddable plugin.
The old context utils are deprecated and in fact wrap the new utils.
#KT-26828 fixed (in fact - partially, see another related commit)
2018-09-15 15:43:53 +02:00
Ilya Chernikov
836ea28fe7
Renaming remaining former "environment"-related identifiers
2018-09-06 19:17:44 +02:00
Ilya Chernikov
67ba8b5361
Rename ScriptSource to SourceCode, extract location to another i-face...
...
other related refactorings. The goal - make interface terminologically
more suitable for usage in REPL.
2018-09-06 19:17:43 +02:00
Ilya Chernikov
539e0f4961
[minor] switch to project dependencies in scripting projects
2018-09-06 19:17:43 +02:00
Ilya Chernikov
01eca8bac8
Clean up properties collection
2018-08-23 09:51:53 +03:00
Ilya Chernikov
c2e6c0ed49
Rename ScriptingEnvironment to ScriptingHostConfiguration
2018-08-23 09:51:53 +03:00
Ilya Chernikov
2fe5f78921
Rename ScriptEvaluationEnvironment into ScriptEvaluationConfiguration
2018-08-23 09:51:53 +03:00
Ilya Chernikov
bb22dadc1e
Rearrange compilation related API
2018-08-23 09:51:53 +03:00
Ilya Chernikov
bd8f2a81e9
Rename ScriptDefinition to ScriptCompileConfiguration
2018-08-23 09:51:53 +03:00
Ilya Chernikov
acb0f6c6a9
Remove ScriptCompileConfiguration as separate entity, refactor pieces accordingly
2018-08-23 09:51:53 +03:00
Ilya Chernikov
2bf458d970
Drop unused files from removed project
2018-08-23 09:51:53 +03:00
Ilya Chernikov
ab63d59a56
Refactor definition keys
2018-08-23 09:51:53 +03:00
Ilya Chernikov
04ffe7754e
Refactoring properties collection after review
2018-08-23 09:51:53 +03:00
Ilya Chernikov
74f8a541c0
Grand refactoring of the scripting DSL + many minor usability refactorings around it
2018-08-23 09:51:53 +03:00
Ilya Chernikov
70ec004aaa
Sorting default jvm props and basic implementations
2018-08-23 09:51:53 +03:00
Ilya Chernikov
dafbd59707
Add shorter aliases for properties
2018-08-23 09:51:53 +03:00
Ilya Chernikov
df870b47b8
Add helpers for jvm dependencies from context
2018-08-23 09:51:53 +03:00
Ilya Chernikov
100b908a94
Add properties builders to the dsl, implement a builder for refineConfiguration
2018-08-23 09:51:53 +03:00
Ilya Chernikov
7a621405ae
Add generic properties builder dsl, convert maven example to it
2018-08-23 09:51:53 +03:00
Ilya Chernikov
d0ed86c11c
Add REPL interfaces to scripting API
2018-08-23 09:51:53 +03:00
Ilya Chernikov
5ca4a21edf
Convert evaluator interface to function
2018-08-23 09:51:53 +03:00
Ilya Chernikov
9b7eeebaaa
Convert compiler interface to function
2018-08-23 09:51:53 +03:00
Ilya Chernikov
cf2162c445
Refactor properties
2018-08-23 09:51:53 +03:00
Ilya Chernikov
904917c194
Make script definition a property bag directly
2018-08-23 09:51:53 +03:00
Ilya Chernikov
91e6c0b77c
Remove evaluator from script definition, simplify interface
2018-08-23 09:51:53 +03:00
Ilya Chernikov
e61ba1fd70
Replace dedicated configurator with definition properties + refine fun
2018-08-23 09:51:53 +03:00
Ilya Chernikov
a54675abe7
Clean and fix new scripting API
2018-08-23 09:51:53 +03:00
Ilya Chernikov
befa94689a
Return script instance from the evaluation in the basic jvm evaluator
2018-07-10 08:43:50 +02:00
Ilya Chernikov
bacc2079ed
Fix/workaround lazy lcript definition test and related scenarios
2018-05-28 22:10:56 +02:00
Ilya Chernikov
6fdb8746de
Fixes after review
2018-05-28 22:10:56 +02:00
Ilya Chernikov
a46dd5b30e
Avoid using reflected types in the scripting API
...
since it causes numerous classloading issues. Using the wrapping types
and reload them in the proper context when needed.
Note: this version supports only classes, but the wrapping type could
be extended to support other types in the future.
+ numerous fixes related to proper loading and handling of the templates.
2018-05-28 22:10:56 +02:00