Skip to content

DOCSP-41957 - Mongo Client #106

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

Conversation

mongoKart
Copy link
Collaborator

Pull Request Info

PR Reviewing Guidelines

JIRA - https://jira.mongodb.org/browse/DOCSP-41957
Staging - https://preview-mongodbmongokart.gatsbyjs.io/php-library/docsp-41957-mongo-client/connect/client/

Self-Review Checklist

  • Is this free of any warnings or errors in the RST?
  • Did you run a spell-check?
  • Did you run a grammar-check?
  • Are all the links working?
  • Are the facets and meta keywords accurate?

@@ -24,3 +24,4 @@ php-library = "MongoDB PHP Library"

[constants]
php-library = "MongoDB PHP Library"
driver-short = "PHP library"
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

using "driver" so existing source constant references keep working. can rename all refs in a later PR if needed

- Optional. Authentication credentials. If you include these, the client
authenticates the user against the database specified in ``authSource``.
For more information about the ``authSource`` connection option, see
:ref:`php-auth`.
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

broken for now


- Optional. A query string that specifies connection-specific
options as ``<name>=<value>`` pairs. See
:ref:`php-connection-options` for a full description of
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

broken for now

@rustagir rustagir self-requested a review August 16, 2024 14:06
- Required. A prefix that identifies this as a string in the
standard connection format.

* - ``username:password``
Copy link
Collaborator

Choose a reason for hiding this comment

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

S: change to db_username and db_password

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

do these need to be disambiguated from other credentials? the following paragraph also says they're for the DB.

Copy link
Collaborator

Choose a reason for hiding this comment

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

I think it could be either. Just figured we might start integrating those placeholders where applicable so that there are fewer mis-matches

Copy link
Collaborator

Choose a reason for hiding this comment

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

Have you considered including that connection string image on this page and using those placeholders instead? another option

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Not opposed to this change, but should we be consistent with the Server manual?

https://www.mongodb.com/docs/manual/reference/connection-string/#connection-string-components

Copy link
Member

Choose a reason for hiding this comment

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

I'm a bit late here, but I don't think these should be db_username and db_password. DB-backed auth is but one mechanism. These could be credentials for a different auth mechanism, so more generic names are appropriate.

See also: connection string spec

Co-authored-by: Rea Rustagi <85902999+rustagir@users.noreply.github.com>
@mongoKart mongoKart requested a review from rustagir August 16, 2024 14:46
Copy link
Collaborator

@rustagir rustagir left a comment

Choose a reason for hiding this comment

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

a few more small things!

:manual:`Connection Strings </reference/connection-string>` in the
MongoDB Server documentation.

Create a ``MongoDB\Client``
Copy link
Collaborator

Choose a reason for hiding this comment

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

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I'll follow the Style Guide, but this is a Bad Rule imo


Because each ``MongoDB\Client`` object represents a pool of connections to the
database, most applications require only a single instance of
``MongoDB\Client``, even across multiple requests.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
``MongoDB\Client``, even across multiple requests.
``MongoDB\Client`` that you can use across multiple requests.

mongoKart and others added 2 commits August 16, 2024 11:46
Co-authored-by: Rea Rustagi <85902999+rustagir@users.noreply.github.com>
@mongoKart mongoKart requested a review from rustagir August 16, 2024 17:00
Copy link
Collaborator

@rustagir rustagir left a comment

Choose a reason for hiding this comment

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

lgtm

Co-authored-by: Rea Rustagi <85902999+rustagir@users.noreply.github.com>
@mongoKart mongoKart requested review from a team and mana2-bot and removed request for a team August 16, 2024 18:20
@GromNaN GromNaN requested review from GromNaN and removed request for mana2-bot August 20, 2024 13:54
Comment on lines 101 to 102
Because each ``MongoDB\Client`` object represents a pool of connections to the
database, you can use a single instance of the class across multiple requests.
Copy link
Member

Choose a reason for hiding this comment

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

To be checked by @jmikola @alcaeus, but I don't think there's a pool of connections, since requests are blocking and PHP is monothread.

Copy link
Member

Choose a reason for hiding this comment

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

That is correct, PHP does not implement a connection pool. We have an article in the extension docs that details the connection persistence mechanism used by the PHP driver (current and the legacy one used before 1.2.0).

@mongoKart mongoKart requested a review from GromNaN August 27, 2024 20:30
Copy link
Member

@GromNaN GromNaN left a comment

Choose a reason for hiding this comment

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

LGTM

@mongoKart mongoKart merged commit ad5b511 into mongodb:php-standardization Aug 27, 2024
1 of 2 checks passed
@mongoKart mongoKart deleted the docsp-41957-mongo-client branch August 27, 2024 22:08
norareidy added a commit that referenced this pull request Sep 27, 2024
* Add PR template

* Scaffolding

* DOCSP-41953: Create a deployment (#93)

* DOCSP-41953: Create a deployment

* toc

* add troubleshoot file

* DOCSP-41954: Create a connection string (#99)

* DOCSP-41954: Create a connection string

* edits

* spacing

* DOCSP-42388: Next steps (#101)

* DOCSP-41975: Retrieve data (#102)

* DOCSP-41975: Retrieve data

* fixes

* quotes

* code fix

* JS feedback

* JT feedback

* code format

* fix

* JT feedback 2

* edit

* DOCSP-41952: Download and Install (#92)

* DOCSP-41952: Download and Install

* edits

* toc, fixes

* AS feedback

* AS feedback 2

* typo

* JT feedback

* DOCSP-41976: Projection guide (#104)

* DOCSP-41976: Projection guide

* edits

* fixes

* code edits, output

* JS feedback

* JT feedback

* DOCSP-41955: Connect to MongoDB (#100)

* DOCSP-41955: Connect to MongoDB

* edits

* edit

* RR feedback

* typo

* code edit

* DOCSP-41974: Specify a query (#103)

* DOCSP-41974: Specify a query

* edits

* output

* fix

* snooty.toml

* RR feedback

* code edits

* DOCSP-41977: Specify documents to return (#105)

* DOCSP-41977: Specify documents to return

* edits

* code output

* toc

* MM feedback, code edits

* edit

* JT feedback

* edit

* test

* MM feedback 2

* DOCSP-41957 - Mongo Client (#106)

Co-authored-by: Rea Rustagi <85902999+rustagir@users.noreply.github.com>

* DOCSP-41960 - TLS (#114)

* DOCSP-41978: Count documents (#108)

* DOCSP-41978: Count documents

* edits

* code ex format

* link

* RR feedback

* DOCSP-41979: Distinct values (#109)

Adds a Distinct Values guide.

* DOCSP-41981: Change streams (#113)

Adds a Change Streams guide.

* DOCSP-41993 Compatibility Table

* test webhook

* toc and sharedincludes

* lang table

* edits

* headings

* retry on shared include

* shared includes

* callout

* help links

* DOCSP-41958 - Connection Targets (#107)

Co-authored-by: Nora Reidy <nora.reidy@mongodb.com>
Co-authored-by: Andreas Braun <git@alcaeus.org>

* tech review

* DOCSP-41968: Update documents (#118)

* DOCSP-41968: Update documents

* snooty fix

* edits

* DOCSP-41967: Insert documents (#116)

* DOCSP-41967: Insert documents

* build

* snooty

* edit

* JS feedback

* JT feedback

* JT feedback 2

* DOCSP-41980: Cursor guide (#110)

* DOCSP-41980: Cursor guide

* edits

* code edits

* output

* vale fix

* MM feedback

* edit

* fix code ex

* edit

* JT feedback

* DOCSP-41988: Aggregation (#115)

* DOCSP-41988: Aggregation

* toc

* edits

* code edit

* JS feedback

* dev center

* JM feedback

* explain api link

* JM feedback 2

* DOCSP-41983: indexes landing pg

* wip

* wip

* MM PR fixes 1

* JM tech review 1

* JM tech review 1

* wip

* wip

* DOCSP-41969: Replace documents (#125)

* DOCSP-41969: Replace documents

* edits

* wording

* SA

* JT feedback

* JM tech review 2

* Add files via upload

* DOCSP-41970: Delete documents (#128)

Adds a guide that shows how to delete documents.

* DOCSP-41984: single field index

* wip

* JS PR fixes 1

* wip

* DOCSP-41986: multikey indexes

* links

* bullet pts

* JS suggestion

* fix whitespace per JM comment

* uncomment

* DOCSP-41985: compound idx

* small fix

* DOCSP-41966: Write operations landing (#135)

* DOCSP-41966: Write operations landing

* edits

* RR feedback

* JT feedback

* JT feedback 2

* gridfs examples

* DOCSP-42026: In use encryption (#142)

* DOCSP-42026: In use encryption

* edit

* DOCSP-41972: GridFS guide (#133)

* DOCSP-41972: GridFS guide

* fixes

* code edits

* fix

* RR feedback

* phpmethod

* fix

* JM most feedback

* alternate upload/download methods

* file revisions

* code fix

* tojson

* edits

* JM feedback 2

* edits

* JM last feedback

* DOCSP-41971: Bulk write (#130)

* DOCSP-41971: Bulk write

* edits

* JS feedback

* api links

* DOCSP-41987: atlas search idx

* resolve todos

* toc

* DOCSP-41963: Databases and collections (#136)

* DOCSP-41963: Databases and collections

* edits

* phpmethod

* code fix

* MW feedback

* fix

* MW feedback 2

* JM feedback

* JM feedback 2

* JS fix

* internal review

* DOCSP-41982: cluster monitoring

* small fixes

* MW PR fixes 1

* test netlify

* spacing

* try using out of repo ref and add back legend

* ou of repo ref

* legend glitch

* JM tech review 1

* single quotes

* links

* vale

* remove older driver version past 1.15

* DOCSP-41991 What's New

* add rest of versions

* fix links

* fix links

* JM tech review 2

* DOCSP-41964: Time series collections (#138)

* DOCSP-41964: Time series collections

* toc

* edits

* keywords

* SA feedback

* JT feedback

* JM final fixes

* review comments

* typo

* DOCSP-41973 Read Landing Page

* review comments

* vale errors

* small thing

* full page with ex

* add page

* meta

* DOCSP-41965: Read and write settings (#146)

* DOCSP-41965: Read and write settings

* more info

* edits

* edits

* headers

* fix link

* fix

* RR feedback

* api docs

* fix

* fix

* DOCSP-41950: Landing page (#150)

* DOCSP-41950: Landing page

* fix build errors

* fixes, data formats

* toc

* fix

* data formats folder

* RR feedback

* fix

* remove file

* edit sample app intro

* change links in count sections

* update sample app intro

* DOCSP-41990: Authentication mechanisms (#139)

* DOCSP-41990: Authentication mechanisms

* client tabs

* edits

* edits

* add info

* reduce repetition

* add section

* fix link

* MW feedback

* fix

* JM most feedback

* move to code file

* more JM edits

* JM feedback 2

* DOCSP-41989: Security landing page (#149)

* DOCSP-41989: Security landing page

* more info

* edits

* snooty.toml

* edits

* RR feedback

* JM feedback

* DOCSP-41962 - Stable API (#117)

Co-authored-by: Jeremy Mikola <jmikola@gmail.com>

* DOCSP-41992 Upgrade versions

* toc

* edits

* how to upgrade sections

* style

* edit

* edit

* review comments

* ref

* Revise descriptions for server opening/closed events

* DOCSP-43204: Connection landing page (#147)

* DOCSP-43204: Connection landing page

* toc edit

* edits

* remove compression

* fix

* sample app

* snooty

* JM feedback

* replica set

* JM feedback 2

* JM last feedback

* DOCSP-43819: php 1.20 release

* fix

* DOCSP-41956: run a command

* wip

* formatting fix

* JS PR fixes 1

* link fix

* style fixes

* JT tech review 1

* wip

* JM tech review

* tree

* api links

* links

* JM tech review 2

* small fixes

* add ext upgrade command

* DOCSP-41995: transaction

* wip

* update code

* NR PR fixes 1

* wip

* add emphasis

* add with_txn() method to api links

* cxn string env

* edit

* JM tech review 1

* remove dupe sc

* tech review

* wrap fix

* edit copy

* DOCSP-41959 - Connection Options (#112)

Co-authored-by: Nora Reidy <nora.reidy@mongodb.com>
Co-authored-by: Jeremy Mikola <jmikola@gmail.com>

* DOCSP-43396: Cleanup (#151)

* DOCSP-43396: Cleanup

* quickstart fix

* code fixes

* edit

* snooty

* edit

* code output

* build log errors

* another build fix

* add info

* upgrade guide to landing

* fix

* driver mentions

* RR feedback

* build fix

* build fix

* php directives

---------

Co-authored-by: Mike Woofter <108414937+mongoKart@users.noreply.github.com>
Co-authored-by: Rea Rustagi <85902999+rustagir@users.noreply.github.com>
Co-authored-by: Lindsey Moore <lindsey.moore@mongodb.com>
Co-authored-by: Andreas Braun <git@alcaeus.org>
Co-authored-by: rustagir <rea.rustagi@mongodb.com>
Co-authored-by: Brandon Ly <brandonly@lostcoding.com>
Co-authored-by: lindseymoore <71525840+lindseymoore@users.noreply.github.com>
Co-authored-by: Jeremy Mikola <jmikola@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants