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: Initial entry for @GtfsValidationNotice annotation #1361

Merged
merged 4 commits into from
Mar 27, 2023

Conversation

bdferris-v2
Copy link
Collaborator

@bdferris-v2 bdferris-v2 commented Mar 23, 2023

As part of on-going work for #1324 for automatic generation of notice documentation from source code, this PR introduces @GtfsValidationNotice, an annotation that will be used to configure and document validation notices in source code.

As generally described in https://bit.ly/gtfs-validator-notice-documentation, this annotation will be applied to all ValidationNotice classes in a follow-up PR. It will then be used as run-time to resolve a notice's severity and also to generate documentation for the notice.

I'm introducing the annotation in its own PR so that we can confirm the API before I do the large-scale transformation of the code-base to add it. I do include documentation for one notice as an example of its usage.

Please make sure these boxes are checked before submitting your pull request - thanks!

  • Run the unit tests with gradle test to make sure you didn't break anything
  • Format the title like "feat: [new feature short description]". Title must follow the Conventional Commit Specification(https://www.conventionalcommits.org/en/v1.0.0/).
  • Linked all relevant issues
  • Include screenshot(s) showing how this pull request works and fixes the issue(s)

…d to configure and document validation notices in source code.
Copy link
Member

@davidgamez davidgamez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGreatTM!

@github-actions
Copy link
Contributor

✅ Rule acceptance tests passed.
New Errors: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
Dropped Errors: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
New Warnings: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
Dropped Warnings: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
0 out of 1423 sources (~0 %) are corrupted.
Commit: 3a4e105
Download the full acceptance test report here (report will disappear after 90 days).
✅ Rule acceptance tests passed.

@bdferris-v2
Copy link
Collaborator Author

As an FYI to @isabelle-dr in case you have any feedback on the proposed design.

…This will allow us to break up some potential circular dependencies with upcoming support for notice documentation generation.
@bdferris-v2
Copy link
Collaborator Author

I discussed this offline with @davidgamez but I have proposed a refactor to where some key annotations and entity interface are stored (#1362) that will breakup a potential circular dependency. Critically, we want to use the new @GtfsValidationNotice annotation for notice processing, but there are already notices defined in core. By putting the annotation there as well, it limits our ability to do that processing from a Gradle module standpoint.

I have proposed moving the annotations into their own module. I think this has some nice properties down the road for splitting up our model API and our business logic, so I think it's a net win. I will update this PR based on the refactor PR.

@github-actions
Copy link
Contributor

✅ Rule acceptance tests passed.
New Errors: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
Dropped Errors: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
New Warnings: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
Dropped Warnings: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
0 out of 1423 sources (~0 %) are corrupted.
Commit: 06b01cd
Download the full acceptance test report here (report will disappear after 90 days).
✅ Rule acceptance tests passed.

@github-actions
Copy link
Contributor

✅ Rule acceptance tests passed.
New Errors: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
Dropped Errors: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
New Warnings: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
Dropped Warnings: 0 out of 1423 datasets (~0%) are invalid due to code change, which is less than the provided threshold of 1%.
0 out of 1423 sources (~0 %) are corrupted.
Commit: 73c4804
Download the full acceptance test report here (report will disappear after 90 days).
✅ Rule acceptance tests passed.

@bdferris-v2 bdferris-v2 merged commit 812eeac into master Mar 27, 2023
@bdferris-v2 bdferris-v2 deleted the issue/1324/notice_resources branch March 27, 2023 06:04
ryon pushed a commit to JarvusInnovations/gtfs-validator that referenced this pull request Apr 1, 2023
…a#1361)

* Initial entry for @GtfsValidationNotice annotation, which will be used to configure and document validation notices in source code.
bradyhunsaker pushed a commit to bradyhunsaker/gtfs-validator that referenced this pull request Apr 25, 2023
…a#1361)

* Initial entry for @GtfsValidationNotice annotation, which will be used to configure and document validation notices in source code.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants