<matrixBuild _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim" build number 3,042</shortDescription><upstreamBuild>3042</upstreamBuild><upstreamProject>gerrit-pysim</upstreamProject><upstreamUrl>job/gerrit-pysim/</upstreamUrl></cause></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42551</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>1704541a494eacf031e7b2ff3b90c0203781e615</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/51/42551/4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3042/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>1053760</buildingDurationMillis><executingTimeMillis>1053760</executingTimeMillis><executorUtilization>1.0</executorUtilization><queuingDurationMillis>5745</queuingDurationMillis><queuingTimeMillis>5745</queuingTimeMillis><subTaskCount>0</subTaskCount><totalDurationMillis>1059505</totalDurationMillis><waitingDurationMillis>5743</waitingDurationMillis><waitingTimeMillis>5743</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3035</buildNumber><marked><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></marked><revision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'><artifactsUrl>https://jenkins.osmocom.org/jenkins/view/OBS/job/gerrit-pysim-build/3035/artifact</artifactsUrl><changesUrl>https://jenkins.osmocom.org/jenkins/view/OBS/job/gerrit-pysim-build/changes</changesUrl><displayUrl>https://jenkins.osmocom.org/jenkins/view/OBS/job/gerrit-pysim-build/3035/</displayUrl><testsUrl>https://jenkins.osmocom.org/jenkins/view/OBS/job/gerrit-pysim-build/3035/testReport</testsUrl></action><building>false</building><displayName>#3035</displayName><duration>1053760</duration><estimatedDuration>1309811</estimatedDuration><fullDisplayName>gerrit-pysim-build #3035</fullDisplayName><id>3035</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3035</number><queueId>77946</queueId><result>SUCCESS</result><timestamp>1775048449076</timestamp><url>https://jenkins.osmocom.org/jenkins/view/OBS/job/gerrit-pysim-build/3035/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/index.rst</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>docs/pysim_fs_sphinx.py</affectedPath><affectedPath>docs/conf.py</affectedPath><affectedPath>tests/unittests/test_fs_coverage.py</affectedPath><commitId>1704541a494eacf031e7b2ff3b90c0203781e615</commitId><timestamp>1775048369000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>docs: auto-generate Card Filesystem Reference

Add a Sphinx extension (docs/pysim_fs_sphinx.py) that hooks into the
builder-inited event and generates docs/filesystem.rst before Sphinx
reads any source files.

The generated page contains a hierarchical listing of all implemented
EFs and DFs, organised by application/specification (UICC/TS 102 221,
ADF.USIM/TS 31.102, ADF.ISIM/TS 31.103, SIM/TS 51.011).  For each file,
the class docstring and any _test_de_encode / _test_decode vectors
are included as an encoding/decoding example table.

docs/filesystem.rst is fully generated at build time and is therefore
added to .gitignore.

Add tests/unittests/test_fs_coverage.py that walks all pySim.* modules
and verifies that every CardProfile, CardApplication, and standalone
CardDF subclass with EF/DF children is either listed in the SECTIONS
(and will appear in the docs) or explicitly EXCLUDED.

