Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update dependency pocketbase to ^0.25.0 #378

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Nov 24, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
pocketbase ^0.21.5 -> ^0.25.0 age adoption passing confidence

Release Notes

pocketbase/js-sdk (pocketbase)

v0.25.0

Compare Source

  • Added pb.crons service to interact with the cron Web APIs.

v0.24.0

Compare Source

  • Added support for assigning FormData as body to individual batch requests (pocketbase#6145).

v0.23.0

Compare Source

  • Added optional pb.realtime.onDisconnect hook function.
    Note that the realtime client autoreconnect on its own and this hook is useful only for the cases where you want to apply a special behavior on server error or after closing the realtime connection.

v0.22.1

Compare Source

  • Fixed old pb.authStore.isAdmin/pb.authStore.isAuthRecord and marked them as deprecated in favour of pb.authStore.isSuperuser (#​323).
    Note that with PocketBase v0.23.0 superusers are converted to a system auth collection so you can always simply check the value of pb.authStore.record?.collectionName.

v0.22.0

Compare Source

⚠️ This release introduces some breaking changes and works only with PocketBase v0.23.0+.

  • Added support for sending batch/transactional create/updated/delete/upsert requests with the new batch Web APIs.

    const batch = pb.createBatch();
    
    batch.collection("example1").create({ ... });
    batch.collection("example2").update("RECORD_ID", { ... });
    batch.collection("example3").delete("RECORD_ID");
    batch.collection("example4").upsert({ ... });
    
    const result = await batch.send();
  • Added support for authenticating with OTP (email code):

    const result = await pb.collection("users").requestOTP("[email protected]");
    
    // ... show a modal for users to check their email and to enter the received code ...
    
    await pb.collection("users").authWithOTP(result.otpId, "EMAIL_CODE");

    Note that PocketBase v0.23.0 comes also with Multi-factor authentication (MFA) support.
    When enabled from the dashboard, the first auth attempt will result in 401 response and a mfaId response,
    that will have to be submitted with the second auth request. For example:

    try {
      await pb.collection("users").authWithPassword("[email protected]", "1234567890");
    } catch (err) {
      const mfaId = err.response?.mfaId;
      if (!mfaId) {
        throw err; // not mfa -> rethrow
      }
    
      // the user needs to authenticate again with another auth method, for example OTP
      const result = await pb.collection("users").requestOTP("[email protected]");
      // ... show a modal for users to check their email and to enter the received code ...
      await pb.collection("users").authWithOTP(result.otpId, "EMAIL_CODE", { "mfaId": mfaId });
    }
  • Added new pb.collection("users").impersonate("RECORD_ID") method for superusers.
    It authenticates with the specified record id and returns a new client with the impersonated auth state loaded in a memory store.

    // authenticate as superusers (with v0.23.0 admins is converted to a special system auth collection "_superusers"):
    await pb.collection("_superusers").authWithPassword("[email protected]", "1234567890");
    
    // impersonate
    const impersonateClient = pb.collection("users").impersonate("USER_RECORD_ID", 3600 /* optional token duration in seconds */)
    
    // log the impersonate token and user data
    console.log(impersonateClient.authStore.token);
    console.log(impersonateClient.authStore.record);
    
    // send requests as the impersonated user
    impersonateClient.collection("example").getFullList();
  • Added new pb.collections.getScaffolds() method to retrieve a type indexed map with the collection models (base, auth, view) loaded with their defaults.

  • Added new pb.collections.truncate(idOrName) to delete all records associated with the specified collection.

  • Added the submitted fetch options as 3rd last argument in the pb.afterSend hook.

  • Instead of replacing the entire pb.authStore.record, on auth record update we now only replace the available returned response record data (pocketbase#5638).

  • ⚠️ Admins are converted to _superusers auth collection and there is no longer AdminService and AdminModel types.
    pb.admins is soft-deprecated and aliased to pb.collection("_superusers").

    // before   ->  after
    pb.admins.* ->  pb.collection("_superusers").*
  • ⚠️ pb.authStore.model is soft-deprecated and superseded by pb.authStore.record.

  • ⚠️ Soft-deprecated the OAuth2 success auth meta.avatarUrl response field in favour of meta.avatarURL for consistency with the Go conventions.

  • ⚠️ Changed AuthMethodsList inerface fields to accomodate the new auth methods and listAuthMethods() response.
    {
    "mfa": {
    "duration": 100,
    "enabled": true
    },
    "otp": {
    "duration": 0,
    "enabled": false
    },
    "password": {
    "enabled": true,
    "identityFields": ["email", "username"]
    },
    "oauth2": {
    "enabled": true,
    "providers": [{"name": "gitlab", ...}, {"name": "google", ...}]
    }
    }

  • ⚠️ Require specifying collection id or name when sending test email because the email templates can be changed per collection.

    // old
    pb.settings.testEmail(email, "verification")
    
    // new
    pb.settings.testEmail("users", email, "verification")
  • ⚠️ Soft-deprecated and aliased *Url() -> *URL() methods for consistency with other similar native JS APIs and the accepted Go conventions.
    The old methods still works but you may get a console warning to replace them because they will be removed in the future.

    pb.baseUrl                  -> pb.baseURL
    pb.buildUrl()               -> pb.buildURL()
    pb.files.getUrl()           -> pb.files.getURL()
    pb.backups.getDownloadUrl() -> pb.backups.getDownloadURL()
  • ⚠️ Renamed CollectionModel.schema to CollectionModel.fields.

  • ⚠️ Renamed type SchemaField to CollectionField.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Copy link

cloudflare-workers-and-pages bot commented Nov 24, 2024

Deploying kikuri with  Cloudflare Pages  Cloudflare Pages

Latest commit: cfb7105
Status:⚡️  Build in progress...

View logs

@renovate renovate bot force-pushed the renovate/pocketbase-0.x branch 4 times, most recently from cfb7105 to 3f8e723 Compare December 1, 2024 04:43
Copy link

cloudflare-workers-and-pages bot commented Dec 1, 2024

Deploying tana with  Cloudflare Pages  Cloudflare Pages

Latest commit: 3f8e723
Status:🚫  Build failed.

View logs

@renovate renovate bot force-pushed the renovate/pocketbase-0.x branch from 3f8e723 to b4c97bf Compare December 1, 2024 05:29
@renovate renovate bot force-pushed the renovate/pocketbase-0.x branch from b4c97bf to 0e5be2a Compare December 1, 2024 05:52
@renovate renovate bot force-pushed the renovate/pocketbase-0.x branch from 0e5be2a to 958ad12 Compare December 1, 2024 09:07
@renovate renovate bot force-pushed the renovate/pocketbase-0.x branch from 958ad12 to dedb828 Compare December 4, 2024 03:44
@renovate renovate bot changed the title fix(deps): update dependency pocketbase to ^0.22.0 fix(deps): update dependency pocketbase to ^0.23.0 Dec 15, 2024
@renovate renovate bot force-pushed the renovate/pocketbase-0.x branch from dedb828 to a266180 Compare December 15, 2024 15:56
@renovate renovate bot changed the title fix(deps): update dependency pocketbase to ^0.23.0 fix(deps): update dependency pocketbase to ^0.24.0 Dec 19, 2024
@renovate renovate bot force-pushed the renovate/pocketbase-0.x branch from a266180 to 410c3f6 Compare December 19, 2024 23:52
@renovate renovate bot force-pushed the renovate/pocketbase-0.x branch from 410c3f6 to 25122c2 Compare January 1, 2025 16:57
@renovate renovate bot changed the title fix(deps): update dependency pocketbase to ^0.24.0 fix(deps): update dependency pocketbase to ^0.25.0 Jan 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants