Skip to content

Commit b676627

Browse files
authored
Update SDK to 2025.1 (#125)
* Update SDK to 2025.1-eap02 * Refactor TemplateParameterNameAttributeProvider usage to Lazy initialization * Update SDK version to 2025.1.0 and refactor string manipulation in TemplateIsNotCompileTimeConstantFix * Update IntelliJ plugin version to 1.17.4 and upgrade Gradle to 8.13 * Upgrade Gradle wrapper to version 8.13 * Update IntelliJ plugin version to 2.5.0 and refactor build.gradle for improved structure * Refactor build.gradle to use rider() for IntelliJ platform dependency
1 parent d4b835a commit b676627

20 files changed

+183
-140
lines changed

.nuke/build.schema.json

Lines changed: 70 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,53 @@
11
{
22
"$schema": "http://json-schema.org/draft-04/schema#",
3-
"$ref": "#/definitions/build",
4-
"title": "Build Schema",
53
"definitions": {
6-
"build": {
7-
"type": "object",
4+
"Host": {
5+
"type": "string",
6+
"enum": [
7+
"AppVeyor",
8+
"AzurePipelines",
9+
"Bamboo",
10+
"Bitbucket",
11+
"Bitrise",
12+
"GitHubActions",
13+
"GitLab",
14+
"Jenkins",
15+
"Rider",
16+
"SpaceAutomation",
17+
"TeamCity",
18+
"Terminal",
19+
"TravisCI",
20+
"VisualStudio",
21+
"VSCode"
22+
]
23+
},
24+
"ExecutableTarget": {
25+
"type": "string",
26+
"enum": [
27+
"Clean",
28+
"Compile",
29+
"Pack",
30+
"PackRiderPlugin",
31+
"Sonar",
32+
"SonarBegin",
33+
"Test",
34+
"UpdateBuildVersion",
35+
"UploadReSharperArtifact",
36+
"UploadRiderArtifact"
37+
]
38+
},
39+
"Verbosity": {
40+
"type": "string",
41+
"description": "",
42+
"enum": [
43+
"Verbose",
44+
"Normal",
45+
"Minimal",
46+
"Quiet"
47+
]
48+
},
49+
"NukeBuild": {
850
"properties": {
9-
"Configuration": {
10-
"type": "string"
11-
},
1251
"Continue": {
1352
"type": "boolean",
1453
"description": "Indicates to continue a previously failed build attempt"
@@ -18,28 +57,8 @@
1857
"description": "Shows the help text for this build assembly"
1958
},
2059
"Host": {
21-
"type": "string",
2260
"description": "Host for execution. Default is 'automatic'",
23-
"enum": [
24-
"AppVeyor",
25-
"AzurePipelines",
26-
"Bamboo",
27-
"Bitbucket",
28-
"Bitrise",
29-
"GitHubActions",
30-
"GitLab",
31-
"Jenkins",
32-
"Rider",
33-
"SpaceAutomation",
34-
"TeamCity",
35-
"Terminal",
36-
"TravisCI",
37-
"VisualStudio",
38-
"VSCode"
39-
]
40-
},
41-
"IsRiderHost": {
42-
"type": "boolean"
61+
"$ref": "#/definitions/Host"
4362
},
4463
"NoLogo": {
4564
"type": "boolean",
@@ -68,55 +87,40 @@
6887
"type": "array",
6988
"description": "List of targets to be skipped. Empty list skips all dependencies",
7089
"items": {
71-
"type": "string",
72-
"enum": [
73-
"Clean",
74-
"Compile",
75-
"Pack",
76-
"PackRiderPlugin",
77-
"Sonar",
78-
"SonarBegin",
79-
"Test",
80-
"UpdateBuildVersion",
81-
"UploadReSharperArtifact",
82-
"UploadRiderArtifact"
83-
]
90+
"$ref": "#/definitions/ExecutableTarget"
8491
}
8592
},
86-
"Solution": {
87-
"type": "string",
88-
"description": "Path to a solution file that is automatically loaded"
89-
},
9093
"Target": {
9194
"type": "array",
9295
"description": "List of targets to be invoked. Default is '{default_target}'",
9396
"items": {
94-
"type": "string",
95-
"enum": [
96-
"Clean",
97-
"Compile",
98-
"Pack",
99-
"PackRiderPlugin",
100-
"Sonar",
101-
"SonarBegin",
102-
"Test",
103-
"UpdateBuildVersion",
104-
"UploadReSharperArtifact",
105-
"UploadRiderArtifact"
106-
]
97+
"$ref": "#/definitions/ExecutableTarget"
10798
}
10899
},
109100
"Verbosity": {
110-
"type": "string",
111101
"description": "Logging verbosity during build execution. Default is 'Normal'",
112-
"enum": [
113-
"Minimal",
114-
"Normal",
115-
"Quiet",
116-
"Verbose"
117-
]
102+
"$ref": "#/definitions/Verbosity"
103+
}
104+
}
105+
}
106+
},
107+
"allOf": [
108+
{
109+
"properties": {
110+
"Configuration": {
111+
"type": "string"
112+
},
113+
"IsRiderHost": {
114+
"type": "boolean"
115+
},
116+
"Solution": {
117+
"type": "string",
118+
"description": "Path to a solution file that is automatically loaded"
118119
}
119120
}
121+
},
122+
{
123+
"$ref": "#/definitions/NukeBuild"
120124
}
121-
}
125+
]
122126
}

Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
44
<PropertyGroup>
5-
<SdkVersion>2024.3.0</SdkVersion>
5+
<SdkVersion>2025.1.0</SdkVersion>
66
</PropertyGroup>
77
<!-- https://jetbrains.slack.com/archives/CBZ36NH7C/p1628090127002200 -->
88
<PropertyGroup>

build.gradle

Lines changed: 38 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,69 @@
11
plugins {
2-
id 'org.jetbrains.kotlin.jvm' version '2.1.20'
3-
id 'org.jetbrains.intellij' version '1.15.0'
2+
id 'org.jetbrains.kotlin.jvm' version '2.1.10'
3+
id 'org.jetbrains.intellij.platform' version '2.5.0'
44
}
55

66
buildDir = 'gradle-build'
77
version = ext.PluginVersion
88

99
compileKotlin {
10-
kotlinOptions { jvmTarget = "17" }
11-
}
12-
13-
intellij {
14-
type = 'RD'
15-
version = "${ProductVersion}"
16-
downloadSources = false
17-
instrumentCode = false
10+
kotlinOptions {
11+
jvmTarget = "17"
12+
}
1813
}
1914

2015
sourceSets {
2116
main {
22-
java.srcDir 'src/rider/main/kotlin'
17+
java.srcDir 'src/rider/main/kotlin'
2318
resources.srcDir 'src/rider/main/resources'
2419
}
2520
}
2621

2722
repositories {
28-
maven { url 'https://cache-redirector.jetbrains.com/intellij-repository/snapshots' }
29-
maven { url 'https://cache-redirector.jetbrains.com/maven-central' }
23+
mavenCentral()
24+
intellijPlatform {
25+
defaultRepositories()
26+
jetbrainsRuntime()
27+
}
28+
}
29+
30+
dependencies {
31+
intellijPlatform {
32+
rider(ProductVersion, false)
33+
jetbrainsRuntime()
34+
}
35+
}
36+
37+
intellijPlatform {
38+
pluginConfiguration {
39+
name = rootProject.name
40+
}
3041
}
3142

3243
prepareSandbox {
3344
def dotNetFiles = [
34-
"${DotNetOutputDirectory}/${DotNetProjectName}.dll",
35-
"${DotNetOutputDirectory}/${DotNetProjectName}.pdb",
45+
"${DotNetOutputDirectory}/${DotNetProjectName}.dll",
46+
"${DotNetOutputDirectory}/${DotNetProjectName}.pdb",
3647
]
3748

38-
dotNetFiles.forEach({ f ->
49+
dotNetFiles.forEach { f ->
3950
def file = file(f)
40-
from(file, { into "${rootProject.name}/dotnet" })
41-
})
51+
from(file) {
52+
into "${rootProject.name}/dotnet"
53+
}
54+
}
4255

4356
doLast {
44-
dotNetFiles.forEach({ f ->
45-
def file = file(f)
46-
if (!file.exists()) throw new RuntimeException("File ${file} does not exist")
47-
})
57+
dotNetFiles.forEach { f ->
58+
if (!file(f).exists()) {
59+
throw new RuntimeException("File $f does not exist")
60+
}
61+
}
4862
}
4963
}
5064

5165
wrapper {
52-
gradleVersion = '8.2.1'
66+
gradleVersion = '8.13'
5367
distributionType = Wrapper.DistributionType.ALL
54-
distributionUrl = "https://cache-redirector.jetbrains.com/services.gradle.org/distributions/gradle-${gradleVersion}-all.zip"
68+
distributionUrl = "https://cache-redirector.jetbrains.com/services.gradle.org/distributions/gradle-${gradleVersion}-all.zip"
5569
}

build/Build.cs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
using Nuke.Common.Tools.NUnit;
1212
using Nuke.Common.Tools.SonarScanner;
1313

14-
using static Nuke.Common.IO.FileSystemTasks;
1514
using static Nuke.Common.EnvironmentInfo;
1615
using static Nuke.Common.Tools.NUnit.NUnitTasks;
1716
using static Nuke.Common.Tools.DotNet.DotNetTasks;
@@ -160,7 +159,7 @@ protected override void OnBuildInitialized()
160159
Serilog.Log.Debug(s);
161160
});
162161

