Skip to content

Releases: EnergyMashupLab/eml-cts

EML-CTS

14 Mar 23:21
01666e7
Compare
Choose a tag to compare

EML-CTS Release Notes

Enhanced Features

Migration to Java 21

  • Develop a comprehensive migration plan to transition the code base to Java 21, ensuring compatibility with new features and modularization.
  • Implement automated regression testing frameworks to detect and resolve any migration-related bugs.
  • Establish a CI/CD pipeline that supports Java 21's ecosystem, promoting smooth iterative development and deployment processes.

Robust Fault Resilience

  • Integrate advanced error-handling and recovery mechanisms that leverage Java 21’s enhanced language constructs.

Adherence to Current Common Transactive Services (CTS) Version

  • Regularly update the code base to align with the latest CTS version, ensuring compliance with industry standards.
  • Automate compatibility tests to run with each build, preventing regressions and ensuring continuous conformance.
  • The Energy Interoperation Common Transactive Services (CTS) Version 1.0 (Work in progress in the
    OASIS Energy Interoperation Technical Committee).
    See the TC page for latest Working Draft. The Work on this project is coordinated with work in the OASIS TC.
  • The Tender, Transaction, and Position Facets (except for Stream Tenders and Transactions) of CTS Committee Specification Draft 3

Comprehensive Documentation and Knowledge Sharing

  • Update README.md: Regularly incorporate details of new features, enhancements, and modifications into the README.md to keep users and developers well-informed.
  • Well-Commented Code: Ensure that new code commits are accompanied by descriptive comments that explain the rationale and functionality of the new features.
  • Expand the Wiki: Continuously enrich the project wiki with in-depth articles, guides, and examples related to the latest feature additions.
  • Document Evolution: Document the evolution of new features in a version-controlled manner, providing a clear history of development for future reference.

Known Issues

  • Unable to perform SQL queries to MySQL tables due to case sensitivity specifically for those running on a Linux distribution.
  • Unclear Error messages (java.net.ConnectionException) when running the CTS due to the socket server inside parity-client not responding.
  • Unable to run without docker due to IP addresses configured and must be within the docker containers

Bug Fixes

  • Fixed an issue where SQL queries to MySQL tables failed due to case sensitivity. The queries have been updated to use the correct camel case, ensuring compatibility with MySQL running on Linux distributions.

What's Changed

  • Cleanup by @wtcox in #1
  • Development by @wtcox in #3
  • Development merge - instructions and updates to testbed for POST operations by @wtcox in #4
  • Actors complete and tested for excercise with Postman by @wtcox in #5
  • Development-Tweaks to RestTestbed operation and payloads by @wtcox in #6
  • Add sample payloads, latest URI layout, and README by @wtcox in #7
  • Cleanup of example files by @wtcox in #8
  • Types into development (interim work) by @wtcox in #9
  • Development with interim types updates into master by @wtcox in #10
  • Completed party-based mapping with dynamic URIs by @wtcox in #11
  • Dev dyn uri into development - simplify before database integration by @wtcox in #12
  • development into master - clean up by @wtcox in #13
  • Pre position works with generated instruments and instrument mapping by @wtcox in #14
  • Include docs tree in Release-1,0 by @wtcox in #16
  • Move docs into master by @wtcox in #18
  • Ensure cts-release-1.0 is merged into master by @wtcox in #19
  • Add Apache 2.0 license preamble by @jtn7 in #20
  • Cts release 1.0 by @wtcox in #21
  • Fixed most warnings by @alexgshepherd in #24
  • Move *RestController.java and *Payload.java by @alexgshepherd in #25
  • Pull Request - updated documentation and diagrams into dev by @wtcox in #27
  • Draft time and instruments documentation by @wtcox in #28
  • Remove dotfiles and idtypes folder by @alexgshepherd in #26
  • Pull dev into master by @wtcox in #29
  • Add GitHub Action by @jtn7 in #31
  • Add continuous integration job to the project by @jtn7 in #30
  • Pull documentation updates to master by @wtcox in #32
  • Pull documentation updates to dev by @wtcox in #33
  • Clean up dev into master before cancel tender work by @wtcox in #34

Full Changelog: https://github.com/EnergyMashupLab/eml-cts/commits/v1.0.0

poc-rabbitmq-1.0.0

01 Apr 04:30
259c3bc
Compare
Choose a tag to compare

EML-CTS RabbitMQ Release Notes

This version of EML-CTS is implementing RabbitMQ for RESTful interactions rather than the default SpringBoot use of JSON and HTTP.

Integration of RabbitMQ

  • Efficient Messaging: RabbitMQ offers a more efficient and robust messaging infrastructure compared to traditional RESTful HTTP communication.
  • Asynchronous Communication: Enables asynchronous communication, allowing for better message handling and system responsiveness.
  • Scalability and Fault Tolerance: Enhances system scalability and fault tolerance through effective load handling.

Performance and Scalability

  • Improved Throughput: Introducing RabbitMQ's asynchronous processing capability demonstrates improvements in throughput.
  • Reduced Latency: Achieves a reduction in latency, contributing to a more responsive user experience.

Compatibility

  • Java 11

