Skip to content

leshan-2.0.0-M1

Choose a tag to compare

@sbernard31 sbernard31 released this 08 Oct 14:31
· 1063 commits to master since this release

❗☠️❗ Affected by security issue❗☠️❗

Build artifacts are available on maven central.

First development release on track for LWM2M 1.1, see LWM2M 1.1 supported features.
⚠️ As a milestone release keep in mind API could be broken.
(As this is the first milestone, I can even guarantee that API will be broken 😅)

If you are interested in LWM2M 1.1 support in Leshan, we strongly advice to :

This is the best way to get a final 2.0.0 release which fit your needs.

You are more and more to contribute to Leshan, thx to all of you ! 🙏

Noteworthy

  • add support to LWM2M 1.1 object model. #870
  • embed last models. #870
  • refactor model validation to support both model format, LWM2M 1.0 and LWM2M 1.1. #870
  • add resource instance support for Read/Write request using text/tlv/json content format. #877
  • add unsigned integer support. #879 #880
  • add LowerLayerConfig class to tweak lower layer request parameter. #876
  • Integration of Californium 2.4.1.(2.4.0 change log)
  • some bug fixes.

Thx to @zakharenkodmytro for "resource instance operation" contribution 🙏 !

Known Issue 🪲 :

#913: resource instance encoding for JSON content format. (fixed in 2.0.0-M2)
#964: issue preventing DTLS server to accept clients using x509 or RPK. PSK should not be affected. (It should be fixed in 2.0.0-M3)

Change logs

277499e: ReadResponse: Add ULong support
bb35bde: Add documentation about nightly release in README
6948515: Fix Lwm2mNodeTextEncoder & BaseInstanceEnable.write for ResourcInstance
8e4c409: #894 : fix opaque write on single opaque value (server-demo)
fc65183: Add utility to convert number safely in LwM2mNodeJsonDecoder.
a48227a: Add Unsigned integer support
d84a69b: API break: Use Iterator instead of List in BootstrapSecurityStore.
3852484: #894 : fix single value content format selection on write (server-demo)
dbf3671: Fix issue avoiding to choose mix ciphersuite psk/rpk/x509 with client
bc9dce3: Better log about server certificate validation at client side.
95d67bd: add -c option to chose cipher suite to leshan-client-demo.
f2531cd: Fix client demo logs about handshake.
9ae537a: Upgrade some dependencies (commons-io, jackson, jedis, jetty)
24de4af: Integration of Californium 2.4.1
9dd235a: Move minimal-json encoder/decoder implementation in its own package.
511ff3e: Add jackson implementation of LwM2mJsonDecoder
eac22fa: Make LwM2mJson Encoder/Decoder dynamic
8ec052e: Make all encoder/decoder dynamic object instead of static class.
e93c61c: Add methods to load all version or only last one of embedded model
afb8550: Add validation and comparison facility to Version class.
e1dc152: Remove some old LWM2M Version constant replaced by Version class
bbeeed2: Embedd DDF files for LWM2M 1.1 in leshan demos
b51d119: Embedd DDF files for LWM2M 1.1 in leshan-core
28bad91: Add new utility class to update LWM2M ddf Files
4170708: Update ObjectModel and ObjectModelValidator to support LWM2M 1.1
867ace5: Add DDFFileValidator for LWM2M 1.1 (add DDFFileValitorFactory)
2e1c24c: Add a new LWM2M Version class
1c05733: add release-nightly profile
16b283b: Add default impl for write resource instance in BaseInstanceEnabler
a90d957: LwM2mInstanceEnabler.write should handle LwM2mResourceInstance
9827a38: Add write tests about resource instances operation for tlv.
b20d3ae: Remove usage deprecated getValues()
a66de60: Fix some formatting issue.
c4f58e0: Add Resource Instance RW operations for Json and Text Content Format
cfb8e90: Add some tests about reading resource instance in TLV
2a6b05a: Update Tlv Encoder to support resource instance
ead62c9: Add ReadRequest API to target resource instance
297264e: Add support to read resource instance at client level
73e9db0: Add LwM2mResourceInstance object to support resource instance operation
9313f72: Update CoapRequestBuilder to support Resource Instance operation.
bd02aa1: Move path check to prepare support for resource instance operation
813d664: #875: add LowerLayerConfig class to tweak lower layer request parameter
69e432c: Integration of Californium 2.4.0
9dfdd3e: LeshanClientDemo: Fix coaps usage for named server
c70bd8d: Update README : add information about 2.x and LWM2M 1.1
74af7a9: LeshanServerBuilder: Fix handling of X.509 servers with serverAuth
8bb7184: Remove LwM2mObjectEnabler2
0bcc293: Remove DownlinkRequestVisitor2
f1cee66: Remove BootstrapSessionManager2
03a261e: Remove RegistrationEngineFactory2
6739243: Raise Exception if content format for DiscoverResponse is incorrect
5dd6b42: Update ObjectModelSerDes (add new fields)
61cb30d: remove useless methods (getVersion&getLwM2mVersion) from ObjectModel
6d7c3b2: Add NONE value to enum Type.
150a8cf: Model fields are nullable & null test is done by ObjectModelValidator
c9bac24: Remove deprecated method about Object Model Loading
76c2413: Fix API visibility issue on BaseObjectEnabler.doDelete()
1136909: Remove warning about switch case : EST is not supported for now.
44625ad: #682: Add SenML-CBOR encoder in leshan-core + unit tests.
c8712dd: #677: LwM2mNodeSenMLEncoder for SenML-JSON, and unit tests
983b21e: #673: SenML JSON decoder in leshan-core with unit tests.
ce5fff5: #659: Add SenML JSON encoder in leshan-core with unit tests.
054d305: SecurityMode: Add missing "Certificate mode with EST" (4)