leshan-1.0.0-M13
Build artifacts are available on maven central.
Noteworthy
- Integration of Californium 2.0.0 ! Thx @boaks for all your works 🙏 !
- Cleaning LWM2M Server API.
- Make LWM2M Server more customizable.
- Previous LWM2M Bootstrap server version introduces a way to avoid 2 bootstrap session at the same time given priority to the first one, we finally change it to give priority to the last one.
- Fix some bugs and LWM2M uncompliant behaviors.
ℹ️ Concerning LWM2M server and LWM2M bootstrap server, there is no more changes planned for the final 1.0.0 release. Next milestone will focus on the LWM2M client part and then we will be ready for the 1.0.0 version.
Notable API/behavior break
leshan-clusterwas removed (#679)- JSON format is no more supported for object model definition (#707)
CreateRequestchange a lot to be compliant with the LWM2M specification (#768)- It could have behavior break with JSON ContentFormat as we fix some issue on it (#651)
- It could have behavior break with link value (#775 and #774)
- "impl" package was removed
LwM2mBootstrapServer,LwM2mClient,LwM2mServerinterface was removedgetRegistrationEndpointAddress()method was removed fromRegistration
Change logs
a211c1f: #784 : support unset for write attributes request
f154718: Fix race condition issue about PresenceService and simplify the code.
8120415: #732: fix rt and ver attributes of Link format.
ed9e8ad: Server SHOULD not initiate DTLS connection for device using Queue mode
fb7d474: Remove uneeded ignored tests about create request.
f8fc761: Move test from RegistrationTest to LeshanBuilderTest
eaa38c5: reword/remove some TODO.
f110f77: Remove workaround about HEALTH_STATUS_INTERVAL as it fixed in Cf.
ec99ef3: Change JsonException from Runtime to Checked exception
d96a665: Introduce generic JsonException & make LwM2mJsonException a checked one
3efc58b: Move JsonSerDes from "model.json" to "util.json" package
7adef51: Reuse SecurityUtil in configurationChecker and ServersInfoExtrator
2c371a5: Make CreateRequest compliant with LWM2M specification
83edf4f: Remove TODO about bad request on update and delete registration.
2d455bb: Remove support of deprecated update registration using PUT.
f5a3941: Use LwM2mNodeEx for malformed node instead of IllegalArgumentEx.
65d8be4: Validate that LwM2mNode haven't children with same Id
aba5e63: Ensure that LwM2M path is created with valid ID
998873d: Ensure that LwM2M node is created with valid ID
6224546: Can not create object instance without id with JSON content format
d468294: #651 : fix JSON content format implementation
feefe02: Add support to upload file for opaque field.
d44a562: #781: fix opaque decoder issue with null/empty value.
346bf6c: Add empty opaque test
bb159bf: Add a map based way to initialize SimpleInstanceEnabler.
226e924: Integration of Californium 2.0.0
6817e74: #775: remove whitespaces between "link-values" for Link serialization
f512b57: Shutdown presence service schedulor on destroy.
bf1ae7f: Shutdown async observer thread on destroy.
1ccd556: Fix start/stop RegistrationStore issue.
81436c4: Add some tests about start/stop/destroy servers
b437d0c: Remove "impl" package in leshan-server-cf (in tests)
2b5b233: Add more javadocs to leshan-server-*.
b7e77ac: #743: Add documentation + fast fail when null is used for callback
0487082: Ensure that user receive either 1 response or 1 error on send
91b4340: Add TRACE logs in DefaultBootstrapSessionManager
5cc2747: Use DownlinkRequest instead of LwM2mRequest in BootstrapSessionManager
7fde752: Rename cancelPendingRequests() in cancelOngoingRequests()
3e4df34: For concurrent bs session, priority to the last one (cancel the oldest)
7baf5b6: Use session in bootstrap request sender.
1205159: Add ID and cancel facility to bootstrap session.
d990528: Create a new RequestSender Utility class, use it for server and bsserver
f3d3079: Remove unused getRegistrationEndpointAddress() method in Registration
4d4cd10: Use secure/unsecured endpoint instead of a list of endpoint in server.
6d87530: Remove Registration/Obs...Service dependencies for LwM2mResponseBuilder
e36b0cd: Fix CancelObservationResponse building.
480d886: Use loggingTag to better understand log mixing client and server.
a8b8354: Integration of Californium 2.0.0-RC1
c358599: Cancel ongoing requests if device IP changed
372b76e: Fix missing throw exception in LwM2mModelRepository
89fe475: #707: Remove JSON format for object model definition
faa777e: #679: Remove leshan-server-cluster
449768c: Refactoring clean packages in leshan-client-core
c79d91c: Remove "impl" package in leshan-client-cf
d7d54e7: Remove "impl" package in leshan-server-cf
3fc86ae: Remove "impl" package in leshan-server-core
d00ccd6: Remove pointless LwM2mBootstrapServer interface
8823409: Remove pointless LwM2mClient interface
179d509: Remove pointless LwM2mServer interface.
0d5ef94: Make easier to create custom LeshanServer.
85409e4: Make every part of LeshanServer replaceable.
742669f: #751: Add some documentation about listener execution.
07b9deb: Integration of Californium 2.0.0-M18
2c72d85: #747: fix dead lock in leshan-client-demo
6ac723c: Add Security policy (SECURITY.md)
f4df14b: Integration of Californium 2.0.0-M17
5944b66: Added WriteAttributes to REST API of leshan demo server