cli icon indicating copy to clipboard operation
cli copied to clipboard

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

Open S1SYPHOS opened this issue 3 years ago • 3 comments

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 avatar Jan 07 '23 14:01 S1SYPHOS

Anyone there? 😭

S1SYPHOS avatar Nov 12 '23 08:11 S1SYPHOS

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 avatar Nov 13 '23 12:11 bastianallgeier

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.

bastianallgeier avatar Dec 21 '23 12:12 bastianallgeier