getkirby / cli

Kirby Command Line Interface
MIT License
51 stars 5 forks source link

`$cli->json()` not working as expected #34

Open S1SYPHOS opened 1 year ago

S1SYPHOS commented 1 year ago

Hey there, looking at the CLImate docs linked in README.md, one would expect that $cli->json($myJson) (eg inside a custom command) outputs JSON into the terminal - but all it does is return json_encoded data, which then needs to be output to the terminal, like this: $cli->out($cli->json($myJson)) - which is not desired behaviour from the looks of it.

In order to comply with aforementioned docs, PR #33 attempts to solve this.

Cheers, S1SYPHOS

S1SYPHOS commented 8 months ago

Anyone there? 😭

bastianallgeier commented 8 months ago

Sorry for the massive delay. I think you are right that this should work in the same way as the climate method. I've added it as a general helper to create json from arrays without automatically dumping it. If we change it like in your PR it would be a breaking change.

bastianallgeier commented 7 months ago

I looked at it again and it's really one of those wrong decisions that are difficult to undo. I think we need to have a 2.0.0 for this. So far you can still use $cli->climate()->json() to get the behaviour you are looking for.