Major Enhancements:
- Allow to set
kotlinc
compiler flags with@file:CompilerOpts
or//COMPILER_OPTS
(#84). See here. - Provide a way to package kscripts (#63). See here.
Minor Enhancements:
- Fixed #95:
//INCLUDE
requiring full path - Fixed #94: stdin does not allow further switches
- Allow for round brackets in artifact ids (fixes #100).
- Fixed #83: interactive fails unless your script contains dependencies
- Fixed #82: Sym-linking does not work correctly with --idea and relative script paths
- New: Implemented benchmarking suite to assess runtime impact of
kscript
- Fixed: Don't use null in classpath arguments if classpath is empty
- Fixed: Use
exec
for derived interpreter - Simplify Gradle config for script bootstrapping with IDEA (#86)
- Added Gradle wrapper to the project (#87 and #88)
Major Enhancements:
- Replaced
javac
withkotlinc
for faster script compilation - Added symlink support
- Allow to derive custom DSL interpreters from kscript (fixes #67)
- Implemented
@file:Include
and@EntryPoint
as documented in README (fixes #73) - Added gitter channel
Minor Enhancements:
- Consolidate imports and dependencies when
//INCLUDE
is used (fixes #75) … - Support artifact should have better namespace (fixes #57)
- Fixed #76: Unspecific error when dependency resolution fails
- Fixed #66: It should die more gracefully if
idea
is not present - Fixed #81: Allow package declarations for scripts
- Fixed #78: When using
--idea
the script argument should be symlinked - Fixed #79: Provide setup instructions if idea launcher is missing
- Simplified build instructions (fixes #60)
- Document dependencies of kscript (fixes #69)
- Logging of maven artifact downloads to stderr (fixes #23)
- Added
-s
/--silent
to suppress all logging - Fixed #55: dependency resolution fails on travis ci and within docker containers
- Added alternative
@DependsOnMaven(val artifactId: String)
annotaiton to declare dependencies. This has been implemented to make kscripts compatible with https://github.com/ligee/kotlin-jupyter - Added support for custom maven repositories (fixes #22)
See README.md for usage details.
- support for annotation-driven script configuration
- refactored support api mode into
-t
parameter
- Reimplemented in kotlin (fixes #36)
- Added cygwin support (fixes #39)
- Added
//INCLUDE
directive (fixes #34 - Fixed: interactive mode is not correctly started when using stdin as script argument (#40
- Fixed compatibility with java9 (#41)
- Fixed
--self-update
- More robust self-update on OSses with file-locking (e.g. windows)
- removed
curl
dependency - more streamlined dependency lookup
Major new features
- Redesigned support library for streamlined tabular data processing. See here for an overview.
Major new features
- Dramatically reduced overhead by using dependency lookup cache more efficiently. After the initial scriptlet-jar-building,
kscript
runs with almost zero overhead now (fixes #4) - Dependencies can now declared in multiple lines for better readability (fixes #2)
- Automatic inclusion of support library for one-liners (fixes #19)
- Direct script arguments
kscript 'println("hello kotlin")'
(fixes #18) - More robust dependency resolution with more informative error messages
Support API improvements
- Kotlin DocOpt helpers to build CLIs (example)
- New utilities to automatically resolve arguments files and stdin to
Sequence<String
for by-line processing
Other changes
- Allow dependencies to be declared in multiple lines prefixed by
//DEPS
(fixes #2) - To ensure long-term stability of
kscript
we've added a suite of unit tests. The repository tested continuously by Travis CI - Cache directory is now
~/.kscript
- More heuristics to guess
KOTLIN_HOME
- Cache cleanup
--clear-cache
now applies to jars, scripts, urls, and cached dependency lookups
- Fixed compatibility with Kotlin v1.1 (fixes #15)
- Added
-i
to dump interactive console command incl deps (fixes #10) - Compile jars should go to TEMP (fixes #13)
- started test-suite
- Support for stdin and process substitution as script source. See examples
- versioning and auto-update
- basic command-line help
- Added support for
KOTLIN_OPTS
(see #8) - Added CLI help to
resdeps.kts
- Added option to clear dependency lookup cache:
resdeps.kts --clear-cache
Initial Release