Releases: pyth-network/pyth-agent
Pyth Agent v2.4.4
This release should improve on-chain publishing frequency and can hopefully increase the uptime and reduce the latency of our price feeds.
What's Changed
- fix: fire and forget update tx by @ali-bahjati in #102
Full Changelog: v2.4.3...v2.4.4
Pyth Agent v2.4.3
On this change the defaults have been updated and the logic is slightly improved. exporter.maximum_total_compute_fee_micro_lamports
config is removed and exporter.maximum_compute_unit_price_micro_lamports
is added. As our parsed is flexible this change won't be breaking.
What's Changed
- refactor: improve price cap configuration by @ali-bahjati in #101
Full Changelog: v2.4.2...v2.4.3
v2.4.2
What's Changed
- chore: add slot gap to pythnet options by @ali-bahjati in #98
- fix: use both latest publisher and aggregate slot for dynamic pricing by @ali-bahjati in #99
Full Changelog: v2.4.1...v2.4.2
Pyth Agent v2.4.1
What's Changed
- fix: use solana-client pubsub lib instead of solana-shadow by @ali-bahjati in #97
Full Changelog: v2.4.0...v2.4.1
Pyth Agent v2.4.0
What's Changed
- Priority fee defaults tuning
- Market hours weekly schedule support - this allows the agent to automatically respect new
weekly_schedule
metadata if defined on a product. This feature requires no action from configuration/user perspective.
The relevant docker image is available here https://gallery.ecr.aws/pyth-network/agent
Full Changelog: v2.2.0...v2.4.0
Pyth Agent v2.3.1
What's Changed
- Update config.sample.pythnet.toml by @ali-bahjati in #89
- Update config.sample.pythnet.toml by @ali-bahjati in #90
- fix: use publisher latest slot for staleness based pricing by @ali-bahjati in #91
Full Changelog: v2.3.0...v2.3.1
Pyth Agent v2.3.0
What's Changed
- chore: fix typo by @ali-bahjati in #85
- Lower CU budget for mainnet by @guibescos in #86
- Use staleness for pricing by @ali-bahjati in #87
- Update config.sample.pythnet.toml by @hkaliraipyth in #88
Full Changelog: v2.2.0...v2.3.0
Pyth Agent v2.2.0
What's Changed
- fixing readme api link by @ndiakom in #80
- Add minimal docker image to tun pyth-agent by @146karol in #81
- Update config.sample.pythnet.toml by @hkaliraipyth in #82
- Fix documentation link in README.md by @niccoloraspa in #83
- feat: add dyanmic compute unit fee calculation by @ali-bahjati in #84
New Contributors
- @ndiakom made their first contribution in #80
- @146karol made their first contribution in #81
- @niccoloraspa made their first contribution in #83
Full Changelog: v2.1.0...v2.2.0
Pyth Agent v2.0.1
Breaking changes
With this release, the TOML config format abolishes the pythd-compatible key store, in favor of simpler and more readable string pubkey values. This enables us to cleanly distribute sample Pythnet/Pythtest configs with correct program/mapping public keys. Here's how it works:
# Old v1.x.x way
[primary network]
key_store.root_path = "/path/to/keystore"
key_store.publish_keypair_path = "publish_key_pair.json" # Relative path from root_path, "publish_key_pair.json" by default
key_store.program_key_path = "program_key.json" # Relative path from root_path, "program_key.json" by default
key_store.mapping_key_path = "mapping_key.json" # Relative path from root_path, "mapping_key.json" by default
# [...]
# New v2.0.0 way
[primary_network]
key_store.publish_keypair_path = "/path/to/keypair.json" # The root_path is gone, we specify the full path
# Not using separate files anymore
key_store.program_key = "LiteralProgramPubkeyInsideTheConfig" # contents of legacy program_key.json;
key_store.mapping_key = "LiteralMappingPubkeyInsideTheConfig" # contents of legacy mapping_key.json
# [...]
See README for more details and automatic migration instructions. You can also consult config/config.sample.*.toml
for reference.
Accumulator publishing
With this release, we begin official support for the Pythnet/Pythtest-crosschain accumulator program. This program is a part of a new approach to cross-chain publishing, which improves throughput and latencies for cross-chain price feed consumers. To enable accumulator support in your agent, add this to your pythnet/pythtest-crosschain config:
[primary_network]
# [...]
# Pythnet/pythtest-crosschain accumulator key
key_store.accumulator_key = "7Vbmv1jt4vyuqBZcpYPpnVhrqVe5e6ZPb6JxDcffRHUM"
# IMPORTANT: Exporter batch size must be decreased to 7 to support
# larger accumulator transactions, when accumulator_key is set.
exporter.max_batch_size = 7
Other changes
- Sample configs now include the correct program/mapping keys for each network. This includes the
accumulator_key
option for the new Pythnet/Pythtest publishing approach. config/config.toml
option ordering has been cleaned up for readibility and correctness.- Log messages from publisher permission lookup have been clarified
Full Changelog: v1.4.0...v2.0.1
Pyth Agent v1.4.0
What's Changed
- Improved gas efficiency for slow moving prices - Starting with this release, the agent will not publish prices with unchanged price/confidence/status, unless a configurable delay from last publishing has passed or if the price does change. The delay is configured with a new option called
<network>.exporter.unchanged_publishing_threshold
(at least 5s between unchanged updates by default), - Moved some non-essential log messages to the debug log level
Docker image
You can find the pyth-agent Docker image here: https://gallery.ecr.aws/pyth-network/agent
Full Changelog: v1.3.1...v1.4.0