Releases: eclipse-leshan/leshan
leshan-1.4.2
ββ οΈβ Affected by security issueββ οΈβ
Build artifacts are available on maven central.
Noteworthy
- Integration of Californium 2.7.4. (eclipse-californium/californium#2071)
- Upgrade library/plugin dependencies.
Change logs
b60b511: Rerun failing / unstable integration tests.
dcbe8f6: Upgrade gson library to 2.9.1
3e50468: Upgrade maven plugin
3a04ccc: Integration of Californium 2.7.4
184b50a: add requireUpperBoundDeps rules to maven-enforcer-plugin.
leshan-2.0.0-M8
ββ οΈβ Affected by security issueββ οΈβ
Build artifacts are available on maven central.
A 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
- Add very Experimental OSCORE support (#1277)
- Add Timestamped nodes support to Send Operation at client side. (#1228)
- Add CoreLink datatype support (#1259).
- Add
list
command to leshan-client-demo (#1248) - Integration of Californium 3.6.0. (eclipse-californium/californium#2040, eclipse-californium/californium#2001)
Many thanks to @rikard-sics(#1277), @Michal-Wadowski (#1277), @adamsero (#1218), @JaroslawLegierski (#1248) their contribution π !
Change logs
0760fb9: Specify version of maven eclipse-jarsigner-plugin.
3ceb009: Fix Registration Application Data lost on registration update.
9876beb: Update bootstrap-server-demo frontend dependencies
9a332b9: Update server-demo frontend dependencies
7917c00: Update java dependencies
1e4d7b9: Upgrade maven plugin dependencies to last version
99491de: Move Enforcer plugin config to root pom.xml
dd58b2c: Integration of Californium 3.6.0
50a719b: fix #1287 : log uncaught callback exceptions
cece99a: Add new line at the end of all files.
daebf16: Formatter: add new line at the end of the file.
9915689: Fix ObjectVersionAttributeModel exception message.
7fe0ccf: Attach maven sortpom plugin to process-sources maven phase.
3cca2cd: Add github actions to check POM file are well formatted. fix
03770f8: Sort All pom.xml files with sortpom-maven-plugin
2887bff: #1285: Use sortpom-maven-plugin to check pom formatting.
6611454: Add github actions to check Java Import are sorted.
c82280c: Remove wildcard() import in all code.
c3e65fa: Do not allow wildcard() import with checkstyle.
93d15cc: Sort all java imports.
a71b17a: #1282: Use impsort-maven-plugin to imports are well sorted.
168c045: Add checkstyle rules to check usage of System.out System.err
893aff8: Remove unwanted "System.out.print ..."
33a1c7c: Add github actions for code format/style check.
5c8e55f: Remove all trailing spaces.
fbb28ca: Use checkstyle to check there is no trailing spaces.
876d639: Format all code with formatter-maven-plugin.
4788b51: #1281: Use formatter-maven-plugin to check file are well formatted.
848db99: Move encoding config to root pom.xml
d2ddfa5: Upgrade CodeFormatterProfile file to a more recent version format.
b865514: Use maven-source-plugin jar-no-fork
instead of jar
278c160: #1203: Add OSCORE support to leshan-bsserver-demo
fdb3eb6: Adapt Server input to prepare to add OSCORE support to BS server demo
82f2a0c: #1203: Add Oscore SecurityInfo support to Server and BS Server demo
69a6a73: REST API about SecurityInfo to prepare to add OSCORE support.
650c01d: #1203: Add Oscore Support to leshan-client-demo
1270ea0: #725: Add support of OSCORE.
d758d82: #1276: Github Actions, create separate steps for revapi & animal-sniffer
e632042: Typo: obsersation => observation
c560074: #1271: enhance Maven Build Configuration
60a95c2: #1228: Add (Manual)DataSender as client API of Timestamped Send Request
fe18d83: Add pull-requests write permission to build job. (github action)
577b1c8: #1265: Add CI to ensure PR does not contain merge commit.
b741a20: #1265: Add basic CI (build + tests) for PR on master.
30bad68: #1248: Add "list" Interactive Command to leshan-client-demo
4032353: Remove deprecate usage of dtlsConfig.getDtlsRole()
13dea84: Fix UriReference issue in MixedLwM2mLink when rootpath is not null.
9fadb35: servers-demo: Escape HTML in notifications.
22b7719: Remove huge timeout in WriteSingleValueTest ...
7703ef4: Fix String.format issue in LwM2mAttributeModel.getApplicabilityError()
7bf2d77: #1253: Do not allow Overlapped paths for ObserveCompositeRequest
32aceb2: Add API to print styled output in interactive command of client demo
d5e5a7d: Add CoreLink datatype support.
491a51c: Use LwM2m Test Object (3442) in our test (instead of home made one)
faec24d: Fix NPE when trying to bootstrap delete security instance at client side
dd09a4f: #1224: Use mirror to download yarn
31cd90b: bsserverdemo: clean some bsconfigutil code
430ade3: bsserverdemo : fix UI issue, certificate usage field is not used.
ff4f0ac: bsserverdemo : Fix regression from accc643 in bootstrap wizard
38d23b8: Integration of Californium 3.5.0
leshan-1.4.1
ββ οΈβ Affected by security issueββ οΈβ
Build artifacts are available on maven central.
Noteworthy
- Integration of Californium 2.7.3. (eclipse-californium/californium#2045, eclipse-californium/californium#1958 )
- Upgrade library/plugin dependencies.
Change logs
39d5e92: Update plugin and lib dependencies
628f71d: Integration of Californium 2.7.3
9cf05ea: Revapi should not alway check API on v1.0.0 but on the last released.
e3b0b92: Integration of Californium 2.7.2
leshan-2.0.0-M7
ββ οΈβ Affected by security issueββ οΈβ
Build artifacts are available on maven central.
A 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
- Massive Refactoring about CoRE link Format and LWM2M Attributes (#1197)
- Add Timestamped nodes support to Send Operation at server side. (#1218)
- Keep resources order from DFF file in ObjectModel. (#1245)
- Integration of Californium 3.4.0.
- some demo servers fixes and optimizations.
Many thanks to @Michal-Wadowski (#1218) and @adamsero (#1246, #1247) their contribution π !
Change logs
a759c24: #1228: Add timestampedNodes support to SenML encoder.
389e60b: #1245: Keep resources order from DFF file in ObjectModel.
31d2dc9: Fix some missing icons in bsserver demo (regression from accc643)
9943413: Fix Bootstrap UI issue : bad serverInput sync in bootstrap wizard
b97b194: Update last Browsers Data in yarn.lock (servers demo)
2c9fa23: Add some security information about CVE-2022-21449
accc643: Avoid to load whole material design font.
0c52113: Add "yarn report" command to analyze bundle (generate report.html)
7123a40: Upgrade Bootstrap Server demo Yarn DevDependencies
181b0e9: Upgrade Server demo Yarn DevDependencies
dafb1ad: Update yarn.lock dependencies for server and bsserver demo
54dfb6c: Fix some String.format message in DefaultLwM2mLinkParser.
afea4b0: Add Exception in LOG of BaseBootstrapConsistencyChecker.checkconfig()
79b10c2: Integration of Californium 3.4.0
55ee6b2: Security Fix ? upgrade to jackson-databind 2.13.2.1
2adb128: Integration of Californium 3.3.1
b047a28: Security fix : upgrade com.upokecenter.cbor to v4.5.2
633e3e2: #1218: Add Timestamped nodes support to Send Operation at server side.
21bf6b9: Add scheme URL check to leshan-client-demo
6cb81d8: server-demo: add some more object icons.
76bb72f: server-demo: fix serialization regression about Link attribute.
3ec790b: server-demo: fix reactive issue when override existing security info.
ce46f14: bsserver-demo: fix reactive issue when override existing config.
d4839f5: bsserver-demo: Fix Bootstrap Config dialog issue.
30f79d3: #1197: Massive Refactoring about CoRE link Format and LWM2M Attributes
leshan-1.4.0
ββ οΈβ Affected by security issueββ οΈβ
Build artifacts are available on maven central.
Noteworthy
- Add an API to parse Execute Request Arguments.
- Integration of Californium 2.7.1.
- Upgrade library dependencies (slf4j, logback, ...)
- Update ddf model for core library and demo.
- Add support of LWM2M Object Test (3441) to demo
Change logs
63cf677: Upgrade dependencies and maven plugin dependencies.
aa4548b: Integration of Californium 2.7.1
f9c39a6: Integration of Californium 2.7.0
ed23859: Add ObjectLoader.loadAllDefault()
4b36f26: Add Basic implementation of LwM2m Object Test(3441)
e271844: Update/Add last registered ddf model for demos.
9c266f7: Update to last ddf model for LWM2M core object.
010d257: Add DdfDownloaded.
12a101a: Add Arguments API to parse Execute Request Arguments.
leshan-2.0.0-M6
ββ οΈβ Affected by security issueββ οΈβ
Build artifacts are available on maven central.
A 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 API/Parser/Serializer for Execute request Arguments (#1097)
- Better SendData Error handling. (#1187)
- Fix some issue about Number with SenML encoding/decoding. (#1170,#1176)
- Add support of Composite-Operation to server-demo.
- Improve New Configuration wizard of bsserver-demo.
- Use now Java8 as minimal version (#924)
- Remove old UI for both server demos.
- Remove GSON and minimal-json dependencies (#1045)
- Remove jackson-dataformat-cbor dependency.
- Integration of Californium 3.2.0.
- Update to last LWM2M models.
- Update library dependencies.
Many thanks to @Michal-Wadowski (#1097, #1045) and @JaroslawLegierski (#1187) their contribution π !
Change logs
42c7fcf: Use new DtlsConfig.addSessionListener() of cf 3.2.0.
0d332bb: Integration of Californium 3.2.0
84b1eef: #1187: Better SendData Error handling.
cb84a3d: Fix Observe regression in server-demo introduced by c30fe46
afce36c: Upgrade to jedis 4.0.1 (from 3.5.2)
f775383: Remove unused dependencies.
159bda4: Upgrade maven dependencies.
231a707: Upgrade maven-plugin-dependencies.
a62e8bf: Fix Type guessing of CBOR Decoder.
0374563: Rename FLOAT Type/Value in NUMBER Type/Value in SenMLRecord
1193cf3: Fix float handling for senml-cbor.
39f5757: Fix exception in error message in NumberUtil.numberToDouble()
e06aaa5: server-demo: Add support of Write-Composite.
d4d5523: server-demo: In CompositeObjectView use nodes as Object instead of Array
acdcbaa: Integration of Californium 3.1.0
54cec68: #1176: Make SenML-CBOR decoder more strict about number conversion.
c30fe46: server-demo: Add Observe-Composite Operation to leshan-server-demo
074bce3: Add cancelCompositeObservations to ObservationService
5572b79: Add some more LWM2M Object Icons to server-demo.
d5ca8c9: server-demo: sort objects by object ID.
9363e76: server-demo: Warn if device list Sec or OSCORE Object at registration
ac4f309: Add some more LWM2M Object Icons to server-demo.
28491cb: Fix typo in DDFFileParser : shema => schema.
b4884b5: Fix revapi configuration (filter californium).
e1014e9: Add "send Data" support to LwM2mTestObject
a3c6e67: server-demo: add support of Unsigned Long
ed16077: Add ULong support to LwM2mTestObject
03290b1: Add LWM2M v1.1 Object (3442) model to demos.
64314cb: Fix LWM2M registry models.
594b59b: Update Object models (get last version from LWM2M registry) in demos.
9612b63: Update LWM2M Core Object models (get missing last version)
6e39f04: Set Core Object Version used in Tests.
f475e90: Update SECURITY.md : add Versions Security State.
16a11c6: server-demo: Add UI for Read-Composite Operation.
05deb54: server-demo: Add Composite Object to be able to add Composite Operation
9720c44: server-demo: Resource definition view.
c8caa11: server-demo: create expansion panel view for lwm2m resources.
ddd0461: server-demo: add availableInstances in registration
8965f21: server-demo: Create input to edit list of LWM2M path
1c98fb2: Update SECURITY.md
c461785: #1097: add new API/Parser/Serializer for Execute request Arguments
cdea253: NumberUtil should raise IllegalArgumentException instead of IllegalState
ca74049: #1170: add safe conversion from decimal to long/ulong in NumberUtils.
eb33697: #1170: Add a test about conversion from double to long with SenML.
0cba977: #1082: Create dedicated LwM2mPathInvalidException.
e7a6f92: Add private methods to LwM2mNodeUtil.
d5a8a73: bsserver-demo: change default file name of JSONFileBootstrapStore.
fe0e116: bsserver-demo: add support of "Auto ID For Security Object"
0c03682: BootstrapServer: add validation about path to delete.
227f129: bsserver-demo: add delete path step to define which path to delete.
6ff40bb: bsserver-demo: show path to delete in Config column of bootstrap view.
609ffbf: bsserver-demo: display bootstrap config in only 1 column.
7cba814: bsserver-demo: Being able to create Bootstrap config without bs server.
6abb95c: bsserver-demo: Being able to create Bootstrap config without dm server.
152cd9c: servers-demo: share more vuejs code instead of duplicate it.
dd8e25f: #1112: Add Credentials column in Bootstrap View
e07dc19: bsserver-demo: move some byte utils function to byteutils.js
7df18e3: bsserver-demo: remove redundant error handling(already done in axios.js)
771b837: #1112: Add SecurityStep to wizard to define how client authenticate.
094ab55: servers-demo: share vuejs code instead of duplicate it.
06b683c: bsserver-demo:fix wizard issue about initialization of validation
8632f3b: bsserver-demo: move each wizard step in its own vue component.
bc3ddf3: bsserver-demo: Add a BootstrapSecurityStoreAdapter.
e9073fc: servers-demo: move classes from server-demo to server-core-demo
02c0359: #1163: fix bad request when create X509 security info in server-demo.
d9f1cf2: #924: Switch as Java8 as minimal version.
ffb6197: #1136: Remove keystore way to provide Ceritficate to leshan-server-demo
7bcb1af: #936: change CaConstraint cert usage to not support "trustanchor mode".
5cdba82: server-demo: fix UI bug about "Send Operation" for resourceInstances.
553afdc: #1155: Fix LwM2mResourceInstance.newInstance to support ULong
9f9e063: server-demo: change REST API, use string instead of Number for Float too
ea3c84a: server-demo: change REST API, use string instead of Number for Integer
d5bb0da: #1147: Fix for failing tests on Windows
60b4010: Integration of Californium 3.0.0
eaf1da7: #1140:RegistrationSerDes must support availableInstances of registration
3caf38f: Rewrite reg.addSupportedObject() to make it more readable.
ca52f83: #1134: fix web UI active tab issue again (+ some responsive fixes)
c7054de: server-demo: sort registered clients by registration date.
26a531b: server-demo: remove loading bar when loading registered clients.
485f2e5: Remove useless binding of dark properties (server and bsserver demo)
ec5d7cf: bs-serverdemo: make navbar more responsive.
e115f71: #1134: fix web UI active tab issue (server and bsserver demo)
59ade8a: Client Behavior changes: "Replace instance" resets Readable Resources.
c1d8a08: Fix NPE at client side about updating multi-instance resource.
ec14387: server-demo: Erase previous value in UI on replace Object Instance.
86c1926: #1124: fix NPE for Registration Links JSON serialization in server-demo
0ed5fd3: #1123: Better Handle LinkParseException.
8cd61fe: Make LinkParseException a checked exception.
3cb4007: server-demo: Add ObjLink write support.
99ea91f: server-demo: be more strict about JSON type of node value.
f98f949: server-demo: Use Timestamp for Time value of REST API.
9bd4844: Remove MagicLwM2mValueConverter to leshan-server-demo
78fee63: server-demo: add type attribute to REST API to type value of lwm2m node.
abf081c: server-demo: change attribute name for kind of lwm2m node (type => kind)
30fe937: Integration of Californium 3.0.0-RC2
ef029d7: Remove jackson-dataformat-cbor dependency.
03621a5: #1126: allow to create server without PSK ciphers.
3d2b1f9: #1045: Remove GSON dependency.
d2aed76: #1045: Remove minimal-json dependency.
6811051: Fix typo in leshan-bsserver-demo webapp/index.html
7d5f8db: Rename source folder of webapp in leshan-bsserver-demo.
2089026: Remove old UI of leshan-bsserver-demo
4eacbf4: Rename source folder of webapp in leshan-server-demo.
d20b974: Remove old UI of leshan-server-demo
905f586: Upgrade revapi-maven-plugin to 0.14.5
leshan-1.3.2
ββ οΈβ Affected by security issueββ οΈβ
Build artifacts are available on maven central.
Despite small change logs, people who are using x509 and/or RPK with Leshan v1.0.0 to v1.3.1 MUST upgrade to 1.3.2 version for security reason.
Noteworthy
- Integration of Californium 2.6.6 which fixes CVE-2021-34433
β οΈ - Some minor bugs fixes
- Update dependencies versions (logback, slf4j ...)
Change logs
cc62ead: Upgrade to revapi v0.14.6
5b97afb: Upgrade to last maven-plugins
6cc0e4c: Integration of Californium 2.6.6
53e0aa1: Upgrade dependencies(logback 1.2.8, slf4j 1.7.32 ...)
bc6101d: ignore Californium3 propertiers files
b130dc2: leshan-bsserver-demo must validate external models (from -m option)
a9593ef: Integration of Californium 2.6.5
1c7eb4c: Integration of Californium 2.6.4
fa2d6a9: Fix parsing of outgoing records.
bf74a62: client: fix NPE on ObjectEnabler.getLwM2mClient()
8d47ec2: Update git ignore (ignore node and node_modules)
6240a55: Integration of Californium 2.6.3
1d4ebbf: Avoid NPE when processing response message in unit tests
leshan-2.0.0-M5
ββ οΈβ Affected by security issueββ οΈβ
Build artifacts are available on maven central.
People who are using x509 and/or RPK with Leshan v2.0.0-M1 to v2.0.0-M4 MUST upgrade to 2.0.0-M5 version for security reason.
Fifth 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
- Add Composite-Observe Operation (#1034)
- Add Observe to resource instance level (#1041)
- Improved Link API to make it more compliance with rfc6690 (#1022)
- Modernize CLI interface of our demos (#569, #568)
- Add Send Operation support to client and server demos (#1110, #1086)
- Add Multi-Instance Resource UI to server demos (#1095,#1100,#1101,#1102)
- Add LwM2m Test Object (Id:3441) to Leshan demos (#1093)
- Some enhancement about x509 (#1052, #1081)
- Integration of Californium 3.0.0-RC1. which fixes
β οΈ CVE-2021-34433
Many thanks to @Michal-Wadowski (Observe-Composite / Link Parsing enhancement) and @joachifm (#1087) for their contributions. π !
Known Issue π :
#1140: leshan-server-redis lost available instances information from registration.
#1155: LwM2mResourceInstance.newInstance does not support UNSIGNED_INTEGER.
Change logs
5060e84: #1022: Improved Link API to make it more compliance with rfc6690.
b6528f3: #915: Add support of empty multi instance resource to SenML format
64c0ba6: Integration of Californium 3.0.0-RC1
7ef2ded: Add LwM2m Test Object (Id:3441) to Leshan demos.
0232b4b: Add Send Operation Support to leshan-server-demo
87baa6e: Upgrade yarn and node version
8c37b68: Upgrade dependencies to most recent version.
5c9b924: Upgrade to most recent version for Maven Plugins.
fa91fc4: Add license header to frontend code.
423f6cc: Updates WebApp demo dependencies
e101de6: Add Write operation UI for Multi-Instance resources in server-demo
bb87198: Add some more icons
922a4d7: Fix Resource control must not be hided for Executable resource
94be488: Add R/W/OBS operation for resource instance to Leshan Server Demo
c3ee8af: Add resource instance support to JSON (de)serializer of server-demo
c27c118: Refactor resource inputs to make easier to add Resource Instance Write
8910784: Clean vue component file hierarchy of server-demo webapp
5c1c938: Add better display of resource description and multi instance values.
8ef57e5: Add simple support of Read/Observe of resource multi instance
e189243: Guess server port if not provided to client-demo for default value too
a24bbe3: #1081:serverdemo set dtls server-only if cert doesn't support clientauth
869b564: Add a --queue-mode option to leshan client demo.
7f045e9: If leshan client use QueueMode set dtls connector as clientOnly
ee21bca: #1081: client set as dtls client-only if cert doesn't support serverauth
4bea97f: Add check about certificate to leshan client BootstrapConsistencyChecker
c8ef0a6: Add Send command to leshan-client-demo.
13c4784: Use 2 short internally instead of String in Version class.
36e0b64: #1080: Add version param to "create" command of leshan-client-demo
ce95967: Add getModel() to LwM2mModelRepository
c744698: Add a get for the most recent version of an Object in a LwM2m repository
00aed3a: Add LwM2mVersion class and use Version as a more generic one.
515a510: Enhance error message about type matching in LwM2mSingleResource.
4414aa9: Remove credentials display at leshan-client-demo start-up.
a63e703: Guess server url port if not provided to leshan-client-demo
d25d090: Fix #1088: make sendData actually use timeoutInMs parameter
09a7e30: Fix logback-config of leshan-client-demo.
f047032: Make short Validation and compare consistent by using short everywhere
ec5ce9d: Fix Version validation message
f1aab7a: Fix Delete Object Enabler command in demo : Object 1 can not be deleted
093612c: Fix some issues about Add "Observe resource instance" support
71858d7: Remove Version class replaced by LeshanProperties in 8a866f2
33f200b: Fix can_composite_observe_on_multiple_resources Test.
ab12d08: Reduce decoding overhead with passing path list via user context in ObserveCompositeRelationFilter
26ef844: Add integration tests about Cancel Observe Composite
49a3176: Add active Cancel Composite-Observation feature
578c284: Refactor Observation request & response content format
84293b2: Add integration tests about Observe-Composite
5767475: Add client side Observe Composite feature
2ba5811: Add server side Observe Composite feature
2a39eba: Add Single/Composite Observation, ObserveComposite Request/Response classes.
594cc5c: Add integration tests about "Observe Resource Instance" support.
bd20129: Add "Observe Resource Instance" support at Server side.
e979aeb: Add "Observe Resource Instance" support at Client side.
ed48136: Refactoring to allow to fire resource instance changes at client side.
543d8e2: Improve default implementation of BaseInstanceEnabler.write()
9d33ce9: Add missing checks about resource instance to WriteRequest constructor
8a866f2: Add version option (--version) to all demos.
3e7505b: Add verbose option (-v, -vv, -vvv) to all demos.
12a30f0: Create common StandardHelpOptions shared by all demos
720b8a8: Remove ExecutionExceptionHandler HACK by a proper way.
9496ede: server-demo : Fix additional attributes bad key/value order.
434e9bc: Some pom.xml cleaning
bc740a4: Fix NPE in ObjectLoader.loadObjectsFromDir(File)
23a9eba: Activate LOG of LwM2mModelRepository for leshan-bsserver-demo.
48b6516: #568: Add color to logback log for leshan-bsserver-demo
a92ddff: Share TruststoreConverter between all demos.
ab2ee12: Shared Option definition between bsserver and server demo
73c416e: leshan-bsserver-demo must validate external models (from -m option)
96bec8f: #569 : Replace Apache commons-cli by picocli in leshan-bsserver-demo
eeb8907: Share CIDConverter code between demos.
d4f7259: Create a "leshan-server-core-demo" project to share servers demo code.
9d4b645: #568: Add color to logback log for leshan-server-demo
b24622f: #569 : Replace Apache commons-cli by picocli in leshan-server-demo
89ad54f: Fix NPE in ExecutionExceptionHandler
b73cdc9: Move CLI utility classes in leshan-core-demo to be reused by other demos
c858e0c: Create a "leshan-core-demo" project to share demo code.
3c25b85: Integration of Californium 3.0.0-M4
55984dc: Use picocli ANSI color heuristic for logback
fa39fed: Add color to logback log for leshan-client-demo
6ea0b6a: Implement the InteractiveCLI using Jline2 and picocli
2e2c095: Extract Interactive CLI code in a dedicated class (leshan-client-demo)
bbcf7d1: switch from simple log4j to logback
bd275a8: #569 : Replace Apache commons-cli by picocli in leshan-client-demo
4cc7ce9: Change annotation and array formatter.
f262845: Remove TestData which was introduce by mistake with c9eee50 (again)
6573078: Integration of Californium 3.0.0-M3
1602577: Remove TestData which was introduce by mistake with c9eee50
c68bfe5: Fix unintended level log change from introduce with cf-3.0.0-M2
83a3f2b: #1052 : Do not check hostname/ipaddress for "domain-issued certificate"
02873ac: #1050 : update default demo certificate. CN is now equals to localhost.
957c279: Integration of Californium 3.0.0-M2
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
leshan-2.0.0-M3
ββ οΈβ Affected by security issueββ οΈβ
Build artifacts are available on maven central.
Third 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
- Add Read-Composite support (#958)
- Add Write-Composite support (#959)
- Add Send operation support (#971)
- Fix issues about Certificate Usage(#995) and SENML-CBOR/JSON data value vd/8 (#985).
- Update to last version of LWM2M model (#973)
- Add certificate Usage to Leshan demo (#991)
- A first version of a new UI for server demo based on vue.js (#977)
- Integration of Californium 2.6.2 (2.6.1 change log) which fixes issue which in certain circumstances may definitely prevent Leshan server to accept DTLS handshake using X509 and RPK. (see CVE-2020-27222
β οΈ )
Many thanks to @dachaac(#983) for its contribution π !
Known Issue πͺ² :
#1024 : SenMLEncoder can not encode Node for multi instance resource with too long resource or resource instance id
#1052: client using "domain-issued certificate" should not check hostname/ipaddress
#1088: timeoutInMs parameter of LeshanClient.sendData() methods are not taken into account
Change logs
edeaa2b: #992: guess ServerIdentity from Endpoint instead of EndpointContext
a75781b: Add some test about #992 issue.
2765896: Limit certificate usage to 1 & 3 for config about leshan bs server demo
caabf0b: LeshanBootstrapServerDemo: Add certificate chain support
c045fcb: LeshanServerDemo: Add certificate chain support
51e3e5e: SecurityUtil: Add helper for parsing certificate chain
0671ed9: BootstrapServerDemo: Add support to set certificate usage for clients
8f061df: CertificateUsage: Add server side support to send CertificateUsage configuration.
5670399: ClientDemo: Add support to configure certificate usage from command line
c1307a4: Security: Add x509Bootstrap() variant with CertificateUsage
52b568f: Fix regression trying to fix help prompt regression (from 8ce5498)
d97a0bd: fix -ksa default value of server-demo (the --help says it's leshan)
807c3b0: Use DTLS clientOnly config by default for client connecting to bs server
e09e91c: Remove undesired huge timeout for some integration tests.
95977db: Remove undesired System.out.println ...
ffeaa92: Add newUnsignedIntegerInstance methods to LwM2mResourceInstance
8cec6a0: Integration of Californium 2.6.2
fdc4a98: #987: fix to support null for short server id on bootstrap security obj
d5607f0: #984 fix issue about decoding data value (vd/8) with SenML_CBOR.
2cd1a67: Add test about opaque encoding/decoding with SENML_CBOR
8ce5498: Fix help prompt regression (since 9bc7a3b)
f614b26: #906: Proto of leshan-server-demo UI v2 based on vuejs
18990fe: Add Redis Test about Send Operation.
fdd3111: Add index by identity in "RedisRegistrationStore"
0be7cea: Add index by identity in "InMemoryRegistrationStore"
82fab07: Add integration tests about Send Request.
52eb5fd: Add Send Service to handle "Send Operation" at server side.
338292a: Add SendData() API to Leshan client.
bfbb425: Update Client Request Sender to be able to support "Send operation"
80d1ad6: Add getModel() to LwM2mObjectTree.
36154b9: Add "LWM2M Send" Request and Response Classes
6432a4b: Regroup event on WriteComposite at client side.
f98311f: Add support of partial Update for multi instance resources.
363ec53: Add some integration tests about Write Composite Operation.
e12a19a: Add Write Composite suppot at client side.
70975fe: Add some methods on LwM2mPath to create new Path from a previous one.
d85671e: Add WritComposite Request and Response.
6285f0d: Adapt MultiNodeDecoder to support WriteComposite.
3a184ab: Add test about ReadComposite
fc6b7ff: Add ReadComposite Support at client side
5d73a7d: Add ReadCompositeRequest and Response
8e1494e: Add SimpleDownlinkRequest (to be able to add CompositeDownlinkRequest)
f1d71f8: Add PathDecoder for Composite Operation
8db395f: Rename decoder/encoder > nodeDecoder/Encoder to allow adding pathDecoder
1399ca5: SenML encoder/decode should be able to support record without value.
75762b9: Make LwM2mNodeSenMLDecoder implement MultiNodeDecoder
0e96425: Introduce MultiNodeDecoder for composite operation
cba82b6: Code refactoring to prepare support for MultiNodeDecoder
9222d22: Fix NPE in SenMLResolver.
382d0ae: Create dedicated(SenMLResolver) class to resolve SenMLRecord
5c0ba73: Make LwM2mNodeSenMLEncoder implement MultiNodeEncoder
08ac562: Introduce MultiNodeEncoder for composite operation
79ebdb5: Update client demo models
884efa6: Update server demo models
ad434fd: Update core models
e37de61: Update DdfDownloader to download core model in a dedicated folder.
d159ae5: Better handling of incorrect model with 2 resources with same id.
034262a: Integration of Californium 2.6.1
1081fa0: #964 : CertificateVerifier.getAcceptedIssuers() should not return null
2d82b39: Removed Unused DefaultLeshanCertificateVerifier
dfbbab6: Fail on javadoc warning issue.
2506177: #951: fix javadoc doclint config
538124b: Fix Default Node Encoder/Decoder javadoc.