-
Notifications
You must be signed in to change notification settings - Fork 55
Feat mongo tmp pulls #702
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 mongo tmp pulls #702
Conversation
…-mongo-2 # Conflicts: # composer.lock
# Conflicts: # tests/e2e/Adapter/Scopes/DocumentTests.php
…into feat-mongo-2
…into feat-mongo-2
…dependencies in composer.lock
…rom/to to castingBefore/After for clarity
…and composer.lock
…and composer.lock
# Conflicts: # docker-compose.yml # src/Database/Database.php # tests/e2e/Adapter/Scopes/AttributeTests.php
…ocuments, improving sequence retrieval logic and preserving document structure.
…uments for sequences without existing IDs, and update index length checks in tests to align with maximum index length constraints.
…files to improve code readability and maintainability.
… mapping in index definitions. Update attribute filtering logic to directly modify the attributes array for improved clarity and maintainability.
Feat mongo tmp with uuid7
…-tmp-pulls # Conflicts: # src/Database/Adapter/Pool.php # src/Database/Adapter/SQL.php # src/Database/Database.php
…s, improve error handling, and update comments for clarity. Disable Client.php binding in docker-compose for cleaner setup.
…nation and accurate document counting using aggregation. Improved error handling and added comments for clarity.
…Mongo adapter and uncomment test cases for notBetween functionality in DocumentTests, enhancing test coverage for various scenarios.
…y for better clarity and access.
…-tmp-pulls # Conflicts: # composer.lock # src/Database/Database.php
…DB integration. Cleaned up code in Database.php for better cursor encoding and ensured proper initialization. Adjusted DocumentTests for improved readability and consistency.
…porarily disable it for further review and refinement.
…rading utopia-php/mongo to version 0.6.0, brick/math to 0.14.0, and open-telemetry/api to 1.5.0. Added symfony/polyfill-php83 for compatibility with PHP 8.3 features. Updated phpunit to version 9.6.26 and utopia-php/framework to 0.33.27.
…-tmp-pulls # Conflicts: # src/Database/Adapter/Pool.php # src/Database/Adapter/SQL.php
…method and implemented support checks for spatial axis order and distance calculations between multi-dimension geometries.
|
Caution Review failedThe pull request is closed. WalkthroughAdds MongoDB support: new Mongo adapter, Docker/compose setup, Composer dependency, CI matrix updates, and E2E tests. Database core now invokes adapter castingBefore/castingAfter and handles DATETIME via adapter->isMongo()/setUTCDatetime. Public API changes include Adapter interface updates, Database constant rename to VAR_UUID7, and query converters made instance methods. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
participant Client
participant Database
participant Adapter as Adapter (SQL/Mongo)
participant Store as Backend Store
rect rgba(230,240,255,0.4)
note over Database,Adapter: Create/Update flow with casting
Client->>Database: createDocument(collection, doc)
Database->>Adapter: castingBefore(collection, doc)
Adapter-->>Database: doc'
Database->>Adapter: createDocument(collection, doc')
Adapter->>Store: Persist
Store-->>Adapter: Stored doc
Adapter-->>Database: stored doc
Database->>Adapter: castingAfter(collection, stored doc)
Adapter-->>Database: doc''
Database-->>Client: doc''
end
rect rgba(240,255,230,0.4)
note over Database,Adapter: Read flow with casting
Client->>Database: getDocument(collection, id)
Database->>Adapter: getDocument(collection, id)
Adapter->>Store: Fetch
Store-->>Adapter: doc
Adapter-->>Database: doc
Database->>Adapter: castingAfter(collection, doc)
Adapter-->>Database: doc'
Database-->>Client: doc'
end
rect rgba(255,245,230,0.4)
note over Database,Adapter: DATETIME normalization
Database->>Adapter: isMongo()
alt Mongo
Database->>Adapter: setUTCDatetime(value)
else SQL-like
Database->>Database: DateTime::setTimezone(UTC)
end
end
Estimated code review effort🎯 5 (Critical) | ⏱️ ~120 minutes Possibly related PRs
Poem
✨ Finishing touches
🧪 Generate unit tests
📜 Recent review detailsConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (20)
Tip 👮 Agentic pre-merge checks are now available in preview!Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.
Please see the documentation for more information. Example: reviews:
pre_merge_checks:
custom_checks:
- name: "Undocumented Breaking Changes"
mode: "warning"
instructions: |
Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal).Please share your feedback with us on this Discord post. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary by CodeRabbit
New Features
Tests
Chores