##// END OF EJS Templates
Move to org.implab.gradle-typescript
Move to org.implab.gradle-typescript

File last commit:

r87:dc13057a3f8d ts-plugin
r87:dc13057a3f8d ts-plugin
Show More
build.gradle
144 lines | 3.5 KiB | text/x-groovy | GroovyLexer
cin
Move to org.implab.gradle-typescript
r87 plugins {
id "org.implab.gradle-typescript" version "1.0-SNAPSHOT"
}
cin
generate package version from mercurial tags
r61 // если версия явно не заданы вычисляем ее из тэга ревизии v.{num}***
// результатом будет версия '{num}.{distance}' где distance - расстояние от
// текущей ревизии до ревизии с тэгом
cin
added markRelease task
r68 def tagDistance = 0;
def isRelease = false;
cin
generate package version from mercurial tags
r61 if (!version) {
cin
added markRelease task
r68
cin
generate package version from mercurial tags
r61 def rev = ["hg", "log", "-r", ".", "--template", "{latesttag('re:^v') % '{tag}-{distance}'}"].execute().text.trim();
def tagVersion;
cin
added markRelease task
r68 def match = (rev =~ /^v(\d+\.\d+\.\d+).*-(\d+)$/);
cin
generate package version from mercurial tags
r61
if (match.size()) {
tagVersion = match[0][1];
tagDistance = match[0][2].toInteger();
} else {
throw new Exception("A version must be specied");
}
cin
added markRelease task
r68 version = tagVersion;
if (tagDistance > 0)
version++;
cin
generate package version from mercurial tags
r61 } else {
println "explicit version: $version";
}
if (hasProperty('versionSuffix') && versionSuffix) {
version += "-$versionSuffix"
cin
split @implab/core into a separate repository
r27 }
cin
repository reorganized
r0
cin
working on multiplaftorm support (node, browser)
r47 if(!npmName)
npmName = name;
cin
added markRelease task
r68 if (hasProperty('release')) {
isRelease = (release != 'false')
} else {
isRelease = (tagDistance == 0);
}
cin
working on support commonjs modules format
r59 if(!["amd", "commonjs", "system", "umd", "es6", "esnext"].contains(jsmodule))
throw new Exception("Invalid jsmodule specified: $jsmodule");
if(!["es3", "es5", "es6", "es2016", "es2017", "esnext"].contains(target))
throw new Exception("Invalid target specified: $target")
cin
working version...
r51
cin
working on support commonjs modules format
r59 def targetLibs = [
cin
Move to org.implab.gradle-typescript
r87 "es3" : ["es5", "es2015.promise", "es2015.symbol", "dom", "scripthost"],
"es5" : ["es5", "es2015.promise", "es2015.symbol", "dom", "scripthost"]
cin
working on support commonjs modules format
r59 ];
cin
repository reorganized
r0
cin
Move to org.implab.gradle-typescript
r87 ext {
packageName = "@$npmScope/$npmName"
}
cin
working version...
r51
def srcDir = "$projectDir/src"
def typingsDir = "$srcDir/typings"
cin
working on support commonjs modules format
r59 def distDir = "$buildDir/dist"
def testDir = "$buildDir/test"
cin
Move to org.implab.gradle-typescript
r87 def jstarget = target;
cin
working on support commonjs modules format
r59
cin
Move to org.implab.gradle-typescript
r87 sources {
cin
working on support commonjs modules format
r59
}
cin
Move to org.implab.gradle-typescript
r87 typescript {
compilerOptions {
lib = targetLibs[target] ?: [target, "dom"]
target = jstarget
module = jsmodule
types = []
cin
working on support commonjs modules format
r59 }
cin
Move to org.implab.gradle-typescript
r87 tsLintCmd = "tslint"
esLintCmd = "eslint"
npmCmd = "npm"
cin
working on support commonjs modules format
r59 }
cin
working on multiplaftorm support (node, browser)
r47
task printVersion {
cin
working on multi-platform support
r48 doLast {
cin
added markRelease task
r68 println "version: $version";
println "isRelease: $isRelease, tagDistance: $tagDistance";
println "packageName: $packageName";
println "bundle: ${pack.outputs.files.join(',')}";
println "target: $target";
println "module: $jsmodule";
cin
working on multi-platform support
r48 }
cin
working on multiplaftorm support (node, browser)
r47 }
cin
improved core/build.gradle script
r4 task clean {
doLast {
delete buildDir
cin
working version...
r51 delete typingsDir
cin
improved core/build.gradle script
r4 }
cin
working on dependencies
r2 }
cin
working on support commonjs modules format
r59 task _initBuild {
mustRunAfter clean
def buildInfoFile = "$buildDir/platform";
inputs.property('target',target);
inputs.property('jsmodule',jsmodule);
outputs.file(buildInfoFile);
doLast {
delete buildDir
mkdir buildDir
def f = new File(buildInfoFile);
f << "$target-$jsmodule";
}
}
cin
Move to org.implab.gradle-typescript
r87 /*
cin
Added support for commonjs module format, all tests are pass.
r60 task _installLocalCjsDependency(dependsOn: [buildTestCjs, "_packageMeta"], type: Exec) {
inputs.file("$distDir/package.json")
outputs.upToDateWhen {
new File("$testDir/$packageName").exists()
}
workingDir testDir
commandLine 'npm', 'install', '--no-save', '--force', distDir
}
cin
Move to org.implab.gradle-typescript
r87 task _test(dependsOn: [buildTest], type: Exec) {
cin
Added support for commonjs module format, all tests are pass.
r60 if (jsmodule == "amd")
dependsOn buildTestAmd
if (jsmodule == "commonjs") {
dependsOn buildTestCjs
dependsOn _installLocalCjsDependency
}
commandLine 'node', "$testDir/run-tests.js"
cin
core/Uuid rewritten in typescript
r8 }
cin
Move to org.implab.gradle-typescript
r87 */
cin
added markRelease task
r68
task markRelease(type: Exec) {
onlyIf { tagDistance > 1 }
commandLine "hg", "tag", "v$version";
cin
repository reorganized
r0 }