Releases: hyperledger/firefly
v1.1.0-alpha.3
What's Changed
- Update README.md by @viswatejagajulavarthy in #854
- Add namespace to pins by @awrichar in #856
- Remove redundant payloadRef field on Batch Pin by @peterbroadhurst in #858
- Use firefly-signer library and allow numbers expressed as strings by @nguyer in #837
- Use a separate orchestrator for each namespace by @awrichar in #855
- Push namespace info to token connector, handle batch events by @awrichar in #861
- Remove namespace from identity manager, network map, and group manager calls by @awrichar in #862
- Further cleanup of namespace params to managers and database plugin by @awrichar in #864
- Update token connector versions by @awrichar in #867
- Remove unneeded BatchManager references by @awrichar in #850
- Update builder to go 1.17 and docs by @nguyer in #868
- Updating Create Listener Docs to Use eventPath by @hfuss in #860
- Move event plugin init to namespace manager by @awrichar in #863
- Resolve DX operations via requestID (not event ID) by @awrichar in #872
- Create firefly contract subscription per namespace by @shorsher in #865
- Remove namespace param from remaining manager calls by @awrichar in #875
- Add shorsher as a code owner by @awrichar in #869
- Handle namespace validation at the route level rather than at data manager by @awrichar in #876
- Remove "namespace" as a query param from all routes by @awrichar in #877
- Convert more callback handlers to be namespace-specific by @awrichar in #874
- Collapse batchpin.Submitter into multiparty.Manager by @awrichar in #880
- Move SubmitNetworkAction and RootOrg config to Multiparty Manager by @awrichar in #881
- surface URI as parameter for token mint by @shorsher in #879
- Enable non-multiparty namespaces by @awrichar in #878
- Track blockchain callback handlers per namespace by @awrichar in #883
- FAQ and FireFly Tutorial Updates by @trevorsc19 in #857
- Move FFI/ABI conversion code to signer and common by @nguyer in #866
- Add E2E tests for gateway mode by @nguyer in #887
- Add sqlite to Docker image by @awrichar in #893
- Fix logs from E2E test invocation by @awrichar in #892
- Custom contract subscriptions now utilize namespaces by @shorsher in #891
- Add basic auth support by @nguyer in #894
- Only start each plugin once by @awrichar in #901
- Support tokens only namespaces by @shorsher in #896
- Map namespace between local name and remote name by @awrichar in #895
- Change default contracts to network version 2 by @awrichar in #890
- Stop orchestrator for ff_system when moving to network V2 by @awrichar in #884
- Commonize blockchain code by @shorsher in #902
- E2E suite cleanup by @awrichar in #904
- Tokens plugins now support a remote name by @shorsher in #900
- Strip down namespace object and clean up APIs by @awrichar in #898
- added documentation for connecting firefly to a remote fabric chaincode by @satoshi-u in #908
- remove namespace from
sender_contracts
by @shorsher in #903 - Build Docker once to share with all E2E jobs by @awrichar in #909
- Add E2E tests for contract termination by @awrichar in #899
- Small Docker build enhancements by @awrichar in #910
- Properly handle remote->local namespace mapping in blockchain plugin by @awrichar in #911
- Update UI version by @awrichar in #912
- Fix test coverage gaps in operations manager by @awrichar in #914
- Use "poolData" instead of "namespace" in fftokens by @awrichar in #913
- Allow multiple copies of things on different namespaces by @awrichar in #915
- Add admin and config fields to E2E testState by @awrichar in #917
- E2E test for tokens only namespaces by @shorsher in #919
- Fixes Incorrect Route in the
broadcast_data
Tutorial by @JeffNeff in #922 - Add the V1 migration test to integration runs by @awrichar in #921
- Add node-specific suffix to DX endpoint "id" by @awrichar in #916
- Pin golangci-lint to v1.47.3 instead of latest by @awrichar in #932
- Add multi-tenancy E2E test by @awrichar in #918
- super small typo by @sebgoa in #924
- add E2E test for token plugins with remote names by @shorsher in #920
- Minor cleanup of namespace comments/struct descriptions by @awrichar in #927
- Updates for EVMConnect support (with EthConnect cross-compatibility) by @peterbroadhurst in #923
- Wait up to 1000ms to lock sqlite database by @awrichar in #928
- Update .gitignore: ignoring .idea path by @kmilodenisglez in #937
- Fix bugs with Operations (and other minor fixes) by @awrichar in #935
- Update Viper to support camelCase nested keys by @awrichar in #930
- Remove unneeded sleep from txcommon test by @awrichar in #945
- update integration test to use new e2e suites by @shorsher in #938
- Add deprecation warning for old node config by @awrichar in #946
- fixing the example firefly core command by @Chengxuan in #950
- Distinguish "message not available" from "message missing data" by @awrichar in #953
- Advertise full node name (with suffix) to DX by @awrichar in #942
- Properly match operation updates to the plugin that generated them by @awrichar in #955
- Add BLOCKCHAIN_CONNECTOR env var and add evmconnect to manifest by @peterbroadhurst in #949
- Store full details of EVMConnect/EthConnect updates for Token ops by @peterbroadhurst in #948
- Destroy sysmessaging package 💥 by @awrichar in #926
- Changes to support E2E tests with confirmations, where requests might be slow by @peterbroadhurst in #960
- Update to latest dependencies ready for V1.1 alpha.3 by @peterbroadhurst in #963
- bump ui to 1.1 alpha 3 by @shorsher in #965
New Contributors
- @viswatejagajulavarthy made their first contribution in #854
- @trevorsc19 made their first contribution in #857
- @satoshi-u made their first contribution in #908
- @JeffNeff made their first contribution in #922
- @sebgoa made their first contribution in #924
- @kmilodenisglez made their first contribution in #937
- @Chengxuan made their first contribution in #950
Full Changelog: v1.1.0-alpha.2...v1.1.0-alpha.3
v1.0.3
Summary
Adds support for custom URIs for non-fungible tokens, and documentation updates.
What's Changed
- Deprecate default value for "ffdx" by @awrichar in #882
- back port of custom URI support for non-fungible tokens by @shorsher in #885
- update token connector versions by @shorsher in #886
- back port of "FAQ and FireFly Tutorial Updates" by @shorsher in #889
Full Changelog: v1.0.2...v1.0.3
v1.1.0-alpha.2
What's Changed
- Use API framework newly moved to cmomon with extension points by @peterbroadhurst in #851
- Return definition rejection reasons as errors by @awrichar in #813
- Move /admin/api to /spi and PUT->PATCH by @peterbroadhurst in #842
- Restore FireFly contract version, update UI version by @awrichar in #853
Full Changelog: v1.1.0-alpha.1...v1.1.0-alpha.2
v1.1.0-alpha.1
What's Changed
- Clean up API spec for token approvals by @awrichar in #775
- Add first step of FireFly Transaction Manager support - separate URL for submit by @peterbroadhurst in #751
- Fix bugs with token approvals by @awrichar in #778
- [ui-v1.0.1] manifest by @eberger727 in #776
- Update manifest.json by @nguyer in #781
- Token transfer/approval protocolId should be unique for each connector by @awrichar in #780
- Default for token approvals should be "approved: true" by @awrichar in #782
- update cobra short and long descriptions by @shorsher in #785
- update init logging branding by @shorsher in #786
- Remove non-definition items from DefinitionHandler by @awrichar in #789
- Update Tokens Tutorials by @nguyer in #777
- Refactor to move common utility code out to firefly-common by @peterbroadhurst in #791
- Fix links in documentation by @teaglebuilt in #793
- Allow namespace to be omitted from URLs by @awrichar in #792
- Do not init apiserver config, until after config reset by @peterbroadhurst in #794
- Remove old ERC21/ERC721 contracts (no longer used by test) by @awrichar in #797
- sync core with firefly-common by @shorsher in #805
- De-duplicate existing token approvals in database migration by @awrichar in #810
- Message "state" should be read-only by @awrichar in #801
- Add reference docs generation for types by @nguyer in #811
- Define config schema for namespaces.predefined by @awrichar in #798
- Remove unused parameters from blockchain plugin interface by @awrichar in #819
- Include component name when initialization fails by @awrichar in #824
- Add new Docker tags for release channels by @nguyer in #815
- Add language tag to FFM, FFE, FFC, etc by @nguyer in #818
- Address coverage gap for "Capabilities" method by @awrichar in #825
- Docs internationalization by @nguyer in #822
- Move plugin configuration under
plugins
section by @shorsher in #821 - Factor out Namespace Manager by @awrichar in #826
- Possible to see clash on port 6000 for metrics server by @peterbroadhurst in #829
- Additional type docs by @peterbroadhurst in #816
- Adde custom onchain logic docs for Fabric plus refactoring by @jimthematrix in #784
- Fix link to events reference by @peterbroadhurst in #831
- Add version support to docs site by @nguyer in #830
- Fix relative links in reference descriptions docs by @nguyer in #832
- Namespace config validation by @shorsher in #833
- Disable external link checking when building docs, due to unreliable external servers by @nguyer in #839
- Support migration of the FireFly contract from one location to another by @awrichar in #820
- fabconnect async calls + setting broadcast/private message header types by @shorsher in #841
- Update README with missing links, and bit of a restructure by @peterbroadhurst in #835
- Allow extra options to pass through to blockchain connectors by @nguyer in #844
- Verify namespace for all broadcast/private message requests by @awrichar in #843
- Update dependency versions by @nguyer in #845
- Move all identity APIs under /namespaces by @awrichar in #804
- Enhancements to migration/network version behavior by @awrichar in #849
New Contributors
- @teaglebuilt made their first contribution in #793
Full Changelog: v1.0.0...v1.1.0-alpha.1
v1.0.2
Summary
Fix invocations on custom Fabric chaincode, which were not properly reporting success/failure status back to FireFly (along with other minor bugfixes).
What's Changed
- De-duplicate existing token approvals in database migration by @awrichar in #809
- Backport docs generation and versioning code for 1.0 stream by @nguyer in #834
- default fabconnect calls to async by @shorsher in #836
- set message header type for broadcast/private by @shorsher in #838
Full Changelog: v1.0.1...v1.0.2
v1.0.1
Summary
Fixes for token approvals - previously approvals would intermittently be missed by FireFly or recorded with incorrect details.
Breaking Changes and Migrations
New versions of the ERC20/ERC721 connector will assume "no data" support if you create a token pool against an older version of the sample smart contracts - see hyperledger/firefly-tokens-erc20-erc721#57
Updated Dependencies
- firefly-tokens-erc1155 v1.0.2
- firefly-tokens-erc20-erc721 v1.0.1
- firefly-ui v1.0.1
- firefly-cli v1.0.1
What's Changed
Full Changelog: v1.0.0...v1.0.1
v1.0.0
Summary
Version 1.0.0 🎉
This release includes lots of major hardening, performance improvements, and bug fixes, as well as more complete documentation and OpenAPI specifications.
- Massive performance improvements across the board
- Up-to-date documentation and fully annotated OpenAPI specification
- Overhaul of UI
- Cleaner logs and error messages
- Lots of bug fixes and miscellaneous enhancements
You can view the release notes for each release candidate for more details: rc.1 rc.2 rc.3 rc.4 rc.5 rc.6
Breaking Changes and Migrations
- firefly-dataexchange-https must be upgraded to 1.0.0 alongside FireFly core, as the ack event has been renamed from "commit" to "ack". Upgrading dependencies alongside FireFly is always recommended, but running mismatched versions of FireFly and dataexchange in this case will cause event processing to stall completely.
- Some of the APIs for creating contract listeners have changed - see #685
- Some field names under TokenPool, TokenTransfer, and TokenApproval have been adjusted - see #709
Updated Dependencies
- firefly-ethconnect v3.1.8
- firefly-fabconnect v0.9.14
- firefly-dataexchange-https v1.0.0
- firefly-tokens-erc1155 v1.0.0
- firefly-tokens-erc20-erc721 v1.0.0
- firefly-ui v1.0.0
What's Changed
- Cache blockchain events for event enrichment by @peterbroadhurst in #638
- Add index on message_id for token transfers by @peterbroadhurst in #639
- Update txType in private message schema by @gabriel-indik in #637
- Fix
transactions_id
index by @peterbroadhurst in #643 - Update our cache for event enrichment on message confirm by @peterbroadhurst in #642
- Add extra convenience functions for identities by @peterbroadhurst in #641
- Fix IF EXISTS check on transactions_id INDEX migration by @peterbroadhurst in #645
- Call out memory needed in docs by @keeganhrobinson in #649
- Add background workers to flush updates to operations by @peterbroadhurst in #646
- Use a single commit to generate all batch ops, before initiating the HTTP calls by @peterbroadhurst in #647
- Assign nonces more efficiently, with minimal DB ops by @peterbroadhurst in #650
- Change messages_data join table indexes for data_id lookup by @peterbroadhurst in #653
- Cannot assume zero as reason to insert vs. update by @peterbroadhurst in #652
- [charts-config] chart buckets are now capped at a configurable max by @eberger727 in #651
- [chart-test-fix] chart testing fix by @eberger727 in #655
- Move DX events interface to async with callback by @peterbroadhurst in #656
- Avoid blocking event processing threads when queuing rewinds by @peterbroadhurst in #657
- Proper handling of token approval events by @shorsher in #662
- Latest UI v0.6.9 by @hfuss in #667
- [charts-isCapped] adding isCapped key to charts response by @eberger727 in #669
- Remove misleading payload_ref DB field and fix Group JSON tag by @peterbroadhurst in #666
- Add rewinder to handle enrichment off event poller critical path by @peterbroadhurst in #665
- Refactor OpenAPI Spec generation by @nguyer in #658
- Remove references to old firefly-e2e stack name by @awrichar in #671
- Clean up blockchain parameters returned by token connectors by @awrichar in #673
- Check up-front for duplicate token pool name by @awrichar in #674
- Do not update cache until messages/data assured to be in DB by @peterbroadhurst in #670
- [ui-v0.6.10] manifest by @eberger727 in #676
- Update manifest for v1.0.0-rc.1 by @nguyer in #677
- Configuration docs, and packaging config/i18n for re-use by microservices by @peterbroadhurst in #678
- Fix make docker command in release build GitHub Action by @nguyer in #682
- Enforce config descriptions by @nguyer in #681
- Remove extra postgres migrations by @nguyer in #683
- Fix postgres migrations and add to PR checks by @nguyer in #690
- Add contract listeners only by event definition or event pathname by @awrichar in #685
- Rename "contract" field to "interface" on FFIMethod/FFIEvent by @awrichar in #691
- New operations admin APIs and revamped change-event listener on admin WebSocket by @peterbroadhurst in #668
- Move ffresty to pkg for use by other microservices by @peterbroadhurst in #688
- Make http server framework re-usable by microservices by @peterbroadhurst in #697
- Add completed configuration descriptions and types by @nguyer in #695
- Status plugins by @eberger727 in #689
- Update ruby deps by @peterbroadhurst in #698
- Include interface metadata routes in FFI-generated Swagger by @awrichar in #687
- Add /api/v1/status/websockets by @awrichar in #680
- [ui-v0.7.0] manifest and image by @eberger727 in #701
- Reject Contract API updates with an ID mismatch by @awrichar in #705
- Add helpers at /apis/{apiName}/listeners/{eventPath} by @awrichar in #696
- Readme and documentation updates by @peterbroadhurst in #708
- Add descriptions for all API routes by @nguyer in #702
- Restore getting started section by @peterbroadhurst in #712
- WebSocket disconnections should be info messages by @peterbroadhurst in #714
- Add token provider to container logs name to make it unique by @peterbroadhurst in #711
- Rename contract listener "protocol_id" to "backend_id" by @awrichar in #717
- Fix token approvals and clarify fields "protocolId", "locator", and "subject" by @awrichar in #709
- Move "special" operation update handling out of Operations Manager by @awrichar in #720
- DID rewind by @peterbroadhurst in #716
- E2E account creation by @nguyer in #707
- OpenAPI cleanup items by @awrichar in #719
- Parse input params for /query endpoints in ffi2swagger by @awrichar in #724
- New Getting Started Guide by @nguyer in #721
- Fix image link in Sandbox docs by @nguyer in #727
- Fix account creation for nightly integration runs by @nguyer in #729
- Allow config suffix to be changed by microservices using config package by @peterbroadhurst in #730
- Add "tx.blockchainId" to BlockchainEvent type by @awrichar in #725
- Accept "decimals" from token plugins on pool creation by @awrichar in #731
- Add event for failed token pool creation operations by @awrichar in #734
- Use blank type for JSONAny in OpenAPI by @awrichar in https://github.com/hyp...
v1.0.0-rc.6
Summary
- Better formatting of errors reported by plugins
- JSON formatter for logs
- Misc bug fixes and cleanup
- Documentation updates
Updated Dependencies
- firefly-ethconnect v3.1.8
- firefly-fabconnect v0.9.14
- firefly-dataexchange-https v1.0.0
- firefly-tokens-erc1155 v1.0.0
- firefly-tokens-erc20-erc721 v1.0.0
- firefly-ui v1.0.0
What's Changed
- Resolve pool activation operations more cleanly by @awrichar in #746
- Remove server-side HTML sanitization of error messages by @awrichar in #752
- Rename docs pages for better hierarchy by @nguyer in #750
- Misc cleanup for contract listeners by @awrichar in #749
- Format JSON errors from connectors by @awrichar in #748
- Configurable JSON Formatter and Caller Reporting for Logs by @hfuss in #737
- Ensuring Senders Do Not Download Their Own Batches in Response to Pin Events by @hfuss in #745
- Token approvals should return empty array instead of nil by @awrichar in #759
- remove rocketchat from docs by @shorsher in #760
- Merge wsconfig to wsclient so microservices can use it by @peterbroadhurst in #738
- Fill in blockchain TX ID for contract listener events by @awrichar in #762
- "decimals" is not a valid input by @awrichar in #766
- add additional event enrichment by @shorsher in #765
- Add change events to operations, by adding namespace to ResolveOperation by @peterbroadhurst in #764
- Simplfy solc compilation of BatchPin contract by @nguyer in #627
- Add table name to debug on every SQL call by @peterbroadhurst in #747
- Firefly E2E Test updates by @calbritt in #755
- Version Command by @hfuss in #763
- Omit "connector" from token transfer/approval inputs by @awrichar in #770
- Add prefix for signer by @peterbroadhurst in #769
- Update architecture diagram to include OpenAPI generator and fix link by @peterbroadhurst in #767
- [ui-v1.0.0] manifest by @eberger727 in #771
- Update manifest.json for v1.0.0 by @nguyer in #772
New Contributors
Full Changelog: v1.0.0-rc.5...v1.0.0-rc.6
v1.0.0-rc.5
Summary
- Cleanup of field names and internal APIs around token pools, transfers, and approvals
- Addition of
tx.blockchainId
to each BlockchainEvent - will be e.g. an Ethereum transaction hash, and can be correlated with theblockchainIds
list stored on each FireFly Transaction - Reporting of "decimals" for token pools
- Fixes for contract
/invoke
and/query
APIs - More documentation and OpenAPI cleanup
Breaking Changes
Some field names under TokenPool, TokenTransfer, and TokenApproval have been adjusted - see #709
Updated Dependencies
- firefly-ethconnect v3.1.7
- firefly-tokens-erc1155 v0.10.9
- firefly-tokens-erc20-erc721 v0.3.0
- firefly-ui v0.7.1
What's Changed
- Restore getting started section by @peterbroadhurst in #712
- WebSocket disconnections should be info messages by @peterbroadhurst in #714
- Add token provider to container logs name to make it unique by @peterbroadhurst in #711
- Rename contract listener "protocol_id" to "backend_id" by @awrichar in #717
- Fix token approvals and clarify fields "protocolId", "locator", and "subject" by @awrichar in #709
- Move "special" operation update handling out of Operations Manager by @awrichar in #720
- DID rewind by @peterbroadhurst in #716
- E2E account creation by @nguyer in #707
- OpenAPI cleanup items by @awrichar in #719
- Parse input params for /query endpoints in ffi2swagger by @awrichar in #724
- New Getting Started Guide by @nguyer in #721
- Fix image link in Sandbox docs by @nguyer in #727
- Fix account creation for nightly integration runs by @nguyer in #729
- Allow config suffix to be changed by microservices using config package by @peterbroadhurst in #730
- Add "tx.blockchainId" to BlockchainEvent type by @awrichar in #725
- Accept "decimals" from token plugins on pool creation by @awrichar in #731
- Add event for failed token pool creation operations by @awrichar in #734
- Use blank type for JSONAny in OpenAPI by @awrichar in #733
- Honor "confirm" parameter for blockchain invoke by @awrichar in #722
- UI v0.7.1 by @eberger727 in #741
- Update dependencies for v1.0.0-rc.5 release by @nguyer in #742
Full Changelog: v1.0.0-rc.4...v1.0.0-rc.5
v1.0.0-rc.4
Summary
- Cleanup of FireFly APIs around contract APIs and contract listeners
- New APIs for reporting plugin and websocket status
- New admin APIs for monitoring FireFly operations
- Additional documentation and OpenAPI cleanup
Breaking Changes
Some of the APIs for creating contract listeners have changed - see #685
Updated Dependencies
- firefly-ui v0.7.0
What's Changed
- Add contract listeners only by event definition or event pathname by @awrichar in #685
- Rename "contract" field to "interface" on FFIMethod/FFIEvent by @awrichar in #691
- New operations admin APIs and revamped change-event listener on admin WebSocket by @peterbroadhurst in #668
- Move ffresty to pkg for use by other microservices by @peterbroadhurst in #688
- Make http server framework re-usable by microservices by @peterbroadhurst in #697
- Add completed configuration descriptions and types by @nguyer in #695
- Status plugins by @eberger727 in #689
- Update ruby deps by @peterbroadhurst in #698
- Include interface metadata routes in FFI-generated Swagger by @awrichar in #687
- Add /api/v1/status/websockets by @awrichar in #680
- [ui-v0.7.0] manifest and image by @eberger727 in #701
- Reject Contract API updates with an ID mismatch by @awrichar in #705
- Add helpers at /apis/{apiName}/listeners/{eventPath} by @awrichar in #696
- Readme and documentation updates by @peterbroadhurst in #708
- Add descriptions for all API routes by @nguyer in #702
Full Changelog: v1.0.0-rc.3...v1.0.0-rc.4