I ran into an issue when I tried to perform a needextract
on a set of minimal external needs (consisting of only the programmatically mandatory fields: id, title, description, type, docname) imported via needs_external_needs
:
needextract
:.. needextract::
:filter: type == 'req-sys' and 'internal' not in tags
:layout: focus_l
{
"project_name": "Demo Project",
"current_version": "1.0",
"versions": {
"1.0": {
"filters": {},
"filters_amount": 0,
"needs": {
"N_1": {
"id": "N_1",
"title": "Second demo requirement",
"type": "req-sys",
"description": "# We need the first thing\r\n# We need the second thing",
"docname": "needs/1"
},
"N_2": {
"id": "N_2",
"title": "First demo requirement",
"type": "req-sys",
"description": "* We need this\r\n* We need that",
"docname": "needs/2"
}
},
"needs_amount": 2
}
}
}
When running a Sphinx build with this setup, the following error occurs:
Extension error (sphinx_needs.needs):
Handler <function process_creator.<locals>.process_caller at 0x401a57e310> for event 'doctree-resolved' threw an exception (exception: 'NoneType' object has no attribute 'deepcopy')
Could this be caused by the process_filters
function not checking if tags is None
before trying to get the list's length, or am I doing something wrong here?
If you want to have an in-depth look, I'd be happy create a minimal example.