Skip to content
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

C++ GA Docs Updates #3140

Merged
merged 14 commits into from
Jan 8, 2024
Merged

C++ GA Docs Updates #3140

merged 14 commits into from
Jan 8, 2024

Conversation

dacharyc
Copy link
Collaborator

@dacharyc dacharyc commented Jan 5, 2024

Pull Request Info

DO NOT MERGE until C++ GA release.

These PRs have already been individually reviewed and approved. This is a consolidated branch with all the changes for the C++ GA. Any review is just a check for anything that might have slipped through the prior reviews.

Release Notes

  • C++ SDK
    • Update docs throughout SDK for C++ GA release, including:
      • Remove "Preview" from naming.
      • Move Bluehawked, tested code examples out of the experimental namespace, and generate updated examples.
      • Remove tabs for "Current" and "Deprecated" (Beta and Alpha) syntaxes.
      • Remove .. versionadded:: and .. versionchanged:: directives to reset for GA release.
      • Update API reference links.
      • Update the Google authentication examples for updated naming in v0.6.0-preview.
      • Add new documentation and Bluehawked code examples for new functionality in GA:
        • Quick Start: New section about closing a realm.
        • Realm Files
          • Configure & Open a Realm: New section about closing a realm.
          • Reduce Realm File Size: New page about compacting a realm.
        • Application Services/Call a Function: Update the example to remove BSON and use the new string-based API.
        • Manage Users
          • Authenticate Users: Update the Custom Function User example to remove BSON and use the new string-based API.
          • Custom User Data: Update examples that show calling a Function to create, update, and delete user data to remove BSON and use the new string-based API.
        • Sync Device Data/Handle Sync Errors: New "Client Reset" section with info and code examples for client resets.

Review Guidelines

REVIEWING.md

dacharyc and others added 9 commits January 3, 2024 10:21
## Pull Request Info

Jira ticket: https://jira.mongodb.org/browse/DOCSP-34757

- [Staged
Changes](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-34757/):
Remove "Preview" and "preview" everywhere EXCEPT as already removed in
mongodb#3113 and mongodb#3130 . There are a couple of places in page copy where I did
not remove preview naming because I already did that in the PR that
removes the experimental namespace. And there are places in version
directives that use the preview naming, but I already deleted those
references in the PR that removed the version directives.

### Review Guidelines


