-
Notifications
You must be signed in to change notification settings - Fork 1
release 1 #279
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
Merged
Merged
release 1 #279
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Introduced DataProvenanceMixin to the `Thing` and `Location` models to enable reusable, efficient, polymorphic relationships to the DataProvenance table.
…s-to-pass-tests BDMS 221: updates to pass tests
The database tables are snake_case, so for consistency and ease of debugging, the `target_table` values should also use snake_case.
Refined the _thing_target and _location_target relationships to ensure DataProvenance.target_table uses snake_case ('thing', 'location') for the target table name.
…or handling and logging
… for class-level usage - Relocated DataProvenanceMixin from base.py to data_provenance.py for better modularity and provenance management. - Refactored mixin to use cls in @declared_attr for proper class-level relationship definition.
…thing_id and add related test assertions
feat: add transducer observation handling and improve database initialization
…nformation. - Added new `origin_source` and `collection_method` categories and terms. - Added 'meters' as a term associated with the `unit` category. - Added `OriginStatus` to `enums.py`.
…nformation. - Added new `origin_source` and `collection_method` categories and terms. - Added 'meters' as a term associated with the `unit` category. - Added `OriginStatus` to `enums.py`.
# Conflicts: # core/initializers.py
…table in Notes model; reintroduce NotesMixin for polymorphic relationships
…environment and notes files
…re-well-info-models-schemas BDMS-221-225: Polymorphic DataProvenance model
…sfer-and-updates BDMS 233: notes transfer and updates
…and session management
…and add test cases
…est files for clarity
…es and refactor measuring point height validation
…handling in photo retrieval
Because eager loading was defined in the models, it was being applied every time those models were queried, leading to unnecessary data being loaded in many cases. This change moves the eager loading logic to the service layer, applying it only at the endpoints that require it. This optimizes performance by reducing redundant data fetching and ensures that only the necessary related data is loaded when needed.
If a full ThingResponse is used in ContactResponse, it can lead to performance issues due to lazy loading of unneeded fields. To preclude this from happening, a new ThingResponseForContact schema has been created since all that is needed in this context are the id and name of the Things related to a Contact.
moving forward all eager loading will be defined at endpoints, not in the model definitions (unless they are in polymorphic models)
every observation is linked to a parameter, so eager loading of parameters when loading observations will always be needed
…ctor NO TICKET: eager load refactor
feat: refactor test configuration for improved clarity and maintainability
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why
This PR addresses the following problem / context:
How
Implementation summary - the following was changed / added / removed:
Notes
Any special considerations, workarounds, or follow-up work to note?