Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Compile fixture plugin with kotlin-1.1 and jvm 8

Signed-off-by: Paul Merlin <paul@gradle.com>

  1. … 11 more files in changeset.
Simplify test by renaming task method

  1. … 1 more file in changeset.
Use isolated ClassLoader for Kotlin jars

Due to the lack of isolation between gradle-script-kotlin and the

compiled buildscript(s), referenced Kotlin types could leak into

different ClassLoader scopes causing all sorts of loader constraint

violations. That lack of isolation also meant that only the specific

version of Kotlin shipped with gsk could ever be used.

This commit mitigates these limitations by subverting the ClassLoader

delegation model when Kotlin jars are detected in the buildscript

classpath. In that case, all jars in the script classpath together with

the Kotlin jars are segregated into a ClassLoader that will first try to

load classes locally before delegating to its parent from the

ClassLoader scope hierarchy.

This solution is only a stepping stone and comes with its own set of

limitations, buildscript block and script body cannot exchange Kotlin

library values for one. A better solution will demand more isolation

between gradle-script-kotlin and core.

Resolves #84

Resolves #86

Resolves #25

  1. … 12 more files in changeset.