2.58.0 • Published 9 months ago

@exodus/analytics-validation v2.58.0

Weekly downloads
-
License
MIT
Repository
github
Last release
9 months ago

@exodus/analytics-validation

Why

This helps prevent that we do not accidentally collect any sensitive and/or private information, therefore all events must pass a validation layer.

Examples of what could go wrong:

Development

Do I need to add a new schema?

flowchart TD
    Title(Adding a new telemetry event) --> A
    A{Does your event\nhave properties?}
    A -->|Yes| C
    A -->|No| B
    B(You're done!)
    C{Does it only require\n the 'origin' property?}
    C -->|Yes| B
    C -->|No| E[Generate a new JSON Schema: \nyarn generate analytics-validation]
    E --> D[Adjust the schema and tests]
    D --> B

JSON Schema Development

To add a new schema run

yarn generate analytics-validation

in the project root. The CLI tool will ask you for all details needed. Once the schema is created, make sure to

  1. Before adding a new schema, double check if a subdirectory (essentially an event domain, e.g. dapps) already exists in ./src. If not, you will have to come up with a subdirectory name during the next steps;
  2. Fill the schema with the expected properties and their types. The property names must be in the snake_case (e.g. expected_property);
  3. Fix the generated unit test as it will be intentionally failing;
  4. Add your own test cases to ensure the schema works properly before merging the PR and publishing a new version.

List of string formats

Schemasafe ships with a bunch of default formats, you can find the implementation of these here!

  • email
  • hostname
  • uuid
  • date
  • time
  • date-time
  • duration
  • ipv4
  • ipv6
  • uri
  • uri-reference
  • uri-template
  • alpha
  • alphanumeric
  • base64
  • hex-digits
  • hex-digits-prefixed
  • hex-bytes
  • hex-bytes-prefixed
  • json-pointer
  • relative-json-pointer
2.58.0

9 months ago

2.57.0

9 months ago

2.56.0

9 months ago

2.55.0

9 months ago

2.54.0

10 months ago

2.53.0

10 months ago

2.52.2

12 months ago

2.52.1

12 months ago

2.52.0

12 months ago

2.51.3

1 year ago

2.51.2

1 year ago

2.51.1

1 year ago

2.51.0

1 year ago

2.50.2

1 year ago

2.50.1

1 year ago

2.50.0

1 year ago

2.49.1

1 year ago

2.49.0

1 year ago

2.48.0

1 year ago

2.47.1

1 year ago

2.47.0

1 year ago

2.46.0

1 year ago

2.45.2

1 year ago

2.45.1

1 year ago

2.45.0

1 year ago

2.44.0

1 year ago

2.43.1

1 year ago

2.43.0

1 year ago

2.42.0

1 year ago

2.41.0

1 year ago

2.40.1

1 year ago

2.40.0

1 year ago

2.39.1

1 year ago

2.39.0

1 year ago

2.38.0

1 year ago

2.37.1

1 year ago

2.37.0

1 year ago

2.36.0

1 year ago

2.35.0

2 years ago

2.34.0

2 years ago

2.33.0

2 years ago

2.32.0

2 years ago

2.31.0

2 years ago

2.30.0

2 years ago

2.29.0

2 years ago

2.28.0

2 years ago

2.27.1

2 years ago

2.27.0

2 years ago

2.26.0

2 years ago

2.25.0

2 years ago

2.24.0

2 years ago

2.23.0

2 years ago

2.22.1

2 years ago

2.22.0

2 years ago

2.21.1

2 years ago

2.21.0

2 years ago

2.20.1

2 years ago

2.20.0

2 years ago

2.19.1

2 years ago

2.19.0

2 years ago

2.18.3

2 years ago

2.18.2

2 years ago

2.18.1

2 years ago

2.18.0

2 years ago

2.17.0

2 years ago

2.16.1

2 years ago

2.16.0

2 years ago

2.15.3

2 years ago

2.15.2

2 years ago

2.15.1

2 years ago

2.15.0

2 years ago

2.14.0

2 years ago

2.13.0

2 years ago

2.12.0

2 years ago

2.11.2

2 years ago

2.11.1

2 years ago

2.11.0

2 years ago

2.10.2

2 years ago

2.10.1

2 years ago

2.10.0

2 years ago

2.9.0

2 years ago

2.8.0

2 years ago

2.7.0

2 years ago

2.6.0

2 years ago

2.5.0

2 years ago

2.4.0

2 years ago

2.3.0

2 years ago

2.2.1

2 years ago

2.2.0

2 years ago

1.24.0

2 years ago

2.1.0

2 years ago

2.0.0

2 years ago

1.23.0

2 years ago

1.22.0

2 years ago

1.21.1

2 years ago

1.21.0

2 years ago

1.20.0

2 years ago

1.19.2

2 years ago

1.19.1

2 years ago

1.19.0

2 years ago

1.18.1

3 years ago

1.18.0

3 years ago

1.17.0

3 years ago

1.16.0

3 years ago

1.15.0

3 years ago

1.14.0

3 years ago

1.13.0

3 years ago

1.12.0

3 years ago

1.11.0

3 years ago

1.10.0

3 years ago

1.9.0

3 years ago

1.8.0

3 years ago

1.7.0

3 years ago

1.6.0

3 years ago

1.5.0

3 years ago

1.4.1

3 years ago

1.4.0

3 years ago

1.3.0

3 years ago

1.2.0

3 years ago

1.1.0

3 years ago

1.1.0-alpha.4

3 years ago

1.1.0-alpha.3

3 years ago

1.1.0-alpha.2

3 years ago

1.1.0-alpha.1

3 years ago

1.1.0-alpha.0

3 years ago

1.0.1-alpha.8

3 years ago

1.0.1-alpha.7

3 years ago

1.0.1-alpha.6

3 years ago

1.0.1-alpha.5

3 years ago

1.0.1-alpha.4

3 years ago

1.0.1-alpha.3

3 years ago

1.0.1-alpha.2

3 years ago

1.0.1-alpha.1

3 years ago

1.0.1-alpha.0

3 years ago

1.0.0

3 years ago