Conversation
Greptile SummaryThis PR updates the Ruby SDK to version 25.1.0, adding new API surface (SES messaging provider, OAuth2 server configuration, password strength policy, audits DB health check, and new enum values) and carrying a meaningful internal refactor of how the
Confidence Score: 4/5Safe to merge; new features follow established patterns and the header refactor is correctly propagated across all service files. The lib/appwrite/client.rb (set_project behavioral change) and lib/appwrite.rb (require ordering) Important Files Changed
Reviews (1): Last reviewed commit: "chore: update Ruby SDK to 25.1.0" | Re-trigger Greptile |
| def set_project(value) | ||
| add_header('x-appwrite-project', value) | ||
| @config['project'] = value | ||
|
|
||
| self | ||
| end |
There was a problem hiding this comment.
Asymmetry between
set_project and all other setters
Every other setter (set_key, set_jwt, set_locale, set_session, etc.) still calls add_header in addition to storing in @config, meaning those values are automatically present in every request via the default @headers. set_project now only stores in @config, so the X-Appwrite-Project header is absent from @headers and only appears in requests when a service method explicitly calls @client.get_config('project'). Any caller that uses client.get_headers (e.g., for debugging or testing) will no longer see the project ID there, and any call path that bypasses service-level api_headers would silently omit the project header.
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
| require_relative 'appwrite/models/policy_password_history' | ||
| require_relative 'appwrite/models/policy_password_strength' | ||
| require_relative 'appwrite/models/policy_password_personal_data' |
There was a problem hiding this comment.
The new
policy_password_strength require is inserted out of alphabetical order — personal_data (p) should precede strength (s). While Ruby's require order doesn't affect correctness here, the existing file follows strict alphabetical ordering for requires and this breaks that convention.
| require_relative 'appwrite/models/policy_password_history' | |
| require_relative 'appwrite/models/policy_password_strength' | |
| require_relative 'appwrite/models/policy_password_personal_data' | |
| require_relative 'appwrite/models/policy_password_history' | |
| require_relative 'appwrite/models/policy_password_personal_data' | |
| require_relative 'appwrite/models/policy_password_strength' |
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
This PR contains updates to the Ruby SDK for version 25.1.0.
What's Changed
createSesProviderandupdateSesProvidertomessagingupdateOAuth2Servertoprojectfor OAuth2 server settingsupdatePasswordStrengthPolicyandPolicyPasswordStrengthtoprojectgetAuditsDBhealth check tohealthpassword-strengthtoProjectPolicyIdapps.readandapps.writetoProjectKeyScopes