Releases: filecoin-project/go-f3
Releases · filecoin-project/go-f3
v0.0.6
What's Changed
- Introduce a fake clock to F3 by @Kubuxu in #473
- Test: Wait a bit longer in TestF3PauseResumeCatchup by @Stebalien in #483
- Improve power-table loading logic by @Stebalien in #481
- Manifest enhancements by @Kubuxu in #486
- Implement the "ohshitstore" by @Stebalien in #487
- Emulator: Clone the power entries before modifying by @Stebalien in #489
- Try to fetch inital power table if specified by @Kubuxu in #488
- Engague the OhShitStore based on the f3Base, not the head by @Stebalien in #490
- Remove releaser custom secret from CI by @masih in #491
- test: fix TestPauseResumeCatchup flake by @Stebalien in #495
- test: verify that we can get the power table for an instance by @Stebalien in #496
- Fix wrong source check in dynamic manifest, add logs, fix backoff, by @Kubuxu in #493
- Implement nil manifest unmarshalling by @masih in #498
- test: increase timeouts for pause/rebootstrap test by @Stebalien in #499
- Explicitly configure pubsub message IDs by @Stebalien in #497
- Manifest: Separate sections per subsystem by @Stebalien in #501
- Reintroduce manifest pause by @masih in #500
- Remove explicit pause/resume from the manifest sender by @Stebalien in #503
- Fix typos in f3 tests and remove redundant code by @masih in #504
- Remove unused logger interface by @masih in #507
- Implement manifest validation by @Stebalien in #506
- Add log for waiting for bootstrap by @Kubuxu in #505
- test: deflake more tests by @Stebalien in #508
- Prefix all metric names with f3 by @masih in #509
- Downgrade log levels by @Kubuxu in #510
- Periodically connect to bootstrappers in manifest server by @masih in #511
- certexchange: cancel request context when returning by @Stebalien in #512
- Add HeadLookback parameter by @Kubuxu in #513
- Add lookback delay to the head timestamp by @Stebalien in #514
- Release
v0.0.5
by @masih in #492
Full Changelog: v0.0.4...v0.0.6
v0.0.5
What's Changed
- Introduce a fake clock to F3 by @Kubuxu in #473
- Test: Wait a bit longer in TestF3PauseResumeCatchup by @Stebalien in #483
- Improve power-table loading logic by @Stebalien in #481
- Manifest enhancements by @Kubuxu in #486
- Implement the "ohshitstore" by @Stebalien in #487
- Emulator: Clone the power entries before modifying by @Stebalien in #489
- Try to fetch inital power table if specified by @Kubuxu in #488
- Engague the OhShitStore based on the f3Base, not the head by @Stebalien in #490
- Remove releaser custom secret from CI by @masih in #491
- test: fix TestPauseResumeCatchup flake by @Stebalien in #495
- test: verify that we can get the power table for an instance by @Stebalien in #496
- Fix wrong source check in dynamic manifest, add logs, fix backoff, by @Kubuxu in #493
- Implement nil manifest unmarshalling by @masih in #498
- test: increase timeouts for pause/rebootstrap test by @Stebalien in #499
- Explicitly configure pubsub message IDs by @Stebalien in #497
- Manifest: Separate sections per subsystem by @Stebalien in #501
- Reintroduce manifest pause by @masih in #500
- Remove explicit pause/resume from the manifest sender by @Stebalien in #503
- Fix typos in f3 tests and remove redundant code by @masih in #504
- Remove unused logger interface by @masih in #507
- Implement manifest validation by @Stebalien in #506
- Add log for waiting for bootstrap by @Kubuxu in #505
- test: deflake more tests by @Stebalien in #508
- Prefix all metric names with f3 by @masih in #509
- Downgrade log levels by @Kubuxu in #510
- Periodically connect to bootstrappers in manifest server by @masih in #511
- certexchange: cancel request context when returning by @Stebalien in #512
- Add HeadLookback parameter by @Kubuxu in #513
- Add lookback delay to the head timestamp by @Stebalien in #514
- Release
v0.0.5
by @masih in #492
Full Changelog: v0.0.4...v0.0.5
v0.0.4
What's Changed
- ci: fix coverage ignore by @Stebalien in #451
- Improve test parallelism by @Stebalien in #452
- certstore: test some additional edge-cases by @Stebalien in #453
- Check that justification supplemental data matches the vote by @Stebalien in #454
- Transition from xerrors to errors and fmt by @Kubuxu in #455
- Test immediate progress from Prepare when quorum is not possible by @masih in #457
- Follow golang naming convention for constants by @masih in #344
- Add metrics for error counts tagged by type by @masih in #456
- Remove unused
MakeTicket
function by @masih in #458 - Disable TestFailRecover by @Kubuxu in #465
- Use consistent spelling for "marshaler" by @masih in #466
- Implement additional message validation unit tests by @masih in #464
- Fix typo in manifest EC config by @masih in #467
- Gracefully handle EC diverging from F3 by @Kubuxu in #462
- Make it possible to disable some/all participants via the manifest by @Stebalien in #469
- Pass context variables to runningCtx by @Kubuxu in #471
- Slightly improve aggregation test suite by @Kubuxu in #470
- Remove manifest versions by @Stebalien in #472
- Set default Certificate exchange config in local devnet manifest by @masih in #475
Full Changelog: v0.0.3...v0.0.4
v0.0.3
What's Changed
- F3-229: manifest provider, ec decoupling from f3, and dynamic manifest update by @adlrocha in #348
- Implement a GPBFT emulator and test state transitions by @masih in #359
- F3-390: Pause callback for dyncamic manifest by @adlrocha in #391
- Test GPBFT queues and drains future instance messages by @masih in #394
- Implement dynamic manifest libp2p server by @masih in #397
- Containerise
f3
binary and publish to ghcr by @masih in #398 - Revert changes to EC backoff introduced in #382 by @Kubuxu in #399
- Implement certificate exchange by @Stebalien in #378
- Implement the head offset by @Kubuxu in #400
- Maybe fix spurious error in tests by @Kubuxu in #402
- Fix error return in F3.Run by @Stebalien in #403
- Align power table delay with FIP by @Kubuxu in #404
- Delete content of CertStore by @Kubuxu in #401
- Misc test improvments by @Kubuxu in #407
- Publish container images for both arm and amd 64 by @masih in #409
- Use mock libp2p in tests by @Kubuxu in #410
- Inform GPBFT of decisions from finality certificates by @Stebalien in #408
- Add support for specifying manifest server bootstrap addrs from file by @masih in #412
- Add context to Signer interface by @Kubuxu in #411
- Fail gracefully on manifest server bootstrap connection by @masih in #413
- Fix typo in sentinel error by @masih in #415
- Explicitly set the
stringer
version in go-generate by @masih in #417 - Test rebroadcast and fix rebroadcast reset issue by @masih in #414
- Test GPBFT skips to decide by @masih in #418
- Integrate unified CI with F3 repo by @masih in #379
- Remove custom CI jobs in faviour of Unified CI by @masih in #419
- Test skip to round by @masih in #420
- Limit size of signatures to 96 bytes by @Kubuxu in #423
- Hash ticket before performing arithmetic by @Kubuxu in #424
- Take the lock in the fake signing backend (Allow) by @Stebalien in #426
- Improve lifecycle management by @Stebalien in #416
- Import go-log directly (except in GPBFT) and remove Logging by @Stebalien in #427
- Stop gpbft runner on shutdown by @Stebalien in #428
- Improve subscriber test reliability by @Stebalien in #431
- Don't make the SigningMarshaler customizable in F3 by @Stebalien in #432
- Wait for cleanup on certexchange server shutdown by @Stebalien in #430
- Ignore errors when failing to set stream deadlines by @Stebalien in #434
- Use the correct payload marshaler in the F3 module by @Stebalien in #435
- Fix instance skipping inequality check by @Stebalien in #437
- Integrate finality exchange by @Stebalien in #433
- Fix bug in payload equality check and payload unit tests by @masih in #439
- Update readme with the current state of the project by @masih in #440
- Test equivocations are ignored current and future instances by @masih in #441
- Integrate metrics for core GPBFT protocol by @masih in #438
- Remove MessageBuilder locks by @Stebalien in #444
- Rename gen.go -> cbor_gen.go by @Stebalien in #446
- Broadcast messages via a blocking channel by @Stebalien in #445
- Skip messages from the wrong instance instead of returning an error by @Stebalien in #442
- Handle failure to receive/validate a decision by @Stebalien in #436
Full Changelog: v0.0.2...v0.0.3
What's Changed
- F3-229: manifest provider, ec decoupling from f3, and dynamic manifest update by @adlrocha in #348
- Implement a GPBFT emulator and test state transitions by @masih in #359
- F3-390: Pause callback for dyncamic manifest by @adlrocha in #391
- Test GPBFT queues and drains future instance messages by @masih in #394
- Implement dynamic manifest libp2p server by @masih in #397
- Containerise
f3
binary and publish to ghcr by @masih in #398 - Revert changes to EC backoff introduced in #382 by @Kubuxu in #399
- Implement certificate exchange by @Stebalien in #378
- Implement the head offset by @Kubuxu in #400
- Maybe fix spurious error in tests by @Kubuxu in #402
- Fix error return in F3.Run by @Stebalien in #403
- Align power table delay with FIP by @Kubuxu in #404
- Delete content of CertStore by @Kubuxu in #401
- Misc test improvments by @Kubuxu in #407
- Publish container images for both arm and amd 64 by @masih in #409
- Use mock libp2p in tests by @Kubuxu in #410
- Inform GPBFT of decisions from finality certificates by @Stebalien in #408
- Add support for specifying manifest server bootstrap addrs from file by @masih in #412
- Add context to Signer interface by @Kubuxu in #411
- Fail gracefully on manifest server bootstrap connection by @masih in #413
- Fix typo in sentinel error by @masih in #415
- Explicitly set the
stringer
version in go-generate by @masih in #417 - Test rebroadcast and fix rebroadcast reset issue by @masih in #414
- Test GPBFT skips to decide by @masih in #418
- Integrate unified CI with F3 repo by @masih in #379
- Remove custom CI jobs in faviour of Unified CI by @masih in #419
- Test skip to round by @masih in #420
- Limit size of signatures to 96 bytes by @Kubuxu in #423
- Hash ticket before performing arithmetic by @Kubuxu in #424
- Take the lock in the fake signing backend (Allow) by @Stebalien in #426
- Improve lifecycle management by @Stebalien in #416
- Import go-log directly (except in GPBFT) and remove Logging by @Stebalien in #427
- Stop gpbft runner on shutdown by @Stebalien in #428
- Improve subscriber test reliability by @Stebalien in #431
- Don't make the SigningMarshaler customizable in F3 by @Stebalien in #432
- Wait for cleanup on certexchange server shutdown by @Stebalien in #430
- Ignore errors when failing to set stream deadlines by @Stebalien in #434
- Use the correct payload marshaler in the F3 module by @Stebalien in #435
- Fix instance skipping inequality check by @Stebalien in #437
- Integrate finality exchange by @Stebalien in #433
...
v0.0.2
What's Changed
- Use scaled power in the finality certificate tests by @Stebalien in #384
- Correctly use ECPeriod & ECDelay by @Stebalien in #382
- chore: fix fuzz comment spelling by @Stebalien in #381
Full Changelog: v0.0.1...v0.0.2
v0.0.1
What's Changed
- Implements validation and algorithmic changes for EC-compatible sway. by @anorth in #1
- Implemented signing payloads in terms of abstract signer by @anorth in #20
- Implement opaque TipSetKey type. by @anorth in #21
- Fix integer widths of all values used in the protocol. by @anorth in #23
- Add a simple Makefile by @anorth in #24
- Add simple GitHub actions configuration to test/lint PRs by @anorth in #25
- Implement receiving new EC-compatible chains by @ranchalp in #19
- VRF implementation (#6) by @ranchalp in #28
- Decide phase by @ranchalp in #30
- Update readme and add license by @jsoares in #36
- Remove implicit justification by @ranchalp in #34
- Move message signature validation into instance, and document the message attestation properties. by @anorth in #41
- Implement PowerTable as ordered map by @ranchalp in #32
- Replace panics with errors by @matejpavlovic in #39
- Fix power duplicate entry check by @Stebalien in #45
- Use numbers for phases instead of names by @Stebalien in #46
- Add Aggregator interface and implement fake aggregator by @ranchalp in #35
- Bump golang.org/x/crypto from 0.0.0-20190611184440-5c40567a22f8 to 0.17.0 by @dependabot in #52
- Bump golang.org/x/sys from 0.0.0-20190412213103-97732733099d to 0.1.0 by @dependabot in #53
- Switch to uint64 for Instance and Round by @Kubuxu in #54
- Add explicit justification of COMMIT and CONVERGE by @ranchalp in #37
- Add explicit justification of DECIDE messages by @ranchalp in #47
- Bump golang.org/x/crypto from 0.0.0-20190611184440-5c40567a22f8 to 0.17.0 by @dependabot in #56
- Replace panics where relevant by @ranchalp in #59
- Remove comments about implicit justification by @anorth in #63
- Add comment about unrealistic message forgery in withholding adversary by @anorth in #62
- 15% improvement in tests speed by @Kubuxu in #66
- Add test demonstrating agreement on longest common prefix by @anorth in #67
- Optimize justification creation by @ranchalp in #55
- Cleanup signature payload, popagate more errors, add cbor-gen by @Kubuxu in #65
- Initial scaffolding of the f3 module by @Kubuxu in #44
- Remove tipset weights, panic on multiple strong quora by @anorth in #71
- Renames for conciseness by @anorth in #72
- chore: update cbor-gen by @Stebalien in #78
- Introduce BLS signing, adapt APIs for it to work by @Kubuxu in #70
- Remove unused payload from alarm callback by @anorth in #73
- Move network name into a host API function. by @anorth in #80
- Revert "Move network name into a host API function. (#80)" by @Kubuxu in #84
- Make GMessage justification optional, clean up some control flow for it. by @anorth in #75
- Use full TipSet object as map key, avoid using CIDs by @anorth in #79
- Move network name into a host API function. by @Kubuxu in #85
- Implement Synchronization of participants in the current instance #69 by @ranchalp in #82
- Factor out repeated code building justifications by @anorth in #88
- Include network name in Network struct by @ranchalp in #89
- Include DST and NetworkName in VRF signing by @ranchalp in #90
- Simplify synchronization of participants to simple exponential back-off by @ranchalp in #87
- Use time.Time() instead of float64 by @ranchalp in #83
- Serialize phase as an integer for signatures. by @anorth in #93
- Reorganize packages by @Kubuxu in #86
- Change semantics of delta parameter to be a bound on message delay by @anorth in #92
- Express message justification rules as data rather than procedural code by @anorth in #91
- Make message validate an exported API of instance and participant, to be called before receiving a message. by @anorth in #97
- Remove now-unused opaque message type. by @anorth in #99
- Fix message validation to check the justification signers have strong quorum by @anorth in #101
- Remove abstraction noise around VRF construction and verification by @anorth in #102
- Add API for participant to notify host of decisions, with signed justification. by @anorth in #100
- Nodes decide on strong quorum of DECIDE regardless of phase by @ranchalp in #104
- Change API so participant pulls canonical chain when starting by @anorth in #107
- Fix initialisation of delta from f3sim main by @anorth in #108
- Recover panics at participant entry points by @ranchalp in #105
- Remove self participant ID from some host methods. by @anorth in #109
- Change alarm semantics to support at most one at a time by @anorth in #110
- Participant begins new instance after terminating the previous one by @anorth in #111
- Add a test exercising multiple instances under ideal conditions by @anorth in #116
- Bump google.golang.org/protobuf from 1.30.0 to 1.33.0 by @dependabot in #123
- Fix PanicError construction and sim clock progress with historical messages. by @anorth in #120
- chore: update kyber to released version by @Stebalien in #127
- Use
go generate
to generate sources by @masih in #129 - Add local queue for messages for future instances by @anorth in #124
- Require
go.mod
is tidy during CI by @masih in #134 - Delay next instance until EC chain progresses by @anorth in #119
- Implement basic chain and types unit tests by @masih in #133
- Fix typo with ECExtend by @ranchalp in #137
- Validate EC chain invariants on instantiation by @masih in #138
- Refactor
Host
interface to optionally trace logic logs by @masih in #140 - Speed up tests by running repetitions in parallel by @masih in #141
- Upgrade to go
1.21
by @masih in #143 - Implement sortable power table and test invariants by @masih in #152
- Make ECChain opaque [][]byte in GBPFT by @anorth in #149
- Implement participant unit tests by @masih in #142
- Get PowerTable from Host during adversary testing by @masih in #157
- Test repeated messages do not interfere with consensus by @masih in #156
- Skip long tests when running in short mode by @Kubuxu in #161
- Move simulation related packages to
sim
by @masih in #159 - Move adversary APIs and type assert by @masih in #164
- Refactor
GenerateKey
AP...