Skip to content

leshan-2.0.0-M4

Compare
Choose a tag to compare
@sbernard31 sbernard31 released this 06 Jul 10:11
· 683 commits to master since this release

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

Build artifacts are available on maven central.

Fourth development release targeting LWM2M 1.1, see LWM2M 1.1 supported features.
⚠️ As a milestone release keep in mind API could/will be broken in next milestone.

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 fits your needs.

Noteworthy

  • New Web UI based on Vue.js/Vuetify for server-demo and bsserver-demo.
  • Registration Refactoring (e.g. new getAvailableInstance method) (#1007, #1009, #1010)
  • Add application data on registration (#1018)
  • Add support of ct attribute at client/server side. (#1006, #1008)
  • New API for Bootstrap Server which allow more custom behavior. (#1027)
  • Add a new Bootstrap mode which allow do choose Security Instance ID value automatically (#1028)
  • Add support of uri attribute on bootstrap discover.
  • Add new Bootstrap Consistency State checker at client side (#1000)
  • Add epmin, epmax attribute support at server side. (#1029)
  • Add support of Partial Update to WRITE on multi-instance resources (#1037)
  • Add Opaque encoding/decoding for resource instance (#1035)
  • Add Bootstrap Read support at client/server side. (#1036)
  • Add support to connection ID in all demos. (#999)
  • Integration of Californium 2.6.3

Many thanks to @intx82(#1029) for its contribution 🙏 !

Known Issue 🐛 :

#1052: client using "domain-issued certificate" should not check hostname/ipaddress
#1088: timeoutInMs parameter of LeshanClient.sendData() methods are not taken into account
#1140: leshan-server-redis lost available instances information from registration.

Change logs

01376d8: Add support of Partial Update to WRITE on multi-instance resources
d5f3f1b: Rename LwM2mNode(Encoder/Decoder) in LwM2m(Encoder/Decoder).
e41d9af: Change some log level (debug=>trace) in DefaultLwM2mNodeDecoder
50e9d02: Fix some javadocs
549a83d: Fix license header on LwM2mNodeSenMLDecoder/LwM2mNodeSenMLEncoder
ecf961a: Add BootstrapReadRequest support.
f281c3a: Add Opaque encoding/decoding for resource instance
977b565: README : change screenshot to show the new UI.
3792d42: Server-demo-v2: Add some tooltips on buttons.
e600ac7: Server-demo-v2: Better display for model description
277ac50: Server-demo-v2: fix responsive issue.
c3ac60e: Server-demo-v2: handle deregistered client on Client vue.
526963c: Server-demo-v2: make new UI as default one.
6227ecb: Server-demo-v2: polish navbar.
a95a7ce: Server-demo-v2: Add search field in Clients and Security tab.
7f6e488: Server-demo-v2: Add Server Tab about credentials
abd99c2: BS-Server-demo-v2: make new UI as default one.
2849aaf: BS-Server-demo-v2: Add default value for bootstrap server config
86b7b04: BS-Server-demo-v2: remove "changing step" on click in bsconfig wizard.
1b63133: BS-Server-demo-v2: polish navbar.
15feb05: BS-Server-demo-v2: use dialog to display errors.
b6ffcbc: BS-Server-demo-v2: Add search field in Bootstrap tab.
96bc682: BS-Server-demo-v2: Add Server tab about server credentials
2fcae73: BS-Server-demo-v2: Add a vue to watch session lifecyle.
afc22f3: Make ContentFormat and ResponseCode toString() prettier.
baa10b4: Add toPrettyString to LwM2mNode
bd08eff: Add Objects resources from LWM2M v1.1 to BootstrapConfig.
3d18862: Add a way to choose ContentFormat used for Bootstrap Write Request.
a06a043: Add BootstrapRequestChecker for bootstrap integration tests.
540aeec: Add BoostrapSessionListener at bootstrap server side.
b181ee9: Add autoIdForSecurityObject mode to bootstrap config.
0d24d6d: #1000: Add a BootstrapConsistencyChecker to Leshan Client.
e0919c3: Add support of "uri" attribute on bootstrap discover
d393b88: Add an integration test about "Bootstrap-Request Trigger" resource.
d9ae7bb: Implement "Bootstrap-Request Trigger" resource (1/?/9) at client side.
3d8011e: client: fix NPE on ObjectEnabler.getLwM2mClient()
3f3eb03: #1027: Rewrite BootstrapDiscover Tests to use BootstrapTaskProvider
96f2a5a: #1027: BS Server does not know SecurityStore and ConfigStore anymore
e6f87b2: #1027: Add TaskProvider which provides requests to send during bootstrap
0edf18c: BootstrapConfig is no more Serializable.
7440d13: #1027: Add ModelProvider to Bootstrap server to manage Object Versioning
f68537d: #1027: remove BootstrapConfiguration added by #883
4187e01: #1027:BootstrapSessionManager is responsible to know request to send.
c9eee50: #1024 : fix issue with long resource id in LwM2mNodeSenMLEncoder
09a2656: #1026 Evaluation attributes support
7c5a398: #1020: fix invalid syntax for ct attribute (QUOTE must be used)
6aebf47: Add a way to add applicationData on registration when authorizing.
9446530: Add some tests about Registration.getAvailableInstances()
4485054: Add getAvailableInstances method to Registration.
d69f571: Make LwM2mPath Comparable
7ba642a: Remove lazy loading for getSupportedObjects in Registration.
86cbd35: Add Test about supported Content Format on Registration Object
1bc43e4: Add Support of 'ct' option in registration at Server side.
dad83de: Registration is no more Serializable.
aae6bdb: Move default value attribution from constructor to builder.
bf7e378: Change Registration constructor: use Builder instead of lot of arguments
a84e60a: Update Registration tests to check rootpath
63683cb: Extract registration rootpath in builder.
f042517: Clean Registration Tests
78594b2: Change equals/hashcode behavior on Registration class.
f63276b: Use Version Class in Registration instead of simple String.
fe7c5b5: Add tests about Support of 'ct' option in registration at client side.
55d318c: Add Support of 'ct' option in registration at client side.
266445f: Make ContentFormat Comparable.
67e77aa: Add getSupportedContentFormat to LwM2mNode/Encoder/Decoder
f15debb: Add tests about mandatory or optional content format.
bab1cfb: Add methods about "mandatory" to ContentFormat.
045f2b9: #1016: try some optimization
3963c82: activate debug tools
3d2d6c3: update to vuetify 2.5.1 and vue 2.6.13 (server-demo)
3d7cf31: Make public production path a relative one. (for server-demo)
368e503: Server-demo-v2: Try to fix some router issue.
666383e: change info message about demo v2 in demo v1.
63c169e: Server-demo-v2: Add Queue mode usage or sleeping info.
748e9c5: Server-demo-v2: Add more info about registration.
890818d: Server-demo-v2: Add Exec with params
5206b48: Server-demo-v2: Add observe for instance
4a94128: Server-demo-v2: Add observe for single instance resource
464ab9b: Server-demo-v2: Add a shared store for data
de609c1: Server-demo-v2: add more object icons.
64811b8: Server-demo-v2: truncate resource value text if too long.
73337b7: Server-demo-v2: Add Input component for Opaque resource.
19e53ac: Server-demo-v2: Add ResourceInput component to create input by type
5e8ade8: Server-demo-v2: Add Cancel Button to all Dialogs
e5f567d: Server-demo-v2: Better Error Handling
efb109b: Server-demo-v2: Add UI for Create instance.
b9c07df: Server-demo-v2: add preference for multi-value content format.
0c598cd: Server-demo-v2: Add UI for Read/Write/Delete instance
427cf2d: Make public production path a relative one. (for bsserver-demo)
5dbe92e: #906: Proto of leshan-bsserver-demo UI v2 based on vuejs
7a08220: Integration of Californium 2.6.3
afc43f2: Avoid NPE when processing response message in unit tests
d33516e: Add connection ID support to demos
da6d32e: Remove unused import in BootstrapConfig