-
Notifications
You must be signed in to change notification settings - Fork 53
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
Release v0.14.0 #3161
Release v0.14.0 #3161
Conversation
## Relevant issue(s) Resolves #2847 Resolves #1902 ## Description This PR fixes an issue where peer connections were not deterministic within the test framework. There's also a few other areas that were cleaned up: - Bootstrap has been replaced with https://github.com/ipfs/boxo/blob/main/bootstrap/bootstrap.go - Host setup logic was moved to `net/host.go` - Persistent peer store was replaced with in memory only version - Context reuse within the `net` package has been refactored - Removed unused peer event ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? `make test` Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #2962 ## Description I was mostly curious if this will make the vuln checker go green (it doesn't, it just reports it from our internal acp package now), but it is a good change anyway IMO to avoid embedded Go client users from having to directly import the dependency.
✅ This PR was created by combining the following PRs: #2959 bot: Bump github.com/bits-and-blooms/bitset from 1.13.0 to 1.14.2 #2958 bot: Bump github.com/libp2p/go-libp2p-kad-dht from 0.25.2 to 0.26.1 #2957 bot: Bump github.com/vito/go-sse from 1.1.1 to 1.1.2 #2956 bot: Bump go.opentelemetry.io/otel/metric from 1.28.0 to 1.29.0 #2955 bot: Bump graphiql from 3.7.0 to 3.7.1 in /playground #2954 bot: Bump eslint from 9.9.0 to 9.9.1 in /playground --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Shahzad Lone <[email protected]>
## Relevant issue(s) Resolves #2964 ## Description Small change that now only sets the badger options `Dir` and `ValueDir` to the `path` parameter if the badger option `InMemory` is not `true`.
## Relevant issue(s) Resolves #2930 ## Description This PR removes the use of the ipld traversal function in favor of direct link access. This makes the sync process a bit more efficient and will make it easier to initiate encryption key exchange.
## Relevant issue(s) Resolves #2619 #2493 ## Description Reworks relation field kinds so that relations are not defined by names (which are mutable). This PR replaces the old `ObjectKind` and `ObjectArrayKind`s with `CollectionKind`, `SchemaKind` and `SelfKind`. `NamedKind` has also been added - it allows users to interact with the definitions using their names (like before), before the kind gets translated into one of the other new kinds before storage. Because Schemas must form a DAG (because of their CIDs (SchemaVersionID and Root), Schemas defined within the same action that form circular relations (e.g. User=>Dog=>User) have their CIDs grouped into a set with the same base id, plus an index relative to their lexographical order (name) within the set suffixed onto their CIDs. This change is not user visible, besides the `-[index]` suffix on their CIDs. Quite a lot had to change to facilitate this, and only a handful of things have been broken out to separate commits. Most of the work is in commit `Rework relation field kinds` - when reviewing that commit, I suggest starting with `tests/integration/collection_description/updates/replace/name_one_many_test.go` to see the original bug, followed by a quick scan of `client/schema_field_description.go`, then a look at `tests/integration/schema/self_ref_test.go` before properly reviewing the changes. The bulk of the self reference logic is in `internal/db/schema_id.go`.
## Relevant issue(s) Resolves #2977 ## Description This PR renames occurrences of _key to _docID when using schemas in the project's markdown documentation. ## Tasks - [ ] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [ ] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Github markdown preview Specify the platform(s) on which this was tested: - Debian Linux
✅ This PR was created by combining the following PRs: #2988 bot: Bump vite from 5.4.2 to 5.4.3 in /playground #2987 bot: Bump eslint from 9.9.1 to 9.10.0 in /playground #2986 bot: Bump golang.org/x/term from 0.23.0 to 0.24.0 #2985 bot: Bump github.com/ipfs/boxo from 0.22.0 to 0.23.0 #2984 bot: Bump github.com/bits-and-blooms/bitset from 1.14.2 to 1.14.3 #2976 bot: Bump @typescript-eslint/parser from 8.3.0 to 8.4.0 in /playground --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
#2991) Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.4.0 to 8.5.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/parser</code>'s releases</a>.</em></p> <blockquote> <h2>v8.5.0</h2> <h2>8.5.0 (2024-09-09)</h2> <h3>🚀 Features</h3> <ul> <li><strong>eslint-plugin:</strong> [no-duplicate-type-constituents] prevent unnecessary <code> ([ undefined</code> for optional parameters (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/9479">#9479</a>)](<a href="https://github.com/typescript-eslint/typescript-eslint/commit/">https://github.com/typescript-eslint/typescript-eslint/commit/</a> undefined` for optional parameters (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/9479">#9479</a>)))</li> <li><strong>eslint-plugin:</strong> [no-unsafe-argument] differentiate error types (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9920">#9920</a>)</li> <li><strong>typescript-estree:</strong> default projectService.defaultProject to 'tsconfig.json' (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9893">#9893</a>)</li> </ul> <h3>🩹 Fixes</h3> <ul> <li><strong>deps:</strong> update dependency prism-react-renderer to v2.4.0 (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9943">#9943</a>)</li> <li><strong>eslint-plugin:</strong> [no-unnecessary-type-assertion] fix TSNonNullExpression fixer (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9898">#9898</a>)</li> <li><strong>eslint-plugin:</strong> [no-misused-promises] handle static method (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9951">#9951</a>)</li> <li><strong>eslint-plugin:</strong> [no-unnecessary-type-parameters] fix AST quick path scope analysis (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9900">#9900</a>)</li> <li><strong>eslint-plugin:</strong> [consistent-type-assertions] access parser services lazily (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9921">#9921</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>f44da958e</li> <li>Josh Goldberg ✨</li> <li>Kirk Waiblinger <a href="https://github.com/kirkwaiblinger"><code>@kirkwaiblinger</code></a></li> <li>YeonJuan <a href="https://github.com/yeonjuan"><code>@yeonjuan</code></a></li> </ul> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md"><code>@typescript-eslint/parser</code>'s changelog</a>.</em></p> <blockquote> <h2>8.5.0 (2024-09-09)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/4d31ebe71ac26612a129ac4be98692b11387145e"><code>4d31ebe</code></a> chore(release): publish 8.5.0</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/4bc801e542e4accd644b65514a7b7355874f7a96"><code>4bc801e</code></a> chore: enable unicorn/no-array-reduce (<a href="https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser/issues/9640">#9640</a>)</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.5.0/packages/parser">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@typescript-eslint/parser&package-manager=npm_and_yarn&previous-version=8.4.0&new-version=8.5.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Relevant issue(s) Resolves #2795 ## Description This PR adds a log showing the graphql server address. It also updates the API log to show if the playground is enabled. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Manually tested by running `defradb start` Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #1441 Resolves #1395 ## Description This PR adds support for GraphQL variables and operation name. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added tests Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #2926 ## Description This PR fixes an issue where the index directive was defined twice. ~The `@index` field level directive has been renamed to `@indexField`.~ The `fields` arg has been renamed to `includes` and is now a list of objects of type: ``` type IndexFieldInput { name: String direction: Ordering } ``` The `direction` argument now sets the default direction of all fields in the `includes` list. When the index is used on a field definition and the field is not in the `includes` list it will be implicitly added. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Covered by existing tests. Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #2952 ## Description This PR adds support for default field values using a new `@default` directive. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added integration tests Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #2951 ## Description Adds materialized views. Also makes materialized views the default (see discord discussion). The caching behaviour of views in tests is now selected via an environment variable, meaning (with the exception of a few specific examples) a test with a view will test both cacheless and materialized variants - in the CI this adds a new dimension to the matrix, although materialized views are only executed using the simple settings (in-mem store, go client, etc) for now.
## Relevant issue(s) Resolves #3014 ## Description Failed run due to code-cov upload file's name clashing: https://github.com/sourcenetwork/defradb/actions/runs/10893445627/job/30228379591 Happened in merge commit: [#4989901](4989901) Just needed to fix the typo introduced in [`15f244d` (#3000)](15f244d) Should be `matrix.view-type` not `matrix.matrix.view-type`, my bad I missed it even while re-reviewing.
In addition to below an audit fix was done to resolve a vulnerability. ✅ This PR was created by combining the following PRs: #3009 bot: Bump github.com/cometbft/cometbft from 0.38.10 to 0.38.12 #3008 bot: Bump go.opentelemetry.io/otel/metric from 1.29.0 to 1.30.0 #3007 bot: Bump google.golang.org/grpc from 1.66.0 to 1.66.2 #3005 bot: Bump @typescript-eslint/eslint-plugin from 8.4.0 to 8.5.0 in /playground #3004 bot: Bump vite from 5.4.3 to 5.4.5 in /playground #3003 bot: Bump @types/react from 18.3.5 to 18.3.6 in /playground #3002 bot: Bump eslint-plugin-react-refresh from 0.4.11 to 0.4.12 in /playground⚠️ The following PRs were resolved manually due to merge conflicts: #3006 bot: Bump go.opentelemetry.io/otel/sdk/metric from 1.29.0 to 1.30.0 #3001 bot: Bump typescript from 5.5.4 to 5.6.2 in /playground --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Shahzad Lone <[email protected]>
## Relevant issue(s) Resolves #3016 ## Description Fix panic with filter on unique composite index on relation.
## Relevant issue(s) Resolves #3022 ## Description Handles missing type in an SDL instead of panicing.
✅ This PR was created by combining the following PRs: #3018 bot: Bump vite from 5.4.5 to 5.4.6 in /playground #3017 bot: Bump @typescript-eslint/eslint-plugin from 8.5.0 to 8.6.0 in /playground --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Relevant issue(s) Resolves #2830 ## Description Adds support for one sided relations.
## Relevant issue(s) Resolves #2953 ## Description ~This PR adds a purge command that clears the data directory of the defradb instance on the local machine.~ This PR adds a purge command that clears the configured datastore and restarts the defradb instance. The purge command requires a `--force` flag to be run, and the defradb instance must have the `development` flag or config value enabled. - [x] Add `dev` flag and config parameter that is required for destructive operations ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added unit tests and tested manually Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #3012 ## Description This PR fixes an issue where explicitly null GQL inputs would cause a panic. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added tests Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #3025 ## Description ### Problem More about the problem in the linked issue #3025 ### Changes - Reusable composite actions are introduced under `.github/composites` folder. - Still the same number of jobs as before. - `badger-memory` name is now shown as `memory` - `badger-file` name is now shown as `file` - Split the basic 18 tests into a separate matric job. - All `includes` tests we had before are now split in their own jobs. - If a job fails, have more granular control now to re-run the job without waiting for all to finish. - The job names won't clash with github ui with `...` anymore. - The job names will remain static now. - Upon new tests being introduced we don't have to change previous required branch protection rules, just add new ones. - Upon new tests being introduced the author doesn't need to worry about making it required in the same PR. - Easy to install sourcehub locally for any ci action now - Easy to setup defradb with caching optimizations for any action now - Change detector also now utilizes caching logic now, due to ease of use of composites. - Updated the workflow name to be shorter as it looked odd in the readme before. ### New test names and action flow: <img src="https://github.com/user-attachments/assets/cbb75a8d-d4e2-4f88-bb03-a84262770c98" width=70% height=70%> ## How has this been tested? - Example run: https://github.com/sourcenetwork/defradb/actions/runs/10914739872?pr=3027
## Relevant issue(s) Resolves #2995 ## Description This PR makes the keyring interactions non-interactive by requiring the keyring password to be set as an environment variable secret. It also adds support for that secret to be stored in a `.env` file in the working directory or in a file at a path defined by the `--secret-file` flag. Making the keyring non-interactive is necessary to support automated deployments.
## Relevant issue(s) Resolves #3033 ## Description The flag and environment variable was kept unchanged from an initial commit in the non-interactive keyring PR. This fixes the mistake.
## Relevant issue(s) Resolves #3036 ## Description Logs the GQL endpoint correctly on node start.
## Relevant issue(s) Resolves #3029 ## Description This PR fixes an issue where default field values would overwrite any missing input fields. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added integration test Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #3100 ## Description Treat explicitly set nil values like omitted values.
## Relevant issue(s) Resolves #2279 ## Description Enable indexing of array fields. This change also adds `Equal` method to `NormalValue`.
## Relevant issue(s) Resolves #2906 ## Description Follow-up to #2907, the ability to delete a relationship (in order to revoke access from an identity). ## CLI Demo The following revokes the target actors 'relational' access to the private doc (can't read anymore): ```bash defradb client acp relationship delete \ --collection Users \ --docID bae-ff3ceb1c-b5c0-5e86-a024-dd1b16a4261c \ --relation reader \ --actor did:key:z7r8os2G88XXBNBTLj3kFR5rzUJ4VAesbX7PgsA68ak9B5RYcXF5EZEmjRzzinZndPSSwujXb4XKHG6vmKEFG6ZfsfcQn \ --identity e3b722906ee4e56368f581cd8b18ab0f48af1ea53e635e3f7b8acd076676f6ac ``` Result: ```json { "RecordFound": true // <-------------- Indicates a relationship was found and deleted } ``` ## How has this been tested? CI + Integration Tests + Unit Tests
## Relevant issue(s) Resolves #3104 ## Description - Bump linter - Resolve deprecated stuff - Resolve new linter warning improvements
## Relevant issue(s) Resolves #3097 ## Description This PR fixes JSON type coercion and makes it much simpler to filter, create, and update JSON fields. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added / updated unit and integration tests. Specify the platform(s) on which this was tested: - MacOS
✅ This PR was created by combining the following PRs: #3117 bot: Bump @types/react from 18.3.10 to 18.3.11 in /playground #3116 bot: Bump @typescript-eslint/parser from 8.7.0 to 8.8.0 in /playground #3114 bot: Bump eslint from 9.11.1 to 9.12.0 in /playground #3113 bot: Bump golang.org/x/crypto from 0.27.0 to 0.28.0 #3112 bot: Bump google.golang.org/grpc from 1.67.0 to 1.67.1 #3111 bot: Bump github.com/ipfs/boxo from 0.23.0 to 0.24.0 #3110 bot: Bump github.com/libp2p/go-libp2p-kad-dht from 0.26.1 to 0.27.0 #3109 bot: Bump github.com/getkin/kin-openapi from 0.127.0 to 0.128.0⚠️ The following PR was resolved manually due to merge conflicts: #3115 bot: Bump @typescript-eslint/eslint-plugin from 8.7.0 to 8.8.0 in /playground --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Shahzad Lone <[email protected]>
#3120) Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) from 8.8.0 to 8.8.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/parser</code>'s releases</a>.</em></p> <blockquote> <h2>v8.8.1</h2> <h2>8.8.1 (2024-10-07)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> stop warning on <a href="https://github.com/ts-nocheck"><code>@ts-nocheck</code></a> comments which aren't at the beginning of the file (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10046">#10046</a>)</li> <li><strong>typescript-estree:</strong> fix crash when running from a <code>node --eval</code> script (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10098">#10098</a>)</li> <li><strong>typescript-estree:</strong> ensure mjs/mts files are always be parsed as ESM (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10011">#10011</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>Ronen Amiel</li> <li>WhitePiano <a href="https://github.com/goldentrash"><code>@goldentrash</code></a></li> </ul> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md"><code>@typescript-eslint/parser</code>'s changelog</a>.</em></p> <blockquote> <h2>8.8.1 (2024-10-07)</h2> <p>This was a version bump only for parser to align it with other projects, there were no code changes.</p> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/f898248934fe8bba8a1a961373b86d508a9fca9c"><code>f898248</code></a> chore(release): publish 8.8.1</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.8.1/packages/parser">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@typescript-eslint/parser&package-manager=npm_and_yarn&previous-version=8.8.0&new-version=8.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…ayground (#3121) Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 8.8.0 to 8.8.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/releases"><code>@typescript-eslint/eslint-plugin</code>'s releases</a>.</em></p> <blockquote> <h2>v8.8.1</h2> <h2>8.8.1 (2024-10-07)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> stop warning on <a href="https://github.com/ts-nocheck"><code>@ts-nocheck</code></a> comments which aren't at the beginning of the file (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10046">#10046</a>)</li> <li><strong>typescript-estree:</strong> fix crash when running from a <code>node --eval</code> script (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10098">#10098</a>)</li> <li><strong>typescript-estree:</strong> ensure mjs/mts files are always be parsed as ESM (<a href="https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10011">#10011</a>)</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher <a href="https://github.com/bradzacher"><code>@bradzacher</code></a></li> <li>Ronen Amiel</li> <li>WhitePiano <a href="https://github.com/goldentrash"><code>@goldentrash</code></a></li> </ul> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md"><code>@typescript-eslint/eslint-plugin</code>'s changelog</a>.</em></p> <blockquote> <h2>8.8.1 (2024-10-07)</h2> <h3>🩹 Fixes</h3> <ul> <li><strong>eslint-plugin:</strong> stop warning on <a href="https://github.com/ts-nocheck"><code>@ts-nocheck</code></a> comments which aren't at the beginning of the file</li> </ul> <h3>❤️ Thank You</h3> <ul> <li>Brad Zacher</li> <li>Ronen Amiel</li> <li>WhitePiano</li> </ul> <p>You can read about our <a href="https://main--typescript-eslint.netlify.app/users/versioning">versioning strategy</a> and <a href="https://main--typescript-eslint.netlify.app/users/releases">releases</a> on our website.</p> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/f898248934fe8bba8a1a961373b86d508a9fca9c"><code>f898248</code></a> chore(release): publish 8.8.1</li> <li><a href="https://github.com/typescript-eslint/typescript-eslint/commit/2d6ee87a30f1272845d5483da2f28dd742ca9843"><code>2d6ee87</code></a> fix(eslint-plugin): stop warning on <a href="https://github.com/ts-nocheck"><code>@ts-nocheck</code></a> comments which aren't at the ...</li> <li>See full diff in <a href="https://github.com/typescript-eslint/typescript-eslint/commits/v8.8.1/packages/eslint-plugin">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@typescript-eslint/eslint-plugin&package-manager=npm_and_yarn&previous-version=8.8.0&new-version=8.8.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
## Relevant issue(s) Resolves #2992 ## Description An actor granted a write permission still couldn't write unless also given `read` permission Example Policy where reader can strictly only read and writer can strictly only write: ```yaml name: Test Policy description: A Policy actor: name: actor resources: users: permissions: read: expr: owner + reader write: expr: owner + writer relations: owner: types: - actor reader: types: - actor writer: types: - actor ``` Then the policy above (assume `XYZ` is resulting `policyID`) is linked in a schema that is loaded: ```gql type Users @Policy(id: XYZ, resource: "users") { name: String age: Int } ``` Now if the `owner` (index `1`) makes a relationship giving `write` access to the `second` actor (index `2`) in our testing frame work like syntax: ```go testUtils.AddDocActorRelationship{ DocID: 0, RequestorIdentity: 1, TargetIdentity: 2, Relation: "writer", } ``` The identity `2` still could not mutate due to lack of read permission. ```go testUtils.UpdateDoc{ Identity: immutable.Some(2), // This identity can still not update. DocID: 0, Doc: ` { "name": "Shahzad Lone" } `, ExpectedError: "document not found or not authorized to access", } ``` Some existing tests that documented this have now been updated with the new behavior: - `TestACP_OwnerGivesUpdateWriteAccessToAnotherActorWithoutExplicitReadPerm_OtherActorCantUpdate` -> `TestACP_OwnerGivesUpdateWriteAccessToAnotherActorWithoutExplicitReadPerm_OtherActorCanUpdate` ## How has this been tested? - CI & Fixed the asserted test that documented this behavior
## Relevant issue(s) Resolves #3102 ## Description Prevents mutations from secondary side of relation. Also validates that values given to relation fields are actually valid docIDs - previously it only validated this on the secondary side, and it was as easy to introduce it to the primary side as it was to correct the tests expecting the failure, so I've added this here. As IDs set via secondary affected the secondary docID the order of results in some tests have changed. Also changed are tests that accidentally created docs via the secondary side that didn't test the secondary mutation (e.g. a lot of tests testing queries from the secondary side also created the test docs from this direction).
## Relevant issue(s) Resolves #3072 ## Description This PR adds a replication retry functionality to the database. It uses an exponential backoff until 32 minutes is reached and then it will continuously retry every 32 minutes until the inactive peer is removed from the list of replicators.
## Relevant issue(s) Resolves #3106 ## Description This PR enables filtering on JSON field types. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added integration tests. Specify the platform(s) on which this was tested: - MacOS
✅ This PR was created by combining the following PRs: #3130 bot: Bump go.opentelemetry.io/otel/sdk/metric from 1.30.0 to 1.31.0 #3128 bot: Bump typescript from 5.6.2 to 5.6.3 in /playground #3127 bot: Bump @types/react-dom from 18.3.0 to 18.3.1 in /playground #3126 bot: Bump eslint-plugin-react-hooks from 4.6.2 to 5.0.0 in /playground⚠️ The following PRs were resolved manually due to merge conflicts: #3129 bot: Bump go.opentelemetry.io/otel/metric from 1.30.0 to 1.31.0 --------- Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Shahzad Lone <[email protected]>
## Relevant issue(s) Resolves #3133 ## Description This PR fixes a bug where default field value types were not properly validated and would cause a panic when creating a new document. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added an integration test. Specify the platform(s) on which this was tested: - *(modify the list accordingly*) - Arch Linux - Debian Linux - MacOS - Windows
## Relevant issue(s) Resolves #3135 ## Description Adds bug bash tests for gql fragments with inner objects. No bugs found.
## Relevant issue(s) Resolves #3132 ## Description This PR fixes a mistake I made when refactoring the index directive. The `name` argument of the `includes` fields has been changed to `field`. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Updated unit and integration tests. Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #3141 ## Description This PR fixes a bug where the object equality check would panic when comparing with a non object type. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added integration test. Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #3149 ## Description This PR fixes an issue with aggregate JSON filtering. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Added integration test. Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #3151 ## Description This PR fixes an issue where GraphQL schemas were never validated. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Updated integration tests. Specify the platform(s) on which this was tested: - MacOS
## Relevant issue(s) Resolves #3142 ## Description This PR fixes an issue with inline array filters where a non array value would return an error. ## Tasks - [x] I made sure the code is well commented, particularly hard-to-understand areas. - [x] I made sure the repository-held documentation is changed accordingly. - [x] I made sure the pull request title adheres to the conventional commit style (the subset used in the project can be found in [tools/configs/chglog/config.yml](tools/configs/chglog/config.yml)). - [x] I made sure to discuss its limitations such as threats to validity, vulnerability to mistake and misuse, robustness to invalidation of assumptions, resource requirements, ... ## How has this been tested? Updated / added integration tests. Specify the platform(s) on which this was tested: - MacOS
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #3161 +/- ##
==========================================
- Coverage 79.40% 78.02% -1.38%
==========================================
Files 326 354 +28
Lines 24870 34660 +9790
==========================================
+ Hits 19747 27042 +7295
- Misses 3716 5992 +2276
- Partials 1407 1626 +219
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 179 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
|
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.
LGTM, just some questions.
The PR description says: (1) ran go mod tidy (2) regenerated in-repo docs (CLI and manpages)
question: Why do we still have to run mod tidy
? I thought the checks should have kept these up to date.
question: Same question for the in-repo docs.
question: Why specifically CLI and man-pages without HTTP?
The last commit also doesn't show any changes specific to (1) and (2), am I missing something?
We don't have to anymore but its a sanity check.
Same answer.
I just do
No. Since we have CI checks for this now, that is exactly what is expected. |
Release branch as of 76f5c8a
Release tasks completed:
Only need to review the last commit :)