leshan-2.0.0-M4
❗☠️❗ Affected by security issue❗☠️❗
Build artifacts are available on maven central.
Fourth development release targeting LWM2M 1.1, see LWM2M 1.1 supported features.
If you are interested in LWM2M 1.1 support in Leshan, we strongly advice to :
- use/test this milestone release,
- report us any bug or feebacks,
- share what part of LWM2M 1.1 missing you more,
- contribute code.
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. newgetAvailableInstance
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