porting all github actions from bluesky-social/indigo to tangled CI

make identity.Identity more easily JSON serializable (#1017)

These result in cleaner JSON for things like test fixtures. Used in new
relay project.

cc: @whyrusleeping to check that other code isn't depending on the
previous serialization. Eg, I think you have a memcache identity cache
around somewhere. The redis caching stuff uses a different reflect-based
serialization technique.

authored by bnewbold.net and committed by GitHub 68ea75a3 15337ff3

Changed files
+9 -9
atproto
identity
+9 -9
atproto/identity/identity.go
··· 13 13 14 14 // Represents an atproto identity. Could be a regular user account, or a service account (eg, feed generator) 15 15 type Identity struct { 16 - DID syntax.DID 16 + DID syntax.DID `json:"did"` 17 17 18 18 // Handle/DID mapping must be bi-directionally verified. If that fails, the Handle should be the special 'handle.invalid' value 19 - Handle syntax.Handle 19 + Handle syntax.Handle `json:"handle"` 20 20 21 21 // These fields represent a parsed subset of a DID document. They are all nullable. Note that the services and keys maps do not preserve order, so they don't exactly round-trip DID documents. 22 - AlsoKnownAs []string 23 - Services map[string]Service 24 - Keys map[string]Key 22 + AlsoKnownAs []string `json:"alsoKnownAs"` 23 + Services map[string]Service `json:"services"` 24 + Keys map[string]Key `json:"keys"` 25 25 } 26 26 27 27 type Key struct { 28 - Type string 29 - PublicKeyMultibase string 28 + Type string `json:"type"` 29 + PublicKeyMultibase string `json:"publicKeyMultibase"` 30 30 } 31 31 32 32 type Service struct { 33 - Type string 34 - URL string 33 + Type string `json:"type"` 34 + URL string `json:"url"` 35 35 } 36 36 37 37 // Extracts the information relevant to atproto from an arbitrary DID document.