restorecommerce / resource-base-interface

Basic Resource Interface defining CRUD Operations.
MIT License
0 stars 0 forks source link

Update arangojs 8.3.0 → 8.4.0 (minor) #166

Closed depfu[bot] closed 1 year ago

depfu[bot] commented 1 year ago

Here is everything you need to know about this update. Please take a good look at what changed and the test results before merging this pull request.

What changed?

✳️ arangojs (8.3.0 → 8.4.0) · Repo · Changelog

Release Notes

8.4.0

Changed

  • Fetching additional cursor results now uses POST instead of PUT (DE-605)

    The POST route was deprecated and the PUT route is supported in all
    actively maintained versions of ArangoDB.

  • User management methods now use database-relative URLs (DE-606)

    Previously these methods would make requests without a database prefix,
    implicitly using the _system database.

  • aql template strings now take a generic type argument

    This allows explictly setting the item type of the ArrayCursor returned by
    db.query when using aql template strings. Note that like when setting
    the type on db.query directly, arangojs can make no guarantees that the
    type matches the actual data returned by the query.

    const numbers = await db.query(aql<{ index: number; squared: number }>`
      FOR i IN 1..1000
      RETURN {
        index: i,
        squared: i * i
      }
    `);
    const first = await numbers.next(); // { index: number; squared: number; }
    console.log(first.index, first.squared); // 1 1

Fixed

  • Fixed listUsers behavior (#782)

  • Fixed graph.create not correctly handling isDisjoint option

Added

  • Added missing attributes to QueryInfo and MultiExplainResult.stats types (DE-607)

  • Added cluster rebalancing methods to Database (DE-583)

  • Added db.withTransaction helper method for streaming transactions (#786)

    This method allows using streaming transactions without having to manually
    begin and commit or abort the transaction.

    const vertices = db.collection("vertices");
    const edges = db.collection("edges");
    const info = await db.withTransaction([vertices, edges], async (step) => {
      const start = await step(() => vertices.document("a"));
      const end = await step(() => vertices.document("b"));
      return await step(() => edges.save({ _from: start._id, _to: end._id }));
    });

Does any of this look wrong? Please let us know.

Commits

See the full diff on Github. The new version differs by 12 commits:


Depfu Status

Depfu will automatically keep this PR conflict-free, as long as you don't add any commits to this branch yourself. You can also trigger a rebase manually by commenting with @depfu rebase.

All Depfu comment commands
@​depfu rebase
Rebases against your default branch and redoes this update
@​depfu recreate
Recreates this PR, overwriting any edits that you've made to it
@​depfu merge
Merges this PR once your tests are passing and conflicts are resolved
@​depfu cancel merge
Cancels automatic merging of this PR
@​depfu close
Closes this PR and deletes the branch
@​depfu reopen
Restores the branch and reopens this PR (if it's closed)
@​depfu pause
Ignores all future updates for this dependency and closes this PR
@​depfu pause [minor|major]
Ignores all future minor/major updates for this dependency and closes this PR
@​depfu resume
Future versions of this dependency will create PRs again (leaves this PR as is)
depfu[bot] commented 1 year ago

Closing because this update has already been applied