grass
grass copied to clipboard
Add JSON and YAML C library dependency
Discussed in https://github.com/OSGeo/grass/discussions/3019
Originally posted by cwhite911 June 5, 2023 In an effort add additional output data formats to modules (e.g., r.report, r.info, etc..) we are discussing adding new library dependencies to aid in JSON and YAML encoding.
Please share your feedback on the following candidate dependencies.
JSON
parson https://github.com/kgabis/parson/ Current release: 1.5.2 (2023)
Parson is a lightweight json library written in C.
- [X] Linux
- [X] Windows
- [X] Mac OSX
YAML
libyaml https://github.com/yaml/libyaml Current release: 1.2.2 (2021-10-01)
LibYAML is a YAML parser and emitter library.
- [X] Linux
- [X] Windows
- [X] Mac OSX
Related Issues and PRs
- https://github.com/OSGeo/grass/pull/2666
- https://github.com/OSGeo/grass/pull/2542
- https://github.com/OSGeo/grass/pull/2386
- https://github.com/OSGeo/grass/pull/2258
- https://github.com/OSGeo/grass/pull/476
- https://github.com/OSGeo/grass/pull/3033
Candidate Modules
Which modules should have JSON & YAML output support?
General
- [x] g.mapsets https://github.com/OSGeo/grass/pull/2542
- [ ] g.mapset
- [ ] g.list
- [ ] g.region
- [ ] g.proj
- [ ] g.version
- [ ] etc..
Raster
- [ ] r.univar (GSoC) https://github.com/OSGeo/grass/pull/3783
- [ ] r.stats (GSoC) https://github.com/OSGeo/grass/pull/3884
- [ ] r.report https://github.com/OSGeo/grass/pull/3033
- [x] r.info (GSoC) https://github.com/OSGeo/grass/pull/3744
- [x] r.kappa https://github.com/OSGeo/grass/pull/2666
- [x] r.horizon https://github.com/OSGeo/grass/pull/3768
- [ ] r.describe
- [ ] r.what
- [ ] r.coin
- [ ] r.colors.out
- [ ] r.volume
- [ ] etc..
3d Raster
- [ ] etc..
Vector
- [x] v.info (GSoC) https://github.com/OSGeo/grass/pull/3755
- [ ] v.univar (GSoC) https://github.com/OSGeo/grass/pull/3784
- [x] v.db.select https://github.com/OSGeo/grass/pull/476
- [x] v.db.univar https://github.com/OSGeo/grass/pull/2386
- [ ] v.colors.out
- [ ] v.report
- [ ] etc..
Database
- [x] db.univar https://github.com/OSGeo/grass/pull/2386
- [ ] etc..
JSON output support without a library
- [ ] v.db.select https://github.com/OSGeo/grass/pull/476
- [ ] r.kappa https://github.com/OSGeo/grass/pull/2666
- [ ] g.mapsets https://github.com/OSGeo/grass/pull/2542
- [ ] r.geomorphon