Releases: safe-global/safe-client-gateway
v1.13.1
What's Changed
- Extend not-found token price TLL use cases by @hectorgomezv in #841
Full Changelog: v1.13.0...v1.13.1
v1.13.0
What's Changed
- Update NodeJS version on CI/README files by @hectorgomezv in #837
- fix: rename
Contract
entity toAlertsRegistration
by @iamacook in #838 - feat: add
/recovery
route by @iamacook in #801 - Increase TTL for not found token prices by @hectorgomezv in #828
- Change CoingeckoApi constant name to notFoundPriceTtlSeconds by @hectorgomezv in #840
Full Changelog: v1.12.0...v1.13.0
v1.12.0
What's Changed
- feat: add
/alerts
route by @iamacook in #793 - Make AppModule a Dynamic Module by @fmrsabino in #794
- Fix Alerts Controller tests by @fmrsabino in #797
- Add recommended nonce endpoint by @fmrsabino in #796
- Remove RootController from Swagger by @fmrsabino in #802
- feat: enable
AlertsModule
via feature flag by @iamacook in #800 - fix: remove
removeContracts
by @iamacook in #803 - Rename IncomingTransferMapper to TransferMapper by @hectorgomezv in #806
- Enable console stdout on VSCode debugging by @hectorgomezv in #805
- Execute nested transfers mappings sequentially by @hectorgomezv in #804
- chore: cancel previous in-progress jobs by @iamacook in #807
- feat: add alerts domain by @iamacook in #795
- Update README.md by @hectorgomezv in #808
- Revert "chore: cancel previous workflows in progress (#807)" by @fmrsabino in #809
- build(deps): bump @safe-global/safe-deployments from 1.27.0 to 1.28.0 by @dependabot in #810
- build(deps): bump axios from 1.5.0 to 1.6.0 by @dependabot in #813
- build(deps): bump viem from 1.16.6 to 1.18.1 by @dependabot in #814
- build(deps-dev): bump @typescript-eslint/eslint-plugin from 6.7.5 to 6.9.1 by @dependabot in #811
- build(deps-dev): bump @types/express from 4.17.18 to 4.17.20 by @dependabot in #812
- Fix get-contract E2E test by @hectorgomezv in #816
- chore: move E2E vars. to setup by @iamacook in #819
- Revert "Make AppModule a Dynamic Module (#794)" by @fmrsabino in #820
- Backmerge release v1.11.1 by @hectorgomezv in #818
- feat: add
TenderlySignatureGuard
by @iamacook in #799 - Include current nonce in recommended-nonce route by @fmrsabino in #817
- Fix CacheDir for token prices by @hectorgomezv in #823
- feat: add
AlertsRouteGuard
by @iamacook in #822 - Backmerge release v1.11.2 by @hectorgomezv in #824
- feat: decode
multiSend
alerts by @iamacook in #821 - Update to Safe Ecosystem Foundation in LICENSE by @hectorgomezv in #825
- build(deps-dev): bump @nestjs/schematics from 10.0.2 to 10.0.3 by @dependabot in #833
- build(deps): bump postgres from 3.4.0 to 3.4.3 by @dependabot in #835
- build(deps-dev): bump eslint from 8.52.0 to 8.53.0 by @dependabot in #834
- build(deps): bump @types/lodash from 4.14.199 to 4.14.200 by @dependabot in #832
- build(deps): bump node from 20.8.1-alpine to 20.9.0-alpine by @dependabot in #830
- build(deps): bump the nest-js-core group with 4 updates by @dependabot in #831
Full Changelog: v1.11.1...v1.12.0
v1.11.2
What's Changed
Fix CacheDir for token prices
- Modifies the
CacheDir
for token/native coins prices. This prevents subsequent requests from renewing the cache TTL for the entire key.
Full Changelog: v1.11.1...v1.11.2
v1.11.1
What's Changed
Fix get-contract E2E test
- Adapts
get-contract
e2e test to the current contract metadata.
Full Changelog: v1.11.0...v1.11.1
v1.11.0
What's Changed
-
Slice nested transfers by @hectorgomezv in #771
- Cuts the number of nested transfers for each transaction in the history to a max value.
-
feat: add alerts (Tenderly) data source by @iamacook in #787
- Adds a new
alerts
data source, leveraging the Tenderly API in anticipation of Tenderly Alerts for the forthcoming recovery implementation.
- Adds a new
Other changes
- Use random values for prices test configuration by @hectorgomezv in #769
- fix: remove redundant
isHex
function by @iamacook in #772 - Fix /balances unit test by @hectorgomezv in #774
- build(deps-dev): bump eslint from 8.51.0 to 8.52.0 by @dependabot in #782
- build(deps-dev): bump @types/semver from 7.5.3 to 7.5.4 by @dependabot in #781
- build(deps-dev): bump @types/supertest from 2.0.12 to 2.0.15 by @dependabot in #780
- build(deps): bump nestjs-cls from 3.5.1 to 3.6.0 by @dependabot in #778
- build(deps): bump @nestjs/swagger from 7.1.13 to 7.1.14 by @dependabot in #779
- fix: remove unused
IConfigurationService
by @iamacook in #776 - build(deps): bump actions/setup-node from 3 to 4 by @dependabot in #777
- fix: load Safe info if transaction tags error by @iamacook in #775
- Bump node version from 18.17.0 to 20.8.1 by @fmrsabino in #785
- Fix Root Controller test description typo by @hectorgomezv in #788
- Backmerge release 1.10.1 by @fmrsabino in #786
- fix: use interface over actual implementation by @iamacook in #789
- Fix Coingecko configuration for Gnosis Chain by @hectorgomezv in #790
- fix:
get-contract
E2E test by @iamacook in #792
Full Changelog: v1.10.1...v1.11.0
v1.10.1
What's Changed
Limit the number of nested transactions
The number of nested transactions for the Safe's history is now limited via MAX_NESTED_TRANSFERS
. The default value is 100 transactions.
Note: Setting a negative value would still limit the number of transactions but would show the first numberOfTransactions - MAX_NESTED_TRANSFERS
(instead of the first MAX_NESTED_TRANSFERS
)
Full Changelog: v1.10.0...v1.10.1
v1.10.0
What's Changed
-
Set default values for trusted and exclude_spam params by @fmrsabino in #735
/balances
endpointtrusted
query param will befalse
if none is provided./balances
endpointexclude_spam
query param will betrue
if none is provided.
-
Change relative import paths to non-relative path aliases by @hectorgomezv in #749
- Full paths with path aliases are now used on
import
statements in the whole service codebase.
- Full paths with path aliases are now used on
-
Add external prices provider support by @hectorgomezv in #732
- This PR adds the option to get token prices from an external prices provider (Coingecko). This feature is behind a feature flag, managed by the environment variable
FF_PRICES_PROVIDER_CHAIN_IDS
. So including chain IDs intoFF_PRICES_PROVIDER_CHAIN_IDS
(as comma-separated numbers), will enable Coingecko prices retrieval for those chain IDs.
- This PR adds the option to get token prices from an external prices provider (Coingecko). This feature is behind a feature flag, managed by the environment variable
-
Add RootController with SwaggerUI redirection by @hectorgomezv in #754
- Redirects the root path to the SwaggerUI web app. This is intended to prevent the service from showing the default SwaggerUI template when requesting the
index.html
page directly.
- Redirects the root path to the SwaggerUI web app. This is intended to prevent the service from showing the default SwaggerUI template when requesting the
-
Add Postgres database integration by @fmrsabino in #760
- Adds support for connecting to a Postgres database. This is completely optional. It will only result in an error if a query is made and there's no database server running.
-
Allow null values as Safe version by @hectorgomezv in #764
- Adds support for having null as Safes version attribute. This makes the service compatible with the Safe Transaction Service, which now allows a
null
version attribute if themasterCopy
address is not one of the deterministic known addresses.
- Adds support for having null as Safes version attribute. This makes the service compatible with the Safe Transaction Service, which now allows a
Other Changes
- Fix incoming-transfers filtering by @hectorgomezv in #729
- Bump nginx container from 1.23.X to 1.25.X by @fmrsabino in #715
- Log successful transaction proposal requests by @fmrsabino in #731
- build(deps): bump the nest-js-core group with 4 updates by @dependabot in #738
- build(deps-dev): bump @typescript-eslint/parser from 6.7.4 to 6.7.5 by @dependabot in #739
- build(deps-dev): bump ts-loader from 9.4.4 to 9.5.0 by @dependabot in #740
- build(deps): bump @nestjs/swagger from 7.1.11 to 7.1.13 by @dependabot in #742
- build(deps-dev): bump @typescript-eslint/eslint-plugin from 6.7.4 to 6.7.5 by @dependabot in #741
- Set default query param values in CollectiblesController by @fmrsabino in #736
- Fix service version in Swagger interface by @fmrsabino in #737
- Revert "Log successful transaction proposal requests" by @fmrsabino in #744
- Modify VSCode typescript import preferences by @hectorgomezv in #748
- Use builtin parsers for boolean query params by @hectorgomezv in #747
- Add .git-blame-ignore-revs file by @hectorgomezv in #751
- build(deps): bump viem from 1.14.0 to 1.16.6 by @dependabot in #755
- Fix bad Coingecko API query param by @hectorgomezv in #753
- build(deps): bump winston from 3.10.0 to 3.11.0 by @dependabot in #756
- Adjust chains native coins configuration by @hectorgomezv in #752
- build(deps-dev): bump @faker-js/faker from 8.1.0 to 8.2.0 by @dependabot in #757
- build(deps-dev): bump eslint from 8.50.0 to 8.51.0 by @dependabot in #758
- Add RootController with SwaggerUI redirection by @hectorgomezv in #754
- build(deps-dev): bump @types/node from 20.6.0 to 20.8.6 by @dependabot in #759
- Add Sepolia prices retrieval configuration by @hectorgomezv in #761
- Fix balances endpoint ordering by @hectorgomezv in #763
- Set ApiOkResponse type for Safe Info endpoint by @fmrsabino in #766
- Fix OpenAPI definitions for SafeState entity by @hectorgomezv in #765
- Make fiatCode case-insensitive on /balances endpoint by @hectorgomezv in #768
Full Changelog: v1.9.0...v1.10.0
v1.9.0
What's Changed
Support for CHAIN_UPDATE
and SAFE_APPS_UPDATE
hooks
Support was added for two new hook types: CHAIN_UPDATE
and SAFE_APPS_UPDATE
in #683.
The CHAIN_UPDATE
hook invalidates all Chain related data for the specified chain (it also invalidates the paginated response for all the chains).
The SAFE_APPS_UPDATE
hook invalidates all Safe Apps related data for the specified chain.
The hooks can be triggered via the /hooks/events
endpoint:
POST /v1/hooks/events
{
"type": "CHAIN_UPDATE" | "SAFE_APPS_UPDATE",
"chainId": <chainId>,
}
Added support for Safe-App-User-Agent logging
Added support for logging the value of the header Safe-App-User-Agent
. #714 This header can be used for analytics regarding the source of the request.
Note: Considerations regarding where the header should be set and respective values are not specified, and we leave that decision for the users running this service.
Other Changes
- build(deps): bump the nest-js-core group with 4 updates in #717
- build(deps): bump viem from 1.8.1 to 1.14.0 in #723
- build(deps): bump @nestjs/cli from 10.1.12 to 10.1.18 in #718
- build(deps): bump @safe-global/safe-deployments from 1.26.0 to 1.27.0 in #719
- build(deps): bump rimraf from 5.0.1 to 5.0.5 in #721
- build(deps-dev): bump eslint from 8.49.0 to 8.50.0 in #724
- build(deps-dev): bump @types/express from 4.17.17 to 4.17.18 in #726
- build(deps-dev): bump @typescript-eslint/eslint-plugin from 6.7.0 to 6.7.4 in #722
- build(deps-dev): bump @typescript-eslint/parser from 6.6.0 to 6.7.3 in #720
- build(deps-dev): bump @typescript-eslint/parser from 6.7.3 to 6.7.4 in #725
Full Changelog: v1.8.1...v1.9.0
v1.8.1
What's Changed
- Revert "build(deps): bump node from 18.17-alpine to 18.18-alpine (#713)" by @fmrsabino in #727
Full Changelog: v1.8.0...v1.8.1