-
Notifications
You must be signed in to change notification settings - Fork 85
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
chore(release): pulling release/3.0.0-beta.29 into main #1645
Conversation
* chore: add ninetailed example apps * fix: move integrations folder in examples
* chore: update readme - Add callout re: Control Plane Lite * Apply suggestions from engg. review
….0.0 (#1636) chore(deps): bump peterjgrainger/action-create-branch Bumps [peterjgrainger/action-create-branch](https://github.com/peterjgrainger/action-create-branch) from 2.4.0 to 3.0.0. - [Release notes](https://github.com/peterjgrainger/action-create-branch/releases) - [Commits](peterjgrainger/action-create-branch@v2.4.0...v3.0.0) --- updated-dependencies: - dependency-name: peterjgrainger/action-create-branch dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Moumita <[email protected]>
…to 1.0.9 (#1642) chore(deps): bump rudderlabs/github-action-check-pr-title Bumps [rudderlabs/github-action-check-pr-title](https://github.com/rudderlabs/github-action-check-pr-title) from 1.0.7 to 1.0.9. - [Release notes](https://github.com/rudderlabs/github-action-check-pr-title/releases) - [Commits](rudderlabs/github-action-check-pr-title@v1.0.7...v1.0.9) --- updated-dependencies: - dependency-name: rudderlabs/github-action-check-pr-title dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore: refactor workflows * chore: use latest action version * chore: address review comments from coderabbitai
WalkthroughThe suite of changes encompasses updates across various GitHub workflows and the introduction of new functionalities and configurations. These modifications streamline processes such as PR title checks, hotfix branch creation, deployment across environments, and integration of analytics services. Additionally, updates to Node.js versions, code owner adjustments, and enhancements in sample apps and integration packages reflect a broader effort to improve efficiency, security, and user experience in development practices. Changes
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1645 +/- ##
==========================================
+ Coverage 52.44% 53.89% +1.45%
==========================================
Files 584 461 -123
Lines 16662 15588 -1074
Branches 3234 3086 -148
==========================================
- Hits 8738 8401 -337
+ Misses 6535 5898 -637
+ Partials 1389 1289 -100 ☔ View full report in Codecov by Sentry. |
size-limit report 📦
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 66
Configuration used: CodeRabbit UI
Files ignored due to path filters (32)
examples/integrations/Ninetailed/sample-apps/app-using-npm/package-lock.json
is excluded by:!**/*.json
examples/integrations/Ninetailed/sample-apps/app-using-npm/package.json
is excluded by:!**/*.json
examples/integrations/Ninetailed/sample-apps/app-using-npm/public/favicon.ico
is excluded by:!**/*.ico
examples/integrations/Ninetailed/sample-apps/app-using-npm/public/logo192.png
is excluded by:!**/*.png
examples/integrations/Ninetailed/sample-apps/app-using-npm/public/logo512.png
is excluded by:!**/*.png
examples/integrations/Ninetailed/sample-apps/app-using-npm/public/manifest.json
is excluded by:!**/*.json
examples/integrations/Ninetailed/sample-apps/app-using-npm/src/logo.svg
is excluded by:!**/*.svg
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/package-lock.json
is excluded by:!**/*.json
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/package.json
is excluded by:!**/*.json
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/public/favicon.ico
is excluded by:!**/*.ico
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/public/logo192.png
is excluded by:!**/*.png
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/public/logo512.png
is excluded by:!**/*.png
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/public/manifest.json
is excluded by:!**/*.json
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/logo.svg
is excluded by:!**/*.svg
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/package-lock.json
is excluded by:!**/*.json
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/package.json
is excluded by:!**/*.json
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/public/favicon.ico
is excluded by:!**/*.ico
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/public/logo192.png
is excluded by:!**/*.png
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/public/logo512.png
is excluded by:!**/*.png
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/public/manifest.json
is excluded by:!**/*.json
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/logo.svg
is excluded by:!**/*.svg
package-lock.json
is excluded by:!**/*.json
package.json
is excluded by:!**/*.json
packages/analytics-js-integrations/package.json
is excluded by:!**/*.json
packages/analytics-js-integrations/project.json
is excluded by:!**/*.json
packages/analytics-js-plugins/package.json
is excluded by:!**/*.json
packages/analytics-js-plugins/project.json
is excluded by:!**/*.json
packages/analytics-js/package.json
is excluded by:!**/*.json
packages/analytics-js/project.json
is excluded by:!**/*.json
packages/loading-scripts/package.json
is excluded by:!**/*.json
packages/loading-scripts/project.json
is excluded by:!**/*.json
packages/sanity-suite/package.json
is excluded by:!**/*.json
Files selected for processing (70)
- .github/workflows/check_pr_title.yml (1 hunks)
- .github/workflows/create-hotfix-branch.yml (2 hunks)
- .github/workflows/deploy-beta.yml (4 hunks)
- .github/workflows/deploy-dev.yml (3 hunks)
- .github/workflows/deploy-npm.yml (5 hunks)
- .github/workflows/deploy-prod.yml (6 hunks)
- .github/workflows/deploy-sanity-suite.yml (1 hunks)
- .github/workflows/deploy-staging.yml (4 hunks)
- .github/workflows/draft-new-release.yml (4 hunks)
- .github/workflows/housekeeping.yaml (2 hunks)
- .github/workflows/publish-new-release.yml (5 hunks)
- .github/workflows/rollback.yml (1 hunks)
- .github/workflows/security-code-quality-and-bundle-size-checks.yml (3 hunks)
- .github/workflows/unit-tests-and-lint.yml (3 hunks)
- .nvmrc (1 hunks)
- CODEOWNERS (1 hunks)
- README.md (1 hunks)
- examples/integrations/Ninetailed/sample-apps/README.md (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/.gitignore (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/README.md (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/public/index.html (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/public/robots.txt (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/App.css (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/App.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/config.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/index.css (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/index.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/reportWebVitals.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/setupTests.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/.gitignore (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/README.md (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/public/index.html (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/public/robots.txt (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/App.css (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/App.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/config.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/index.css (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/index.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/reportWebVitals.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/setupTests.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/.gitignore (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/README.md (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/public/index.html (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/public/robots.txt (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/App.css (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/App.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/config.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/index.css (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/index.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/reportWebVitals.js (1 hunks)
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/setupTests.js (1 hunks)
- packages/analytics-js-integrations/CHANGELOG.md (1 hunks)
- packages/analytics-js-integrations/CHANGELOG_LATEST.md (1 hunks)
- packages/analytics-js-integrations/mocks/logger.js (1 hunks)
- packages/analytics-js-integrations/tests/integrations/Amplitude/browser.test.js (2 hunks)
- packages/analytics-js-integrations/jest.config.mjs (1 hunks)
- packages/analytics-js-integrations/src/integrations/Amplitude/browser.js (2 hunks)
- packages/analytics-js-integrations/src/integrations/Amplitude/utils.js (1 hunks)
- packages/analytics-js-plugins/CHANGELOG.md (1 hunks)
- packages/analytics-js-plugins/CHANGELOG_LATEST.md (1 hunks)
- packages/analytics-js-plugins/fixtures/msw.handlers.js (1 hunks)
- packages/analytics-js-plugins/tests/bugsnag/utils.test.ts (2 hunks)
- packages/analytics-js/CHANGELOG.md (1 hunks)
- packages/analytics-js/CHANGELOG_LATEST.md (1 hunks)
- packages/analytics-js/src/components/capabilitiesManager/detection/storage.ts (1 hunks)
- packages/analytics-v1.1/src/utils/JSFileLoader.js (1 hunks)
- packages/loading-scripts/CHANGELOG.md (1 hunks)
- packages/loading-scripts/CHANGELOG_LATEST.md (1 hunks)
- packages/sanity-suite/CHANGELOG.md (1 hunks)
- sonar-project.properties (2 hunks)
Files not summarized due to errors (1)
- packages/analytics-js-integrations/tests/integrations/Amplitude/browser.test.js: Error: Message exceeds token limit
Files skipped from review due to trivial changes (23)
- .nvmrc
- examples/integrations/Ninetailed/sample-apps/app-using-npm/.gitignore
- examples/integrations/Ninetailed/sample-apps/app-using-npm/public/index.html
- examples/integrations/Ninetailed/sample-apps/app-using-npm/public/robots.txt
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/App.css
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/config.js
- examples/integrations/Ninetailed/sample-apps/app-using-npm/src/index.css
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/.gitignore
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/public/index.html
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/public/robots.txt
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/App.css
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/index.css
- examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/setupTests.js
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/.gitignore
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/public/robots.txt
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/App.css
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/index.css
- examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/setupTests.js
- packages/analytics-js-integrations/jest.config.mjs
- packages/analytics-js-plugins/CHANGELOG_LATEST.md
- packages/analytics-js/CHANGELOG_LATEST.md
- packages/analytics-js/src/components/capabilitiesManager/detection/storage.ts
- packages/loading-scripts/CHANGELOG_LATEST.md
Additional comments: 78
CODEOWNERS (1)
- 1-1: The update to the CODEOWNERS file reduces the number of code owners. Ensure that the remaining individuals are correctly assigned and capable of covering the review needs for the affected areas of the project.
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/config.js (1)
- 1-1: Ensure that the
DATAPLANE_URL
is intended for the target environment. Usinglocalhost
might be suitable for development but should be reviewed for production deployments.examples/integrations/Ninetailed/sample-apps/app-using-npm/src/setupTests.js (1)
- 1-5: LGTM! Importing '@testing-library/jest-dom' enhances jest matchers for asserting on DOM nodes, which is a good practice for testing.
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/config.js (2)
- 1-1: Ensure that the
DATAPLANE_URL
is intended for the target environment. Usinglocalhost
might be suitable for development but should be reviewed for production deployments.- 3-3: Verify that the
CDN_URL
is correct and points to the intended version of the SDK for this sample app..github/workflows/check_pr_title.yml (1)
- 1-14: The updates to the workflow for checking PR titles, including running on a self-hosted Linux X64 environment and updating the action version, align with the objectives of improving automation. Ensure that the self-hosted runners are properly set up and maintained.
examples/integrations/Ninetailed/sample-apps/app-using-npm/src/reportWebVitals.js (1)
- 1-13: LGTM! The implementation for reporting web vitals using the web-vitals library follows best practices for performance monitoring and optimization.
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/reportWebVitals.js (1)
- 1-13: LGTM! The implementation for reporting web vitals is consistent across sample apps and follows best practices for performance monitoring.
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/reportWebVitals.js (1)
- 1-13: LGTM! The implementation for reporting web vitals is consistent across sample apps and follows best practices for performance monitoring.
packages/analytics-js-integrations/CHANGELOG_LATEST.md (1)
- 1-6: The updates in the changelog correctly document the bug fixes and enhancements, including the Ninetailed sample app path correction. The term "ninetailed" is appropriately used here, referring to the Ninetailed analytics service.
.github/workflows/create-hotfix-branch.yml (1)
- 9-21: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [1-21]
The updates to the workflow for creating hotfix branches, including running on a self-hosted Linux X64 environment and simplifying the branch naming convention, are well-considered improvements. These changes should enhance the CI/CD process and make hotfix branch management more straightforward.
examples/integrations/Ninetailed/sample-apps/app-using-npm/src/index.js (1)
- 1-17: The setup of the React application in this sample app, including the inclusion of
reportWebVitals
for performance monitoring, follows best practices and is correctly implemented.examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/index.js (1)
- 1-17: The setup of the React application in this sample app, including the inclusion of
reportWebVitals
for performance monitoring, is correctly implemented and follows best practices.examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/index.js (1)
- 1-17: The setup of the React application in this sample app, including the inclusion of
reportWebVitals
for performance monitoring, is correctly implemented and follows best practices..github/workflows/rollback.yml (1)
- 1-27: The
Rollback Production Deployment
workflow is well-structured and clearly specifies the necessary permissions, environment variables, and the use of thedeploy-prod.yml
workflow with a rollback action type. This approach provides a clear and efficient method for handling production rollbacks.packages/analytics-js-integrations/__mocks__/logger.js (1)
- 1-31: The mocking strategy implemented in
__mocks__/logger.js
is correctly set up, providing mock implementations for various logging functions. This approach is appropriate for unit testing, allowing for the isolation of the logger utility's behavior and capturing calls and arguments effectively.packages/analytics-js-plugins/__fixtures__/msw.handlers.js (1)
- 43-47: The addition of a new HTTP GET handler for
https://asdf.com/bugsnag.min.js
is noted. Ensure that the URL is correct and that this handler is necessary for your testing strategy..github/workflows/housekeeping.yaml (1)
- 21-21: The updated message for stale PRs is more informative. Consider refining it further to encourage contributors to take action, such as explicitly mentioning how to remove the 'Stale' label or add a comment.
.github/workflows/unit-tests-and-lint.yml (1)
- 41-47: The addition of the step to upload coverage reports to Codecov is a good practice. Ensure that the
CODECOV_TOKEN
is correctly set in your secrets and that the specified coverage report files are correctly generated by your tests..github/workflows/security-code-quality-and-bundle-size-checks.yml (1)
- 1-17: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [12-36]
The restructuring of the workflow into separate "bundle-size-checks" and "security-code-quality-checks" jobs improves clarity and functionality. Ensure that all necessary steps are correctly configured and included in each job.
packages/analytics-v1.1/src/utils/JSFileLoader.js (1)
- 24-24: The use of the nullish coalescing operator (
??
) for theasync
property is a precise improvement. Ensure to verify that this change does not inadvertently affect the expected behavior in any edge cases.sonar-project.properties (2)
- 9-9: Updating the
sonar.projectVersion
to3.0.0-beta.29
aligns with the release process. Ensure that this version number is consistent across all relevant documentation and configurations.- 31-31: The modification to coverage exclusions to use
assets/**/*
is a simplification. Verify that this new pattern does not unintentionally exclude files that should be included in coverage reports..github/workflows/deploy-sanity-suite.yml (1)
- 30-30: The update in the naming convention for configuring AWS credentials improves clarity. Ensure that all AWS-related configurations and secrets are up-to-date and correctly set.
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/App.js (1)
- 1-97: > 📝 NOTE
This review was outside the diff hunks, and no overlapping diff hunk was found. Original lines [102-117]
The UI structure and event handlers look good. However, for improved accessibility, consider adding
aria-label
attributes to the buttons to provide more context to screen readers about the actions they perform.examples/integrations/Ninetailed/sample-apps/app-using-npm/src/App.js (1)
- 91-106: The UI structure and event handlers are correctly implemented. Adding
aria-label
attributes to the buttons would enhance accessibility by providing more context to screen readers.examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/public/index.html (1)
- 28-44: The script for initializing RudderStack analytics is embedded directly in the HTML. While this is a common practice for analytics scripts, ensure that this approach aligns with the overall architecture and security policies of your project. Consider loading analytics scripts dynamically from your React application for more control over when and how these scripts are loaded.
.github/workflows/draft-new-release.yml (3)
- 12-12: The workflow uses a self-hosted runner with specific labels (
Linux
,X64
). Ensure that your self-hosted runner is properly configured and has the necessary dependencies installed to execute this workflow successfully.- 13-13: The conditional execution based on branch names (
develop
andhotfix/
) is a good practice for release workflows. Ensure that all relevant branches are included and that the naming conventions are consistently applied across your project.- 46-47: The logic to determine the
release_type
based on the branch name is clear and concise. However, consider documenting this logic in your project's README or contributing guidelines to ensure that all contributors are aware of how release types are determined.examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/App.js (1)
- 102-117: The UI structure and event handlers look good. However, for improved accessibility, consider adding
aria-label
attributes to the buttons to provide more context to screen readers about the actions they perform..github/workflows/deploy-dev.yml (6)
- 1-1: The workflow name has been updated to "Deploy to Development Environment" to reflect its purpose more clearly.
- 19-19: The job name has been updated to "Deploy to development environment" for consistency with the workflow name.
- 21-21: The conditions for job execution have been modified to include a broader range of branches and tags, enhancing the flexibility of the deployment process.
- 27-27: The step name for configuring AWS credentials has been adjusted to use lowercase, improving readability.
- 69-72: Added steps to create Cloudfront invalidations for different paths, which is crucial for ensuring that the latest changes are reflected promptly to users.
- 75-82: Introduced syncing files to S3 for the v1.1 SDK (legacy) with corresponding Cloudfront invalidation creation. This ensures that legacy versions of the SDK are also updated and invalidated correctly.
.github/workflows/publish-new-release.yml (8)
- 1-1: The workflow name has been updated to "Publish New Release to GitHub" for clarity and specificity.
- 15-15: The job name has been changed to "Publish new release," aligning with the updated workflow name.
- 16-16: The
runs-on
configuration has been updated, likely to ensure the job runs on a specific, self-hosted Linux X64 environment. This change could be for performance, security, or compatibility reasons.- 18-18: Adjusted the branch name conditions for triggering the job, ensuring that only merged pull requests from release or hotfix-release branches trigger the release process.
- 23-26: Refactored the extraction of the version from the branch name, which is crucial for correctly tagging and releasing versions.
- 56-56: Renamed a step to "Create monorepo release tag," which is more descriptive of the action being performed.
- 88-90: Updated the PR title in the step for creating GitHub releases to include the version number, improving clarity and traceability of releases.
- 94-96: Altered the conditions for deleting hotfix and release branches, ensuring that only the relevant branches are deleted after merging, which helps in maintaining a clean repository structure.
.github/workflows/deploy-staging.yml (5)
- 1-1: The workflow has been renamed to "Deploy to Staging Environment," which clearly indicates its purpose.
- 5-10: Added a trigger for pull requests on the main branch, expanding the conditions under which the staging deployment can occur. This is a significant change that allows for more flexible deployment strategies.
- 21-25: The job name and conditions for workflow execution have been updated for clarity and to reflect the broader scope of branches that can trigger the staging deployment.
- 31-31: Modified the AWS credentials configuration step to specify the staging environment's details, which is essential for deploying to the correct AWS environment.
- 72-82: Introduced steps for syncing files to S3 and creating Cloudfront invalidations for different versions, ensuring that the staging environment reflects the latest changes accurately.
.github/workflows/deploy-beta.yml (4)
- 1-1: The workflow has been renamed to "Deploy BETA/BugBash Feature," which simplifies and clarifies the purpose of the workflow.
- 23-27: Added steps to configure AWS credentials, which is crucial for accessing AWS services securely during the deployment process.
- 79-82: Introduced a step to create Cloudfront invalidation, ensuring that the deployed features are immediately available and not cached by Cloudfront.
- 84-92: Added steps for syncing files to S3 for a legacy SDK version, ensuring that updates are also applied to older versions of the SDK.
.github/workflows/deploy-npm.yml (3)
- 1-1: The workflow name has been updated to "Deploy to NPM," which is more concise and directly reflects the action being performed.
- 19-20: The job configuration has been updated to include self-hosted runners and adjust the conditions for deployment, which likely improves the reliability and control over the deployment environment.
- 103-115: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [106-132]
Updated Slack messages to reflect changes in project names and package URLs, ensuring that notifications are accurate and informative.
packages/analytics-js-integrations/src/integrations/Amplitude/browser.js (1)
- 67-71: The update to the error message for insecure proxy server URLs is a good practice for encouraging secure configurations. However, it might be beneficial to also include actionable advice or a reference to documentation on how to correct the issue.
Consider enhancing the error message with a suggestion on how to use HTTPS or a link to relevant documentation for setting up a secure proxy server URL.
.github/workflows/deploy-prod.yml (8)
- 1-1: The workflow has been appropriately renamed to "Deploy to Production Environment" to reflect its purpose more clearly.
- 4-25: The introduction of
workflow_call
as an event trigger with additional inputs and secrets is a significant improvement. It enhances the flexibility and reusability of this workflow across different scenarios and projects.- 41-43: The conditional execution logic for the
deploy-tag
job is well thought out, ensuring that the deployment only occurs under the correct circumstances. This is crucial for avoiding unintended deployments.- 46-49: The step to configure AWS credentials using a role is a secure practice, ensuring that the workflow has the necessary permissions without hardcoding sensitive information.
- 90-96: Creating Cloudfront invalidations for specific paths is a good practice to ensure that users receive the most up-to-date content. However, consider parameterizing the paths to make the workflow more flexible.
Consider using environment variables or workflow inputs for Cloudfront paths to increase the flexibility of the invalidation process.
- 106-106: The use of
AWS_MAX_ATTEMPTS
to retry Cloudfront invalidations is a good resilience feature. It helps to ensure that the invalidation process completes successfully even in the face of transient network issues.- 142-142: Customizing the Slack message payload based on the action type is a nice touch for providing more context in notifications. It enhances the communication of deployment outcomes.
- 183-185: Creating Cloudfront invalidations for the v1.1 folder is consistent with the approach for other versions. This ensures that all relevant content is refreshed across different SDK versions.
packages/analytics-js-plugins/__tests__/bugsnag/utils.test.ts (2)
- 20-20: The import of
server
frommsw.server
is correctly placed and necessary for setting up the mock server in the tests. This is a good practice for isolating external dependencies in tests.- 267-273: The addition of
beforeAll
andafterAll
hooks to start and stop the MSW server is crucial for ensuring that the tests do not interfere with each other or with external services. This setup enhances the reliability of the tests.README.md (1)
- 269-282: The updates regarding the deprecation of Control Plane Lite and the recommendation to use RudderStack Open Source for setting up the control plane are clear and well-documented. However, it's important to ensure that all links provided are accessible and up-to-date to avoid confusion for the users. Additionally, consider adding a brief explanation or a link to what constitutes the "latest rudder-server versions" for clarity on the versioning.
packages/analytics-js-plugins/CHANGELOG.md (1)
- 5-6: The addition of version
3.0.0-beta.21
to the CHANGELOG is noted. However, it's important for future reference and clarity to include a brief summary of the changes, features, or bug fixes introduced in this version, even if they are minor or internal. This practice helps maintain transparency and provides valuable information to users and developers tracking the progress of the project.Consider adding a brief summary of changes for version
3.0.0-beta.21
to keep the changelog informative and useful.packages/analytics-js-integrations/CHANGELOG.md (1)
- 5-10: The changelog entry for version 3.0.0-beta.26 correctly documents a bug fix related to the ninetailed sample app path. This update is clear and provides necessary links to the issue and commit for further details.
packages/analytics-js-integrations/__tests__/integrations/Amplitude/browser.test.js (7)
- 1-19: > 📝 NOTE
This review was outside the diff hunks and was mapped to the diff hunk with the greatest overlap. Original lines [3-54]
The test setup, including the mock for
errorMock
and the configuration for the Amplitude instance, is appropriately configured for the scope of these tests.
- 77-96: The test case for initializing the destination SDK correctly verifies the initialization parameters against the expected values.
- 122-151: The test case effectively verifies that an error is logged for an insecure proxy server URL, and confirms the SDK is still initialized with the correct parameters.
- 224-435: The identification test cases comprehensively cover various scenarios, including handling of traits and special cases for unset fields. The assertions and mock expectations are correctly implemented.
- 489-833: The event tracking test cases are well-structured and cover a variety of scenarios, including with and without products. The assertions ensure that the
track
method is called with the correct arguments.- 838-945: The page tracking tests adequately cover the scenarios for
trackAllPages
,trackCategorizedPages
, andtrackNamedPages
. The assertions correctly verify the expected behavior based on the configuration.- 951-1051: The group identification tests are comprehensive, covering both specific and default behaviors. The use of mocks and assertions is appropriate for verifying the functionality.
examples/integrations/Ninetailed/sample-apps/app-using-v3-cdn/src/config.js
Show resolved
Hide resolved
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/App.js
Show resolved
Hide resolved
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/App.js
Show resolved
Hide resolved
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/App.js
Show resolved
Hide resolved
examples/integrations/Ninetailed/sample-apps/app-using-v1.1-cdn/src/App.js
Show resolved
Hide resolved
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 3
Configuration used: CodeRabbit UI
Files selected for processing (1)
- examples/integrations/Ninetailed/sample-apps/README.md (1 hunks)
Additional comments: 1
examples/integrations/Ninetailed/sample-apps/README.md (1)
- 8-8: The guidance for customers is clear and concise. However, it might be beneficial to briefly explain why the NPM package is recommended over the CDN versions for a more informative README.
Consider adding a sentence or two explaining the benefits of using the NPM package over the CDN versions for a more comprehensive guide.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Review Status
Actionable comments generated: 0
Configuration used: CodeRabbit UI
Files selected for processing (1)
- .github/workflows/deploy-staging.yml (4 hunks)
Files skipped from review as they are similar to previous changes (1)
- .github/workflows/deploy-staging.yml
Quality Gate passedIssues Measures |
This release was reverted. It was superseded by, #1647. |
👑 An automated PR
Summary by CodeRabbit
.nvmrc
and variousCHANGELOG.md
files.analytics-js-integrations
..gitignore
files for new sample apps to exclude unnecessary files from Git tracking.