arelle-release 2.37.0__py3-none-any.whl → 2.37.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of arelle-release might be problematic. Click here for more details.
- arelle/_version.py +2 -2
- arelle/plugin/validate/ESEF/ESEF_Current/ValidateXbrlFinally.py +2 -2
- arelle/plugin/validate/NL/DisclosureSystems.py +1 -0
- arelle/plugin/validate/NL/PluginValidationDataExtension.py +3 -0
- arelle/plugin/validate/NL/ValidationPluginExtension.py +3 -3
- arelle/plugin/validate/NL/__init__.py +2 -2
- arelle/plugin/validate/NL/resources/config.xml +5 -0
- arelle/plugin/validate/NL/rules/nl_kvk.py +67 -0
- {arelle_release-2.37.0.dist-info → arelle_release-2.37.1.dist-info}/METADATA +1 -1
- {arelle_release-2.37.0.dist-info → arelle_release-2.37.1.dist-info}/RECORD +16 -15
- tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest/ArelleGUITest.csproj +1 -1
- tests/integration_tests/validation/conformance_suite_configurations/xbrl_formula_1_0_function_registry.py +6 -6
- {arelle_release-2.37.0.dist-info → arelle_release-2.37.1.dist-info}/WHEEL +0 -0
- {arelle_release-2.37.0.dist-info → arelle_release-2.37.1.dist-info}/entry_points.txt +0 -0
- {arelle_release-2.37.0.dist-info → arelle_release-2.37.1.dist-info}/licenses/LICENSE.md +0 -0
- {arelle_release-2.37.0.dist-info → arelle_release-2.37.1.dist-info}/top_level.txt +0 -0
arelle/_version.py
CHANGED
|
@@ -664,14 +664,14 @@ def validateXbrlFinally(val: ValidateXbrl, *args: Any, **kwargs: Any) -> None:
|
|
|
664
664
|
if not f.id:
|
|
665
665
|
factsMissingId.append(f)
|
|
666
666
|
escaped = f.get("escape") in ("true", "1")
|
|
667
|
-
if escaped != f.concept.
|
|
667
|
+
if f.concept is not None and escaped != f.concept.isTextBlock:
|
|
668
668
|
modelXbrl.error("ESEF.2.2.7.improperApplicationOfEscapeAttribute",
|
|
669
669
|
_("Facts with datatype 'dtr-types:textBlockItemType' MUST use the 'escape' attribute set to 'true'. Facts with any other datatype MUST use the 'escape' attribute set to 'false' - fact %(conceptName)s"),
|
|
670
670
|
modelObject=f, conceptName=f.concept.qname)
|
|
671
671
|
if f.effectiveValue in ["0", "-0"] and f.xValue != 0:
|
|
672
672
|
modelXbrl.warning("ESEF.2.2.5.roundedValueBelowScaleNotNull",
|
|
673
673
|
_("A value that has been rounded and is below the scale should show a value of zero. It has been found to have the value %(value)s - fact %(conceptName)s"),
|
|
674
|
-
modelObject=f, value=f.value, conceptName=f.concept
|
|
674
|
+
modelObject=f, value=f.value, conceptName=getattr(f.concept, "qname", ""))
|
|
675
675
|
if f.precision is not None:
|
|
676
676
|
precisionFacts.add(f)
|
|
677
677
|
if f.isNumeric and f.concept is not None and getattr(f, "xValid", 0) >= VALID:
|
|
@@ -3,6 +3,7 @@ See COPYRIGHT.md for copyright information.
|
|
|
3
3
|
"""
|
|
4
4
|
from __future__ import annotations
|
|
5
5
|
|
|
6
|
+
import regex as re
|
|
6
7
|
from collections import defaultdict
|
|
7
8
|
from dataclasses import dataclass
|
|
8
9
|
|
|
@@ -12,6 +13,8 @@ from arelle.ModelXbrl import ModelXbrl
|
|
|
12
13
|
from arelle.utils.PluginData import PluginData
|
|
13
14
|
|
|
14
15
|
|
|
16
|
+
XBRLI_IDENTIFIER_PATTERN = re.compile(r"^(?!00)\d{8}$")
|
|
17
|
+
|
|
15
18
|
@dataclass
|
|
16
19
|
class PluginValidationDataExtension(PluginData):
|
|
17
20
|
financialReportingPeriodCurrentStartDateQn: QName
|
|
@@ -10,7 +10,7 @@ from arelle.ModelXbrl import ModelXbrl
|
|
|
10
10
|
from arelle.ValidateXbrl import ValidateXbrl
|
|
11
11
|
from arelle.typing import TypeGetText
|
|
12
12
|
from arelle.utils.validate.ValidationPlugin import ValidationPlugin
|
|
13
|
-
from .DisclosureSystems import DISCLOSURE_SYSTEM_NT16, DISCLOSURE_SYSTEM_NT17, DISCLOSURE_SYSTEM_NT18, DISCLOSURE_SYSTEM_NT19
|
|
13
|
+
from .DisclosureSystems import DISCLOSURE_SYSTEM_NT16, DISCLOSURE_SYSTEM_NT17, DISCLOSURE_SYSTEM_NT18, DISCLOSURE_SYSTEM_NT19, DISCLOSURE_SYSTEM_INLINE_NT19
|
|
14
14
|
from .PluginValidationDataExtension import PluginValidationDataExtension
|
|
15
15
|
|
|
16
16
|
_: TypeGetText
|
|
@@ -129,7 +129,7 @@ class ValidationPluginExtension(ValidationPlugin):
|
|
|
129
129
|
'kvk-rpt-jaarverantwoording-2023-nlgaap-verzekeringsmaatschappijen.xsd',
|
|
130
130
|
'kvk-rpt-jaarverantwoording-2023-nlgaap-zorginstellingen.xsd',
|
|
131
131
|
]}
|
|
132
|
-
elif disclosureSystem == DISCLOSURE_SYSTEM_NT19:
|
|
132
|
+
elif disclosureSystem == DISCLOSURE_SYSTEM_NT19 or disclosureSystem == DISCLOSURE_SYSTEM_INLINE_NT19:
|
|
133
133
|
jenvNamespace = 'http://www.nltaxonomie.nl/nt19/jenv/20241211/dictionary/jenv-bw2-data'
|
|
134
134
|
kvkINamespace = 'http://www.nltaxonomie.nl/nt19/kvk/20241211/dictionary/kvk-data'
|
|
135
135
|
nlTypesNamespace = 'http://www.nltaxonomie.nl/nt19/sbr/20240301/dictionary/nl-types'
|
|
@@ -187,7 +187,7 @@ class ValidationPluginExtension(ValidationPlugin):
|
|
|
187
187
|
def modelXbrlLoadComplete(self, modelXbrl: ModelXbrl, *args: Any, **kwargs: Any) -> ModelDocument | LoadingException | None:
|
|
188
188
|
if self.disclosureSystemFromPluginSelected(modelXbrl):
|
|
189
189
|
disclosureSystem = modelXbrl.modelManager.disclosureSystem.name
|
|
190
|
-
if disclosureSystem in (DISCLOSURE_SYSTEM_NT16, DISCLOSURE_SYSTEM_NT17, DISCLOSURE_SYSTEM_NT18, DISCLOSURE_SYSTEM_NT19):
|
|
190
|
+
if disclosureSystem in (DISCLOSURE_SYSTEM_NT16, DISCLOSURE_SYSTEM_NT17, DISCLOSURE_SYSTEM_NT18, DISCLOSURE_SYSTEM_NT19, DISCLOSURE_SYSTEM_INLINE_NT19):
|
|
191
191
|
# Dutch taxonomies prior to 2025 incorrectly used hypercube linkrole for roots instead of dimension linkrole.
|
|
192
192
|
paramQName = qname('tlbDimRelsUseHcRoleForDomainRoots', noPrefixIsNoNamespace=True)
|
|
193
193
|
modelXbrl.modelManager.formulaOptions.parameterValues[paramQName] = (None, "true")
|
|
@@ -16,7 +16,7 @@ from typing import Any
|
|
|
16
16
|
from arelle.ModelDocument import LoadingException, ModelDocument
|
|
17
17
|
from arelle.Version import authorLabel, copyrightLabel
|
|
18
18
|
from .ValidationPluginExtension import ValidationPluginExtension
|
|
19
|
-
from .rules import br_kvk, fg_nl, fr_kvk, fr_nl
|
|
19
|
+
from .rules import br_kvk, fg_nl, fr_kvk, fr_nl, nl_kvk
|
|
20
20
|
|
|
21
21
|
PLUGIN_NAME = "Validate NL"
|
|
22
22
|
DISCLOSURE_SYSTEM_VALIDATION_TYPE = "NL"
|
|
@@ -26,7 +26,7 @@ validationPlugin = ValidationPluginExtension(
|
|
|
26
26
|
name=PLUGIN_NAME,
|
|
27
27
|
disclosureSystemConfigUrl=Path(__file__).parent / "resources" / "config.xml",
|
|
28
28
|
validationTypes=[DISCLOSURE_SYSTEM_VALIDATION_TYPE],
|
|
29
|
-
validationRuleModules=[br_kvk, fg_nl, fr_kvk, fr_nl],
|
|
29
|
+
validationRuleModules=[br_kvk, fg_nl, fr_kvk, fr_nl, nl_kvk],
|
|
30
30
|
)
|
|
31
31
|
|
|
32
32
|
|
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
4
4
|
xsi:noNamespaceSchemaLocation="../../../../config/disclosuresystems.xsd">
|
|
5
5
|
<!-- see arelle/config/disclosuresystems.xml for full comments -->
|
|
6
|
+
<DisclosureSystem
|
|
7
|
+
names="INLINE-NT19|inline-nt19|kvk-ixbrl-2024-preview"
|
|
8
|
+
description="Checks for NT2024"
|
|
9
|
+
validationType="NL"
|
|
10
|
+
/>
|
|
6
11
|
<DisclosureSystem
|
|
7
12
|
names="NT19|nt19|NT19-preview|nt19-preview"
|
|
8
13
|
description="Checks for NT19"
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"""
|
|
2
|
+
See COPYRIGHT.md for copyright information.
|
|
3
|
+
"""
|
|
4
|
+
from __future__ import annotations
|
|
5
|
+
|
|
6
|
+
from datetime import date, timedelta
|
|
7
|
+
from dateutil import relativedelta
|
|
8
|
+
from collections.abc import Iterable
|
|
9
|
+
from typing import Any, cast, TYPE_CHECKING
|
|
10
|
+
|
|
11
|
+
from regex import regex
|
|
12
|
+
|
|
13
|
+
from arelle import XmlUtil, XbrlConst
|
|
14
|
+
from arelle.ModelObject import ModelObject
|
|
15
|
+
from arelle.ValidateXbrl import ValidateXbrl
|
|
16
|
+
from arelle.XmlValidate import INVALID
|
|
17
|
+
from arelle.typing import TypeGetText
|
|
18
|
+
from arelle.utils.PluginHooks import ValidationHook
|
|
19
|
+
from arelle.utils.validate.Decorator import validation
|
|
20
|
+
from arelle.utils.validate.Validation import Validation
|
|
21
|
+
from ..DisclosureSystems import (
|
|
22
|
+
DISCLOSURE_SYSTEM_INLINE_NT19
|
|
23
|
+
)
|
|
24
|
+
from ..PluginValidationDataExtension import PluginValidationDataExtension, XBRLI_IDENTIFIER_PATTERN
|
|
25
|
+
|
|
26
|
+
if TYPE_CHECKING:
|
|
27
|
+
from arelle.ModelXbrl import ModelXbrl
|
|
28
|
+
from arelle.ModelValue import QName
|
|
29
|
+
|
|
30
|
+
_: TypeGetText
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def _getReportingPeriodDateValue(modelXbrl: ModelXbrl, qname: QName) -> date | None:
|
|
34
|
+
facts = modelXbrl.factsByQname.get(qname)
|
|
35
|
+
if facts and len(facts) == 1:
|
|
36
|
+
datetimeValue = XmlUtil.datetimeValue(next(iter(facts)))
|
|
37
|
+
if datetimeValue:
|
|
38
|
+
return datetimeValue.date()
|
|
39
|
+
return None
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
@validation(
|
|
43
|
+
hook=ValidationHook.XBRL_FINALLY,
|
|
44
|
+
disclosureSystems=[
|
|
45
|
+
DISCLOSURE_SYSTEM_INLINE_NT19
|
|
46
|
+
],
|
|
47
|
+
)
|
|
48
|
+
def rule_nl_kvk_3_1_1_1(
|
|
49
|
+
pluginData: PluginValidationDataExtension,
|
|
50
|
+
val: ValidateXbrl,
|
|
51
|
+
*args: Any,
|
|
52
|
+
**kwargs: Any,
|
|
53
|
+
) -> Iterable[Validation]:
|
|
54
|
+
"""
|
|
55
|
+
NL-KVK.3.1.1.1: xbrli:identifier content to match KVK number format that must consist of 8 consecutive digits;
|
|
56
|
+
first two digits must not be '00'.
|
|
57
|
+
"""
|
|
58
|
+
entityIdentifierValues = {context.entityIdentifier for context in val.modelXbrl.contexts.values()}
|
|
59
|
+
for entityId in entityIdentifierValues:
|
|
60
|
+
if not XBRLI_IDENTIFIER_PATTERN.match(entityId):
|
|
61
|
+
yield Validation.error(
|
|
62
|
+
codes='NL.NL-KVK-3.1.1.1',
|
|
63
|
+
msg=_('xbrli:identifier content to match KVK number format that must consist of 8 consecutive digits.'
|
|
64
|
+
'Additionally the first two digits must not be "00".'),
|
|
65
|
+
modelObject = val.modelXbrl
|
|
66
|
+
)
|
|
67
|
+
return
|
|
@@ -123,7 +123,7 @@ arelle/XmlValidateConst.py,sha256=U_wN0Q-nWKwf6dKJtcu_83FXPn9c6P8JjzGA5b0w7P0,33
|
|
|
123
123
|
arelle/XmlValidateParticles.py,sha256=Mn6vhFl0ZKC_vag1mBwn1rH_x2jmlusJYqOOuxFPO2k,9231
|
|
124
124
|
arelle/XmlValidateSchema.py,sha256=6frtZOc1Yrx_5yYF6V6oHbScnglWrVbWr6xW4EHtLQI,7428
|
|
125
125
|
arelle/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
126
|
-
arelle/_version.py,sha256=
|
|
126
|
+
arelle/_version.py,sha256=axlCP1O3UHpZdGsmltZ68hhEXBCJIwu4II33zjSSdIM,513
|
|
127
127
|
arelle/typing.py,sha256=Ct5lrNKRow_o9CraMEXNza8nFsJ_iGIKoUeGfPs2dxI,1084
|
|
128
128
|
arelle/api/Session.py,sha256=O8zpg7MJys9uxwwHf8OsSlZxpPdq7A3ONyY39Q4A3Kc,6218
|
|
129
129
|
arelle/archive/CustomLogger.py,sha256=v_JXOCQLDZcfaFWzxC9FRcEf9tQi4rCI4Sx7jCuAVQI,1231
|
|
@@ -370,23 +370,24 @@ arelle/plugin/validate/ESEF/ESEF_2021/ValidateXbrlFinally.py,sha256=AGjPhegfY9hg
|
|
|
370
370
|
arelle/plugin/validate/ESEF/ESEF_2021/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
371
371
|
arelle/plugin/validate/ESEF/ESEF_Current/DTS.py,sha256=epp-PBh1NJzQqgxUE6C468HmoDc2w3j54rMwfiOAry4,29334
|
|
372
372
|
arelle/plugin/validate/ESEF/ESEF_Current/Image.py,sha256=w36sCTy8QbsuKABjkK6PTWce2A4zFN_rMnEM2wi5WEc,11364
|
|
373
|
-
arelle/plugin/validate/ESEF/ESEF_Current/ValidateXbrlFinally.py,sha256=
|
|
373
|
+
arelle/plugin/validate/ESEF/ESEF_Current/ValidateXbrlFinally.py,sha256=F7UahhDQ4jieUyPKqzLCAld8e1YbSjMmZrEciAUXTH4,73130
|
|
374
374
|
arelle/plugin/validate/ESEF/ESEF_Current/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
375
375
|
arelle/plugin/validate/ESEF/resources/authority-validations.json,sha256=JriLZ45KmUYlQiPbXJCAahobqdrst64Ay77bofZhB5Q,14940
|
|
376
376
|
arelle/plugin/validate/ESEF/resources/config.xml,sha256=t3STU_-QYM7Ay8YwZRPapnohiWVWhjfr4L2Rjx9xN9U,3902
|
|
377
377
|
arelle/plugin/validate/FERC/__init__.py,sha256=V4fXcFKBsjFFPs9_1NhvDjWpEQCoQM0tRQMS0I1Ua7U,11462
|
|
378
378
|
arelle/plugin/validate/FERC/config.xml,sha256=bn9b8eCqJA1J62rYq1Nz85wJrMGAahVmmnIUQZyerjo,1919
|
|
379
379
|
arelle/plugin/validate/FERC/resources/ferc-utr.xml,sha256=OCRj9IUpdXATCBXKbB71apYx9kxcNtZW-Hq4s-avsRY,2663
|
|
380
|
-
arelle/plugin/validate/NL/DisclosureSystems.py,sha256=
|
|
381
|
-
arelle/plugin/validate/NL/PluginValidationDataExtension.py,sha256=
|
|
382
|
-
arelle/plugin/validate/NL/ValidationPluginExtension.py,sha256=
|
|
383
|
-
arelle/plugin/validate/NL/__init__.py,sha256=
|
|
384
|
-
arelle/plugin/validate/NL/resources/config.xml,sha256=
|
|
380
|
+
arelle/plugin/validate/NL/DisclosureSystems.py,sha256=VFMcO8GJ8kIqhOV5McyEejaGJOR5JrmeF8GdFuS9IZw,174
|
|
381
|
+
arelle/plugin/validate/NL/PluginValidationDataExtension.py,sha256=OjnDyXXFg8z89W3tjkpw9ltGuEqKWthLrEVKyNSoa7o,2486
|
|
382
|
+
arelle/plugin/validate/NL/ValidationPluginExtension.py,sha256=VuvveUzLJ-1oTB394MSD2c2JeoLyys8y2Z13COHEnPs,14909
|
|
383
|
+
arelle/plugin/validate/NL/__init__.py,sha256=9NkkfosHnAzJhBa84KDAsoyU7vd4_DO3GYKTSvKuOk8,2554
|
|
384
|
+
arelle/plugin/validate/NL/resources/config.xml,sha256=vu5pA-Iw6cgb5aep8LNLNPCkmG1QF6RTw3TCgEIest8,1102
|
|
385
385
|
arelle/plugin/validate/NL/rules/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
386
386
|
arelle/plugin/validate/NL/rules/br_kvk.py,sha256=0SwKieWzTDm3YMsXPS6zTdgbk7_Z9CzqRkRmCRz1OiQ,15789
|
|
387
387
|
arelle/plugin/validate/NL/rules/fg_nl.py,sha256=4Puq5wAjtK_iNd4wisH_R0Z_EKJ7MT2OCai5g4t1MPE,10714
|
|
388
388
|
arelle/plugin/validate/NL/rules/fr_kvk.py,sha256=-_BLeWGoZ_f56p5VO4X40S45Ny3Ej-WK6Srei1KVSxU,8170
|
|
389
389
|
arelle/plugin/validate/NL/rules/fr_nl.py,sha256=-M1WtXp06khhtkfOVPCa-b8UbC281gk4YfDhvtAVlnI,31424
|
|
390
|
+
arelle/plugin/validate/NL/rules/nl_kvk.py,sha256=K5rhbhBBGZYzu57tgMWbWu_YDlpEtTTsRGEH93SpLmU,2243
|
|
390
391
|
arelle/plugin/validate/ROS/DisclosureSystems.py,sha256=rJ81mwQDYTi6JecFZ_zhqjjz3VNQRgjHNSh0wcQWAQE,18
|
|
391
392
|
arelle/plugin/validate/ROS/PluginValidationDataExtension.py,sha256=IV7ILhNvgKwQXqbpSA6HRNt9kEnejCyMADI3wyyIgk0,4036
|
|
392
393
|
arelle/plugin/validate/ROS/ValidationPluginExtension.py,sha256=FBhEp8t396vGdvCbMEimfcxmGiGnhXMen-yVLWnkFaI,758
|
|
@@ -706,7 +707,7 @@ arelle/utils/validate/ValidationPlugin.py,sha256=_WeRPXZUTCcSN3FLbFwiAe_2pAUTxZZ
|
|
|
706
707
|
arelle/utils/validate/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
707
708
|
arelle/webserver/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
708
709
|
arelle/webserver/bottle.py,sha256=P-JECd9MCTNcxCnKoDUvGcoi03ezYVOgoWgv2_uH-6M,362
|
|
709
|
-
arelle_release-2.37.
|
|
710
|
+
arelle_release-2.37.1.dist-info/licenses/LICENSE.md,sha256=rMbWwFLGzPgLoEjEu8LCmkpWDTqsvfOI-wzLSfeJsis,4107
|
|
710
711
|
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
711
712
|
tests/integration_tests/download_cache.py,sha256=jVMIVICsZjcVc9DCPPu3fCjF9_cWSS3tqSynhFs3oAM,4097
|
|
712
713
|
tests/integration_tests/integration_test_util.py,sha256=H7mncbv0T9ZeVyrtk9Hohe3k6jgcYykHkt-LGE-Q9aQ,10270
|
|
@@ -728,7 +729,7 @@ tests/integration_tests/scripts/tests/python_api_query_model.py,sha256=Ut87tvE-h
|
|
|
728
729
|
tests/integration_tests/scripts/tests/python_api_taxonomy_service.py,sha256=C6j7BB9h7CX_dUmVFkpnqElShffRSmCI-TMJkueztGM,2711
|
|
729
730
|
tests/integration_tests/scripts/tests/python_api_validate_esef.py,sha256=Qzi2RRGWjkTVhAjBB18DeJ3X_M9hJYH1TAk7j_RVv5Q,2423
|
|
730
731
|
tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest.sln,sha256=uzzvHUtKpmBPpoxdfHd7cCmAkdvjs7mMehO6YHebdTY,1499
|
|
731
|
-
tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest/ArelleGUITest.csproj,sha256=
|
|
732
|
+
tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest/ArelleGUITest.csproj,sha256=_MqHWdpSGWqbmEnccKPDPCvUsB-uHH6GXkA5ZPD7gD8,1387
|
|
732
733
|
tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest/Tests.cs,sha256=_0TvabpERmrfaoDSazN-xQAH0qzO3cAnuFHLGLRJnGU,20334
|
|
733
734
|
tests/integration_tests/ui_tests/ArelleGUITest/ArelleGUITest/Usings.cs,sha256=0IC7tQ27uAqlt8ZGBrJPK7BPj3kjiodPcHWB3v_JT-o,29
|
|
734
735
|
tests/integration_tests/ui_tests/resources/workiva.zip,sha256=QtZzi1VcKkHhVa8J-I1wVpQFy-p6tsV95Z0HmI6XbXc,223544
|
|
@@ -774,7 +775,7 @@ tests/integration_tests/validation/conformance_suite_configurations/xbrl_extensi
|
|
|
774
775
|
tests/integration_tests/validation/conformance_suite_configurations/xbrl_extensible_enumerations_2_0.py,sha256=DZTlD6A3ieT-lBUlrn78a0V5j1LvCKRm_Lm7jSvphPY,683
|
|
775
776
|
tests/integration_tests/validation/conformance_suite_configurations/xbrl_formula_1_0.py,sha256=H456ozSCnVoVHXYHd4g2169JHkI2yKhMgOOpJyanLZE,592
|
|
776
777
|
tests/integration_tests/validation/conformance_suite_configurations/xbrl_formula_1_0_assertion_severity_2_0.py,sha256=W7FT2ac5u8PyRubt_bcDl37wucv0Pnu9KqQ2jxEpGFM,668
|
|
777
|
-
tests/integration_tests/validation/conformance_suite_configurations/xbrl_formula_1_0_function_registry.py,sha256=
|
|
778
|
+
tests/integration_tests/validation/conformance_suite_configurations/xbrl_formula_1_0_function_registry.py,sha256=TPQ82Ei_zJv5b3ZxxdifDRRzLMBfNqqeFcwr66-oLd8,811
|
|
778
779
|
tests/integration_tests/validation/conformance_suite_configurations/xbrl_ixbrl_1_1.py,sha256=Upsc9Nx0eHJQlVL9p77GamTCUpIqjexnRShe9F0b9NM,1366
|
|
779
780
|
tests/integration_tests/validation/conformance_suite_configurations/xbrl_link_role_registry_1_0.py,sha256=NQfri9MXCDSvNy7kahf4iXZaBUPey9-FYKlchg-Uw4I,633
|
|
780
781
|
tests/integration_tests/validation/conformance_suite_configurations/xbrl_oim_1_0.py,sha256=s5tcH5fgzNwLQR1iWxCjuyij4Rxjq8XrmGDIptAbfGE,906
|
|
@@ -1554,8 +1555,8 @@ tests/unit_tests/arelle/oim/test_load.py,sha256=NxiUauQwJVfWAHbbpsMHGSU2d3Br8Pki
|
|
|
1554
1555
|
tests/unit_tests/arelle/plugin/test_plugin_imports.py,sha256=bdhIs9frAnFsdGU113yBk09_jis-z43dwUItMFYuSYM,1064
|
|
1555
1556
|
tests/unit_tests/arelle/plugin/validate/ESEF/ESEF_Current/test_validate_css_url.py,sha256=XHABmejQt7RlZ0udh7v42f2Xb2STGk_fSaIaJ9i2xo0,878
|
|
1556
1557
|
tests/unit_tests/arelle/utils/validate/test_decorator.py,sha256=ZS8FqIY1g-2FCbjF4UYm609dwViax6qBMRJSi0vfuhY,2482
|
|
1557
|
-
arelle_release-2.37.
|
|
1558
|
-
arelle_release-2.37.
|
|
1559
|
-
arelle_release-2.37.
|
|
1560
|
-
arelle_release-2.37.
|
|
1561
|
-
arelle_release-2.37.
|
|
1558
|
+
arelle_release-2.37.1.dist-info/METADATA,sha256=JBCTazjtBOkJZslRdFO-0PYQ2X5w2ZPUcpFkG5aMwCk,9116
|
|
1559
|
+
arelle_release-2.37.1.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
|
|
1560
|
+
arelle_release-2.37.1.dist-info/entry_points.txt,sha256=Uj5niwfwVsx3vaQ3fYj8hrZ1xpfCJyTUA09tYKWbzpo,111
|
|
1561
|
+
arelle_release-2.37.1.dist-info/top_level.txt,sha256=ZYmYGmhW5Jvo3vJ4iXBZPUI29LvYhntom04w90esJvU,13
|
|
1562
|
+
arelle_release-2.37.1.dist-info/RECORD,,
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
<PackageReference Include="JUnitTestLogger" Version="1.1.0" />
|
|
17
17
|
<PackageReference Include="JunitXml.TestLogger" Version="6.1.0" />
|
|
18
18
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.13.0" />
|
|
19
|
-
<PackageReference Include="Microsoft.Windows.Compatibility" Version="9.0.
|
|
19
|
+
<PackageReference Include="Microsoft.Windows.Compatibility" Version="9.0.4" />
|
|
20
20
|
<PackageReference Include="NUnit" Version="4.3.2" />
|
|
21
21
|
<PackageReference Include="NUnit3TestAdapter" Version="5.0.0" />
|
|
22
22
|
<PackageReference Include="NUnit.Analyzers" Version="4.7.0">
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
from tests.integration_tests.validation.conformance_suite_config import
|
|
1
|
+
from pathlib import Path, PurePath
|
|
2
|
+
|
|
3
|
+
from tests.integration_tests.validation.conformance_suite_config import (
|
|
4
|
+
ConformanceSuiteAssetConfig,
|
|
5
|
+
ConformanceSuiteConfig,
|
|
6
|
+
)
|
|
4
7
|
|
|
5
8
|
config = ConformanceSuiteConfig(
|
|
6
9
|
args=[
|
|
@@ -18,8 +21,5 @@ config = ConformanceSuiteConfig(
|
|
|
18
21
|
network_or_cache_required=False,
|
|
19
22
|
plugins=frozenset({'formulaXPathChecker', 'functionsMath'}),
|
|
20
23
|
strict_testcase_index=False,
|
|
21
|
-
required_locale_by_ids={f'formula/function-registry/{t}': p for t, p in [
|
|
22
|
-
('xbrl/90701 xfi.format-number/90701 xfi.format-number testcase.xml:V-05', re.compile(r"^(en|English).*$")),
|
|
23
|
-
]},
|
|
24
24
|
test_case_result_options='match-any',
|
|
25
25
|
)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|