41 pointsby olexsmiran hour ago2 comments
  • CamouflagedKiwi20 minutes ago
    I generally like `encoding/json/v2` and I'm glad they did it.

    I wish they'd left `MarshalIndent` in there though. The equivalent code is super complicated and non-obvious, so it's a pain to migrate, and it's a pain when you're banging out some quick code and want to dump some readable JSON. I suppose these days the LLMs can write the complicated version for us, of course.

    • athorax10 minutes ago
      I'm not sure if I'm missing something, but isn't this functionality just moved into jsontext? https://pkg.go.dev/encoding/json/jsontext#Value.Indent

        v := jsontext.Value(b)
        v.Indent()
        fmt.Println(string(v))
    • lifeisloving14 minutes ago
      I love paying 10 cents to some billionaire to serialize some json. Screw using my brain!!! Ill rent me some competency

      Not an insult to you, its just how I feel things are going, myself inculded at times.

  • lolpanda26 minutes ago
    the marshal api has been very annoying. why does marshal return an error? the only reason the marshal can return an error is that the input type is not marshalable. it's certainly a code bug. to me it's like int+str returning an error instead of compiler error
    • leetrout19 minutes ago
      JSON is a runtime input of unknown type but in your example those are known types so the compiler can catch them.
    • hnlmorg20 minutes ago
      I wouldn’t class unmarshallable data as a compile time error.

      Plus the point of the marshal interface is that it’s reusable.