Skip to content

Plugins with non-latin characters versioning cannot start #10293

@LB45440078L

Description

@LB45440078L

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    resolution: cannot reproducePaper team is unable to replicate the issue.type: bugSomething doesn't work as it was intended to.

    Type

    No fields configured for Bug.

    Projects

    Status

    Invalid

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions