Skip to content

Commit c7df239

Browse files
committed
Anjay 3.10.0
Features: - Instruction how to generate packages for Anjay Demo was added to documentation. - Dropped support for Ubuntu 18.04 and removed tests for it. Bugfixes: - Fixed `devconfig` script which was incorrectly setting Anjay version in logs to "unknown". - Added canceling the Register or Update message exchange if it's in progress when Server Disable (with resource execution or by API) is called that could have led to disabling the server infinitely. Improvements: - Unified script for generating packages in integration tests, now it can also be used to generate packages for the Software Management object. - The format of the metadata for packages used in integration tests and the demo has been revised to be more unambiguous and unified. - Added `confirmable_notification_status_cb` handler that is called if acknowledgement for confirmable notification is received from the Server or some error has occurred.
1 parent faf58d5 commit c7df239

File tree

782 files changed

+2700
-1605
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

782 files changed

+2700
-1605
lines changed

.github/workflows/anjay-tests.yml

Lines changed: 4 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -2,42 +2,15 @@
22
# AVSystem Anjay LwM2M SDK
33
# All rights reserved.
44
#
5-
# Licensed under the AVSystem-5-clause License.
5+
# Licensed under AVSystem Anjay LwM2M Client SDK - Non-Commercial License.
66
# See the attached LICENSE file for details.
77

88
name: Anjay tests
99
on: [push]
1010
jobs:
11-
ubuntu1804-compilers-test:
12-
runs-on: ubuntu-latest
13-
container: avsystemembedded/anjay-travis:ubuntu-18.04-2.0
14-
env:
15-
CC: ${{ matrix.CC }}
16-
CXX: ${{ matrix.CXX }}
17-
steps:
18-
# NOTE: workaround for https://github.com/actions/checkout/issues/760
19-
- run: git config --global safe.directory '*'
20-
# NOTE: v2 requires Git 2.18 for submodules, it's not present in the image
21-
- uses: actions/checkout@v1
22-
with:
23-
submodules: recursive
24-
- run: apt-get update
25-
- run: apt-get -y install $CC $CXX
26-
- run: ./devconfig --with-valgrind --without-analysis -DWITH_VALGRIND_TRACK_ORIGINS=OFF -DWITH_URL_CHECK=OFF -DWITH_IPV6=OFF
27-
- run: env CC=gcc LC_ALL=C.UTF-8 make -j
28-
- run: env CC=gcc LC_ALL=C.UTF-8 make check
29-
strategy:
30-
fail-fast: false
31-
matrix:
32-
include:
33-
- CC: gcc-7
34-
CXX: g++
35-
- CC: clang-6.0
36-
CXX: clang++-6.0
37-
3811
ubuntu2004-compilers-test:
3912
runs-on: ubuntu-latest
40-
container: avsystemembedded/anjay-travis:ubuntu-20.04-2.0
13+
container: avsystemembedded/anjay-travis:ubuntu-20.04-2.1
4114
env:
4215
CC: ${{ matrix.CC }}
4316
CXX: ${{ matrix.CXX }}
@@ -68,7 +41,7 @@ jobs:
6841

6942
ubuntu2204-compilers-test:
7043
runs-on: ubuntu-latest
71-
container: avsystemembedded/anjay-travis:ubuntu-22.04-2.0
44+
container: avsystemembedded/anjay-travis:ubuntu-22.04-2.1
7245
env:
7346
CC: ${{ matrix.CC }}
7447
CXX: ${{ matrix.CXX }}
@@ -110,7 +83,7 @@ jobs:
11083

11184
rockylinux9-compilers-test:
11285
runs-on: ubuntu-latest
113-
container: avsystemembedded/anjay-travis:rockylinux-9-2.0
86+
container: avsystemembedded/anjay-travis:rockylinux-9-2.1
11487
env:
11588
CC: ${{ matrix.CC }}
11689
CXX: ${{ matrix.CXX }}

.github/workflows/coverity.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# AVSystem Anjay LwM2M SDK
33
# All rights reserved.
44
#
5-
# Licensed under the AVSystem-5-clause License.
5+
# Licensed under AVSystem Anjay LwM2M Client SDK - Non-Commercial License.
66
# See the attached LICENSE file for details.
77

88
name: Coverity

CHANGELOG.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,29 @@
11
# Changelog
22

3+
## 3.10.0 (May 28th, 2025)
4+
5+
### Features
6+
- Instruction how to generate packages for Anjay Demo was added to documentation.
7+
- Dropped support for Ubuntu 18.04 and removed tests for it.
8+
9+
### Bugfixes
10+
11+
- Fixed `devconfig` script which was incorrectly setting Anjay version in logs
12+
to "unknown".
13+
- Added canceling the Register or Update message exchange if it's in progress
14+
when Server Disable (with resource execution or by API) is called that could
15+
have led to disabling the server infinitely.
16+
17+
### Improvements
18+
19+
- Unified script for generating packages in integration tests, now it can also
20+
be used to generate packages for the Software Management object.
21+
- The format of the metadata for packages used in integration tests and the
22+
demo has been revised to be more unambiguous and unified.
23+
- Added `confirmable_notification_status_cb` handler that is called if
24+
acknowledgement for confirmable notification is received from the Server or
25+
some error has occurred.
26+
327
## 3.9.0 (February 28th, 2025)
428

529
### Features

CMakeLists.txt

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
# AVSystem Anjay LwM2M SDK
33
# All rights reserved.
44
#
5-
# Licensed under the AVSystem-5-clause License.
5+
# Licensed under AVSystem Anjay LwM2M Client SDK - Non-Commercial License.
66
# See the attached LICENSE file for details.
77

8-
cmake_minimum_required(VERSION 3.6.0)
8+
cmake_minimum_required(VERSION 3.16)
99

1010
project(anjay C)
11-
set(ANJAY_VERSION "3.9.0" CACHE STRING "Anjay library version")
11+
set(ANJAY_VERSION "3.10.0" CACHE STRING "Anjay library version")
1212
set(ANJAY_BINARY_VERSION 1.0.0)
1313

1414
set(ANJAY_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}")
@@ -46,17 +46,8 @@ set(DLSYM_LIBRARY "${DETECTED_DLSYM_LIBRARY}" CACHE STRING "Name of the library
4646
include(CMakeDependentOption)
4747

4848
# compilation flags
49-
if(NOT CMAKE_VERSION VERSION_LESS 3.1)
50-
set(CMAKE_C_STANDARD 99)
51-
set(CMAKE_C_EXTENSIONS OFF)
52-
elseif(CMAKE_C_COMPILER_ID MATCHES "GNU" OR CMAKE_C_COMPILER_ID MATCHES "Clang")
53-
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99")
54-
endif()
55-
56-
if(POLICY CMP0067)
57-
# Make try_compile() respect CMAKE_C_STANDARD and CMAKE_C_EXTENSIONS
58-
cmake_policy(SET CMP0067 NEW)
59-
endif()
49+
set(CMAKE_C_STANDARD 99)
50+
set(CMAKE_C_EXTENSIONS OFF)
6051

6152
option(WITH_EXTRA_WARNINGS "Enable extra compilation warnings" OFF)
6253
if(WITH_EXTRA_WARNINGS)

CONTRIBUTING.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
AVSystem Anjay LwM2M SDK
44
All rights reserved.
55
6-
Licensed under the AVSystem-5-clause License.
6+
Licensed under AVSystem Anjay LwM2M Client SDK - Non-Commercial License.
77
See the attached LICENSE file for details.
88

99
Contributing to Anjay

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# AVSystem Anjay LwM2M SDK
33
# All rights reserved.
44
#
5-
# Licensed under the AVSystem-5-clause License.
5+
# Licensed under AVSystem Anjay LwM2M Client SDK - Non-Commercial License.
66
# See the attached LICENSE file for details.
77

88

Doxyfile.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ FULL_PATH_NAMES = YES
138138
# If left blank the directory from which doxygen is run is used as the
139139
# path to strip.
140140

141-
STRIP_FROM_PATH =
141+
STRIP_FROM_PATH = @DOXYGEN_INPUT_PATHS@
142142

143143
# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
144144
# the path mentioned in the documentation of a class, which tells

LICENSE

Lines changed: 80 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,92 @@
1-
AVSystem-5-clause License
1+
AVSystem Anjay LwM2M Client SDK - Non-Commercial License
2+
========================================================
23

3-
Copyright by AVSystem sp. z o.o. (AVSystem) 17th March 2022.
4-
All rights reserved.
5-
This software is licensed under the following conditions specified below.
4+
Version 1.0
5+
Effective Date: May 2025
6+
Copyright 2017-2025 AVSystem Sp. z o.o.
67

8+
Subject to the terms and conditions set forth herein, AVSystem Sp. z o.o.
9+
("Licensor") hereby grants any person or legal entity obtaining a copy of this
10+
software and associated documentation files (collectively, the "Software") a
11+
limited, non-exclusive, non-transferable, royalty-free license to use,
12+
reproduce, modify, and distribute the Software solely for Non-Commercial
13+
Purposes, as defined below.
714

15+
1. DEFINITIONS
816

9-
All materials referring to features or use of this software must display the
10-
following acknowledgement:
17+
"Non-Commercial Purposes" means use of the Software:
18+
- for internal evaluation or prototyping by individuals or legal entities;
19+
- in academic or research institutions for educational or scientific
20+
purposes;
21+
- in personal, non-revenue-generating projects;
22+
- in open-source, community, or not-for-profit settings, provided such use is
23+
not part of any direct or indirect commercial activity.
1124

12-
"This product includes software developed by AVSystem"
25+
"Commercial Use" includes, but is not limited to:
26+
- incorporating the Software into any commercial product or service;
27+
- using the Software in production systems operated by for-profit entities;
28+
- using the Software in any revenue-generating or business-critical
29+
operations;
30+
- deploying the Software in any manner that supports commercial offerings,
31+
including SaaS, OEM integrations, or professional services.
1332

14-
Redistribution and use of the software in source and binary code forms, with or
15-
without modification, are permitted only provided that the following conditions
16-
are met:
33+
2. LICENSE CONDITIONS
1734

18-
1. Redistribution of source code must retain copyright notice and include the
19-
list of usage conditions and AVSystem's disclaimer.
35+
Subject to compliance with this License, the Licensee may:
36+
1. use the Software for Non-Commercial Purposes;
37+
2. copy and modify the Software;
38+
3. distribute unmodified or modified versions of the Software, provided that:
39+
- Redistribution of source code must retain AVSystem’s copyright notice
40+
and include the list of usage conditions and AVSystem’s disclaimer;
41+
- Redistribution in binary form, except as embedded in a physical device,
42+
must include the following acknowledgment in accompanying documentation
43+
or user interface: "This product includes software developed by AVSystem
44+
Sp. z o.o.", this list of conditions of use and the following disclaimer
45+
in the documentation and/or other materials provided with the software.
46+
- Neither the name of AVSystem nor its collaborators (if any) may be used
47+
to offer or promote products derived from this software without prior
48+
written consent of the owner.
2049

21-
2. Redistribution in binary form, except as embedded in a physical device, must
22-
contain the above copyright notice, this list of conditions of use and the
23-
following disclaimer in the documentation and/or other materials provided
24-
with the software.
50+
3. DISCLAIMER OF WARRANTY
2551

26-
3. Neither the name of the AVSystem nor its collaborators (if any) may be used
27-
to offer or promote products derived from this software without prior
28-
written consent of the owner.
52+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
53+
IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES OF MERCHANTABILITY,
54+
FITNESS FOR A PARTICULAR PURPOSE, TITLE, OR NON-INFRINGEMENT.
55+
IN NO EVENT SHALL THE LICENSOR, ITS AFFILIATES, OR CONTRIBUTORS BE LIABLE FOR
56+
ANY DAMAGES, INCLUDING DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
57+
CONSEQUENTIAL DAMAGES (INCLUDING BUT NOT LIMITED TO PROCUREMENT OF SUBSTITUTE
58+
GOODS OR SERVICES, LOSS OF USE, DATA, OR PROFITS, OR BUSINESS INTERRUPTION)
59+
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
60+
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE), ARISING IN ANY WAY
61+
OUT OF THE USE OF THE SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
62+
DAMAGE.
2963

