jsondiff
mapstructure
Our great sponsors
jsondiff | mapstructure | |
---|---|---|
1 | 16 | |
207 | 7,665 | |
- | - | |
1.4 | 0.6 | |
12 months ago | 26 days ago | |
Go | Go | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
jsondiff
-
What type of software do you write at your workplace?
I currently work for a company that provides a security operations center to major corporations and governments. In my current role, the most important language is Python since any non-developer in our company still often knows Python due to the nature of their work, but I wrote a reasonably complicated Lambda in Go and have contributed to some Go open source projects we depend upon (Argo). There are a range of libraries I've used from github.com/nsf/jsondiff to AWS SDK stuff to Zap (a logging lib from Uber) to Hashicorp Vault stuff and testify for testing purposes. I've also had to use yaml, and I used the K8s library for that. I can't think of too much else I've used outside the standard library offhand.
mapstructure
- How do I marshal a JSON array into a map?
-
Is there any equivalent to pydantic, serde, etc?
Maybe https://github.com/mitchellh/mapstructure can do what you want? It has some options for Remainder Values and Omit Empty
-
Struggling to get JSON response data into usable struct
I've tried using mapstructure to then marshal the map fields into a struct which mostly works (it struggles with times and custom time types which requires a workaround for each case), but this doesn't feel very idiomatic and requires two passes at marshaling.
-
Return unstructed db rows to struct
Although some orders may have more records maybe a superset can be indentified that you can actually create a struct of it and after gathereing first all values into a map then convert it to a struct maybe using a library like https://github.com/mitchellh/mapstructure . this way you can at least isolate the non structured data only on the data extraction part and the rest of your application can work with well formed structs.
-
Trying to print JSON data from a file
Alternatively, you could try https://github.com/mitchellh/mapstructure if you don't know what your incoming structure is
-
How to ensure required fields in struct consistently?
I'm doing it by validating a map[string]any first then putting it into a structure using mapstructure. It covers most use-cases and offers the most flexibility, at the expense of a bit of performance.
-
Question about Unmarshalling
That said, it is possible to do this with JSON using something like https://github.com/tidwall/gjson or if you are fine with the switch statement but don't want to marshal and unmarshal again: https://github.com/mitchellh/mapstructure
-
What type of software do you write at your workplace?
https://github.com/mitchellh/mapstructure because we have JSON documents which contain rugged arrays ;-)
-
Help with mapstructure.Decode()
I've been using mapstructure.Decode to great effect, but currently can't figure out why a given mapping doesn't work. I'd appreciate it if someone could point out wtf I'm doing wrong or at least in the right direction:
-
map[string]interface{} decoder
What do you mean by "decode"? I've used https://github.com/mitchellh/mapstructure but that doesn't quite look like what you're doing.
What are some alternatives?
Testify - A toolkit with common assertions and mocks that plays nicely with the standard library
jsoniter - A high-performance 100% compatible drop-in replacement of "encoding/json"
goleveldb - LevelDB key/value database in Go.
viper - Go configuration with fangs
pq - Pure Go Postgres driver for database/sql
goprotobuf - Go support for Google's protocol buffers
PlatformIO - Your Gateway to Embedded Software Development Excellence :alien:
gogoprotobuf - [Deprecated] Protocol Buffers for Go with Gadgets
structomap - Easily and dynamically generate maps from Go static structures
go-capnproto - Cap'n Proto library and parser for go. This is go-capnproto-1.0, and does not have rpc. See https://github.com/zombiezen/go-capnproto2 for 2.0 which has rpc and capabilities.
go-serializer - :loop: Serialize any custom type or convert any content to []byte or string, for Go Programming Language