v0.9.0
This version includes support for two new features:
- In-play markets with order creation delays
- Voiding of markets.
There are a number of account structure changes included also in order to support these features:
* Market Account
- Added
* inplay_enabled: bool - Whether a market might go in play or not
* inplay: bool - Whether a market is currently inplay
* inplay_order_delay: u8 - Seconds of delay will orders have before being added to available liquidity
* event_start_order_behaviour: MarketOrderBehaviour - What should happen to orders at event start
* market_lock_order_behaviour: MarketOrderBehaviour - (Not yet in use)
* event_start_timestamp: i64 - UCT timestamp of when the event is expected to start
* MarketStatus Enum
- Added
* ReadyToVoid - A market is ready to be voided, voiding of orders and positions can occur
* Voided - A market and all of its orders and positions have been voided
* MarketOrderBehaviour Enum
- Added
* None - Nothing
* CancelUnmatched - Any unmatched liquidity will be refunded/cancelled and reset matching pools
* MarketMatchingPool Account
- Added
* market: Pubkey - The market public key that the pool relates to
* inplay: bool - Whether the pool is in in-play mode
* Cirque Struct
- Changed
* items: Vec<QueueItem>
* QueueItem Struct
- Added
* order: Pubkey - PDA of an order
* delay_expiration_timestamp: i64 - When the order's inplay delay should expire
* liquidity_to_add: u64 - Liquidity that is yet to be added to the pool
* MarketPosition Account
- Added
* payer: Pubkey - Separate payer for account fees (Not yet in use)
* Order Account
- Added
* delay_expiration_timestamp: i64 - When the order's inplay delay should expire
* payer: Pubkey - Separate payer for account fees (Not yet in use)
* OrderStatus Enum
- Added
* Voided - The order has been voided
What's Changed
- chore: Upload 0.8.0 audit report and update README.md by @eoin-betdex in #48
- feat: void markets by @stuartbetdex in #50
- feat: void order by @obi-ewan in #51
- feat: Add in-play support by @eoin-betdex in #52
- chore: update versions to RC1 for 0.9.0 audit by @eoin-betdex in #53
- fix: allow voided orders to be closed by @obi-ewan in #56
- fix: client updates and fixes for inplay release by @obi-ewan in #55
- fix: allow transfer surplus for voided markets by @obi-ewan in #58
- fix: explicitly initialize market.inplay during creation by @eoin-betdex in #57
- fix: clients don't filter markets by market type by @pawel-betdex in #60
- fix: check event start is in the past when moving to inplay by @stuartbetdex in #59
- chore: bump version to 0.9.0-rc3 with audit fixes by @eoin-betdex in #61
- fix(client): add missing payer field to MarketPosition account type by @eoin-betdex in #62
- fix(client): correct name type of market.inplayOrderDelay by @eoin-betdex in #63
- fix: don't subtract an order's liquidity from MarketMatchingPool available liquidity on cancel if its not yet been added to the total by @eoin-betdex in #65
- chore: bump version to 0.9.0-rc4 with audit fixes by @eoin-betdex in #66
- chore: release version 0.9.0 by @eoin-betdex in #64
Full Changelog: v0.8.0...v0.9.0