PROTON-2244: Fix for Array of lists with first list empty encoding

PROTON-2244: Correction on previous fix, prevent zero-length array encoding for all array memebers of an array

PROTON-2244: Minor correction to comment text

PROTON-2244: Added a set of array encode-decode tests for Data.Array, including a array of lists test which catches this bug.

PROTON-2244: Removed array codec tests from Python to C/C++ tests as requested

PROTON-2244: Removed debug statements erroneously left in code from previous commit

PROTON-2244: Fix for non-linux compilers and non-portable float types

PROTON-2244: Further improvements to array check: fail if error during encoding or decoding

PROTON-2244: Added tests for arrays of char and decimal32/64/128.

PROTON-2244: Added some additional arrays of list test cases

PROTON-2244: Removed array tests of all but array of lists, as this is the issue. The consensus is that we need to make the tests compare encoded bytes with expected encoded bytes, not perform an encode/decode comparison as these tests do at present. This should be done at a later time.

NO_JIRA: Removed header files which are no longer used in c/tests/data_test.cpp
2 files changed
tree: 7999c1db87a60f187ce9afe28066dd6ac4b684e7
  1. azure-pipelines/
  2. c/
  3. cpp/
  4. docs/
  5. go/
  6. misc/
  7. python/
  8. ruby/
  9. scripts/
  10. tests/
  11. tools/
  12. .appveyor.yml
  13. .asf.yaml
  14. .gitattributes
  15. .gitignore
  16. .mailmap
  17. .reviewboardrc
  18. .travis.yml
  19. CMakeLists.txt
  20. go.mod
  21. INSTALL.md
  22. LICENSE.txt
  23. NOTICE.txt
  24. README.md
  25. VERSION.txt
README.md

Qpid Proton - AMQP messaging toolkit

Linux/OSX BuildWindows Build
Linux/OSX Build StatusWindows Build Status

Qpid Proton is a high-performance, lightweight messaging library. It can be used in the widest range of messaging applications, including brokers, client libraries, routers, bridges, proxies, and more. Proton makes it trivial to integrate with the AMQP 1.0 ecosystem from any platform, environment, or language

Features

  • A flexible and capable reactive messaging API
  • Full control of AMQP 1.0 protocol semantics
  • Portable C implementation with bindings to popular languages
  • Peer-to-peer and brokered messaging
  • Secure communication via SSL/TLS and SASL

Universal - Proton is designed to scale both up and down. Equally suitable for simple clients or high-powered servers, it can be deployed in simple peer-to-peer configurations or as part of a global federated messaging network.

Embeddable - Proton is carefully written to be portable and cross platform. It has minimal dependencies, and it is architected to be usable with any threading model, as well as with non-threaded applications. These features make it uniquely suited for embedding messaging capabilities into existing software.

Standard - Built around the AMQP 1.0 messaging standard, Proton is not only ideal for building out your own messaging applications but also for connecting them to the broader ecosystem of AMQP 1.0-based messaging applications.

Please see https://qpid.apache.org/proton for more information.

Getting Started

See the included INSTALL.md file for build and install instructions and the developers.md file for information on how to modify and test the library code itself.