Attention is currently required from: neels.
laforge has posted comments on this change by neels. ( https://gerrit.osmocom.org/c/pysim/+/42009?usp=email )
Change subject: compile_asn1_subdir: filter compiled files by .asn suffix
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/pysim/+/42009?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I37df3fc081e51e2ed2198876c63f6e68ecc8fcd8
Gerrit-Change-Number: 42009
Gerrit-PatchSet: 1
Gerrit-Owner: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Attention: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 09 Feb 2026 12:45:33 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
Attention is currently required from: canghaiwuhen.
fixeria has posted comments on this change by canghaiwuhen. ( https://gerrit.osmocom.org/c/osmo-sgsn/+/42050?usp=email )
Change subject: Some older modules, such as the Air20X module, may crash during PDP attachment due to excessively long QoS response packets. If the PDP is not released after successful attachment, the module will restart, and subsequent TCP connections will fail.
......................................................................
Patch Set 3:
(1 comment)
Patchset:
PS3:
> can you please re-submit and fix all the whitespace errors you introduce as reported by the linter? […]
Please also adjust the commit message text to have a brief distinct subject and more detailed description below it (see e.g. https://gist.github.com/ericavonb/3c79e5035567c8ef3267).
--
To view, visit https://gerrit.osmocom.org/c/osmo-sgsn/+/42050?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: osmo-sgsn
Gerrit-Branch: master
Gerrit-Change-Id: I11c24b64f0e49cf80c825969dbf018b2948d855c
Gerrit-Change-Number: 42050
Gerrit-PatchSet: 3
Gerrit-Owner: canghaiwuhen <canghaiwuhen(a)gmail.com>
Gerrit-Reviewer: Jenkins Builder
Gerrit-CC: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-CC: laforge <laforge(a)osmocom.org>
Gerrit-CC: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: canghaiwuhen <canghaiwuhen(a)gmail.com>
Gerrit-Comment-Date: Mon, 09 Feb 2026 12:44:50 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: laforge <laforge(a)osmocom.org>
Attention is currently required from: dexter.
laforge has posted comments on this change by dexter. ( https://gerrit.osmocom.org/c/pysim/+/42086?usp=email )
Change subject: pySim/euicc: fix encoding/decoding of Iccid
......................................................................
Patch Set 1: Code-Review+1
--
To view, visit https://gerrit.osmocom.org/c/pysim/+/42086?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: comment
Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I527a44ba454656a0d682ceb590eec6d9d0ac883a
Gerrit-Change-Number: 42086
Gerrit-PatchSet: 1
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-CC: Jenkins Builder
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Mon, 09 Feb 2026 12:44:24 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
laforge has submitted this change. ( https://gerrit.osmocom.org/c/pysim/+/42043?usp=email )
Change subject: esim/http_json_api: add alternative API interface
......................................................................
esim/http_json_api: add alternative API interface
unfortunately the API changes introduced in change
I277aa90fddb5171c4bf6c3436259aa371d30d092
broke the API interface of http_json_api.py. This was taken into
account and necessary to introduce add the server functionality next
to the already existing client functionality. The changes to the API
were minimal and all code locations that use http_json_api.py
were re-aligned.
Unfortunately it was not clear at this point in time that there are
out-of-tree projects that could be affected by API changes in
http_json_api.py
To mitigate the problem this patch introduces an alternative API
interface to the JsonHttpApiFunction base class. This alternative
API interface works like the old API interface when the class is
instantiated in the original way. To make use of the revised client
the API use has to pass an additional keyword argument that defines
the role.
Related: SYS#7866
Change-Id: I2a5d4b59b12e08d5eae7a1215814d3a69c8921f6
---
M pySim/esim/http_json_api.py
1 file changed, 51 insertions(+), 3 deletions(-)
Approvals:
laforge: Looks good to me, approved
Jenkins Builder: Verified
diff --git a/pySim/esim/http_json_api.py b/pySim/esim/http_json_api.py
index 28022ff..94e60cb 100644
--- a/pySim/esim/http_json_api.py
+++ b/pySim/esim/http_json_api.py
@@ -19,6 +19,7 @@
import requests
import logging
import json
+from re import match
from typing import Optional
import base64
from twisted.web.server import Request
@@ -210,18 +211,65 @@
# additional custom HTTP headers (server responses)
extra_http_res_headers = {}
+ def __new__(cls, *args, role = None, **kwargs):
+ """
+ Args:
+ args: (see JsonHttpApiClient and JsonHttpApiServer)
+ role: role ('server' or 'client') in which the JsonHttpApiFunction should be created.
+ kwargs: (see JsonHttpApiClient and JsonHttpApiServer)
+ """
+
+ # Create a dictionary with the class attributes of this class (the properties listed above and the encode_
+ # decode_ methods below). The dictionary will not include any dunder/magic methods
+ cls_attr = { attr_name: getattr(cls, attr_name) for attr_name in dir(cls) if not match("__.*__", attr_name) }
+
+ # Normal instantiation as JsonHttpApiFunction:
+ if len(args) == 0:
+ return type(cls.__name__, (abc.ABC,), cls_attr)()
+
+ # Instantiation as as JsonHttpApiFunction with a JsonHttpApiClient or JsonHttpApiServer base
+ role = kwargs.get('role', 'legacy_client')
+ if role == 'legacy_client':
+ # Deprecated: With the advent of the server role (JsonHttpApiServer) the API had to be changed. To maintain
+ # compatibility with existing code (out-of-tree) the original behaviour and API interface and behaviour had
+ # to be preserved. Already existing JsonHttpApiFunction definitions will still work and the related objects
+ # may still be created on the original way: my_api_func = MyApiFunc(url_prefix, func_req_id, self.session)
+ logger.warning('implicit role (falling back to legacy JsonHttpApiClient) is deprecated, please specify role explcitly')
+ result = type(cls.__name__, (JsonHttpApiClient,), cls_attr)(None, *args, **kwargs)
+ result.api_func = result
+ result.legacy = True
+ return result
+ elif role == 'client':
+ # Create a JsonHttpApiFunction in client role
+ # Example: my_api_func = MyApiFunc(url_prefix, func_req_id, self.session, role='client')
+ result = type(cls.__name__, (JsonHttpApiClient,), cls_attr)(None, *args, **kwargs)
+ result.api_func = result
+ return result
+ elif role == 'server':
+ # Create a JsonHttpApiFunction in server role
+ # Example: my_api_func = MyApiFunc(url_prefix, func_req_id, self.session, role='server')
+ result = type(cls.__name__, (JsonHttpApiServer,), cls_attr)(None, *args, **kwargs)
+ result.api_func = result
+ return result
+ else:
+ raise ValueError('Invalid role \'%s\' specified' % role)
+
def encode_client(self, data: dict) -> dict:
"""Validate an encode input dict into JSON-serializable dict for request body."""
output = {}
-
for p in self.input_mandatory:
if not p in data:
raise ValueError('Mandatory input parameter %s missing' % p)
for p, v in data.items():
p_class = self.input_params.get(p)
if not p_class:
- logger.warning('Unexpected/unsupported input parameter %s=%s', p, v)
- output[p] = v
+ # pySim/esim/http_json_api.py:269:47: E1101: Instance of 'JsonHttpApiFunction' has no 'legacy' member (no-member)
+ # pylint: disable=no-member
+ if hasattr(self, 'legacy') and self.legacy:
+ output[p] = JsonRequestHeader.encode(v)
+ else:
+ logger.warning('Unexpected/unsupported input parameter %s=%s', p, v)
+ output[p] = v
else:
output[p] = p_class.encode(v)
return output
--
To view, visit https://gerrit.osmocom.org/c/pysim/+/42043?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: pysim
Gerrit-Branch: master
Gerrit-Change-Id: I2a5d4b59b12e08d5eae7a1215814d3a69c8921f6
Gerrit-Change-Number: 42043
Gerrit-PatchSet: 6
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
osmith has uploaded a new patch set (#2). ( https://gerrit.osmocom.org/c/osmo-ci/+/42087?usp=email )
Change subject: Osmocom_OBS_sync: fix failing on new scmsync tag
......................................................................
Osmocom_OBS_sync: fix failing on new scmsync tag
The openSUSE OBS instance has added an scmsync tag to their debian 13
meta config:
<scmsync>https://src.opensuse.org/obs/debian#13</scmsync>
This feature is not supported by the stable OBS version yet (they run
current master), and so the sync fails with:
project validation error: 6:0: ERROR: Element project has extra content: scmsync
Remove the tag to fix this.
Related: https://build.opensuse.org/projects/Debian:13/meta
Change-Id: Ia2d2ce3a2eeda9a0ed7ce7c7de54293081b44f4e
---
M scripts/obs/sync_obs_projects.py
1 file changed, 6 insertions(+), 0 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/87/42087/2
--
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/42087?usp=email
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: newpatchset
Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: Ia2d2ce3a2eeda9a0ed7ce7c7de54293081b44f4e
Gerrit-Change-Number: 42087
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-CC: Jenkins Builder