Skip to content

Commit 979e0a4

Browse files
committed
add sp25 and upgrade versions
1 parent 53f9e1e commit 979e0a4

File tree

4 files changed

+274
-17
lines changed

4 files changed

+274
-17
lines changed

.github/workflows/build.yml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -42,18 +42,18 @@ jobs:
4242

4343
# Check out current repository
4444
- name: Fetch Sources
45-
uses: actions/checkout@v3
45+
uses: actions/checkout@v4
4646

4747
# Validate wrapper
4848
- name: Gradle Wrapper Validation
49-
uses: gradle/wrapper-validation-action@v1.0.4
49+
uses: gradle/wrapper-validation-action@v3
5050

51-
# Setup Java 11 environment for the next steps
51+
# Setup Java 17 environment for the next steps
5252
- name: Setup Java
53-
uses: actions/setup-java@v3
53+
uses: actions/setup-java@v4
5454
with:
5555
distribution: zulu
56-
java-version: 11
56+
java-version: 17
5757

5858
# Set environment variables
5959
- name: Export Properties
@@ -82,14 +82,14 @@ jobs:
8282
# Collect Tests Result of failed tests
8383
- name: Collect Tests Result
8484
if: ${{ failure() }}
85-
uses: actions/upload-artifact@v3
85+
uses: actions/upload-artifact@v4
8686
with:
8787
name: tests-result
8888
path: ${{ github.workspace }}/build/reports/tests
8989

