Releases: interledger/rafiki
Releases · interledger/rafiki
v1.1.2-beta
v1.1.1-beta
v1.1.0-beta
✨ New Features
1cd0790
- backend: better errors during token introspection in RS (PR #3346 by @cozminu)- For Open Payments clients, we now differentiate between "Inactive Token" vs "Insufficient Grant" errors when making a request to the resource server. For the former, an Open Payments client will simply need to rotate the token, for the latter, a new grant must be requested with the correct permissions for the resource.
3d40648
- auth: use gnap error middleware on idp api (PR #3094 by @njlie)- Now, errors from the IDP server return properly formatted objects, similar to the errors thrown in the AS
5c7f1fa
- auth: handle expired interactions gracefully during finish (PR #3340 by @njlie)- Improved IDP error handling: redirect back to the client when possible, providing better error descriptions in redirect URL, particularly during expired interactions
ce17e0f
- backend: redirect to webpage when querying payment pointer in browser (PR #3298 by @cozminu)- Now, integrators can set
WALLET_ADDRESS_REDIRECT_HTML_PAGE
env flag which will allow doing a 302 redirect to a webpage for a wallet address query, if theaccept
header of the incoming request istext/html
(typically from a browser)
- Now, integrators can set
36107b1
- backend: unique keys per wallet address (PR #2863 by @sabineschaller, @oana-lolea)ee45d61
- docs: added basic site tracking using Umami (PR #3157 by @JoblersTune)636a1ca
- backend: check grant receiver to match quote receiver (PR #3248 by @cozminu)308ed37
- backend: Check quote expiry in outgoing payment worker (#3141) (PR #3173 by @CollinsMunene)286f146
- backend: bump tb from 0.15.4 to 0.16.29 (PR #3323 by @koekiebox)7d197f3
- webhook: provide grant id in outgoing payment events (PR #3335 by @dragosp1011)ba7cac7
- backend: directly use resource server URL to generate URLs for OP (PR #3341 by @cozminu)f57695b
- backend,mase: admin api healthcheck (PR #3199 by @BlairCurrey)cbd3a0c
- backend: deadlocks (PR #3320 by @BlairCurrey)
🐛 Bug Fixes
0b4cac3
- backend: await signature verification (PR #3175 by @mkurapov)- Signature verification for backend API was fixed. If you have
API_SECRET
set in the environment variables for securing thebackend
Admin API, and you are not signing the GraphQL requests, you will being seeing a 401 Unauthorized error. Please start signing your Admin API requests, or removeAPI_SECRET
environment variable until you are able to sign requests.
- Signature verification for backend API was fixed. If you have
7f1a822
- mock-ase: process is undefined error in client (PR #3275 by @cozminu)a338e5d
- backend: allow admin api to query all receivers and move checks (PR #3314 by @cozminu)
🔧 Chores
115a0e4
- performance: add signature header to fix 401 (PR #3237 by @BlairCurrey)641d23b
- performance create receiver 401 with multiple vus (PR #3300 by @BlairCurrey)8944114
- deps: update dependency isbot to ^5.1.18 (PR #3081 by @renovate[bot])4a4fbd0
- deps: update dependency axios to v1.7.9 (PR #3080 by @renovate[bot])44cc122
- deps: update dependency class-variance-authority to ^0.7.1 (PR #3194 by @renovate[bot])d4070a6
- deps: update dependency mermaid to ^11.4.1 (PR #3188 by @renovate[bot])643c46b
- deps: update dependency objection to ^3.1.5 (PR #3189 by @renovate[bot])3207094
- deps: update dependency koa to ^2.15.3 (PR #3186 by @renovate[bot])05297a2
- deps: update dependency astro to v4.16.18 [security] (PR #3185 by @renovate[bot])9ea13b0
- deps: update dependency yaml to ^2.7.0 (PR #3195 by @renovate[bot])7c3f117
- deps: update graphql-tools monorepo (PR #3207 by @renovate[bot])034740d
- deps: update dependency isbot to ^5.1.21 (PR #3203 by @renovate[bot])1274d49
- deps: update dependency koa to v2.15.4 [security] (PR #3297 by @renovate[bot])7f6c28b
- deps: update dependency @interledger/openapi to v2.0.2 (PR #3193 by @renovate[bot])ea10375
- deps: update dependency isbot to ^5.1.22 (PR #3287 by @renovate[bot])5c370d6
- deps: update dependency starlight-links-validator to ^0.14.3 (PR #3288 by @renovate[bot])076e8d3
- deps: update dependency isbot to ^5.1.23 (PR #3313 by @renovate[bot])f2ace04
- deps: update dependency dotenv to ^16.4.7 (PR #3155 by @renovate[bot])07e8c7c
- deps: update dependency tailwindcss to ^3.4.17 (PR #3089 by @renovate[bot])ade2318
- deps: update dependency nock to ^13.5.6 (PR #3181 by @renovate[bot])0ffc609
- deps: update dependency nock to v14.0.0-beta.19 (PR #3184 by @renovate[bot])1834683
- deps: update dependency postcss to ^8.4.49 (PR #3192 by @renovate[bot])d542ffd
- deps: update dependency @tailwindcss/forms to ^0.5.10 (PR #3205 by @renovate[bot])6a9ca67
- deps: update dependency eslint-plugin-jsx-a11y to ^6.10.2 (PR #3210 by @renovate[bot])b51b77e
- deps: update dependency @types/lodash to ^4.17.14 (PR #3200 by @renovate[bot])08cc777
- deps: update dependency node-mocks-http to ^1.16.2 (PR #3212 by @renovate[bot])f14a8c5
- deps: update dependency go to v1.23.5 (PR #3211 by @renovate[bot])8fdb6e7
- deps: update dependency cross-fetch to ^4.1.0 (PR #3208 by @renovate[bot])5296b95
- deps: update dependency npm-run-all2 to ^6.2.6 (PR #3216 by @renovate[bot])79cca16
- deps: update dependency postcss to ^8.5.1 (PR #3217 by @renovate[bot])836cff2
- deps: update dependency testcontainers to ^10.16.0 *(PR #3218 by @r...
v1.0.1-beta
v1.0.0-beta
✨ New Features
aa77aea
- localenv: add performance metrics (PR #2999 by @BlairCurrey)eae95ad
- backend: add local payment (PR #2857 by @BlairCurrey)8c1390d
- auth: return GNAP 404 error if token cannot be rotated (PR #3101 by @golobitch)98e165a
- backend: caching on asset and wallet address including other enhancements (PR #3041 by @koekiebox)8c8a9b9
- backend: use cache when fetching outgoing payment in worker (PR #3142 by @mkurapov)
🐛 Bug Fixes
29dc6c6
- deps: update dependency mermaid to v10.9.3 [security] (PR #3059 by @renovate[bot])dbbcd9c
- deps: update dependency astro to v4.16.1 [security] (PR #3060 by @renovate[bot])1b24e27
- deps: update dependency axios to v1.7.4 [security] (PR #3061 by @renovate[bot])8651fe5
- Admin UI error Auth redirect (PR #3047 by @DarianM)dcc0cf8
- deps: update dependency @headlessui/react to ^1.7.19 (PR #3079 by @renovate[bot])a02aafa
- fixed error where no assets were found when opening create peer page (PR #3095 by @oana-lolea)e065312
- backend: update packet expiry error handling (PR #3135 by @sanducb)5c21c94
- backend: inverted rate (PR #3165 by @BlairCurrey)
🔧 Chores
a7417e6
- update renovate.json file (PR #3058 by @mkurapov)509f9ca
- deps: update dependency yaml to ^2.6.0 (PR #2947 by @renovate[bot])60dc11a
- deps: update dependency @interledger/open-payments to v6.13.2 (PR #3031 by @renovate[bot])a84ad3d
- deps: update apollo graphql packages (PR #2924 by @renovate[bot])179d859
- deps: update dependency @swc/jest to ^0.2.37 (PR #3063 by @renovate[bot])42891b9
- deps: update dependency @tailwindcss/forms to ^0.5.9 (PR #3064 by @renovate[bot])c7af670
- deps: update dependency @types/lodash to ^4.17.13 (PR #3066 by @renovate[bot])d9d9878
- deps: update dependency eslint to ^8.57.1 (PR #3068 by @renovate[bot])fcba95e
- deps: update dependency nock to v14.0.0-beta.15 (PR #3070 by @renovate[bot])fc856ba
- deps: update dependency @types/jest to ^29.5.14 (PR #3065 by @renovate[bot])2c479ee
- deps: update dependency autoprefixer to ^10.4.20 (PR #3067 by @renovate[bot])47669db
- deps: update dependency nock to ^13.5.5 (PR #3069 by @renovate[bot])cd3d893
- deps: update dependency postcss to ^8.4.47 (PR #3072 by @renovate[bot])dc6fcf2
- token invalid throw 401 instead of return public incoming payment (PR #3062 by @DarianM)d30deeb
- update frontend environment variables (PR #3030 by @oana-lolea)b912bff
- Fix mock ASE seeding script (PR #3050 by @oana-lolea)43d8498
- ci: use fallback registry for trivy db fetch (commit by @mkurapov)b3c7fa7
- fix vulnerabilities (PR #3087 by @mkurapov)5ede3e0
- routine dependency bumps (PR #3099 by @JoblersTune)ad9ca7c
- removed Glossary page's overview section (PR #3136 by @JoblersTune)5de6208
- update accountingTransfer limit to 20 (PR #3115 by @oana-lolea)497d160
- Added state and expiry date to accounting transfer (PR #3131 by @oana-lolea)4e68d7f
- deps: update pnpm to v8.15.9 (PR #3078 by @renovate[bot])d72fe7b
- re-enable Prettier for docs (PR #3147 by @JoblersTune)6ef0a06
- backend: fix incrementCounterWithTransactionAmount function (PR #3146 by @mkurapov)61a4028
- add override for cross-spawn vulnerability (PR #3154 by @mkurapov)
Compatibility
- Open Payments clients: 6.x.x
- TigerBeetle: 0.15.4
v1.0.0-alpha.20
What's Changed
Breaking Changes
None
General Changes
- docs: rafiki admin auth optional by @brad-dow in #3016
- docs: add custom styles for wider tables by @huijing in #3007
- docs: update graphql descriptions backend by @brad-dow in #3013
- docs: adding information about wallet address URLs being case-insensitive by @brad-dow in #3019
- docs: added missing responses to id-provider requests by @oana-lolea in #3024
- feat(backend): make payment retry attempts configurable via env by @dead8309 in #3028
- docs: update graphql descriptions auth by @brad-dow in #3010
- docs: updating table styles by @brad-dow in #3038
- fix: add border to overflow tables by @huijing in #3040
- docs: added new backend environment variable by @brad-dow in #3039
- chore(auth): fix generated types by @mkurapov in #3045
- chore(backend): dont wait 30s when completing/expiring incoming payment by @mkurapov in #3043
- Payments that complete when their incoming amount is reached will automatically complete and the
incoming_payment.completed
webhook will fire without needing to wait 30s
- Payments that complete when their incoming amount is reached will automatically complete and the
New Contributors
Full Changelog: v1.0.0-alpha.19...v1.0.0-alpha.20
Compatibility
- Open Payments clients: 6.x.x
- TigerBeetle: 0.15.4
v1.0.0-alpha.19
What's Changed
General Changes
- docs: fixes #2962 by @melissahenderson in #3000
- feat(docs): add header links by @BlairCurrey in #2882
- docs: remove unused pages by @brad-dow in #3006
- feat: Allow configurable cookie SameSite header by @lengyel-arpad85 in #3001
- refactor(backend): add NoopTelemetryServiceImpl to make tel optional by @BlairCurrey in #2991
Full Changelog: v1.0.0-alpha.18...v1.0.0-alpha.19
v1.0.0-alpha.18
What's Changed
Breaking Changes
- fix(backend): make the rafiki wallet url case insensitive by @s100tist in #2833
Wallet address creation viacreateWalletAddress
mutation (as well as the getting of the wallet address through Admin API & Open Payments) now treats the URL as case insensitive, e.g. you cannot create https://rafiki.money/AccOunt and https://rafiki.money/account as separate wallet addresses. Please handle this appropriately, if you have multiple wallet addresses with the same underlying URL, merge them/delete them as necessary in your system.
General Changes
- feat(workflow): add to docs project if issue is labelled with docs by @mkurapov in #2913
- chore(workflow): fix add to project action version by @mkurapov in #2914
- feat(backend): update Incoming Payment mutation by @dianaOneOut36 in #2923
- chore: documentation workflow updates by @mkurapov in #2956
- docs: structure and content update by @JoblersTune in #2875
- fix(frontend): concatenate correctly base url and path when creating a wallet address by @oana-lolea in #2960
- chore: bump seed timeout by @BlairCurrey in #2911
- docs: fixes #2964 and #2946 by @melissahenderson in #2977
- docs: added spec for 'incomingPaymentCreated' and schema for 'amount' in webhooks.yaml by @oana-lolea in #2978
- chore: disable prettier in docs package for markdown table readability by @JoblersTune in #2996
New Contributors
- @oana-lolea made their first contribution in #2960
- @s100tist made their first contribution in #2833
Full Changelog: v1.0.0-alpha.17...v1.0.0-alpha.18
v1.0.0-alpha.17
v1.0.0-alpha.16
What's Changed
Breaking Changes
- feat(quote)!: remove internal fields from schema by @golobitch in #2858
- We no longer return ILP-specific fields in the Quote model for the backend Admin API. References to resolve
highEstimatedExchangeRate
lowEstimatedExchangeRate
maxPacketAmount
minExchangeRate
should be deleted.
- We no longer return ILP-specific fields in the Quote model for the backend Admin API. References to resolve
- fix(wallet-address)!: additional properties by @golobitch in #2880
- We now correctly return additional properties for the Open Payments wallet address GET as
{ key: value }
, instead of outputting the whole DB model. See issue for more details.
- We now correctly return additional properties for the Open Payments wallet address GET as
New Features
- feat(interaction): return grantId by @golobitch in #2843
- We now return
grantId
when doing the grant look up using the interactionId
- We now return
- feat(outgoing-payment): add grantId to admin api by @golobitch in #2841
grantId
is now available as a field to resolve under the Outgoing Payment model in the GraphQL backend Admin API. This is the grantId of the grant that the user did the interaction for
- feat(auth): soft delete access tokens and grant accesses by @njlie in #2837
- We no longer hard delete grant accesses (& tokens). This enables querying grants by wallet address, even if the grants are revoked.
- feat(incoming-payment): make it actionable by @golobitch in #2827
- The receiving ASE can now "action" incoming payments. This means, that when a incoming payment is created via Open Payments, Rafiki backend will poll for the result of one of two mutations:
approveIncomingPayment
orcancelIncomingPayment
. Approving an incoming payment will allow the creation of it to proceed (and the Open Payments client gets a success response), whilecancelIncomingPayment
will mark the payment as cancelled, and return a 403 error). This behaviour can be enabled viaPOLL_INCOMING_PAYMENT_CREATED_WEBHOOK
and configured viaINCOMING_PAYMENT_CREATED_POLL_TIMEOUT_MS
&INCOMING_PAYMENT_CREATED_POLL_FREQUENCY_MS
- The receiving ASE can now "action" incoming payments. This means, that when a incoming payment is created via Open Payments, Rafiki backend will poll for the result of one of two mutations:
- feat(backend): outgoing payments page resolver by @njlie in #2872
- Now, you can paginate over outgoing payments via
outgoingPayments
query. It allows filtering by states, walletAddressIds and receivers (incoming payment url).
- Now, you can paginate over outgoing payments via
- feat: make rafiki admin auth optional by @JoblersTune in #2883
- You can now run the frontend project without needing kratos via
AUTH_ENABLED
flag. This is enabled by default.
- You can now run the frontend project without needing kratos via
- feat(backend): improve PSQL balance calculation by @mkurapov in #2881
- Should greatly improve the performance of PSQL balance calculation, and as a result, the speed of payments
General Changes
- feat(backend): add rate probe metric by @BlairCurrey in #2820
- feat(backend): ip lookup, atomic asset creation, document updates. by @koekiebox in #2776
- feat(auth): inspect access during token introspection by @njlie in #2788
- fix(frontend): It is ambiguous on what scale is the withdrawal and deposit input by @Emanuel-Palestino in #2817
- chore: sync docs and readmes by @JoblersTune in #2830
- feat(frontend): ux improvements to liquidity dialog component by @Emanuel-Palestino in #2839
- feat(docker): switch to alpine3.19 by @golobitch in #2842
- fix(auth): interact redirect by @sabineschaller in #2832
- feat(auth): set session expiry based on interaction expiry env by @njlie in #2851
- feat(localenv): span metrics generation by @BlairCurrey in #2849
- feat(2737): add fees as metric for outgoing payment. by @koekiebox in #2831
- refactor(dependencies): axios to 1.7.4 by @golobitch in #2861
- chore: bump dependencies to latest versions by @huijing in #2864
- feat(tests): initial performance test by @njlie in #2828
- docs: updated READMEs and added Rafiki Admin docs by @JoblersTune in #2867
- feat(backend): track if receiver is local by @BlairCurrey in #2862
- feat(backend): start of handling grant token rotation more gracefully by @mkurapov in #2887
- refactor(backend): handle grant lookup more gracefully in remote incoming payment service by @mkurapov in #2888
- feat: added packet count telemetry metrics by @JoblersTune in #2797
- refactor(backend): update rate caching by @mkurapov in #2891
- chore(localenv): fix startup migration by @mkurapov in #2897
Dependency Updates
- chore(deps): update dependency @types/node to ^20.14.13 by @renovate in #2823
- chore(deps): update dependency yaml to ^2.5.0 by @renovate in #2824
- chore(deps): update dependency @apollo/client to ^3.11.2 by @renovate in #2822
- chore(deps): update dependency @types/node to ^20.14.15 by @renovate in #2838
- chore(deps): update dependency @apollo/client to ^3.11.4 by @renovate in #2845
New Contributors
- @Emanuel-Palestino made their first contribution in #2817
Full Changelog: v1.0.0-alpha.15...v1.0.0-alpha.16