ttrpg-convert-cli icon indicating copy to clipboard operation
ttrpg-convert-cli copied to clipboard

🐛 keep getting err and cant get output # bug

Open vampeal opened this issue 3 months ago • 12 comments

Describe the bug

this is what i get and it just basic mm dmg and player. i still have not got it to output anything. i fixed the rest of the trouble i was have this seem to be the last. Γ£à OK| Finished reading config. ≡ƒö╖ INFO| ΓÅ│ Reading F:\CLI\5etools-src\data ≡ƒ¢æ ERR| Unable to read source file at path F:\CLI\5etools-src\data\book\book-.json (F:\CLI\5etools-src\data\book\book-.json) java.lang.NullPointerException at dev.ebullient.convert.io.Tui.readFile(Tui.java:521) at dev.ebullient.convert.io.Tui_ClientProxy.readFile(Unknown Source) at dev.ebullient.convert.config.CompendiumConfig.readSource(CompendiumConfig.java:143) at dev.ebullient.convert.tools.ToolsIndex.resolveSources(ToolsIndex.java:77) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:213) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:39) at picocli.CommandLine.executeUserObject(CommandLine.java:2031) at picocli.CommandLine.access$1500(CommandLine.java:148) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2469) at picocli.CommandLine$RunLast.handle(CommandLine.java:2461) at picocli.CommandLine$RunLast.handle(CommandLine.java:2423) at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277) at picocli.CommandLine$RunLast.execute(CommandLine.java:2425) at dev.ebullient.convert.RpgDataConvertCli.executionStrategy(RpgDataConvertCli.java:263) at picocli.CommandLine.execute(CommandLine.java:2174) at dev.ebullient.convert.RpgDataConvertCli.run(RpgDataConvertCli.java:277) at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:141) at io.quarkus.runtime.Quarkus.run(Quarkus.java:80) at io.quarkus.runtime.Quarkus.run(Quarkus.java:51) at io.quarkus.runner.GeneratedMain.main(Unknown Source) at [email protected]/java.lang.invoke.LambdaForm$DMH/sa346b79c.invokeStaticInit(LambdaForm$DMH)

Expected Behavior

i getr the output folder and can copy it to obsidian

TTRPG CLI Version

the latest set

Which Operating Systems have you experienced this on?

  • [ ] Android
  • [ ] iPhone/iPad
  • [ ] Linux
  • [ ] macOS
  • [x] Windows

vampeal avatar Sep 27 '25 05:09 vampeal

This is a relatively common error, in your json config file. Do not leave any trailing commas or new lines. So if you have lets say:

Book {
DMG,
PHB,
MM
},

After the MM no comma or new line (enter or empty line after MM) should be there as that makes the CLI interpret the empty space as another source and since it can’t find anything for that source as its an empty space it panics and errors out. (If you used the app by Obsidian TTRPG Tutorials, don’t leave a comma after the las book in each category)

Hope this explains it :)

On 27. 9. 2025, at 7:19, vampeal @.***> wrote:

 [https://avatars.githubusercontent.com/u/207491793?s=20&v=4]vampeal created an issue (ebullient/ttrpg-convert-cli#786)https://github.com/ebullient/ttrpg-convert-cli/issues/786 Describe the bug

this is what i get and it just basic mm dmg and player. i still have not got it to output anything. i fixed the rest of the trouble i was have this seem to be the last. ✅ OK| Finished reading config. 🔷 INFO| ⏳ Reading F:\CLI\5etools-src\data 🛑 ERR| Unable to read source file at path F:\CLI\5etools-src\data\book\book-.json (F:\CLI\5etools-src\data\book\book-.json) java.lang.NullPointerException at dev.ebullient.convert.io.Tui.readFile(Tui.java:521) at dev.ebullient.convert.io.Tui_ClientProxy.readFile(Unknown Source) at dev.ebullient.convert.config.CompendiumConfig.readSource(CompendiumConfig.java:143) at dev.ebullient.convert.tools.ToolsIndex.resolveSources(ToolsIndex.java:77) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:213) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:39) at picocli.CommandLine.executeUserObject(CommandLine.java:2031) at picocli.CommandLine.access$1500(CommandLine.java:148) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2469) at picocli.CommandLine$RunLast.handle(CommandLine.java:2461) at picocli.CommandLine$RunLast.handle(CommandLine.java:2423) at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277) at picocli.CommandLine$RunLast.execute(CommandLine.java:2425) at dev.ebullient.convert.RpgDataConvertCli.executionStrategy(RpgDataConvertCli.java:263) at picocli.CommandLine.execute(CommandLine.java:2174) at dev.ebullient.convert.RpgDataConvertCli.run(RpgDataConvertCli.java:277) at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:141) at io.quarkus.runtime.Quarkus.run(Quarkus.java:80) at io.quarkus.runtime.Quarkus.run(Quarkus.java:51) at io.quarkus.runner.GeneratedMain.main(Unknown Source) at @.***/java.lang.invoke.LambdaForm$DMH/sa346b79c.invokeStaticInit(LambdaForm$DMH)

Expected Behavior

i getr the output folder and can copy it to obsidian

TTRPG CLI Version

the latest set

Which Operating Systems have you experienced this on?

  • Android
  • iPhone/iPad
  • Linux
  • macOS
  • Windows

— Reply to this email directly, view it on GitHubhttps://github.com/ebullient/ttrpg-convert-cli/issues/786, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BHLGAB6XSWVDF2JALNU3Q6D3UYM5TAVCNFSM6AAAAACHUUMO42VHI2DSMVQWIX3LMV43ASLTON2WKOZTGQ2TSNZYGA2TCNA. You are receiving this because you are subscribed to this thread.Message ID: @.***>

TashaTheInnkeeper avatar Sep 27 '25 13:09 TashaTheInnkeeper

i tried that and got this Γ£à OK| Finished reading config. ≡ƒö╖ INFO| ΓÅ│ Reading F:\CLI\5etools-src\data java.lang.NullPointerException at dev.ebullient.convert.io.Tui.readFile(Tui.java:521) at dev.ebullient.convert.io.Tui_ClientProxy.readFile(Unknown Source) at dev.ebullient.convert.config.CompendiumConfig.readSource(CompendiumConfig.java:143) at dev.ebullient.convert.tools.ToolsIndex.resolveSources(ToolsIndex.java:77) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:213) at dev.ebullient.convert.RpgDataConvertCli.call(RpgDataConvertCli.java:39) at picocli.CommandLine.executeUserObject(CommandLine.java:2031) at picocli.CommandLine.access$1500(CommandLine.java:148) at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2469) at picocli.CommandLine$RunLast.handle(CommandLine.java:2461) at picocli.CommandLine$RunLast.handle(CommandLine.java:2423) at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277) at picocli.CommandLine$RunLast.execute(CommandLine.java:2425) at dev.ebullient.convert.RpgDataConvertCli.executionStrategy(RpgDataConvertCli.java:263) at picocli.CommandLine.execute(CommandLine.java:2174) at dev.ebullient.convert.RpgDataConvertCli.run(RpgDataConvertCli.java:277) at io.quarkus.runtime.ApplicationLifecycleManager.run(ApplicationLifecycleManager.java:141) at io.quarkus.runtime.Quarkus.run(Quarkus.java:80) at io.quarkus.runtime.Quarkus.run(Quarkus.java:51) at io.quarkus.runner.GeneratedMain.main(Unknown Source) at [email protected]/java.lang.invoke.LambdaForm$DMH/sa346b79c.invokeStaticInit(LambdaForm$DMH)

vampeal avatar Sep 27 '25 23:09 vampeal

reinstalled from auto infull all files are there still get null point. why i cant figure it out reinstalled java and git as well

vampeal avatar Sep 28 '25 04:09 vampeal

You should really share the config file you're using. Only so much anyone can do without seeing what you're inputting into the tool.

jboehm77 avatar Sep 28 '25 04:09 jboehm77

Will do as soon as I get home tonight to make sure you want the my config file the program makes

vampeal avatar Sep 28 '25 12:09 vampeal

Config file is something you make, not the program, but otherwise yes. Should look something like this.

jboehm77 avatar Sep 28 '25 13:09 jboehm77

{ "sources" : { "adventure" : [ "LMoP" ], "book" : [ "xPHB", "xDMG", "xMM" ], "reference" : [ "MM" ], "homebrew" : [ "" ] }, "paths" : { "rules" : "/3-Mechanics/CLI", "compendium" : "/3-Mechanics/CLI" }, "images" : { "copyInternal" : true, "copyExternal" : false, "internalRoot" : "5etools-img" }, "yamlStatblocks" : true, "reprintBehavior" : "newest", "useDiceRoller" : true, "tagPrefix" : "ttrpg-cli", "template" : { "background" : "examples/templates/tools5e/images-background2md.txt", "monster" : "examples/templates/tools5e/monster2md-yamlStatblock-body.txt", "item" : "examples/templates/tools5e/images-item2md.txt", "race" : "examples/templates/tools5e/images-race2md.txt", "spell" : "examples/templates/tools5e/images-spell2md.txt" } }

My whole config file as requested I don’t see anything wrong with it. If you can please I would love to help.

vampeal avatar Sep 29 '25 15:09 vampeal

Remove the entire line that has "" in your list of homebrew sources. If you want no homebrew, don't have any lines, empty or otherwise, in that list.

jboehm77 avatar Sep 29 '25 18:09 jboehm77

I should probably filter out empty lines..

ebullient avatar Sep 29 '25 21:09 ebullient

but in general, neither JSON nor YAML are particularly forgiving formats. The docs have lots of links to linters, and those will catch typos and syntax errors.

ebullient avatar Sep 29 '25 21:09 ebullient

Fixed by 5b1aedcf32d88660d326027bcfdd5954fd4bb852?

jboehm77 avatar Nov 12 '25 03:11 jboehm77

I tried? =) I hope so.

It won't fix commas or otherwise bad syntax.. but it should no longer barf on empty strings.

ebullient avatar Nov 12 '25 20:11 ebullient