163-
CopyFile(RootDirectory / "gradle-build" / "distributions" / $"rider-structured-logging-{ExtensionVersion}.zip", RiderPackagePath, FileExistsPolicy.Overwrite);
162+
(RootDirectory / "gradle-build" / "distributions" / $"rider-structured-logging-{ExtensionVersion}.zip").Copy(RiderPackagePath, ExistsPolicy.FileOverwrite);
164163
});
165164

166165
Target SonarBegin => _ => _

build/_build.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
</PropertyGroup>
1212

1313
<ItemGroup>
14-
<PackageReference Include="Nuke.Common" Version="9.0.3" />
14+
<PackageReference Include="Nuke.Common" Version="9.0.4" />
1515
</ItemGroup>
1616

1717
<ItemGroup>

gradle/wrapper/gradle-wrapper.jar

3.47 KB
Binary file not shown.
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://cache-redirector.jetbrains.com/services.gradle.org/distributions/gradle-8.2.1-all.zip
3+
distributionUrl=https\://cache-redirector.jetbrains.com/services.gradle.org/distributions/gradle-8.13-all.zip
4+
networkTimeout=10000
5+
validateDistributionUrl=true
46
zipStoreBase=GRADLE_USER_HOME
57
zipStorePath=wrapper/dists

gradlew

