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.
Description
This pull request introduces a new direct database access layer for MongoDB in the
jac-scaleproject. It adds aDbclass with standard CRUD operations, aget_db()helper, and comprehensive tests to ensure correct functionality. This enhancement allows users and internal code to interact with MongoDB directly, improving flexibility and developer experience.Direct Database Access Layer:
Dbclass injac_scale/db.jacthat provides methods forfind_one,find,insert_one,update_one,delete_one, andcommitoperations on MongoDB collections. Also added aget_db()function for obtaining aDbinstance.Dbmethods injac_scale/impl/db.impl.jac, including handling MongoDB connections and CRUD operations. Thecommitmethod is a no-op, reflecting MongoDB's behavior.Testing and Documentation:
jac_scale/tests/test_db_direct.pyto provide comprehensive tests for the new direct database access functionality, including setup/teardown of a MongoDB container and validation of all CRUD operations.docs/docs/community/release_notes/jac-scale.mdto document the introduction of direct database access and the newDbclass.Closes #4355