9090
# Cache Plugin Verifier IDEs
9191
- name: Setup Plugin Verifier IDEs Cache
92-
uses: actions/cache@v3
92+
uses: actions/cache@v4
9393
with:
9494
path: ${{ steps.properties.outputs.pluginVerifierHomeDir }}/ides
9595
key: plugin-verifier-${{ hashFiles('build/listProductsReleases.txt') }}
@@ -103,7 +103,7 @@ jobs:
103103
# Collect Plugin Verifier Result
104104
- name: Collect Plugin Verifier Result
105105
if: ${{ always() }}
106-
uses: actions/upload-artifact@v3
106+
uses: actions/upload-artifact@v4
107107
with:
108108
name: pluginVerifier-result
109109
path: ${{ github.workspace }}/build/reports/pluginVerifier
@@ -121,7 +121,7 @@ jobs:
121121
122122
# Store already-built plugin as an artifact for downloading
123123
- name: Upload artifact
124-
uses: actions/upload-artifact@v3
124+
uses: actions/upload-artifact@v4
125125
with:
126126
name: ${{ steps.artifact.outputs.filename }}
127127
path: ./build/distributions/content/*/*
@@ -139,7 +139,7 @@ jobs:
139139

140140
# Check out current repository
141141
- name: Fetch Sources
142-
uses: actions/checkout@v3
142+
uses: actions/checkout@v4
143143

144144
# Remove old release drafts by using the curl request for the available releases with draft flag
145145
- name: Remove Old Release Drafts

.github/workflows/release.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,12 @@ jobs:
2323
with:
2424
ref: ${{ github.event.release.tag_name }}
2525

26-
# Setup Java 11 environment for the next steps
26+
# Setup Java 17 environment for the next steps
2727
- name: Setup Java
28-
uses: actions/setup-java@v3
28+
uses: actions/setup-java@v4
2929
with:
3030
distribution: zulu
31-
java-version: 11
31+
java-version: 17
3232

3333
# Set environment variables
3434
- name: Export Properties

gradle.properties

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,29 @@
33
pluginGroup = edu.berkeley.cs61b.plugin
44
pluginName = CS 61B
55
# SemVer format -> https://semver.org
6-
pluginVersion = 2.0.15
6+
pluginVersion = 2.0.16
77

88
# Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html
9-
pluginSinceBuild = 213
9+
pluginSinceBuild = 233
10+
pluginUntilBuild = 242.*
1011

1112
# IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#intellij-extension
1213
platformType = IC
13-
platformVersion = 2024.2.1
14+
platformVersion = 2023.3.8
1415

1516
# Plugin Dependencies -> https://plugins.jetbrains.com/docs/intellij/plugin-dependencies.html
1617
# Example: platformPlugins = com.intellij.java, com.jetbrains.php:203.4449.22
1718
platformPlugins = com.intellij.java
1819

1920
# Gradle Releases -> https://github.com/gradle/gradle/releases
20-
gradleVersion = 7.5.1
21+
gradleVersion = 8.10.2
2122

2223
# Opt-out flag for bundling Kotlin standard library -> https://plugins.jetbrains.com/docs/intellij/kotlin.html#kotlin-standard-library
2324
# suppress inspection "UnusedProperty"
2425
kotlin.stdlib.default.dependency = false
26+
27+
# Enable Gradle Configuration Cache -> https://docs.gradle.org/current/userguide/configuration_cache.html
28+
org.gradle.configuration-cache = true
29+
30+
# Enable Gradle Build Cache -> https://docs.gradle.org/current/userguide/build_cache.html
31+
org.gradle.caching = true
Lines changed: 250 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,250 @@
1+
<?xml version="1.0"?>
2+
<!DOCTYPE module PUBLIC
3+
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
4+
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
5+
6+
<!--
7+
8+
Checkstyle configuration for CS61B. Modified from sun_checks.xml, which checks the
9+
sun coding conventions from:
10+
11+
- the Java Language Specification at
12+
http://java.sun.com/docs/books/jls/second_edition/html/index.html
13+
14+
- the Sun Code Conventions at http://java.sun.com/docs/codeconv/
15+
16+
- the Javadoc guidelines at
17+
http://java.sun.com/j2se/javadoc/writingdoccomments/index.html
18+
19+
- the JDK Api documentation http://java.sun.com/j2se/docs/api/index.html
20+
21+
- some best practices
22+
23+
For information on configuration, see http://checkstyle.sf.net.
24+
25+
Most Checks are configurable, be sure to consult the documentation.
26+
27+
To completely disable a check, just comment it out or delete it from the file.
28+
29+
Finally, it is worth reading the documentation.
30+
31+
-->
32+
33+
<module name="Checker">
34+
35+
<!-- Checks whether files end with a new line. -->
36+
<!-- See http://checkstyle.sf.net/config_misc.html#NewlineAtEndOfFile -->
37+
<module name="NewlineAtEndOfFile">
38+
<property name="lineSeparator" value="lf_cr_crlf"/>
39+
</module>
40+
41+
<!-- Checks for Size Violations. -->
42+
<!-- See http://checkstyle.sf.net/config_sizes.html -->
43+
<module name="FileLength">
44+
<property name="max" value="2000"/>
45+
</module>
46+
47+
<module name="LineLength">
48+
<property name="max" value="120"/>
49+
</module>
50+
51+
<!-- Checks for whitespace -->
52+
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
53+
<!-- note from Eli: I hate this rule. Tabs >> Spaces -->
54+
<module name="FileTabCharacter"/>
55+
<!-- this is to prevent the style checker from throwing an absurd amount of errors if you have tabs-->
56+
<property name="tabWidth" value="4"/>
57+
<!-- Note from Ethan: ??? -->
58+
59+
<module name="TreeWalker">
60+
<!-- Checks for Naming Conventions. -->
61+
<!-- See http://checkstyle.sf.net/config_naming.html -->
62+
<module name="ConstantName">
63+
<property name="format" value="^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$"/>
64+
<message key="name.invalidPattern" value="Constant ''{0}'' must be in ALL_CAPS." />
65+
</module>
66+
<module name="LocalFinalVariableName">
67+
<property name="format" value="^([A-Z][0-9]*|[a-z][a-zA-Z0-9]*)$"/>
68+
<message key="name.invalidPattern" value="Local final variable ''{0}'' must be in camelCase, or consist of a single upper-case letter." />
69+
</module>
70+
<module name="LocalVariableName">
71+
<property name="format" value="^([A-Z][0-9]*|[a-z][a-zA-Z0-9]*)$"/>
72+
<message key="name.invalidPattern" value="Local variable ''{0}'' must be in camelCase, or consist of a single upper-case letter." />
73+
</module>
74+
<module name="MemberName">
75+
<property name="format" value="^_?[a-z][a-zA-Z0-9]*$|_?[A-Z]$"/>
76+
<message key="name.invalidPattern" value="Instance variable ''{0}'' must be in camelCase, and may start with an underscore."/>
77+
</module>
78+
<module name="MethodName">
79+
<property name="format" value="^([A-Z][0-9]*|[a-z][a-zA-Z0-9]*)$"/>
80+
<message key="name.invalidPattern" value="Method name ''{0}'' must be in camelCase, or consist of a single upper-case letter." />
81+
</module>
82+
<module name="PackageName">
83+
<property name="format" value="^[a-z][a-z0-9_]*(\.[a-zA-Z_][a-zA-Z0-9_]*)*$" />
84+
<message key="name.invalidPattern" value="Package name ''{0}'' must start with a lower-case letter."/>
85+
</module>
86+
<module name="ParameterName">
87+
<property name="format" value="^([A-Z][0-9]*|[a-z][a-zA-Z0-9]*)$"/>
88+
<message key="name.invalidPattern" value="Parameter ''{0}'' must be in camelCase, or consist of a single upper-case letter." />
89+
</module>
90+
<module name="StaticVariableName">
91+
<property name="format" value="^_?[a-z][a-zA-Z0-9]*$|_?[A-Z]$"/>
92+
<message key="name.invalidPattern" value="Static variable ''{0}'' must be in camelCase, or consist of a single upper-case letter, and may start with an underscore." />
93+
</module>
94+
<module name="TypeName">
95+
<property name="format" value="^[A-Z][A-Za-z0-9]*$"/>
96+
<message key="name.invalidPattern" value="Type (class) name ''{0}'' must start with a capital letter."/>
97+
</module>
98+
<module name="ClassTypeParameterName">
99+
<property name="format" value="^[A-Z][A-Za-z0-9]*$"/>
100+
<message key="name.invalidPattern" value="Type parameter ''{0}'' must start with a capital letter."/>
101+
</module>
102+
<module name="MethodTypeParameterName">
103+
<property name="format" value="^[A-Z][A-Za-z0-9]*$"/>
104+
<message key="name.invalidPattern" value="Type parameter ''{0}'' must start with a capital letter."/>
105+
</module>
106+
107+
<!-- Checks for imports -->
108+
<!-- See http://checkstyle.sf.net/config_import.html -->
109+
<!-- Don't check star imports because IntelliJ does this automatically -->
110+
<module name="RedundantImport"/>
111+
<module name="UnusedImports"/>
112+
113+
<!-- Checks for Size Violations. -->
114+
<!-- See http://checkstyle.sf.net/config_sizes.html -->
115+
<module name="MethodLength">
116+
<property name="max" value="80"/>
117+
</module>
118+
<module name="ParameterNumber">
119+
<property name="max" value="8"/>
120+
</module>
121+
<module name="OuterTypeNumber">
122+
<property name="max" value="1"/>
123+
</module>
124+
125+
<!-- Checks for whitespace -->
126+
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
127+
<!-- Check whitespace either side of <, > in generics -->
128+
<module name="GenericWhitespace"/>
129+
<module name="MethodParamPad"/>
130+
<module name="NoWhitespaceAfter">
131+
<!-- The check processes ARRAY_DECLARATOR and INDEX_OP tokens specially
132+
from other tokens. Actually it is checked that there is no whitespace
133+
before these tokens, not after them. Space after the ANNOTATIONS before
134+
ARRAY_DECLARATOR and INDEX_OP will be ignored. -->
135+
<property name="tokens" value="AT"/>
136+
<property name="tokens" value="INC"/>
137+
<property name="tokens" value="DEC"/>
138+
<property name="tokens" value="UNARY_MINUS"/>
139+
<property name="tokens" value="UNARY_PLUS"/>
140+
<property name="tokens" value="BNOT"/>
141+
<property name="tokens" value="LNOT"/>
142+
<property name="tokens" value="DOT"/>
143+
<property name="tokens" value="METHOD_REF"/>
144+
<property name="tokens" value="ARRAY_INIT"/>
145+
<property name="tokens" value="ARRAY_DECLARATOR"/>
146+
<property name="tokens" value="INDEX_OP"/>
147+
<!-- Missing: TYPECAST, LITERAL_SNYCHRONIZED -->
148+
</module>
149+
<module name="NoWhitespaceBefore">
150+
<property name="tokens" value="COMMA"/>
151+
<property name="tokens" value="SEMI"/>
152+
<property name="tokens" value="POST_INC"/>
153+
<property name="tokens" value="POST_DEC"/>
154+
<property name="tokens" value="GENERIC_START"/>
155+
<property name="tokens" value="GENERIC_END"/>
156+
<property name="tokens" value="ELLIPSIS"/>
157+
<property name="tokens" value="LABELED_STAT"/>
158+
<property name="tokens" value="METHOD_REF"/>
159+
</module>
160+
<module name="NoWhitespaceBefore">
161+
<property name="allowLineBreaks" value="true"/>
162+
<property name="tokens" value="DOT"/>
163+
</module>
164+
<module name="NoWhitespaceBeforeCaseDefaultColon"/>
165+
<module name="ParenPad"/>
166+
<module name="TypecastParenPad"/>
167+
<module name="WhitespaceAfter"/>
168+
<module name="WhitespaceAround"/>
169+
170+
<!-- Whitespace checks related to linebreaks -->
171+
<module name="OperatorWrap"/>
172+
<module name="SeparatorWrap"/>
173+
174+
<!-- Modifier Checks -->
175+
<!-- See http://checkstyle.sf.net/config_modifier.html -->
176+
<module name="ModifierOrder"/>
177+
<!-- <module name="RedundantModifier"/> --> <!-- Affects inner constructor weirdly -->
178+
179+
<!-- Checks for blocks. You know, those {}'s -->
180+
<!-- See http://checkstyle.sf.net/config_blocks.html -->
181+
<module name="EmptyBlock">
182+
<property name="option" value="statement"/>
183+
<property name="tokens" value="LITERAL_DO"/>
184+
<property name="tokens" value="LITERAL_ELSE"/>
185+
<property name="tokens" value="LITERAL_FINALLY"/>
186+
<property name="tokens" value="LITERAL_IF"/>
187+
<property name="tokens" value="LITERAL_FOR"/>
188+
<property name="tokens" value="LITERAL_TRY"/>
189+
<property name="tokens" value="INSTANCE_INIT"/>
190+
<property name="tokens" value="STATIC_INIT"/>
191+
<property name="tokens" value="LITERAL_SWITCH"/>
192+
</module>
193+
<module name="EmptyBlock">
194+
<property name="option" value="text"/>
195+
<property name="tokens" value="LITERAL_CATCH,LITERAL_WHILE"/>
196+
</module>
197+
<module name="LeftCurly"/>
198+
<module name="NeedBraces"/>
199+
<module name="RightCurly"/>
200+
201+
<!-- Checks for common coding problems -->
202+
<!-- See http://checkstyle.sf.net/config_coding.html -->
203+
<module name="EmptyStatement"/>
204+
<module name="FallThrough"/>
205+
<module name="HiddenField">
206+
<property name="ignoreConstructorParameter" value="true"/>
207+
<property name="ignoreSetter" value="true"/>
208+
</module>
209+
<module name="IllegalCatch">
210+
<property name="illegalClassNames" value="java.lang.Exception, java.lang.Throwable,
211+
java.lang.Error"/>
212+
</module>
213+
<module name="InnerAssignment"/>
214+
<module name="MagicNumber">
215+
<property name="ignoreNumbers" value="-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0.25, 0.5"/>
216+
</module>
217+
<module name="MissingSwitchDefault"/>
218+
<module name="ModifiedControlVariable">
219+
<property name="skipEnhancedForLoopVariable" value="true"/>
220+
</module>
221+
<module name="OneStatementPerLine"/>
222+
<module name="SimplifyBooleanExpression"/>
223+
<module name="SimplifyBooleanReturn"/>
224+
<module name="StringLiteralEquality"/>
225+
226+
<!-- Checks for class design -->
227+
<!-- See http://checkstyle.sf.net/config_design.html -->
228+
<module name="InterfaceIsType"/>
229+
<module name="OneTopLevelClass"/>
230+
<module name="VisibilityModifier">
231+
<property name="protectedAllowed" value="true"/>
232+
<property name="packageAllowed" value="true"/>
233+
<message key="variable.notPrivate" value="Class member (field) ''{0}'' may not be public."/>
234+
</module>
235+
236+
<!-- Miscellaneous other checks. -->
237+
<!-- See http://checkstyle.sf.net/config_misc.html -->
238+
<module name="ArrayTypeStyle"/>
239+
<module name="CommentsIndentation"/>
240+
<module name="Indentation"/>
241+
<module name="NoCodeInFile"/>
242+
<module name="TodoComment">
243+
<property name="format" value="(?i:((TODO)|(FIXME)))"/>
244+
<message key="todo.match" value="Found a TODO or FIXME comment"/>
245+
</module>
246+
<module name="UpperEll"/>
247+
248+
</module>
249+
250+
</module>

0 commit comments

Comments
 (0)