diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index a7a3777..ed68fbf 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -10,7 +10,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
- java-version: 21
+ java-version: 22
distribution: 'zulu'
cache: 'maven'
- name: Ensure to use tagged version
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 7cdc153..4a72a3c 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -20,7 +20,7 @@ jobs:
fetch-depth: 2
- uses: actions/setup-java@v4
with:
- java-version: 21
+ java-version: 22
distribution: 'zulu'
cache: 'maven'
- name: Initialize CodeQL
diff --git a/.github/workflows/dependency-check.yml b/.github/workflows/dependency-check.yml
index dcb635a..85c0490 100644
--- a/.github/workflows/dependency-check.yml
+++ b/.github/workflows/dependency-check.yml
@@ -14,7 +14,7 @@ jobs:
with:
runner-os: 'ubuntu-latest'
java-distribution: 'zulu'
- java-version: 21
+ java-version: 22
secrets:
nvd-api-key: ${{ secrets.NVD_API_KEY }}
slack-webhook-url: ${{ secrets.SLACK_WEBHOOK_URL }}
diff --git a/.github/workflows/publish-central.yml b/.github/workflows/publish-central.yml
index d4c8e14..68de332 100644
--- a/.github/workflows/publish-central.yml
+++ b/.github/workflows/publish-central.yml
@@ -15,7 +15,7 @@ jobs:
ref: "refs/tags/${{ github.event.inputs.tag }}"
- uses: actions/setup-java@v4
with:
- java-version: 21
+ java-version: 22
distribution: 'zulu'
cache: 'maven'
server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
diff --git a/.github/workflows/publish-github.yml b/.github/workflows/publish-github.yml
index 5b9df1c..0ab2eec 100644
--- a/.github/workflows/publish-github.yml
+++ b/.github/workflows/publish-github.yml
@@ -10,7 +10,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
- java-version: 21
+ java-version: 22
distribution: 'zulu'
cache: 'maven'
gpg-private-key: ${{ secrets.RELEASES_GPG_PRIVATE_KEY }} # Value of the GPG private key to import
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 7fb4876..ea62868 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -8,5 +8,5 @@
-
+
\ No newline at end of file
diff --git a/.idea/runConfigurations/Mirror.xml b/.idea/runConfigurations/Mirror.xml
index f705a84..e07961a 100644
--- a/.idea/runConfigurations/Mirror.xml
+++ b/.idea/runConfigurations/Mirror.xml
@@ -2,7 +2,7 @@
-
+
diff --git a/pom.xml b/pom.xml
index b91bcb1..793c08d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -17,11 +17,11 @@
UTF-8
- 21
+ 22
1.3.1
- 0.6.3
+ 0.7.0
2.0.13
3.1.8
@@ -156,9 +156,6 @@
true
${project.build.jdk}
-
- --enable-preview
-
@@ -194,7 +191,7 @@
maven-surefire-plugin
3.2.5
- @{surefire.jacoco.args} -javaagent:${net.bytebuddy:byte-buddy-agent:jar} --enable-preview --enable-native-access=org.cryptomator.jfuse.linux.amd64,org.cryptomator.jfuse.linux.aarch64,org.cryptomator.jfuse.mac,org.cryptomator.jfuse.win
+ @{surefire.jacoco.args} -javaagent:${net.bytebuddy:byte-buddy-agent:jar}
diff --git a/src/main/java/org/cryptomator/frontend/fuse/ReadOnlyAdapter.java b/src/main/java/org/cryptomator/frontend/fuse/ReadOnlyAdapter.java
index 49c3248..ddeb7d4 100644
--- a/src/main/java/org/cryptomator/frontend/fuse/ReadOnlyAdapter.java
+++ b/src/main/java/org/cryptomator/frontend/fuse/ReadOnlyAdapter.java
@@ -182,7 +182,7 @@ protected int checkAccess(Path path, Set requiredAccessModes, Set requiredAccessModes) {
@Override
public int mkdir(String path, int mode) {
try (PathLock pathLock = lockManager.lockForWriting(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path node = resolvePath(fileNameTranscoder.fuseToNio(path));
LOG.trace("mkdir {} ({})", path, mode);
Files.createDirectory(node);
@@ -105,7 +105,7 @@ public int mkdir(String path, int mode) {
@Override
public int removexattr(String path, String name) {
try (PathLock pathLock = lockManager.lockForReading(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path node = resolvePath(path);
LOG.trace("removexattr {} {}", path, name);
var xattr = Files.getFileAttributeView(node, UserDefinedFileAttributeView.class, LinkOption.NOFOLLOW_LINKS);
@@ -124,7 +124,7 @@ public int removexattr(String path, String name) {
@Override
public int setxattr(String path, String name, ByteBuffer value, int flags) {
try (PathLock pathLock = lockManager.lockForReading(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path node = resolvePath(path);
LOG.trace("setxattr {} {}", path, name);
var xattr = Files.getFileAttributeView(node, UserDefinedFileAttributeView.class, LinkOption.NOFOLLOW_LINKS);
@@ -143,7 +143,7 @@ public int setxattr(String path, String name, ByteBuffer value, int flags) {
@Override
public int symlink(String targetPath, String linkPath) {
try (PathLock pathLock = lockManager.lockForWriting(linkPath);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path link = resolvePath(fileNameTranscoder.fuseToNio(linkPath));
Path target = link.getFileSystem().getPath(fileNameTranscoder.fuseToNio(targetPath));
LOG.trace("symlink {} -> {}", linkPath, targetPath);
@@ -163,7 +163,7 @@ public int symlink(String targetPath, String linkPath) {
@Override
public int create(String path, int mode, FileInfo fi) {
try (PathLock pathLock = lockManager.lockForWriting(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path node = resolvePath(fileNameTranscoder.fuseToNio(path));
var flags = fi.getOpenFlags();
LOG.trace("create {} with flags {}", path, flags);
@@ -194,7 +194,7 @@ public int chown(String path, int uid, int gid, FileInfo fi) {
@Override
public int chmod(String path, int mode, FileInfo fi) {
try (PathLock pathLock = lockManager.lockForReading(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path node = resolvePath(fileNameTranscoder.fuseToNio(path));
LOG.trace("chmod {} ({})", path, mode);
Files.setPosixFilePermissions(node, FileAttributesUtil.octalModeToPosixPermissions(mode));
@@ -216,7 +216,7 @@ public int chmod(String path, int mode, FileInfo fi) {
@Override
public int unlink(String path) {
try (PathLock pathLock = lockManager.lockForWriting(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path node = resolvePath(fileNameTranscoder.fuseToNio(path));
if (Files.isDirectory(node, LinkOption.NOFOLLOW_LINKS)) {
LOG.warn("unlink {} failed, node is a directory.", path);
@@ -237,7 +237,7 @@ public int unlink(String path) {
@Override
public int rmdir(String path) {
try (PathLock pathLock = lockManager.lockForWriting(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path node = resolvePath(fileNameTranscoder.fuseToNio(path));
if (!Files.isDirectory(node, LinkOption.NOFOLLOW_LINKS)) {
throw new NotDirectoryException(path);
@@ -306,7 +306,7 @@ public int rename(String oldPath, String newPath, int flags) {
@Override
public int utimens(String path, TimeSpec atime, TimeSpec mtime, FileInfo fi) {
try (PathLock pathLock = lockManager.lockForReading(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path node = resolvePath(fileNameTranscoder.fuseToNio(path));
LOG.trace("utimens {} (last modification {}, last access {})", path, mtime, atime);
fileHandler.utimens(node, mtime, atime);
@@ -323,7 +323,7 @@ public int utimens(String path, TimeSpec atime, TimeSpec mtime, FileInfo fi) {
@Override
public int write(String path, ByteBuffer buf, long size, long offset, FileInfo fi) {
try (PathLock pathLock = lockManager.lockForReading(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
LOG.trace("write {} bytes to file {} starting at {}...", size, path, offset);
int written = fileHandler.write(buf, size, offset, fi);
LOG.trace("wrote {} bytes to file {}.", written, path);
@@ -340,7 +340,7 @@ public int write(String path, ByteBuffer buf, long size, long offset, FileInfo f
@Override
public int truncate(String path, long size, FileInfo fi) {
try (PathLock pathLock = lockManager.lockForReading(path);
- DataLock dataLock = pathLock.lockDataForWriting()) {
+ DataLock _ = pathLock.lockDataForWriting()) {
Path node = resolvePath(fileNameTranscoder.fuseToNio(path));
LOG.trace("truncate {} {}", path, size);
if (fi != null) {