Change-Id: I06ddeefc6c11e04d7c24e116f3f39c8a6635856f
Related: OS#6316
</comment><date>2026-04-01 19:59:29 +0700</date><id>1704541a494eacf031e7b2ff3b90c0203781e615</id><msg>docs: auto-generate Card Filesystem Reference</msg><path><editType>edit</editType><file>.gitignore</file></path><path><editType>edit</editType><file>docs/conf.py</file></path><path><editType>edit</editType><file>docs/index.rst</file></path><path><editType>add</editType><file>docs/pysim_fs_sphinx.py</file></path><path><editType>add</editType><file>tests/unittests/test_fs_coverage.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><description></description><fullName>Vadim Yanitskiy</fullName><id>fixeria</id></culprit><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42551</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>1704541a494eacf031e7b2ff3b90c0203781e615</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/51/42551/4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3042/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,035</shortDescription><upstreamBuild>3035</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>1</buildableDurationMillis><buildableTimeMillis>1</buildableTimeMillis><buildingDurationMillis>11970</buildingDurationMillis><executingTimeMillis>11970</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3035</buildNumber><marked><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></marked><revision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3035</displayName><duration>11970</duration><estimatedDuration>8804</estimatedDuration><fullDisplayName>gerrit-pysim-build » distcheck,a1=default,a3=default,a4=default,osmocom-gerrit #3035</fullDisplayName><id>3035</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3035</number><queueId>77954</queueId><result>SUCCESS</result><timestamp>1775048449076</timestamp><url>https://jenkins.osmocom.org/jenkins/view/OBS/job/gerrit-pysim-build/JOB_TYPE=distcheck,a1=default,a3=default,a4=default,label=osmocom-gerrit/3035/</url><builtOn>build4-deb12build-ansible</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/index.rst</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>docs/pysim_fs_sphinx.py</affectedPath><affectedPath>docs/conf.py</affectedPath><affectedPath>tests/unittests/test_fs_coverage.py</affectedPath><commitId>1704541a494eacf031e7b2ff3b90c0203781e615</commitId><timestamp>1775048369000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>docs: auto-generate Card Filesystem Reference

Add a Sphinx extension (docs/pysim_fs_sphinx.py) that hooks into the
builder-inited event and generates docs/filesystem.rst before Sphinx
reads any source files.

The generated page contains a hierarchical listing of all implemented
EFs and DFs, organised by application/specification (UICC/TS 102 221,
ADF.USIM/TS 31.102, ADF.ISIM/TS 31.103, SIM/TS 51.011).  For each file,
the class docstring and any _test_de_encode / _test_decode vectors
are included as an encoding/decoding example table.

docs/filesystem.rst is fully generated at build time and is therefore
added to .gitignore.

Add tests/unittests/test_fs_coverage.py that walks all pySim.* modules
and verifies that every CardProfile, CardApplication, and standalone
CardDF subclass with EF/DF children is either listed in the SECTIONS
(and will appear in the docs) or explicitly EXCLUDED.

Change-Id: I06ddeefc6c11e04d7c24e116f3f39c8a6635856f
Related: OS#6316
</comment><date>2026-04-01 19:59:29 +0700</date><id>1704541a494eacf031e7b2ff3b90c0203781e615</id><msg>docs: auto-generate Card Filesystem Reference</msg><path><editType>edit</editType><file>docs/index.rst</file></path><path><editType>add</editType><file>docs/pysim_fs_sphinx.py</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>add</editType><file>tests/unittests/test_fs_coverage.py</file></path><path><editType>edit</editType><file>docs/conf.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42551</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>1704541a494eacf031e7b2ff3b90c0203781e615</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/51/42551/4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3042/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,035</shortDescription><upstreamBuild>3035</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>23131</buildingDurationMillis><executingTimeMillis>23131</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3035</buildNumber><marked><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></marked><revision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3035</displayName><duration>23131</duration><estimatedDuration>27389</estimatedDuration><fullDisplayName>gerrit-pysim-build » docs,a1=default,a3=default,a4=default,osmocom-gerrit #3035</fullDisplayName><id>3035</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3035</number><queueId>77956</queueId><result>SUCCESS</result><timestamp>1775048449076</timestamp><url>https://jenkins.osmocom.org/jenkins/view/OBS/job/gerrit-pysim-build/JOB_TYPE=docs,a1=default,a3=default,a4=default,label=osmocom-gerrit/3035/</url><builtOn>build5-deb12build-ansible</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/index.rst</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>docs/pysim_fs_sphinx.py</affectedPath><affectedPath>docs/conf.py</affectedPath><affectedPath>tests/unittests/test_fs_coverage.py</affectedPath><commitId>1704541a494eacf031e7b2ff3b90c0203781e615</commitId><timestamp>1775048369000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>docs: auto-generate Card Filesystem Reference

Add a Sphinx extension (docs/pysim_fs_sphinx.py) that hooks into the
builder-inited event and generates docs/filesystem.rst before Sphinx
reads any source files.

The generated page contains a hierarchical listing of all implemented
EFs and DFs, organised by application/specification (UICC/TS 102 221,
ADF.USIM/TS 31.102, ADF.ISIM/TS 31.103, SIM/TS 51.011).  For each file,
the class docstring and any _test_de_encode / _test_decode vectors
are included as an encoding/decoding example table.

docs/filesystem.rst is fully generated at build time and is therefore
added to .gitignore.

Add tests/unittests/test_fs_coverage.py that walks all pySim.* modules
and verifies that every CardProfile, CardApplication, and standalone
CardDF subclass with EF/DF children is either listed in the SECTIONS
(and will appear in the docs) or explicitly EXCLUDED.

Change-Id: I06ddeefc6c11e04d7c24e116f3f39c8a6635856f
Related: OS#6316
</comment><date>2026-04-01 19:59:29 +0700</date><id>1704541a494eacf031e7b2ff3b90c0203781e615</id><msg>docs: auto-generate Card Filesystem Reference</msg><path><editType>edit</editType><file>docs/index.rst</file></path><path><editType>edit</editType><file>docs/conf.py</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>add</editType><file>tests/unittests/test_fs_coverage.py</file></path><path><editType>add</editType><file>docs/pysim_fs_sphinx.py</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42551</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>1704541a494eacf031e7b2ff3b90c0203781e615</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/51/42551/4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3042/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,035</shortDescription><upstreamBuild>3035</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>13051</buildingDurationMillis><executingTimeMillis>13051</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3035</buildNumber><marked><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></marked><revision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3035</displayName><duration>13051</duration><estimatedDuration>14849</estimatedDuration><fullDisplayName>gerrit-pysim-build » pylint,a1=default,a3=default,a4=default,osmocom-gerrit #3035</fullDisplayName><id>3035</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3035</number><queueId>77955</queueId><result>SUCCESS</result><timestamp>1775048449076</timestamp><url>https://jenkins.osmocom.org/jenkins/view/OBS/job/gerrit-pysim-build/JOB_TYPE=pylint,a1=default,a3=default,a4=default,label=osmocom-gerrit/3035/</url><builtOn>build4-deb12build-ansible</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/index.rst</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>docs/pysim_fs_sphinx.py</affectedPath><affectedPath>docs/conf.py</affectedPath><affectedPath>tests/unittests/test_fs_coverage.py</affectedPath><commitId>1704541a494eacf031e7b2ff3b90c0203781e615</commitId><timestamp>1775048369000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>docs: auto-generate Card Filesystem Reference

Add a Sphinx extension (docs/pysim_fs_sphinx.py) that hooks into the
builder-inited event and generates docs/filesystem.rst before Sphinx
reads any source files.

The generated page contains a hierarchical listing of all implemented
EFs and DFs, organised by application/specification (UICC/TS 102 221,
ADF.USIM/TS 31.102, ADF.ISIM/TS 31.103, SIM/TS 51.011).  For each file,
the class docstring and any _test_de_encode / _test_decode vectors
are included as an encoding/decoding example table.

docs/filesystem.rst is fully generated at build time and is therefore
added to .gitignore.

Add tests/unittests/test_fs_coverage.py that walks all pySim.* modules
and verifies that every CardProfile, CardApplication, and standalone
CardDF subclass with EF/DF children is either listed in the SECTIONS
(and will appear in the docs) or explicitly EXCLUDED.

Change-Id: I06ddeefc6c11e04d7c24e116f3f39c8a6635856f
Related: OS#6316
</comment><date>2026-04-01 19:59:29 +0700</date><id>1704541a494eacf031e7b2ff3b90c0203781e615</id><msg>docs: auto-generate Card Filesystem Reference</msg><path><editType>add</editType><file>tests/unittests/test_fs_coverage.py</file></path><path><editType>edit</editType><file>docs/conf.py</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>add</editType><file>docs/pysim_fs_sphinx.py</file></path><path><editType>edit</editType><file>docs/index.rst</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run><run><action _class='hudson.matrix.MatrixChildParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42551</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>1704541a494eacf031e7b2ff3b90c0203781e615</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/51/42551/4</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-pysim/3042/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>pysim</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action></action><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "gerrit-pysim-build" build number 3,035</shortDescription><upstreamBuild>3035</upstreamBuild><upstreamProject>gerrit-pysim-build</upstreamProject><upstreamUrl>job/gerrit-pysim-build/</upstreamUrl></cause></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>1049532</buildingDurationMillis><executingTimeMillis>1049532</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>0</waitingDurationMillis><waitingTimeMillis>0</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><_ _class='hudson.plugins.git.util.Build'><buildNumber>2772</buildNumber><marked><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></marked><revision><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><branch><SHA1>167d6aca365b64c84b2485a70cb43bbf3a4e4f2d</SHA1><name>**</name></branch></revision></_><master _class='hudson.plugins.git.util.Build'><buildNumber>3035</buildNumber><marked><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></marked><revision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><branch><SHA1>1704541a494eacf031e7b2ff3b90c0203781e615</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/pysim</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#3035</displayName><duration>1049532</duration><estimatedDuration>1031283</estimatedDuration><fullDisplayName>gerrit-pysim-build » test,a1=default,a3=default,a4=default,simtester #3035</fullDisplayName><id>3035</id><inProgress>false</inProgress><keepLog>false</keepLog><number>3035</number><queueId>77957</queueId><result>SUCCESS</result><timestamp>1775048449076</timestamp><url>https://jenkins.osmocom.org/jenkins/view/OBS/job/gerrit-pysim-build/JOB_TYPE=test,a1=default,a3=default,a4=default,label=simtester/3035/</url><builtOn>simtester</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>docs/index.rst</affectedPath><affectedPath>.gitignore</affectedPath><affectedPath>docs/pysim_fs_sphinx.py</affectedPath><affectedPath>docs/conf.py</affectedPath><affectedPath>tests/unittests/test_fs_coverage.py</affectedPath><commitId>1704541a494eacf031e7b2ff3b90c0203781e615</commitId><timestamp>1775048369000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>docs: auto-generate Card Filesystem Reference

Add a Sphinx extension (docs/pysim_fs_sphinx.py) that hooks into the
builder-inited event and generates docs/filesystem.rst before Sphinx
reads any source files.

The generated page contains a hierarchical listing of all implemented
EFs and DFs, organised by application/specification (UICC/TS 102 221,
ADF.USIM/TS 31.102, ADF.ISIM/TS 31.103, SIM/TS 51.011).  For each file,
the class docstring and any _test_de_encode / _test_decode vectors
are included as an encoding/decoding example table.

docs/filesystem.rst is fully generated at build time and is therefore
added to .gitignore.

Add tests/unittests/test_fs_coverage.py that walks all pySim.* modules
and verifies that every CardProfile, CardApplication, and standalone
CardDF subclass with EF/DF children is either listed in the SECTIONS
(and will appear in the docs) or explicitly EXCLUDED.

Change-Id: I06ddeefc6c11e04d7c24e116f3f39c8a6635856f
Related: OS#6316
</comment><date>2026-04-01 19:59:29 +0700</date><id>1704541a494eacf031e7b2ff3b90c0203781e615</id><msg>docs: auto-generate Card Filesystem Reference</msg><path><editType>add</editType><file>docs/pysim_fs_sphinx.py</file></path><path><editType>edit</editType><file>docs/conf.py</file></path><path><editType>edit</editType><file>.gitignore</file></path><path><editType>add</editType><file>tests/unittests/test_fs_coverage.py</file></path><path><editType>edit</editType><file>docs/index.rst</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit></run></matrixBuild>