30-
4. Commercial use of this software, with or without modifications, requires
31-
prior notification to AVSystem at [email protected] of such use. In case
32-
the software is used together with AVSystem's CoioteDM Platform, such
33-
notification is not required.
64+
4. COMMERCIAL LICENSING
3465

35-
5. Commercial use of the software is limited to 100.000 (one hundred thousand)
36-
devices, unless a separate agreement with AVSystem is made.
66+
Any use of the Software falling outside the scope of Non-Commercial Purposes
67+
constitutes Commercial Use and is expressly prohibited under this License.
68+
To obtain rights for Commercial Use, including deployment, integration into
69+
commercial products, or support for business operations, the Licensee must
70+
acquire a Commercial License from AVSystem. Commercial Licenses are issued on
71+
a per-SKU (Vendor Device Model) basis and may include:
72+
- Free-of-charge usage for up to 10,000 devices per SKU;
73+
- Access to premium features (subject to additional fees);
74+
- Technical support packages (subject to additional fees);
75+
- Additional licensing packages (subject to additional fees);
3776

38-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT OWNER "AS IS" AND ANY DIRECT OR
39-
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
40-
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
41-
EVENT SHALL THE COPYRIGHT OWNER BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
42-
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
43-
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
44-
BUSINESS INTERRUPTION) HOWEVER CAUSED AND REGARDLESS OF THE SOURCE OF
45-
LIABILITY, WHETHER CONTRACT, DIRECT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
46-
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
47-
OF THE POSSIBILITY OF SUCH DAMAGE.
77+
To register for a Commercial License, visit:
78+
https://go.avsystem.com/anjay-registration
79+
80+
For commercial inquiries, contact:
81+
82+
83+
5. GOVERNING LAW
84+
85+
This License shall be governed by and construed in accordance with the laws
86+
of the Republic of Poland, without regard to its conflict of law provisions.
87+
All disputes arising from or relating to this License shall be subject to the
88+
exclusive jurisdiction of the competent courts located in Kraków, Poland.
89+
90+
============================================
91+
END OF AVSYSTEM ANJAY NON-COMMERCIAL LICENSE
92+
============================================

0 commit comments

Comments
 (0)