Lines changed: 22 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@
5555
# Darwin, MinGW, and NonStop.
5656
#
5757
# (3) This script is generated from the Groovy template
58-
# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
58+
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
5959
# within the Gradle project.
6060
#
6161
# You can find Gradle at https://github.com/gradle/gradle/.
@@ -80,13 +80,10 @@ do
8080
esac
8181
done
8282

83-
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
84-
85-
APP_NAME="Gradle"
83+
# This is normally unused
84+
# shellcheck disable=SC2034
8685
APP_BASE_NAME=${0##*/}
87-
88-
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
89-
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
86+
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
9087

9188
# Use the maximum available, or set MAX_FD != -1 to use that value.
9289
MAX_FD=maximum
@@ -133,22 +130,29 @@ location of your Java installation."
133130
fi
134131
else
135132
JAVACMD=java
136-
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
133+
if ! command -v java >/dev/null 2>&1
134+
then
135+
die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
137136
138137
Please set the JAVA_HOME variable in your environment to match the
139138
location of your Java installation."
139+
fi
140140
fi
141141

142142
# Increase the maximum file descriptors if we can.
143143
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
144144
case $MAX_FD in #(
145145
max*)
146+
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
147+
# shellcheck disable=SC3045
146148
MAX_FD=$( ulimit -H -n ) ||
147149
warn "Could not query maximum file descriptor limit"
148150
esac
149151
case $MAX_FD in #(
150152
'' | soft) :;; #(
151153
*)
154+
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
155+
# shellcheck disable=SC3045
152156
ulimit -n "$MAX_FD" ||
153157
warn "Could not set maximum file descriptor limit to $MAX_FD"
154158
esac
@@ -193,6 +197,10 @@ if "$cygwin" || "$msys" ; then
193197
done
194198
fi
195199

200+
201+
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
202+
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
203+
196204
# Collect all arguments for the java command;
197205
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
198206
# shell script including quotes and variable substitutions, so put them in
@@ -205,6 +213,12 @@ set -- \
205213
org.gradle.wrapper.GradleWrapperMain \
206214
"$@"
207215

216+
# Stop when "xargs" is not available.
217+
if ! command -v xargs >/dev/null 2>&1
218+
then
219+
die "xargs is not available"
220+
fi
221+
208222
# Use "xargs" to parse quoted args.
209223
#
210224
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.

0 commit comments

Comments
 (0)