Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: Doist/cli-core
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.24.0
Choose a base ref
...
head repository: Doist/cli-core
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.25.0
Choose a head ref
  • 11 commits
  • 10 files changed
  • 4 contributors

Commits on May 25, 2026

  1. chore(deps): update dependency lefthook to v2.1.8 (#50)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored May 25, 2026
    Configuration menu
    Copy the full SHA
    cb486db View commit details
    Browse the repository at this point in the history
  2. chore(deps): update dependency marked to v18.0.4 (#51)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored May 25, 2026
    Configuration menu
    Copy the full SHA
    7e4f036 View commit details
    Browse the repository at this point in the history
  3. chore(deps): update dependency vitest to v4.1.7 (#54)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored May 25, 2026
    Configuration menu
    Copy the full SHA
    4bf31ec View commit details
    Browse the repository at this point in the history
  4. chore(deps): update dependency @types/node to v25.9.1 (#52)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored May 25, 2026
    Configuration menu
    Copy the full SHA
    5e588aa View commit details
    Browse the repository at this point in the history
  5. chore(deps): update dependency oxfmt to v0.51.0 (#53)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored May 25, 2026
    Configuration menu
    Copy the full SHA
    c2f18da View commit details
    Browse the repository at this point in the history

Commits on May 26, 2026

  1. chore(deps): update dependency oxlint to v1.66.0 (#55)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored May 26, 2026
    Configuration menu
    Copy the full SHA
    b3a789b View commit details
    Browse the repository at this point in the history

Commits on Jun 2, 2026

  1. chore(deps): update dependency oxfmt to v0.52.0 (#56)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Jun 2, 2026
    Configuration menu
    Copy the full SHA
    7ad10b7 View commit details
    Browse the repository at this point in the history
  2. chore(deps): update dependency oxlint to v1.67.0 (#57)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Jun 2, 2026
    Configuration menu
    Copy the full SHA
    f25edf1 View commit details
    Browse the repository at this point in the history

Commits on Jun 3, 2026

  1. chore(deps): update dependency lefthook to v2.1.9 (#58)

    Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
    renovate[bot] authored Jun 3, 2026
    Configuration menu
    Copy the full SHA
    d1873fd View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2026

  1. feat(auth): add resource indicator, refresh, and client caching to DC…

    …R provider (#60)
    
    * feat(auth): add resource indicator, refresh, and client caching to DCR provider
    
    Extend createDcrProvider so RFC 7591 DCR consumers can cover three cases the
    factory previously forced them to hand-roll a bespoke AuthProvider for:
    
    - RFC 8707 resource indicator: new `resource` option, threaded into the
      authorize URL and the authorization_code + refresh_token token requests so
      the AS issues a token whose audience targets the protected resource.
    - refreshToken: the DCR provider now implements it (previously only
      createPkceProvider did), honouring the handshake client auth (public None /
      client_secret_post / RFC-3986 Basic), the resource indicator, and a 10s
      timeout, mapping invalid_grant -> AUTH_REFRESH_EXPIRED else
      AUTH_REFRESH_TRANSIENT.
    - client caching: optional loadClient/saveClient hooks let a consumer reuse a
      registered client across logins (cache hit skips the registration round-trip
      and the oauth4webapi load); cli-core stays storage-agnostic.
    
    Factor the shared refresh-error mapping into oauth.ts (mapRefreshError) and
    reuse it from createPkceProvider, and add an optional additionalParameters
    field to buildPkceAuthorizeUrl.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
    
    * fix(auth): address DCR provider review
    
    - buildPkceAuthorizeUrl: apply additionalParameters before the standard PKCE
      params so the latter always win (the loop previously ran after, enabling the
      clobbering the doc claimed to prevent).
    - Validate the loadClient cache shape (string clientId, supported
      tokenEndpointAuthMethod) so a cached client behaves like a freshly registered
      one instead of failing later or silently using the wrong auth method.
    - Resolve tokenUrl/authorizeUrl and the resource indicator concurrently
      (Promise.all) on the authorize, exchange, and refresh paths.
    - Document the loadClient redirect-URI binding (registration is bound to its
      redirect_uris; cache must be keyed on PrepareInput.redirectUri) and the DCR
      refresh handshake contract (clientId must be supplied on the refresh
      handshake, reconstructed from persisted account metadata).
    - Tests: make the refresh auth-method test prove handshake-over-config
      precedence (differing values), exercise async loadClient/saveClient, and
      cover malformed-cache rejection.
    - README: document resource indicators, refresh, and client caching; drop the
      stale "does not cache" claim.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
    
    * feat(auth): surface token-response scope on ExchangeResult
    
    Add an optional `scope` to `ExchangeResult` carrying the raw `scope` from the
    token response (RFC 6749 §5.1). Populate it from the authorization_code and
    refresh_token grants in both createPkceProvider and createDcrProvider (and from
    postTokenEndpoint). Lets a provider's validateToken record the
    server-authoritative granted scope instead of re-deriving it from the request —
    important when the server narrows scope relative to what was asked for.
    
    Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
    
    ---------
    
    Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
    scottlovegrove and claude authored Jun 5, 2026
    Configuration menu
    Copy the full SHA
    0db0cf3 View commit details
    Browse the repository at this point in the history
  2. chore(release): 0.25.0 [skip ci]

    ## [0.25.0](v0.24.0...v0.25.0) (2026-06-05)
    
    ### Features
    
    * **auth:** add resource indicator, refresh, and client caching to DCR provider ([#60](#60)) ([0db0cf3](0db0cf3))
    doist-release-bot[bot] committed Jun 5, 2026
    Configuration menu
    Copy the full SHA
    7718e11 View commit details
    Browse the repository at this point in the history
Loading