Releases: 5afe/safe-gelato-relay-service
v0.9.0
What's Changed
- chore(deps): bump @nestjs/config from 2.3.1 to 2.3.2 in #119
- chore(deps): bump typechain from 8.1.1 to 8.2.0 in #122
- chore(deps): bump @nestjs/common from 9.4.1 to 9.4.2 in #126
- chore(deps): bump rimraf from 5.0.0 to 5.0.1 in #129
- chore(deps): bump @nestjs/core from 9.4.1 to 9.4.2 in #128
- chore(deps): bump nestjs-cls from 3.3.1 to 3.4.0 in #130
- chore(deps): bump @nestjs/cli from 9.4.2 to 9.5.0 in #132
- chore(deps): bump docker/setup-qemu-action from 2.1.0 to 2.2.0 in #133
- chore(deps): bump @typechain/ethers-v6 from 0.3.1 to 0.4.0 in #134
- chore(deps): bump redis from 4.6.6 to 4.6.7 in #136
- chore(deps): bump winston from 3.8.2 to 3.9.0 in #137
- chore(deps): bump @nestjs/common from 9.4.2 to 10.0.1 in #139
- chore(deps): bump @openzeppelin/contracts from 4.8.3 to 4.9.2 in #140
- chore(deps-dev): bump @nestjs/testing from 9.4.0 to 9.4.2 in #120
- chore(deps-dev): bump @nestjs/schematics from 9.1.0 to 9.2.0 in #121
- chore(deps-dev): bump ts-loader from 9.4.2 to 9.4.3 in #123
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 5.59.6 to 5.59.8 in #125
- chore(deps-dev): bump typescript from 5.0.4 to 5.1.3 in #127
- chore(deps-dev): bump @faker-js/faker from 8.0.0 to 8.0.2 in #135
- chore(deps-dev): bump @types/node from 20.1.4 to 20.3.0 in #131
- chore(deps-dev): bump @types/node from 20.3.0 to 20.3.1 in #138
Full Changelog: v0.8.0...v0.9.0
v0.8.0
What's Changed
- chore(deps): bump @nestjs/core from 9.4.0 to 9.4.1 in #114
- chore(deps): bump @nestjs/common from 9.4.0 to 9.4.1 in #117
- chore(deps): bump @safe-global/safe-deployments from 1.22.0 to 1.23.0 in #115
- chore(deps-dev): bump eslint from 8.40.0 to 8.41.0 in #113
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 5.59.2 to 5.59.6 in #116
Full Changelog: v0.7.0...v0.8.0
v0.7.0
What's Changed
- chore(deps): bump axios from 1.3.6 to 1.4.0 in #109
- chore(deps): bump @nestjs/cli from 9.4.1 to 9.4.2 in #111
- chore(deps-dev): bump @types/node from 20.1.0 to 20.1.4 in #107
- chore(deps-dev): bump @faker-js/faker from 7.6.0 to 8.0.0 in #108
- chore(deps-dev): bump @typescript-eslint/parser from 5.59.2 to 5.59.5 in #110
Full Changelog: v0.6.0...v0.7.0
v0.6.0
What's Changed
- chore(deps): bump redis from 4.6.5 to 4.6.6 in #101
- chore(deps): bump @typechain/ethers-v6 from 0.3.0 to 0.3.1 in #105
- chore(deps-dev): bump @typescript-eslint/parser from 5.59.1 to 5.59.2 in #102
- chore(deps-dev): bump @types/node from 18.16.3 to 20.1.0 in #103
- chore(deps-dev): bump eslint from 8.39.0 to 8.40.0 in #104
Full Changelog: v0.5.0...v0.6.0
v0.5.0
What's Changed
- Remove devDependencies from docker image in #100
- Mount cache in Docker image in #89
- refactor: split
sponsored-call.helper
in #97 - Isolate @nestjs/testing dependency in #99
- Bump yarn from 3.4.1 to 3.5.0 in #90
- chore(deps-dev): bump @typescript-eslint/parser from 5.59.0 to 5.59.1 in #94
- chore(deps-dev): bump @types/node from 18.16.0 to 18.16.3 in #95
- chore(deps-dev): bump @typescript-eslint/eslint-plugin from 5.59.0 to 5.59.2 in #96
- chore(deps): bump rxjs from 7.8.0 to 7.8.1 in #93
- chore(deps): bump rimraf from 3.0.2 to 5.0.0 in #77
Full Changelog: v0.4.0...v0.5.0
v0.4.0
What's Changed
TypeChain
The service now uses TypeChain to generate TypeScript types for the smart contracts that we currently use in the service. #86
Bindings are available for:
Other
- Use exception filter for validation errors in #83
- chore(deps-dev): bump prettier from 2.8.7 to 2.8.8 in #79
- chore(deps-dev): bump @types/node from 18.15.13 to 18.16.0 in #78
- chore(deps-dev): bump eslint from 8.38.0 to 8.39.0 in #80
Full Changelog: v0.3.0...v0.4.0
v0.3.0
What's Changed
Use Redis to store rate limits
The service now uses Redis to store the rate limits for the relay functionality. #70
For development purposes, a Redis service was added to the docker compose file. For production deployments, a Redis
instance is now required.
The following environment variables can/should be set:
REDIS_HOST
– the location of the Redis instance (default islocalhost
)REDIS_PORT
– the port where the Redis instance is running (default is6379
)
Use JSON as the default logging format
JSON is now the default logging format used in the application. #72
The base format for a log message (produced by ILoggingService
) is as follows:
{
message: <string | object>, // string value or json payload
request_id: <string>, // id tied to the request
timestamp: <string>, // ISO 8601 Date string
}
Additionally, each request handled by a route has the following message
field:
{
...
message: {
client_ip: <optional string>, // retrieved from the header X-Real-IP. null if not available
method: <string>, // GET, POST, etc..
response_time_ms: <number>, // response time in milliseconds
route: <optional string>, // route which handled the request. Null if no route handled this request (eg.: 404 requests)
path: <string>, // path of the resource requested
status_code: <number>, // resulting status code of the request
detail: <optional string>, // optional message regarding the result of the request
}
}
Other
- Fixed an issue where Safe-related transactions to self (such as owner management, threshold changes and setting the Fallback Handler)
were not allowed. These actions can now be performed via the relay. #76 - chore(deps-dev): bump typescript from 4.9.5 to 5.0.4 in #65
- chore(deps-dev): bump @types/node from 16.18.12 to 18.15.11 in #69
- chore(deps): bump @safe-global/safe-deployments from 1.20.2 to 1.22.0 in #68
- chore(deps-dev): bump @nestjs/cli from 9.2.0 to 9.4.0 in #66
- chore(deps): bump @gelatonetwork/relay-sdk from 3.2.1 to 3.5.0 in #67
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's Changed
- feat: prevent relaying of transactions to self in #71
- Add AppProvider in #48
- Add RouteLoggerInterceptor in #63
- Use interceptor for logging in #64
- Provide Winston instance in dependency graph in #62
- chore(deps): bump axios from 1.3.3 to 1.3.5 in #57
- chore(deps-dev): bump @nestjs/schematics from 9.0.4 to 9.1.0 in #56
- chore(deps-dev): bump tsconfig-paths from 4.0.0 to 4.2.0 in #58
- chore(deps): bump ethers from 6.0.5 to 6.3.0 in #60
- chore(deps-dev): bump eslint-config-prettier from 8.6.0 to 8.8.0 in #59
- chore(deps): bump coverallsapp/github-action from 1 to 2 in #53
- chore(deps): bump docker/build-push-action from 3 to 4 in #55
- Use info level to log route requests in #61
Full Changelog: v0.1.0...v0.2.0
v0.1.0
Initial release of the relay service
Includes
- feat: add env var functionality by @iamacook in #1
- feat: relay endpoint by @iamacook in #4
- feat: remaining relays endpoint by @iamacook in #5
- refactor: rename arguments by @iamacook in #7
- refactor: always use async validation by @iamacook in #8
- refactor: limit relays directly in service by @iamacook in #12
- feat: support multisend transactions by @iamacook in #14
- fix: pass gas limit to gelato as string by @schmanu in #17
- fix: allow all origins in cors header by @schmanu in #16
- Set the relay path in the controller by @fmrsabino in #19
- Initial deployment setup by @elgatovital in #13
- refactor: wrap Gelato SDK in
SponsorModule
by @iamacook in #20 - Enable staging deployment by @elgatovital in #22
- Adjust dockerhub repo by @elgatovital in #24
- Disable autodeploy job by @fmrsabino in #26
- feat: request scoped logger by @schmanu in #21
- feat:
SafeInfoModule
andNetworkModule
by @iamacook in #23 - Add
/relay/health
endpoint by @usame-algan in #27 - Revert "Disable autodeploy job (#26)" by @fmrsabino in #28
- Add support for Coveralls by @fmrsabino in #29
- Update README.md by @fmrsabino in #30
- fix: remove
cause
fromZodValidationPipe
by @iamacook in #31 - Add CODEOWNERS by @fmrsabino in #32
- fix: remove colors from logs by @schmanu in #37
- feat: allow relaying of
createProxyWithNonce
transactions by @iamacook in #38 - feat: return
limit
in remaing relay response by @iamacook in #40 - feat: add alerts to errors we want to monitor by @schmanu in #41
New Contributors
- @schmanu made their first contribution in #17
- @fmrsabino made their first contribution in #19
- @elgatovital made their first contribution in #13
- @usame-algan made their first contribution in #27
Full Changelog: https://github.com/safe-global/safe-gelato-relay-service/commits/v0.1.0