Changelog

  • Detailed Accounting: A detailed accounting of changes, including technical refinements and minor adjustments, is available in the project’s changelog.

We look forward to your feedback and to continuing our journey towards creating a more efficient and robust EML-CTS.

Full Changelog: v1.0.0...poc-rabbitmq-1.0.0

EML-CTS (Java 11)

15 Mar 02:55
a88d63d
Compare
Choose a tag to compare

EML-CTS Release Notes - Java 11 with Docker Integration (dev-docker-java11)

Java 11 Version

This release represents an older version of EML-CTS and does not include the latest features and improvements. It is provided for legacy or compatibility purposes. Please ensure that you have Java 11 installed to run this application.

Features

Java 11 Compatibility

  • Update the code base to be compatible with Java 11, leveraging new language features and improvements.
  • Ensure that all dependencies and libraries are updated to versions compatible with Java 11.

Docker Integration Overview

  • Docker integration in EML-CTS allows the application to be packaged into lightweight, standalone containers.
  • These containers include all the necessary dependencies and configurations, ensuring consistency and portability across different environments.
  • Docker containers provide a flexible deployment solution, enabling developers to easily deploy, scale, and manage the application in various environments, such as local development machines, testing servers, or production servers.
  • This integration simplifies the setup and deployment process, streamlining development workflows and enhancing overall application reliability and efficiency.

Known Issues

  • Unable to perform SQL queries to MySQL tables due to case sensitivity specifically for those running on a Linux distribution.
  • Unclear Error messages (java.net.ConnectionException) when running the CTS due to the socket server inside parity-client not responding.
  • Unable to run without docker due to IP addresses configured and must be within the docker containers.

What's Changed

  • Cleanup by @wtcox in #1
  • Development by @wtcox in #3
  • Development merge - instructions and updates to testbed for POST operations by @wtcox in #4
  • Actors complete and tested for excercise with Postman by @wtcox in #5
  • Development-Tweaks to RestTestbed operation and payloads by @wtcox in #6
  • Add sample payloads, latest URI layout, and README by @wtcox in #7
  • Cleanup of example files by @wtcox in #8
  • Types into development (interim work) by @wtcox in #9
  • Development with interim types updates into master by @wtcox in #10
  • Completed party-based mapping with dynamic URIs by @wtcox in #11
  • Dev dyn uri into development - simplify before database integration by @wtcox in #12
  • development into master - clean up by @wtcox in #13
  • Pre position works with generated instruments and instrument mapping by @wtcox in #14
  • Include docs tree in Release-1,0 by @wtcox in #16
  • Move docs into master by @wtcox in #18
  • Ensure cts-release-1.0 is merged into master by @wtcox in #19
  • Add Apache 2.0 license preamble by @jtn7 in #20
  • Cts release 1.0 by @wtcox in #21
  • Fixed most warnings by @alexgshepherd in #24
  • Move *RestController.java and *Payload.java by @alexgshepherd in #25
  • Pull Request - updated documentation and diagrams into dev by @wtcox in #27
  • Draft time and instruments documentation by @wtcox in #28
  • Remove dotfiles and idtypes folder by @alexgshepherd in #26
  • Pull dev into master by @wtcox in #29
  • Add GitHub Action by @jtn7 in #31
  • Add continuous integration job to the project by @jtn7 in #30
  • Pull documentation updates to master by @wtcox in #32
  • Pull documentation updates to dev by @wtcox in #33
  • Clean up dev into master before cancel tender work by @wtcox in #34
  • Move work in josiah-cancel-tender to dev for finalization including dto elim by @wtcox in #35
  • Update dev branch acknowledgements by @wtcox in #42
  • Docker split by @devamshah1234 in #48
  • Dev docker shane by @shance-calderwood in #51

New Contributors

Full Changelog: https://github.com/EnergyMashupLab/eml-cts/commits/v1.0.0-dev-docker-java11

EML-CTS 1.0 SBE

02 Apr 04:12
6410cc6
Compare
Choose a tag to compare

EML-CTS 1.0 SBE Release Notes

This version of EML-CTS 1.0 introduces the implementation of the FIX Trading Community's Simple Binary Encoding (SBE) for RESTful interaction serialization, as an alternative to the default SpringBoot use of JSON serialization.

Highlights

Integration of SBE

  • Efficient Serialization: SBE provides a more compact and faster serialization method compared to traditional JSON serialization, resulting in improved network utilization and reduced latency.
  • Optimized for Trading: Designed for high-performance trading scenarios, SBE is the ideal choice for financial applications where speed and efficiency are paramount.

Performance and Scalability

  • Reduced Overhead: SBE's binary encoding format decreases the size of messages, leading to lower bandwidth consumption and faster processing times.
  • Enhanced Throughput: The streamlined encoding and decoding process of SBE allows our system to handle more transactions per second, increasing overall throughput.

What's Changed

  • Move work in josiah-cancel-tender to dev for finalization including dto elim by @wtcox in #35
  • Update dev branch acknowledgements by @wtcox in #42
  • dev-sbe-suvarna pull into main line dev by @wtcox in #47
  • Dev sbe sprint2021 by @suviopatil in #49

Full Changelog: v1.0.0...dev-sbe-1.0.0