Expected behavior
As of version 1.20.4, plugins that contain non-latin characters in their versioning are not getting loaded by the server.
They however, work on SpigotMC with no issues.
Observed/Actual behavior
When starting my software, (only on Paper) this crash log is sent in console, with the plugin not enabling:
3.03 01:16:08 [Server] [ERROR] [DirectoryProviderSource] Error preparing plugin context: Directory 'plugins/ServerListStalkProtect-1.0.0-��.jar' failed to update! 03.03 01:16:08 [Server] [INFO] java.lang.RuntimeException: Directory 'plugins/ServerListStalkProtect-1.0.0-��.jar' failed to update! 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.prepareContext(FileProviderSource.java:51) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.lambda$prepareContext$1(DirectoryProviderSource.java:33) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.Iterator.forEachRemaining(Iterator.java:133) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1845) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.walkFiles(DirectoryProviderSource.java:59) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.prepareContext(DirectoryProviderSource.java:31) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.prepareContext(DirectoryProviderSource.java:17) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.util.EntrypointUtil.registerProvidersFromSource(EntrypointUtil.java:14) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.PluginInitializerManager.load(PluginInitializerManager.java:101) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at net.minecraft.server.Main.main(Main.java:131) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at org.bukkit.craftbukkit.Main.main(Main.java:326) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paperclip.Paperclip.lambda$main$0(Paperclip.java:42) ~[app:?] 03.03 01:16:08 [Server] [INFO] at java.lang.Thread.run(Thread.java:833) ~[?:?] 03.03 01:16:08 [Server] [INFO] Caused by: org.bukkit.plugin.InvalidPluginException: java.io.IOException: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: plugins/ServerListStalkProtect-1.0.0-��.jar 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.checkUpdate(FileProviderSource.java:109) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.prepareContext(FileProviderSource.java:49) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] ... 21 more 03.03 01:16:08 [Server] [INFO] Caused by: java.io.IOException: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: plugins/ServerListStalkProtect-1.0.0-��.jar 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile$Source.get(ZipFile.java:1267) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:709) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile.<init>(ZipFile.java:243) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile.<init>(ZipFile.java:172) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:347) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:318) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:284) ~[?:?] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.getPluginName(FileProviderSource.java:115) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.checkUpdate(FileProviderSource.java:90) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.prepareContext(FileProviderSource.java:49) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] ... 21 more 03.03 01:16:08 [Server] [INFO] Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: plugins/ServerListStalkProtect-1.0.0-��.jar 03.03 01:16:08 [Server] [INFO] at sun.nio.fs.UnixPath.encode(UnixPath.java:121) ~[?:?] 03.03 01:16:08 [Server] [INFO] at sun.nio.fs.UnixPath.<init>(UnixPath.java:68) ~[?:?] 03.03 01:16:08 [Server] [INFO] at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:279) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.io.File.toPath(File.java:2387) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile$Source.get(ZipFile.java:1264) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:709) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile.<init>(ZipFile.java:243) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile.<init>(ZipFile.java:172) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:347) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:318) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:284) ~[?:?] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.getPluginName(FileProviderSource.java:115) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.checkUpdate(FileProviderSource.java:90) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.prepareContext(FileProviderSource.java:49) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] ... 21 more 03.03 01:16:15 [Server] [INFO] Environment: Environment[sessionHost=https://sessionserver.mojang.com, servicesHost=https://api.minecraftservices.com, name=PROD]
Steps/models to reproduce
Create any plugin with version '1.0.0-α', and also name the jar file PluginName-1.0.0-α.jar
alpha is a standard greek character, any other gives same issues.
Plugin and Datapack List
- AdvancedBan, BiblePlugin, LightLogin, ProtocolLib, SetHome, SkinsRestorer, spark, *SystemInfo, WorldEdit, WorldEditSelectionVisualizer
Paper version
git-Paper-"681bbff" (MC: 1.20.4)
Other
No response
Expected behavior
As of version 1.20.4, plugins that contain non-latin characters in their versioning are not getting loaded by the server.
They however, work on SpigotMC with no issues.
Observed/Actual behavior
When starting my software, (only on Paper) this crash log is sent in console, with the plugin not enabling:
3.03 01:16:08 [Server] [ERROR] [DirectoryProviderSource] Error preparing plugin context: Directory 'plugins/ServerListStalkProtect-1.0.0-��.jar' failed to update! 03.03 01:16:08 [Server] [INFO] java.lang.RuntimeException: Directory 'plugins/ServerListStalkProtect-1.0.0-��.jar' failed to update! 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.prepareContext(FileProviderSource.java:51) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.lambda$prepareContext$1(DirectoryProviderSource.java:33) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.Iterator.forEachRemaining(Iterator.java:133) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1845) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.walkFiles(DirectoryProviderSource.java:59) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.prepareContext(DirectoryProviderSource.java:31) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.DirectoryProviderSource.prepareContext(DirectoryProviderSource.java:17) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.util.EntrypointUtil.registerProvidersFromSource(EntrypointUtil.java:14) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.PluginInitializerManager.load(PluginInitializerManager.java:101) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at net.minecraft.server.Main.main(Main.java:131) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at org.bukkit.craftbukkit.Main.main(Main.java:326) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paperclip.Paperclip.lambda$main$0(Paperclip.java:42) ~[app:?] 03.03 01:16:08 [Server] [INFO] at java.lang.Thread.run(Thread.java:833) ~[?:?] 03.03 01:16:08 [Server] [INFO] Caused by: org.bukkit.plugin.InvalidPluginException: java.io.IOException: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: plugins/ServerListStalkProtect-1.0.0-��.jar 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.checkUpdate(FileProviderSource.java:109) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.prepareContext(FileProviderSource.java:49) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] ... 21 more 03.03 01:16:08 [Server] [INFO] Caused by: java.io.IOException: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: plugins/ServerListStalkProtect-1.0.0-��.jar 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile$Source.get(ZipFile.java:1267) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:709) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile.<init>(ZipFile.java:243) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile.<init>(ZipFile.java:172) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:347) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:318) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:284) ~[?:?] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.getPluginName(FileProviderSource.java:115) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.checkUpdate(FileProviderSource.java:90) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.prepareContext(FileProviderSource.java:49) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] ... 21 more 03.03 01:16:08 [Server] [INFO] Caused by: java.nio.file.InvalidPathException: Malformed input or input contains unmappable characters: plugins/ServerListStalkProtect-1.0.0-��.jar 03.03 01:16:08 [Server] [INFO] at sun.nio.fs.UnixPath.encode(UnixPath.java:121) ~[?:?] 03.03 01:16:08 [Server] [INFO] at sun.nio.fs.UnixPath.<init>(UnixPath.java:68) ~[?:?] 03.03 01:16:08 [Server] [INFO] at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:279) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.io.File.toPath(File.java:2387) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile$Source.get(ZipFile.java:1264) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:709) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile.<init>(ZipFile.java:243) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.zip.ZipFile.<init>(ZipFile.java:172) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:347) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:318) ~[?:?] 03.03 01:16:08 [Server] [INFO] at java.util.jar.JarFile.<init>(JarFile.java:284) ~[?:?] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.getPluginName(FileProviderSource.java:115) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.checkUpdate(FileProviderSource.java:90) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] at io.papermc.paper.plugin.provider.source.FileProviderSource.prepareContext(FileProviderSource.java:49) ~[paper-1.20.4.jar:git-Paper-"681bbff"] 03.03 01:16:08 [Server] [INFO] ... 21 more 03.03 01:16:15 [Server] [INFO] Environment: Environment[sessionHost=https://sessionserver.mojang.com, servicesHost=https://api.minecraftservices.com, name=PROD]Steps/models to reproduce
Create any plugin with version '1.0.0-α', and also name the jar file PluginName-1.0.0-α.jar
alpha is a standard greek character, any other gives same issues.
Plugin and Datapack List
Paper version
git-Paper-"681bbff" (MC: 1.20.4)
Other
No response