Merge remote-tracking branch 'origin/main' into renovate/org.jsoup-jsoup-1.x

# Conflicts:
#	code/Global/Global.js
This commit is contained in:
Tobi Schäfer 2025-04-22 21:41:54 +02:00
commit 147bd635fc
Signed by: tobi
GPG key ID: 91FAE6FE2EBAC4C8
5 changed files with 58 additions and 4 deletions

View file

@ -42,6 +42,10 @@ allprojects {
version = distVersion()
configurations {
lessCss
}
dependencies {
implementation 'org.commonmark:commonmark:0.24.0'
implementation 'org.commonmark:commonmark-ext-autolink:0.24.0'
@ -50,7 +54,7 @@ dependencies {
implementation 'org.jsoup:jsoup:1.19.1'
implementation 'rome:rome:1.0'
implementation('org.lesscss:lesscss:1.7.0.1.1') {
lessCss('org.lesscss:lesscss:1.7.0.1.1') {
exclude group: 'org.mozilla', module: 'rhino'
exclude group: 'org.slf4j', module: 'slf4j-api'
exclude group: 'org.slf4j', module: 'slf4j-simple'
@ -319,3 +323,52 @@ tasks.register('distTar', Tar) {
destinationDirectory = file(outputDir)
archiveFileName = outputFile
}
// Task to patch the lesscss JAR file
// This task modifies the lessc-rhino-1.7.0.js file in the JAR to comment out an annoying console.log statement (done)
def patchLessCssJar = tasks.register('patchLessCssJar') {
def name = 'lesscss-1.7.0.1.1'
def targetFile = 'META-INF/lessc-rhino-1.7.0.js' // File to patch
def tempDir = file("${buildDir}/${name}") // Temporary directory for extraction
def patchedJar = file("${buildDir}/${name}-patched.jar") // Output patched JAR
outputs.file patchedJar
doLast {
if (tempDir.exists()) {
tempDir.deleteDir()
}
tempDir.mkdirs()
def jarFile = configurations.lessCss.find {
it.name.contains(name)
}
println "Patching $jarFile…"
ant.unzip(src: jarFile, dest: tempDir)
def targetFilePath = new File(tempDir, targetFile)
def content = targetFilePath.text
content = content.replace('console.log("done")', '// console.log("done")')
targetFilePath.text = content
ant.zip(destfile: patchedJar) {
fileset(dir: tempDir)
}
}
}
// Ensure the patchLessCssJar task runs before the classes task
tasks.named('build').configure {
dependsOn patchLessCssJar
}
// Exclude the original lesscss JAR from the runtime classpath
// and include the patched JAR instead
configurations.runtimeClasspath {
exclude group: 'org.lesscss', module: 'lesscss'
dependencies {
runtimeOnly(patchLessCssJar.map { it.outputs.files })
}
}

View file

@ -23,7 +23,8 @@ String.ELLIPSIS = '…';
app.addRepository(app.dir + '/../lib/jdom-1.0.jar');
app.addRepository(app.dir + '/../lib/jsoup-1.19.1.jar');
app.addRepository(app.dir + '/../lib/lesscss-1.7.0.1.1.jar');
// See the patchLessCssJar task in build.gradle
app.addRepository(app.dir + '/../lib/lesscss-1.7.0.1.1-patched.jar');
app.addRepository(app.dir + '/../lib/rome-1.0.jar');
app.addRepository('modules/core/Global.js');

Binary file not shown.

View file

@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.12.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME

2
gradlew vendored
View file

@ -205,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.