[REVIEWING.md](https://github.com/mongodb/docs-realm/blob/master/REVIEWING.md)
## Pull Request Info

Jira ticket: https://jira.mongodb.org/browse/DOCSP-34763

- [C++ Staged
Docs](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-34763/sdk/cpp/):
Remove version directives that still exist in the docs after removing
the experimental namespace. As part of removing the experimental
namespace, I removed the "Current" and "Deprecated" tabs, so version
directives that exist in those tabs have already been removed in the
related PR (mongodb#3113 ). Apparently I also removed one on the Quick Start
page that was next to a code example I updated. So these changes only
touch version directives that were not touched in that PR.

I did a search for all the `.. version` directives in C++, and then I
did a search for any remaining "version" references, and I compared
every instance against the related PR, so I think this is good and
includes all instances that should be touched here. But I welcome a
second set of eyes!

### Review Guidelines


[REVIEWING.md](https://github.com/mongodb/docs-realm/blob/master/REVIEWING.md)
## Pull Request Info

Jira ticket: https://jira.mongodb.org/browse/DOCSP-35190

- [Reduce Realm File
Size](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-35190/sdk/cpp/realm-files/compact-realm/):
New page with example for compacting a realm in C++ SDK.

Note: This example is in a new one-off unit test suite and uses the
experimental namespace. When the SDK merges the PR that removes the
experimental namespace, I'll get my corresponding docs PR merged and
then move this into the local test suite established there, and remove
this from the experimental namespace.

### Reminder Checklist

Before merging your PR, make sure to check a few things.

- [x] Did you tag pages appropriately?
  - genre
  - meta.keywords
  - meta.description
- [x] Describe your PR's changes in the Release Notes section
- [x] Create a Jira ticket for related docs-app-services work, if any

### Release Notes

- **C++ SDK**
- Realm Files/Compact a Realm: New page with example for compacting a
realm in C++ SDK.

### Review Guidelines


[REVIEWING.md](https://github.com/mongodb/docs-realm/blob/master/REVIEWING.md)

---------

Co-authored-by: cbullinger <[email protected]>
## Pull Request Info

Jira ticket: https://jira.mongodb.org/browse/DOCSP-35188

- [Configure & Open a
Realm](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-35188/sdk/cpp/realm-files/configure-and-open-a-realm/#close-a-realm):
New "Close a Realm" section with code example
- [Quick
Start](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-35188/sdk/cpp/quick-start/#close-a-realm):
New "Close a Realm" section with code example

### Reminder Checklist

Before merging your PR, make sure to check a few things.

- [ ] Did you tag pages appropriately?
  - genre
  - meta.keywords
  - meta.description
- [x] Describe your PR's changes in the Release Notes section
- [x] Create a Jira ticket for related docs-app-services work, if any

### Release Notes

- **C++ SDK**
- Quick Start: New "Close a Realm" section with Bluehawked, tested code
example.
- Realm Files/Configure & Open a Realm: New "Close a Realm" section with
Bluehawked, tested code example.

### Review Guidelines


[REVIEWING.md](https://github.com/mongodb/docs-realm/blob/master/REVIEWING.md)
## Pull Request Info

Jira ticket: https://jira.mongodb.org/browse/DOCSP-34760

- [Handle Sync
Errors](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-34760/sdk/cpp/sync/handle-sync-errors/#client-reset):
New Client Reset section, with details and code examples showing client
reset methods.

### Reminder Checklist

Before merging your PR, make sure to check a few things.

- [x] Did you tag pages appropriately?
  - genre
  - meta.keywords
  - meta.description
- [x] Describe your PR's changes in the Release Notes section
- [x] Create a Jira ticket for related docs-app-services work, if any

### Release Notes

- **C++ SDK**
- Sync Data/Handle Sync Errors: Add information and code examples for
client reset.

### Review Guidelines


[REVIEWING.md](https://github.com/mongodb/docs-realm/blob/master/REVIEWING.md)
## Pull Request Info

Jira ticket: https://jira.mongodb.org/browse/DOCSP-34756

- [C++ SDK Staged
Changes](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-34756/sdk/cpp/)

This PR updates the code examples for the C++ GA. 

- Removes the experimental namespace
- Removes the alpha and beta test suites
- Removes the Current/Deprecated tabs on the docs pages
- Removes the `Tip` directive about features using the experimental
namespace
- Removes "beta" naming from all code examples

This does not remove any beta/preview language from the docs themselves,
or change the code examples except minor tweaks required to get the
tests to pass.

For review, I'm looking for you to check for:

- Code examples that should be on the page are present
- I've appropriately Bluehawk replaced realm object names to simpler
versions
- I've removed the Current/Deprecated tabs on all pages
- I haven't accidentally removed any text that was in the Current tab of
a Current/Deprecated tab
- Any model names referred to in the copy on the page matches the model
names in the code examples

I've done a preliminary check, fixed some things, and I think it looks
good, but I'm sure I've missed things.

Separate PRs will follow to update the SDK naming, remove version
directives, update API reference links, and add new functionality.

A few code examples are currently commented out but will still show up
on the pages. Support for BSON has been removed from the SDK. I'll split
out separate tickets to address those code examples.

I am not looking for grammar or wording changes for any page or code
example content, unless I've introduced an erroneous change in this PR.
The scope of changes is too large for me to address grammar/content
errors here. If you spot something egregious, feel free to start a
document or Jira ticket with things for me to address as fast follows.

### Review Guidelines


[REVIEWING.md](https://github.com/mongodb/docs-realm/blob/master/REVIEWING.md)
…t test suites (mongodb#3135)

## Pull Request Info

Jira ticket: https://jira.mongodb.org/browse/DOCSP-35255

- [Configure & Open a
Realm](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-35255/sdk/cpp/realm-files/configure-and-open-a-realm/#close-a-realm):
Update close a realm example after moving out of experimental namespace
- [Reduce Realm File
Size](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-35255/sdk/cpp/realm-files/compact-realm/):
Update compact a realm example after moving out of experimental
namespace
- [Handle Sync
Errors](https://preview-mongodbdacharyc.gatsbyjs.io/realm/DOCSP-35255/sdk/cpp/sync/handle-sync-errors/#client-reset):
Update client reset code examples after moving out of experimental
namespace

### Review Guidelines


[REVIEWING.md](https://github.com/mongodb/docs-realm/blob/master/REVIEWING.md)
Copy link

github-actions bot commented Jan 5, 2024

Readability for Commit Hash: ed21f73

You can see any previous Readability scores (if they exist) by looking
at the comment's history.

Readability scores for changed documents:

  • source/sdk/cpp: Grade Level: 10.2, Reading Ease: 42.78
  • source/sdk/cpp/application-services: Grade Level: 8.5, Reading Ease: 57.98
  • source/sdk/cpp/realm-files: Grade Level: 6.9, Reading Ease: 56.62
  • source/sdk/cpp/telemetry: Grade Level: 0.9, Reading Ease: 93.81
  • source/sdk/cpp/install: Grade Level: 7.3, Reading Ease: 61.12
  • source/sdk/cpp/quick-start: Grade Level: 7.0, Reading Ease: 67.25
  • source/sdk/cpp/manage-users: Grade Level: 8.3, Reading Ease: 58.38
  • source/sdk/cpp/logging: Grade Level: 7.7, Reading Ease: 65.42
  • source/sdk/cpp/react-to-changes: Grade Level: 10.8, Reading Ease: 41.16
  • source/sdk/cpp/sync: Grade Level: 9.9, Reading Ease: 48.81
  • source/sdk/cpp/sync/log-level: Grade Level: 7.4, Reading Ease: 66.13
  • source/sdk/cpp/sync/sync-subscriptions: Grade Level: 7.1, Reading Ease: 66.94
  • source/sdk/cpp/sync/write-to-synced-realm: Grade Level: 10.0, Reading Ease: 53.92
  • source/sdk/cpp/sync/handle-sync-errors: Grade Level: 9.1, Reading Ease: 56.25
  • source/sdk/cpp/sync/stream-data-to-atlas: Grade Level: 9.7, Reading Ease: 54.83
  • source/sdk/cpp/sync/manage-sync-session: Grade Level: 6.2, Reading Ease: 69.28
  • source/sdk/cpp/users/authenticate-users: Grade Level: 8.0, Reading Ease: 59.09
  • source/sdk/cpp/users/custom-user-data: Grade Level: 10.6, Reading Ease: 52.39
  • source/sdk/cpp/users/manage-email-password-users: Grade Level: 9.0, Reading Ease: 51.14
  • source/sdk/cpp/app-services/connect-to-app: Grade Level: 7.5, Reading Ease: 60.61
  • source/sdk/cpp/app-services/call-a-function: Grade Level: 8.7, Reading Ease: 62.88
  • source/sdk/cpp/model-data/object-models: Grade Level: 9.0, Reading Ease: 56.66
  • source/sdk/cpp/model-data/relationships: Grade Level: 9.4, Reading Ease: 50.23
  • source/sdk/cpp/model-data/supported-types: Grade Level: 9.9, Reading Ease: 49.01
  • source/sdk/cpp/crud/update: Grade Level: 11.6, Reading Ease: 33.71
  • source/sdk/cpp/crud/filter-data: Grade Level: 8.8, Reading Ease: 57.06
  • source/sdk/cpp/crud/read: Grade Level: 8.8, Reading Ease: 57.06
  • source/sdk/cpp/crud/delete: Grade Level: 6.6, Reading Ease: 62.75
  • source/sdk/cpp/crud/create: Grade Level: 9.5, Reading Ease: 50.02
  • source/sdk/cpp/crud/threading: Grade Level: 7.8, Reading Ease: 65.12
  • source/sdk/cpp/realm-files/encrypt-a-realm: Grade Level: 8.0, Reading Ease: 64.61
  • source/sdk/cpp/realm-files/compact-realm: Grade Level: 6.7, Reading Ease: 68.06
  • source/sdk/cpp/realm-files/configure-and-open-a-realm: Grade Level: 7.2, Reading Ease: 66.64
  • source/sdk/swift/sync/handle-sync-errors: Grade Level: 9.5, Reading Ease: 50.02

For Grade Level, aim for 8 or below.

For Reading Ease scores, aim for 60 or above:

Score Difficulty
90-100 Very Easy
80-89 Easy
70-79 Fairly Easy
60-69 Medium
50-59 Fairly Hard
30-49 Hard
0-29 Very Hard

For help improving readability, try Hemingway App.

@dacharyc dacharyc changed the title C++ GA (Dup for staging build) - DO NOT MERGE C++ GA Docs Updates Jan 5, 2024
This was referenced Jan 5, 2024
## Pull Request Info

Jira ticket: https://jira.mongodb.org/browse/DOCSP-35298

There is no good reason the Sync tests shouldn't run in the existing
workflow. When I run the Sync tests by themselves, they work. So I guess
I'll break them out into separate workflows, which will speed them up,
anyway, so they can run in parallel instead of serially.

Presumably this will also resolve the failing Sync tests, since they
worked fine in mongodb#3142 when I broke them out separately.

### Review Guidelines


[REVIEWING.md](https://github.com/mongodb/docs-realm/blob/master/REVIEWING.md)
Copy link
Collaborator

@cbullinger cbullinger left a comment

Choose a reason for hiding this comment

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

Branch looks solid 💪 A few minor, non-blocking gravy suggestions, but overall, LGTM! Nice work!

npx bluehawk snip $CPP_EXAMPLES/local --ignore build -o $GENERATED_EXAMPLES

# Bluehawk sync examples
echo "Bluehawking C++ sync SDK examples"
Copy link
Collaborator

Choose a reason for hiding this comment

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

[microscopic nit]

Suggested change
echo "Bluehawking C++ sync SDK examples"
echo "Bluehawking C++ sync examples"

source/sdk/cpp/model-data/relationships.txt Outdated Show resolved Hide resolved
examples/cpp/sync/authentication.cpp Outdated Show resolved Hide resolved
=============================
=====================
Filter Data - C++ SDK
=====================

.. meta::
:keywords: code example
Copy link
Collaborator

Choose a reason for hiding this comment

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

[suggestion] out of scope for this, but maybe add a similar note/warning (re. C++ SDK not yet supporting the full range of RQL expressions) to the Sync Data landing page's Flexible Sync section

source/sdk/cpp/install.txt Show resolved Hide resolved
@@ -1,9 +1,9 @@
.. _cpp-configure-and-open-a-realm:
Copy link
Collaborator

Choose a reason for hiding this comment

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

[suggestion] out of scope, but maybe update the realm-files.txt container page with a TOC list. it currently is the only blank container page if you navigate to it

source/sdk/cpp/crud/create.txt Outdated Show resolved Hide resolved
@dacharyc dacharyc merged commit 7b7fd52 into mongodb:master Jan 8, 2024
8 checks passed
@dacharyc dacharyc deleted the cpp-ga branch January 8, 2024 19:33
@docs-builder-bot
Copy link

@dacharyc dacharyc mentioned this pull request Jan 8, 2024
dacharyc added a commit that referenced this pull request Jan 8, 2024
## Pull Request Info

This ticket incorporates a few outstanding review comments from #3140,
and it updates the unit test suites to use the release version -
`v1.0.0`.

- [CRUD/Filter
Data](https://preview-mongodbdacharyc.gatsbyjs.io/realm/cpp-ga-fast-follows/sdk/cpp/crud/filter-data/):
Update the note about supporting a subset of RQL and make it an include.
- [Sync Data/Manage Sync
Subscriptions](https://preview-mongodbdacharyc.gatsbyjs.io/realm/cpp-ga-fast-follows/sdk/cpp/sync/sync-subscriptions/#subscribe-to-objects-that-match-a-query):
Add the note about C++ supporting a subset of RQL to the section about
subscribing to objects that match a query.
- [Realm
Files](https://preview-mongodbdacharyc.gatsbyjs.io/realm/cpp-ga-fast-follows/sdk/cpp/realm-files/):
Add ToC to the blank container page in case someone navigates to it.

### Review Guidelines


[REVIEWING.md](https://github.com/mongodb/docs-realm/blob/master/REVIEWING.md)
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.

3 participants