diff --git a/contributing/become-a-contributor.md b/contributing/become-a-contributor.md index e04f65d8a16..949c1cfedcf 100644 --- a/contributing/become-a-contributor.md +++ b/contributing/become-a-contributor.md @@ -1,6 +1,6 @@ # Become A Contributor -Anyone can contribute to EmberData. Contributing can be as simple as opening an issue or helping to track down the cause of one. Or as involved as contributing a fix, helping with routine maintenance, or implementing a big new feature. +Anyone can contribute to WarpDrive. Contributing can be as simple as opening an issue or helping to track down the cause of one. Or as involved as contributing a fix, helping with routine maintenance, or implementing a big new feature. In addition to holding discussions on individual [issues](https://github.com/emberjs/data/issues) or [RFCs](https://github.com/emberjs/rfcs/labels/T-ember-data), we coordinate work when needed in the `#dev-ember-data` channel on [Ember's Discord Server](https://discord.gg/zT3asNS). diff --git a/contributing/key-concepts.md b/contributing/key-concepts.md index 93aaad434b8..14eaf6bd383 100644 --- a/contributing/key-concepts.md +++ b/contributing/key-concepts.md @@ -33,4 +33,4 @@ const identifier = recordIdentifierFor(record); unloadRecord(identifier); ``` -Any identifier supplied by an EmberData API will always be the stable variant. APIs which are operating based on identity and which can reasonably presume that the data exists expect stable identifiers and should error if an unknown identifier is encountered to prevent potential system-correctness errors. +Any identifier supplied by a WarpDrive API will always be the stable variant. APIs which are operating based on identity and which can reasonably presume that the data exists expect stable identifiers and should error if an unknown identifier is encountered to prevent potential system-correctness errors. diff --git a/contributing/linking-to-applications.md b/contributing/linking-to-applications.md index 99df6d41eb5..e4151d17ed1 100644 --- a/contributing/linking-to-applications.md +++ b/contributing/linking-to-applications.md @@ -1,6 +1,6 @@ -#### Testing EmberData source directly in your Application +#### Testing WarpDrive source directly in your Application -You can use package linking to test checkouts of ember-data against your application locally. This applies to consuming ember-data directly within an ember application. It will not work in your application if you are consuming ember-data through an addon (transitive dependency problem). This approach also presumes consuming all of ember-data. +You can use package linking to test checkouts of WarpDrive against your application locally. This applies to consuming WarpDrive directly within an ember application. It will not work in your application if you are consuming WarpDrive through an addon (transitive dependency problem). This approach also presumes consuming all of WarpDrive. 1. clone this repository or another fork 2. install dependencies: `pnpm install` @@ -14,4 +14,4 @@ If using `pnpm` If you don't use pnpm in your application, using the appropriate `yarn link` and `npm link` commands within the respective directories for the project and your app may work. -Once you have linked EmberData to your application, you can run `ember serve` as usual in your application. +Once you have linked WarpDrive to your application, you can run `ember serve` as usual in your application. diff --git a/contributing/rfc-process.md b/contributing/rfc-process.md index de02f2dff92..e169ce9b110 100644 --- a/contributing/rfc-process.md +++ b/contributing/rfc-process.md @@ -1,6 +1,8 @@ ### Requesting Features or Deprecations -`ember-data` participates in the [RFC process (GitHub emberjs/rfcs)](https://github.com/emberjs/rfcs/). +While WarpDrive is universal in nature, its development is managed by the EmberJS community. + +WarpDrive participates in the [RFC process (GitHub emberjs/rfcs)](https://github.com/emberjs/rfcs/). Most changes to the public API including new features, changes in behavior, or deprecations require community discussion and must go through this process. @@ -20,12 +22,12 @@ are narrowly scoped with clear understanding of alternatives, drawbacks, and the 5. Open an [RFC issue](https://github.com/emberjs/rfcs/issues?q=is%3Aissue+is%3Aopen+label%3AT-ember-data) to broaden and record the discussion if the idea needs more time for discussion and iteration. - label your issue with `T-ember-data` (or ask someone in `#dev-ember-data` to add the label if you lack the permission) - - announce your issue in `#dev-ember-data` and anywhere else desired such as `#news-and-announcements` and `twitter`. + - announce your issue in `#dev-ember-data` and anywhere else desired such as `#news-and-announcements` and `bluesky`. 6. [Draft an RFC](https://github.com/emberjs/rfcs#what-the-process-is) and share it with those you have been discussing the ideas with. 7. Publish your RFC by opening a PR to [emberjs/rfcs/](https://github.com/emberjs/rfcs/pulls?q=is%3Apr+is%3Aopen+label%3AT-ember-data) - label your PR with `T-ember-data` (or ask someone in `#dev-ember-data` to add the label if you lack the permission) - - announce your PR in `#dev-ember-data` and anywhere else desired such as `#news-and-announcements` and `twitter`. + - announce your PR in `#dev-ember-data` and anywhere else desired such as `#news-and-announcements` and `bluesky`. 8. Attend weekly team meetings to discuss the RFC, continue iterating on the RFC, and help shepherd it to completion. 9. Build a proof-of-concept. Sometimes this is best if it occurs alongside drafting the RFC, as it often informs the RFC design, known drawbacks, and alternatives. Often it will become incorporated in the final implementation. diff --git a/contributing/setting-up-the-project.md b/contributing/setting-up-the-project.md index 3a706300433..ee51a47c9d1 100644 --- a/contributing/setting-up-the-project.md +++ b/contributing/setting-up-the-project.md @@ -68,9 +68,13 @@ Currently the install command is also what builds all of the individual packages ## Create certificates ```sh -pnpx @warp-drive/holodeck ensure-cert +pnpm dlx @warp-drive/holodeck ensure-cert ``` +## Building the project + +The project's packages will build whenever `pnpm install` is run. + ## Run some commands Generally test and lint commands can be found in the `"scripts"` section of the root `package.json` manifest. Individual packages or test packages have additional commands in the `"scripts"` section of their own `package.json` manifest as well. diff --git a/contributing/submitting-prs.md b/contributing/submitting-prs.md index a87c810831a..ba798610ad2 100644 --- a/contributing/submitting-prs.md +++ b/contributing/submitting-prs.md @@ -19,15 +19,17 @@ All PRs should have accompanying tests. For bug-fixes, this should include tests the issue being fixed and test that the solution works. - We do write tests for our deprecations and assertion messages, using the `assert.expectAssertion()` and `assert.expectDeprecation()` helpers. -- Because we run tests in both development and `production` environments, assertions, deprecations and warnings may be stripped out. To avoid tests on failing for your PR in production environments, use the `testInDebug` function instead of `qunit` `test` to skip them in production when appropriate. +- Because we run tests in both development and `production` environments, assertions, deprecations and warnings may be stripped out. To avoid tests of debug behaviors failing for your PR in production environments, use the `testInDebug` function instead of `qunit` `test` to skip them in production when appropriate. + - alternatively wrap specific assertions in `if (DEBUG)` or `if (PRODUCTION)` - Update the documentation, examples, and guides when affected by your contribution ### Running Tests - PRs will automatically run an extensive set of test scenarios for your work. In some cases a contributor may need to approve the workflow run if this is your first contribution. -- `EmberData` is a collection of packages and comes with multiple test apps scoped to specific situations - or parts of the codebase we want to test. Tests live in the test applications in `/tests`. These should look like familiar ember app/addon tests, and to run them from within a specific test app use `pnpm test` or `pnpm test --serve`. For additional test commands see the list +- `WarpDrive` is a collection of packages and comes with multiple test apps scoped to specific situations + or parts of the codebase we want to test. These test applications can be found in `/tests`. + These should look like familiar ember app/addon tests, and to run them from within a specific test app use `pnpm test` or `pnpm test --serve`. For additional test commands see the list of commands in the respective `package.json` files. ### Pull Request Titles diff --git a/packages/holodeck/server/index.js b/packages/holodeck/server/index.js index 73708664435..238da3d0fd9 100644 --- a/packages/holodeck/server/index.js +++ b/packages/holodeck/server/index.js @@ -43,7 +43,9 @@ async function getCertInfo() { const KEY = Bun.file(KEY_PATH); if (!(await CERT.exists()) || !(await KEY.exists())) { - throw new Error('SSL certificate or key not found, you may need to run `pnpx @warp-drive/holodeck ensure-cert`'); + throw new Error( + 'SSL certificate or key not found, you may need to run `pnpm dlx @warp-drive/holodeck ensure-cert`' + ); } return { @@ -54,7 +56,9 @@ async function getCertInfo() { }; } else { if (!fs.existsSync(CERT_PATH) || !fs.existsSync(KEY_PATH)) { - throw new Error('SSL certificate or key not found, you may need to run `pnpx @warp-drive/holodeck ensure-cert`'); + throw new Error( + 'SSL certificate or key not found, you may need to run `pnpm dlx @warp-drive/holodeck ensure-cert`' + ); } return {