mirror of
https://github.com/corda/corda.git
synced 2025-01-29 15:43:55 +00:00
Chris Rankin
a7147c1ffd
ENT-4652: Provide an "attachment fixup" mechanism to repair broken transactions. (#5825)
* Do not register cordapp custom serialisers when using attachment classloader. * Record the URLs of CorDapp JARs that contain custom serialisers. Include these JARs as extra attachments if we discover that we're missing a custom serialiser during transaction verification. * Check for disabled serializer when explicitly requesting a custom serializer. Refactor test case to force use of a custom serializer. * Tidy up basic custom serializer test. * Also test that TransactionBuilder rejects missing custom serializers. * Remove test whitelists, which should not be needed with custom serialisers. * Add changelog entry. Also align TestCordappImpl.findRoots() with OS backports. * Second approach based around CorDapps inside AttachmentStorage - report missing type descriptor or any non-composable types. * Initial implementation of Corda-Fixup rules inside a CorDapp jar. * Replace original "automatic attachment fixing" mechanism completely. * First review comments: restore "missing class" logic to TransactionBuilder. * Restore "missing class" mechanism as fallback for SignedTransaction too.
CORDA-3485 Restore CollectSignaturesFlow.kt to allow multiple collections from Well Known sessions (#5800)
Corda
Corda is an open source blockchain project, designed for business from the start. Only Corda allows you to build interoperable blockchain networks that transact in strict privacy. Corda's smart contract technology allows businesses to transact directly, with value.
Features
- Smart contracts that can be written in Java and other JVM languages
- Flow framework to manage communication and negotiation between participants
- Peer-to-peer network of nodes
- "Notary" infrastructure to validate uniqueness and sequencing of transactions without global broadcast
- Enables the development and deployment of distributed apps called CorDapps
- Written in Kotlin, targeting the JVM
Getting started
- Read the Getting Started documentation
- Run the Example CorDapp
- Read about Corda's Key Concepts
- Follow the Hello, World! tutorial
Useful links
- Project Website
- Mailing List
- Documentation
- Stack Overflow Tag
- Slack Channel
- Meetups
- Training Courses
Contributing
Corda is an open-source project and contributions are welcome!
To find out how to contribute, please see our contributing docs.
License
Acknowledgements
YourKit supports open source projects with its full-featured Java Profiler.
YourKit, LLC is the creator of YourKit Java Profiler and YourKit .NET Profiler, innovative and intelligent tools for profiling Java and .NET applications.
Languages
Kotlin
94.3%
Java
2.5%
C++
2.1%
Python
0.3%
Shell
0.3%
Other
0.3%