Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
c8837cf
Merge pull request #267 from xdev-software/master
AB-xdev Jul 18, 2025
e4b994b
Create JUnit4 compatibility layer
AB-xdev Jul 21, 2025
375f5c5
Merge branch 'develop' into update-from-template-merged
xdev-gh-bot Jul 21, 2025
1472e98
Merge pull request #268 from xdev-software/update-from-template-merged
AB-xdev Jul 21, 2025
d9aee12
Update dependency org.junit:junit-bom to v5.13.4
xdev-renovate Jul 22, 2025
26db61b
Update plugin org.jetbrains.intellij.platform to v2.7.0
xdev-renovate Jul 26, 2025
e424646
Update pmdVersion to v7.16.0
xdev-renovate Jul 26, 2025
5017920
Merge pull request #134 from xdev-software/renovate/org.junit-junit-b…
AB-xdev Jul 28, 2025
a8dae8f
Merge pull request #135 from xdev-software/renovate/org.jetbrains.int…
AB-xdev Jul 28, 2025
a09644d
Merge pull request #136 from xdev-software/renovate/pmdversion
AB-xdev Jul 28, 2025
dea7edd
Update dependency gradle to v9
xdev-renovate Aug 1, 2025
4a0d62e
Merge branch 'develop' into update-from-template-merged
xdev-gh-bot Aug 4, 2025
41ffad3
Bump to latest IC version
AB-xdev Aug 5, 2025
9fb0d2f
Merge branch 'develop' into update-from-template-merged
xdev-gh-bot Aug 5, 2025
4ed935d
Merge pull request #274 from xdev-software/update-from-template-merged
AB-xdev Aug 5, 2025
af78b37
Fix storage deserialization crash on unknown actions value
AB-xdev Aug 5, 2025
ea632e5
Merge pull request #137 from xdev-software/renovate/gradle-9.x
AB-xdev Aug 5, 2025
00a0057
Merge branch 'develop' into update-from-template-merged
xdev-gh-bot Aug 5, 2025
8b7cd2b
Merge pull request #275 from xdev-software/fix-storage-crash-on-unkno…
AB-xdev Aug 5, 2025
f87c42c
Merge remote-tracking branch 'origin/update-from-template-merged' int…
xdev-gh-bot Aug 5, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
## 1.4.2
* Fix storage deserialization crash on unknown actions value #273

## 1.4.1
* Fix ``Add class qualifier to static member access outside declaring class`` not working correctly for ``switch`` statements #263

Expand Down
6 changes: 3 additions & 3 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@ plugins {
id 'idea'
id 'checkstyle'
id 'pmd'
id 'org.jetbrains.intellij.platform' version '2.6.0'
id 'org.jetbrains.intellij.platform' version '2.7.0'
}

ext {
checkstyleVersion = '10.26.1'

pmdVersion = '7.15.0'
pmdVersion = '7.16.0'
}

def properties(String key) {
Expand Down Expand Up @@ -58,7 +58,7 @@ dependencies {
checkstyle "com.puppycrawl.tools:checkstyle:${checkstyleVersion}"
pmd "net.sourceforge.pmd:pmd-ant:${pmdVersion}",
"net.sourceforge.pmd:pmd-java:${pmdVersion}"
testImplementation platform('org.junit:junit-bom:5.13.3'),
testImplementation platform('org.junit:junit-bom:5.13.4'),
'org.junit.jupiter:junit-jupiter',
'org.junit.jupiter:junit-jupiter-engine',
'org.assertj:assertj-core:3.27.3'
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ pluginName=Save Actions X
pluginVersion=1.4.2-SNAPSHOT
# IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#configuration-intellij-extension
platformType=IC
platformVersion=2025.1.3
platformVersion=2025.1.4.1
platformSinceBuild=243
# Plugin Dependencies -> https://plugins.jetbrains.com/docs/intellij/plugin-dependencies.html
# Example: platformBundledPlugins = com.intellij.java, com.jetbrains.php:203.4449.22
Expand Down
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.0.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
2 changes: 1 addition & 1 deletion gradlew
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/sh

#
# Copyright © 2015-2021 the original authors.
# Copyright © 2015 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
8 changes: 5 additions & 3 deletions src/main/java/software/xdev/saveactions/model/Storage.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package software.xdev.saveactions.model;

import java.util.ArrayList;
import java.util.EnumSet;
import java.util.HashSet;
import java.util.List;
import java.util.Objects;
Expand All @@ -18,9 +17,12 @@

@State(name = "SaveActionSettings", storages = {@com.intellij.openapi.components.Storage("saveactions_settings.xml")})
@Service(Service.Level.PROJECT)
@SuppressWarnings("PMD.UseEnumCollections") // Set must be nullable!
public final class Storage implements PersistentStateComponent<Storage>
{
private boolean firstLaunch;
// Must use a set that supports nullable values!
// For example EnumSet will crash when encountering an unknown/null value
private Set<Action> actions;
private Set<String> exclusions;
private Set<String> inclusions;
Expand All @@ -31,7 +33,7 @@ public final class Storage implements PersistentStateComponent<Storage>
public Storage()
{
this.firstLaunch = true;
this.actions = EnumSet.noneOf(Action.class);
this.actions = new HashSet<>();
this.exclusions = new HashSet<>();
this.inclusions = new HashSet<>();
this.configurationPath = null;
Expand All @@ -42,7 +44,7 @@ public Storage()
public Storage(final Storage storage)
{
this.firstLaunch = storage.firstLaunch;
this.actions = EnumSet.copyOf(storage.actions);
this.actions = new HashSet<>(storage.actions);
this.exclusions = new HashSet<>(storage.exclusions);
this.inclusions = new HashSet<>(storage.inclusions);
this.configurationPath = storage.configurationPath;
Expand Down