Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Improve client/source schema validation generation and error handling #202

Merged
merged 11 commits into from
Oct 9, 2024

Conversation

FoxxMD
Copy link
Owner

@FoxxMD FoxxMD commented Oct 7, 2024

Type of change

Please delete options that are not relevant.

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Describe your changes

  • Use runtime-generated schemas
    • Ensures validated schemas always match code
    • Can use schemas for individual source/clients without having to generate files
  • catch individual validation errors and log instead of crashing
  • refactor validation error output into chained error instead of as individual log statements to improve clarity

Will also fix the crash from #199 but not the validation error.

@FoxxMD FoxxMD added enhancement New feature or request safe to test trusted to build image labels Oct 7, 2024
@FoxxMD FoxxMD self-assigned this Oct 7, 2024
FoxxMD added 11 commits October 9, 2024 12:18
…ndling

* Use runtime-generated schemas
  * Ensures validated schemas always match code
  * Can use schemas for individual source/clients without having to generate files
* catch invididual validation errors and log instead of crashing
* refactor validation error output into chained error instead of as individual log statements to improve clarity
* Add suite for testing client/source parsing and validation
* Additionally, use example configs for two-birds-one-stone checking they are valid
* Refactor sources init as separate step from component building
* Add missing sources to dual configs
* Fix slug type for webscrobbler example
* Prevents app from crashing due to only one thing going wrong
* Will be used for testing error handling in the future
Don't use ts-node for json-schema
Copy link
Contributor

github-actions bot commented Oct 9, 2024

📦 A new release has been made for this pull request.

To play around with this PR, pull an image:

  • foxxmd/multi-scrobbler:pr-202

Images are available for x86_64 and ARM64.

Latest commit: 6b92920

@FoxxMD FoxxMD merged commit db63242 into master Oct 9, 2024
4 checks passed
@FoxxMD FoxxMD deleted the validateGranular branch October 9, 2024 16:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request safe to test trusted to build image
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant