From 73d562d5aa1b5a557cbda17c14e5bb3bc23e96d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90=E1=BB=8Bnh=20Nguy=E1=BB=85n?= Date: Fri, 22 May 2026 14:45:21 -0400 Subject: [PATCH 1/2] Add data source LU1 (Luxembourg STATEC) Registers the Luxembourg national statistical office (STATEC, dissemination platform LUSTAT) as data source LU1. LU1 is the service's own SDMX agency id, so a bare Client("LU1").dataflow() resolves without an explicit agency argument. - sources.json: LU1 entry; the supports block disables the five structural endpoints the service answers with HTTP 404. - test_sources.py: TestLU1 - endpoint_args for the data endpoint and an xfail mapping for the endpoints returning HTTP 400 (organisationscheme) and 501 (structure), plus the sdmx-internal metadata and registration entries. - test_source.py: bump the expected source count to 36. - sources.rst: LU1 source section. - whatsnew.rst: changelog entry. DataSourceTest against the live service: 13 passed, 21 xfailed. --- doc/sources.rst | 11 +++++++++++ doc/whatsnew.rst | 6 ++++-- sdmx/sources.json | 12 ++++++++++++ sdmx/tests/test_source.py | 2 +- sdmx/tests/test_sources.py | 17 +++++++++++++++++ 5 files changed, 45 insertions(+), 3 deletions(-) diff --git a/doc/sources.rst b/doc/sources.rst index 3fa8de16..c2e8cd09 100644 --- a/doc/sources.rst +++ b/doc/sources.rst @@ -421,6 +421,17 @@ SDMX-ML — - This web service returns the non-standard HTTP content-type "application/force-download"; :mod:`sdmx` replaces it with "application/xml". +.. _LU1: + +``LU1``: STATEC (Luxembourg) +---------------------------- + +SDMX-ML — +`Website `__ + +- LUSTAT is the data dissemination platform of STATEC, the national statistical institute of Luxembourg. + + .. _NB: ``NB``: Norges Bank (Norway) diff --git a/doc/whatsnew.rst b/doc/whatsnew.rst index 7f771914..9f178274 100644 --- a/doc/whatsnew.rst +++ b/doc/whatsnew.rst @@ -3,8 +3,10 @@ What's new? *********** -.. Next release -.. ============ +Next release +============ + +- Add :ref:`LU1` data source: Luxembourg STATEC (LUSTAT). v2.26.0 (2026-04-04) ==================== diff --git a/sdmx/sources.json b/sdmx/sources.json index cc53a6b1..2cc24885 100644 --- a/sdmx/sources.json +++ b/sdmx/sources.json @@ -342,6 +342,18 @@ "structureset": false } }, + { + "id": "LU1", + "name": "Luxembourg STATEC", + "url": "https://lustat.statec.lu/rest", + "supports": { + "agencyscheme": false, + "dataconsumerscheme": false, + "metadataflow": false, + "metadatastructure": false, + "structureset": false + } + }, { "id": "NB", "name": "Norges Bank (NO)", diff --git a/sdmx/tests/test_source.py b/sdmx/tests/test_source.py index 5782cd74..d9a46bb5 100644 --- a/sdmx/tests/test_source.py +++ b/sdmx/tests/test_source.py @@ -17,7 +17,7 @@ def test_get_source(caplog): def test_list_sources(): source_ids = list_sources() # Correct number of sources, excluding those created for testing - assert 35 == len(set(source_ids) - {"MOCK", "TEST"}) + assert 36 == len(set(source_ids) - {"MOCK", "TEST"}) # Listed alphabetically assert "ABS" == source_ids[0] diff --git a/sdmx/tests/test_sources.py b/sdmx/tests/test_sources.py index 75352186..83bf9635 100644 --- a/sdmx/tests/test_sources.py +++ b/sdmx/tests/test_sources.py @@ -577,6 +577,23 @@ class TestLSD(DataSourceTest): } +class TestLU1(DataSourceTest): + """Luxembourg STATEC (LUSTAT).""" + + source_id = "LU1" + + endpoint_args = { + "data": dict(resource_id="DF_A1100", params=dict(lastNObservations=1)), + } + + xfail = { + "metadata": NotImplementedError, # Internal to sdmx1 + "organisationscheme": HTTPError, # 400 Bad Request + "registration": ValueError, # Internal to sdmx1 + "structure": NotImplementedError, # 501 Not Implemented + } + + class TestNB(DataSourceTest): """Norges Bank. From 18743dc26bb4520e752724d7d04d2712d6f0ec4a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90=E1=BB=8Bnh=20Nguy=E1=BB=85n?= Date: Fri, 22 May 2026 15:57:10 -0400 Subject: [PATCH 2/2] Reference PR #283 in the LU1 whatsnew entry --- doc/whatsnew.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/whatsnew.rst b/doc/whatsnew.rst index 9f178274..1cbaf7a8 100644 --- a/doc/whatsnew.rst +++ b/doc/whatsnew.rst @@ -6,7 +6,7 @@ What's new? Next release ============ -- Add :ref:`LU1` data source: Luxembourg STATEC (LUSTAT). +- Add :ref:`LU1` data source: Luxembourg STATEC (LUSTAT) (:pull:`283`). v2.26.0 (2026-04-04) ====================