Recent Releases of acme-onem2m-cse
acme-onem2m-cse - 2025.03.2
Fixes
- Replaced accidental constant with configurable secret when testing hashed credentials.
- Python
Published by ankraft 11 months ago
acme-onem2m-cse - 2025.03.1
New Features
- Added support for the [credential] ManagementObject specialization.
- Added check if the operation execution time (oet) is after rqet or rset.
- Added fset build-in command to set an alias to functions and lambdas in the script interpreter.
- Added support for <Subscription>'s enableEventNotificationOriginator attribute. This implements SDS-2023-0096 and SDS-2023-0143.
- Made onboarding available as an extra application that can be started via the command line.
- Added configuration of other bindings in onboarding.
- Added support for the <ACP> AccessControlRule's accessControlAuthenticationFlag attribute.
- Added "master" secret for salted password hashing.
- Added experimental support for the "no response" Response Type behavior for blocking requests.
- Added command line argument to print the configuration settings to the info log. The configuration settings are not printed to the console by default anymore.
Improvements
- Added support for other data types (int, float, bool, list, dict) for the <ContentInstance>'s content attribute. Until now, only string was supported as a valid data type.
- Added support for the revised FlexContainer and FlexContainerInstance resource types.
- Added configurable default settings for mia attribute in <Container>, <FlexContainer> and <TimeSeries> resources.
- Added support for authentication between CSEs via Mcc.
- The method for creating resource IDs has been changed to use alphanumeric characters instead of only digits. Also, the length of generated resource IDs is now configurable.
- Requests are treated internally as authenticated when an authenticated http or WebSocket request is received.
- Added support to provide credentials (usernames, password, tokens) in environment variables instead of setting them in the configuration file.
- Improved plantuml diagram generation.
- Many small optimizations and improvements in the CSE's internal handling, especially for internal resource object creation.
Fixes
- Fixed partial attribute retrieval for <flexContainer> specializations.
- Improved stability of the CoAP protocol binding in case of listening errors.
- Fixed regression bug when using newer versions of the isodate package.
- Prevent other content than 'm2m:sgn' and 'm2m:rsp' in notification requests.
- Prevent targeting CSE as target of a notification to prevent notification loops.
- Hiding the "Requests" tabs in the TUI when request recording is disabled.
- Adapted to Textual release 1.0.0.
Breaking Changes
- Added experimental support for the revised <FlexContainer> and <FlexContainerInstance> resource types.
- Password and tokens in the auth credential files are now hashed and not stored in clear text anymore.
Misc
- Added support for enabling/disabling syntax highlighting in the resource editor of the text UI. The syntax package is now not installed by default because it is not available on all platforms. It be installed afterward if needed.
- Added tool to generate hashed passwords and tokens for the auth credential files.
- For tests: Added cmdline argument to disable the check and use of the Upper Tester interface.
- Python
Published by ankraft 11 months ago
acme-onem2m-cse - 2024.10.1
Fixes
- Fixed wrong textual package version
- Python
Published by ankraft about 1 year ago
acme-onem2m-cse - 2024.10
New Features
CSE
- Added CoAP protocol binding
- Reading command line arguments from a file
Text UI
- Added support for sending CREATE and UPDATE requests in the text UI.
- Addd displaying cURL commands for operations
- Copying of resources and identifiers to clipboard
- Copying of CSV data to the clipboard
Improvements
- CSE
- Internal restructuring of configuration handling and validation
Fixes
- CSE
- Fixed crash when the environment variables contain "$" characters.
- Database
- Fixed wrong removal of null-attributes in complex attributes for the PostgreSQL database binding.
- Web UI
- Fixed the web UI when the CSE's http server is not running directly under the root path.
Misc
- CSE
- Internal restructuring of runtime constants and configuration validations
- Python
Published by ankraft over 1 year ago
acme-onem2m-cse - 2024.06.01
- Fixed support for UTC time logging for the supported Python versions.
- Python
Published by ankraft over 1 year ago
acme-onem2m-cse - 2024.06
New Features
- Added support for operationMonitor attribute in <subscription> resources.
- Improved support for DELETE operations on <request> resources.
- Added support for attribute-level access control.
- Added support ACP access control contexts: accessControlWindow
- Added support for logging in UTC time.
- Added new functions
all,any,filter,map,min,max,reduce,reverseto the script interpreter. - Added
--exlcude-testscommand line argument to exclude specific test cases from the test run.
Improvements
- Improved the script interpreter's error reporting. The error messages are now more informative and include the call stack.
- Changed the
httpscript function: Now supporting quoted list for headers in addition to the JSON struct. - Simplified internal test case registration.
- Added support for logging in UTC time.
- Improvements for the Text UI
- Added support for sending UPDATE operations.
- Improved design and layout of many views.
Fixes
- Many small fixes
Misc
- Moved the documentation for the website to the a separate repository (ACME-oneM2M-CSE-mkdocs).
- Python
Published by ankraft over 1 year ago
acme-onem2m-cse - 2024.05.01
- The ACME CSE documentation can now be found at https://acmecse.net.
- ACME releases can now be installed via the PyPi package manager :
pip install acmecse - The base directory where the acme.ini configuration file, and data, logs, tmp and a secondary init directories are stored can now be specified. It doesn't have to be the current working directory anymore.
Improvements
- Adding support for environment variables in configuration setting interpolations.
Fixes
- Changed the values for the [SIM] and [MobileNetwork] ManagementObject specializations to adapt the changes in TS-0022.
Breaking Changes
- Moved the init directory to the acme module.
- Moved the acme.ini.default file to the new init directory location.
- Python
Published by ankraft almost 2 years ago
acme-onem2m-cse - 2024.04.1
Fixed
- [MQTT] Fixed paho MQTT implementation for V2 #153
- Python
Published by ankraft almost 2 years ago
acme-onem2m-cse - 2024.04
- ACME finally gets a serious database binding. Form this release on resources and runtime data can be stored in a PostgreSQL database backend.
TinyDB will still be supported for local file-based and in-memory deployments. - Updated the MQTT client and connection functions to the Paho 2.0 version.
- Fixes for issues #146 and #147
- Improved the handling of semantic queries' result serialization. The proper format (JSON or XML) is now used depending on the original request's content serialization. Also, corrected the handling of semantic request parameters. See PR #149.
Breaking Changes
- The configuration for database settings has been changed. It has been split into different sections for the different database bindings.
- Python
Published by ankraft almost 2 years ago
acme-onem2m-cse - 2024.03
- Added WebSocket Binding support.
Though fully functional, there are two experimental features added to the implementation. See the article that explains these features and how to use them. - Added support for SIM and MobileNetwork ManagementObject specializations.
- Added support for Python 3.12.
- Improved Text UI.
- Auto-refresh for diagrams.
- Diagrams now support containers that contain boolean-kind values.
- Added Service menu for resources.
- Export a resource and its child resources as curl commands.
- Export the instance resources of <container> and <timeSeries> container to CSV files.
- Improved scripting support with new functions.
- Many small improvements and bug fixes.
- Python
Published by ankraft almost 2 years ago
acme-onem2m-cse - 2023.10.1
- Added <FCNT> as child resource type for <NOD>. Thanks to @BobFIV for the contribution.
- Bumped referenced library werkzeug to version 3.0.1
- Python
Published by ankraft over 2 years ago
acme-onem2m-cse - 2023.10
- Support for the <schedule> resource type.
- Limited support for the <locationPolicy> resource type, and for the location attribute and geo-queries.
- Basic and bearer authorization for http requests.
- WSGI http server support.
- Improved Text UI
- Added an input field for passing script arguments to tool scripts
- Added diagrams for <containers> that have <contentInstances> with numeric values.
- Improved scripting support with new functions and better script organization.
- Improved on-boarding by offering automatic installation of missing Python packages
And, as usual, many improvements, bug fixes, and performance improvements.
Python 3.8 will be EOL soon. To move forward, from this release on ACME will require Python 3.10 or greater.
From this release on version numbers will follow the Calendar Versioning scheme.
- Python
Published by ankraft over 2 years ago
acme-onem2m-cse - 0.12.0
- Added text UI with views for resources, requests, registrations, configurations, statistics, and tools.
- Added tutorial setup and example <AE>s.
- Added support for <action> and <dependency> resource types.
- Added recording of received and sent requests to support request debugging.
- Added support for partial RETRIEVE (ie. only selected attributes are returned in a RETRIEVE request).
- Added support for disabling sending the optional <subscription>'s verification request.
- Changed the script interpreter from a batch-based to a lisp-based language.
- Lots of runtime optimisations.
- Changed some configuration sections.
- Removed support for http path mappings to oneM2M requests.
- And, as usual, many improvements, bug fixes, and performance improvements.
- Python
Published by ankraft over 2 years ago
acme-onem2m-cse - 0.11.3
- Fixed a crash when checking permissions and the ACP has a
acod.tyattribute set. Fixes #112.
- Python
Published by ankraft almost 3 years ago
acme-onem2m-cse - 0.11.2
- Fixed target originator for notifications sent via MQTT.
- Python
Published by ankraft about 3 years ago
acme-onem2m-cse - 0.11.1
- Improved unit tests to be more versatile
- Corrected direct CSE addressing
- Corrected wrong Return Status Code for invalid RI or RN
- Prevent deletion notifications when removing virtual resources
- Python
Published by ankraft about 3 years ago
acme-onem2m-cse - 0.11.0
- <crossResourceSubscription> and <semanticDescriptor> resource types support.
- Support for semantic queries and semantic discovers.
- [wifilient] and [dataCollect] management object specializations support.
- Support for blocking UPDATE notification event type.
- Various improvements: Support for expirationCounter and notification statistics (<subscription> and <crossResourceSubscription>).
- Added CORS (Cross-Origin Resource Sharing) support for http binding.
- Various new commands and macros for scripting interpreter and the console.
- Improved definition of enumeration values for validation.
- Changed subscription notification handling to asynchronous.
- Improved request timeouts, especially for the http binding.
- Improved internal handling of requests sent by the CSE itself.
- And, as usual, many improvements, bug fixes, and performance improvements.
- Python
Published by ankraft about 3 years ago
acme-onem2m-cse - 0.10.2
- Fixed problems with missing syslog module under MS Windows. See issue #87
- Added debug mode to display hidden exceptions during start-up.
- Fixed Return-key handling for MS Windows cmd terminal.
- Python
Published by ankraft over 3 years ago
acme-onem2m-cse - 0.10.1
- Fixed crash when restarting <timeSeries> monitoring.
- Python
Published by ankraft over 3 years ago
acme-onem2m-cse - 0.10.0
- <timeSyncBeacon> resource type support
- Guided setup process to create the initial configuration file
- Adapted announcements and time-series procedures to latest R4 changes
- Support for the Upper Tester interface defined in oneM2M's TS-0019
- Adding scripting support to the CSE that can be used through the console, the Upper Tester, CSE events and notifications, and other
- Improved the CSE console (e.g. drawing graph diagrams from <contentInstance> resources, dark & light theme)
- Added support for BLOCKING UPDATE notification event type
- Improved announced resources (e.g. bi-directional update)
- Improved validation of complex attributes
- And, as usual, many improvements, bug fixes, and performance improvements
Before this release the initial resources to bootstrap the CSE were JSON scripts that were imported at the CSE's startup phase. With this release this is changed to running the script startup.as that imports the initial resources.
- Python
Published by ankraft almost 4 years ago
acme-onem2m-cse - 0.9.1
Fixed
- Added <pollingChannel> to the list of supported resource types for the <CSEBase>.
- Removed acpi attribute definition from <contentInstance> resource.
- Python
Published by ankraft over 4 years ago
acme-onem2m-cse - 0.9.0
- Long-necessary refactoring of the project source structure
- Simplified initial configuration
- MQTT Binding support
- PollingChannel support
- Improved evaluation of target URIs for notifications, forward URIs etc
- New console commands (Continuous updating tree view, resource export etc)
- Support for delayed operation execution
- Lot's of small improvements, bug fixes, and optimisations
- Python
Published by ankraft over 4 years ago
acme-onem2m-cse - 0.8.1
- Added a configuration option to enable or disable the confirmation when quitting the CSE. The default is "disabled".
- Python
Published by ankraft over 4 years ago
acme-onem2m-cse - 0.8.0
- Support for <timeSeries> and <timeSeriesInstances>
- Improved support for request expiration, access control, and <container> & <contentInstances>
- Improved console interface
- Lot's of small improvements, bug fixes, and optimizations
- Python
Published by ankraft over 4 years ago
acme-onem2m-cse - Version 0.7.3
- Support for CBOR content serialization
- Improved attribute policies of flexContainer specializations
- Added many flexContainer specialization from oneM2M R4
- New console command interface
- Improved access control handling (e.g. support for creator and holder attribute)
- WebUI can now be run as a stand-alone application
- More unit tests and improved test runner
- Many more improvements and conformance fixes
In this release: - Limiting support to oneM2M released 2a, 3, and 4 - Added "T" console command
- Python
Published by ankraft almost 5 years ago
acme-onem2m-cse - Version 0.7.2
- Support for CBOR content serialization
- Improved attribute policies of flexContainer specializations
- Added many flexContainer specialization from oneM2M R4
- New console command interface
- Improved access control handling (e.g. support for creator and holder attribute)
- WebUI can now be run as a stand-alone application
- More unit tests and improved test runner
- Many more improvements and conformance fixes
- Python
Published by ankraft almost 5 years ago
acme-onem2m-cse - Version 0.7.1
- Support for CBOR content serialization
- Improved attribute policies of flexContainer specializations
- Added many flexContainer specialization from oneM2M R4
- New console command interface
- Improved access control handling (e.g. support for creator and holder attribute)
- WebUI can now be run as a stand-alone application
- More unit tests and improved test runner
- Many more improvements and conformance fixes
- Python
Published by ankraft almost 5 years ago
acme-onem2m-cse - Version 0.7.0
- Support for CBOR content serialization
- Improved attribute policies of flexContainer specializations
- Added many flexContainer specialization from oneM2M R4
- New console command interface
- Improved access control handling (e.g. support for creator and holder attribute)
- WebUI can now be run as a stand-alone application
- More unit tests and improved test runner
- Many more improvements and conformance fixes
- Python
Published by ankraft almost 5 years ago