Skip to content

Update library to reflect the fact it is Ruby's default JSON implementation? #348

Description

@zverok

While trying to make small docs update PR I found out the next facts that probably should be addressed:

  • The repo has no indication that it is the default Ruby's JSON implementation, it just states that "it is an implementation" (therefore I falsely believed that upstream for stdlib json is ruby/ruby repo, and this one is just a pre-Ruby 2 standalonge gem);
  • The json gem and json stdlib share some, but not all, code and docs, which lead to the weird effects:
    • the whole thing about two implementation (C and pure) has an effect on design and docs, but "pure" implementation is not imported into Ruby trunk, which, for example, renders documentation pieces like this:
      image
      (JSON::Pure::Generator is not a thing in stdlib);
    • moreover, considering no need for two implementations, the library code and interface can be simplified significantly (no .generator and .parser attributes, no need to have a separate Common module and so on);
    • most of the detailed docs on gem usage and examples are in README, but not in JSON module's RDoc, and are not accessible from the standard library docs

Is it possible to somehow "freezing" the fact that json gem for future Ruby versions should only be available through stdlib, and simplify the library accordingly?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions