strictdoc 0.9.0__tar.gz → 0.9.1__tar.gz
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.
- {strictdoc-0.9.0 → strictdoc-0.9.1}/PKG-INFO +1 -1
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/__init__.py +1 -1
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/errors/document_tree_error.py +11 -7
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/type_system.py +1 -1
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/cli/cli_arg_parser.py +3 -9
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/project_config.py +38 -5
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/update_requirement.py +1 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/tree_cycle_detector.py +26 -12
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/form_objects/requirement_form_object.py +94 -84
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/rst/rst_to_html_fragment_writer.py +4 -2
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/mid.py +1 -1
- strictdoc-0.9.1/strictdoc/server/error_object.py +18 -0
- strictdoc-0.9.0/strictdoc/server/error_object.py +0 -16
- {strictdoc-0.9.0 → strictdoc-0.9.1}/.gitignore +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/LICENSE +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/NOTICE +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/README.md +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/pyproject.toml +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/excel/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/excel/excel_import.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/excel/export/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/excel/export/excel_generator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/excel/import_/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/excel/import_/excel_sheet_proxy.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/excel/import_/excel_to_sdoc_converter.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/reqif/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/reqif/p01_sdoc/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/reqif/p01_sdoc/reqif_to_sdoc_converter.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/reqif/p01_sdoc/sdoc_to_reqif_converter.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/reqif/reqif_export.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/reqif/reqif_import.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/reqif/sdoc_reqif_fields.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/constants.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/document_reference.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/error_handling.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/errors/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/free_text_reader.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/grammar/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/grammar/grammar.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/grammar/grammar_builder.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/grammar/grammar_grammar.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/grammar/type_system.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/grammar_reader.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/anchor.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/constants.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/document.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/document_config.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/document_from_file.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/document_grammar.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/document_view.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/free_text.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/inline_link.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/model.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/node.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/object_factory.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/reference.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/models/section.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/pickle_cache.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/processor.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/reader.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/validations/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/validations/sdoc_validator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc/writer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/caching_reader.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/comment_parser/marker_lexer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/constants.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/coverage_reports/gcov.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/grammar.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/helpers/comment_preprocessor.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/marker_parser.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/models/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/models/function.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/models/function_range_marker.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/models/range_marker.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/models/requirement_marker.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/models/source_file_info.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/models/source_node.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/parse_context.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/processors/general_language_marker_processors.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/reader.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/reader_c.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/reader_python.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/reader_robot.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/test_reports/junit_xml_reader.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/test_reports/robot_xml_reader.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/sdoc_source_code/tree_sitter_helpers.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/cli/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/cli/argument_int_range.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/cli/command_parser_builder.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/cli/main.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/commands/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/commands/about_command.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/commands/diff_command.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/commands/dump_grammar_command.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/commands/manage_autouid_command.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/commands/version_command.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/actions/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/actions/export_action.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/actions/import_action.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/analyzers/document_stats.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/analyzers/document_uid_analyzer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/asset_manager.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/constants.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/document_finder.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/document_iterator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/document_meta.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/document_tree.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/document_tree_iterator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/environment.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/file_dependency_manager.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/file_traceability_index.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/file_tree.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/finders/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/finders/source_files_finder.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/graph/abstract_bucket.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/graph/many_to_many_set.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/graph/one_to_one_dictionary.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/graph/validations.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/graph_database.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/query_engine/grammar.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/query_engine/query_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/query_engine/query_reader.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/source_tree.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/traceability_index.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/traceability_index_builder.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/constants.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/delete_requirement.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/delete_section.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/section.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/update_document_config.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/update_grammar.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/update_grammar_element.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/update_included_document.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/core/transforms/validation_error.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/doxygen/doxygen_generator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/autogen.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/base.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/collapsible_list.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/collapsible_toc.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/collapsible_tree.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/content.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/anchor_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/autocompletable_field_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/copy_stable_link_button_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/copy_to_clipboard_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/deletable_field_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/draggable_list_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/dropdown_menu_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/editable_field_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/modal_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/movable_field_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/scroll_into_view_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/controllers/tabs_controller.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/diff.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/diff.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/element.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/favicon.ico +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/fonts/NotoSans-Italic-VariableFont_wdth,wght.ttf +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/fonts/NotoSans-VariableFont_wdth,wght.ttf +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/fonts/NotoSansMono-VariableFont_wdth,wght.ttf +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/form.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/html2pdf4doc.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/layout.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/node.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/node_content.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/pan_with_space.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/project_coverage.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/project_coverage.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/project_tree.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/project_tree.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/requirement-tree.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/requirement__temporary.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/requirements-coverage.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/resizable_bar.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/source-code-coverage.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/source.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/stable_uri_forwarder.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/stimulus_umd.min.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/table_vew.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/toc_highlighting.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/traceability_matrix.css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/tree(not_in_use).css +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/turbo.min.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/viewtype_menu.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static/zoomable.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/LICENSE-MATHJAX +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/tex.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_AMS-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Bold.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Bold.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Bold.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Italic.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-BoldItalic.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-Italic.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Bold.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Italic.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Script-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Typewriter-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Vector-Bold.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Vector-Regular.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Zero.woff +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mathjax/tex-mml-chtml.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/mermaid/mermaid.min.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/nestor/bundle.umd.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/_static_extra/rapidoc/rapidoc-min.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/document_type.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/form_objects/document_config_form_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/form_objects/form_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/form_objects/grammar_element_form_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/form_objects/grammar_form_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/form_objects/included_document_form_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/form_objects/rows/row_with_grammar_element_form_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/form_objects/section_form_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/document.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/document_deep_trace.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/document_pdf.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/document_table.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/document_trace.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/document_tree.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/project_map.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/project_statistics.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/source_file_coverage.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/source_file_view_generator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/traceability_matrix.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/diff_screen_results_view_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/diff_screen_view_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/document_screen_view_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/helpers.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/nestor_view_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/project_statistics_view_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/project_tree_stats.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/project_tree_view_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/search_screen_view_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/source_file_view_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/generators/view_objects/traceability_matrix_view_object.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/html_generator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/html_templates.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/renderers/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/renderers/html_fragment_writer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/renderers/link_renderer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/renderers/markup_renderer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/renderers/text_to_html_writer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg__separator.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_add.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_add_above.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_add_below.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_add_child.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_anchor.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_back.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_book.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_close.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_code.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_copy.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_delete.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_diff.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_document.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_done.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_edit.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_expand.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_file.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_folder.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_folder_collapse.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_folder_sm.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_fragment.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_fragment_draft.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_gear.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_go_to_doc.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_index.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_link.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_list.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_maximize.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_minimize.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_minusminus.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_move_down.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_move_up.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_plusplus.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_project.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_requirement.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_reset.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_search.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_section_collapse.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_source.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_source_pointer_in.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_source_pointer_out.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_stat.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_sync.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_toc.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_res/svg_ico16_tree.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_shared/nav.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_shared/requirement_tree_left.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_shared/requirement_tree_right.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/_shared/tags.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/_shared/stream_refresh_document.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/_shared/stream_updated_toc.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/add_document_metadata/stream_add_document_metadata.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/add_requirement_comment/stream_add_requirement_comment.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/add_requirement_relation/stream_add_requirement_relation.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/create_requirement/stream_cancel_new_requirement.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/create_requirement/stream_created_requirement.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/create_requirement/stream_new_requirement.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/create_section/stream_cancel_new_section.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/create_section/stream_created_section.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/create_section/stream_new_section.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/delete_requirement/stream_confirm_delete_requirement.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/delete_requirement/stream_delete_requirement.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/delete_section/stream_confirm_delete_section.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/delete_section/stream_delete_section.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_cancel_edit_document_config.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_edit_document_config.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_save_document_config.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/edit_requirement/stream_edit_requirement.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/edit_section/stream_edit_section.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/document/edit_section/stream_updated_section.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/node/show_full_node/stream_show_full_node.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/node/show_full_node/stream_show_full_section.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/project_index/import_reqif_document/stream_form_import_reqif_document.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/project_index/import_reqif_document/stream_refresh_with_imported_reqif_document.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/project_index/stream_create_document.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/actions/project_index/stream_new_document.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/autocomplete/field/stream_autocomplete_field.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/autocomplete/uid/stream_autocomplete_uid.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/base.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/anchor/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/badge/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/button/cancel.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/button/confirm.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/button/delete.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/button/diff.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/button/search.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/button/submit.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/confirm/_usage_example.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/confirm/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/field/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/field/autocompletable/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/field/contenteditable/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/field/file/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/field/text/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/field_action_button/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/row/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/example.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/frame.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/stream.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/row/row_with_comment.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/row/row_with_metadata.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/row/row_with_relation.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/row/row_with_text_field.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/form/search.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/grammar_form/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/grammar_form/row_with_grammar_element/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/grammar_form/row_with_new_grammar_element/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/grammar_form_element/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/grammar_form_element/row_with_custom_field/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/grammar_form_element/row_with_relation/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/grammar_form_element/row_with_reserved_field/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/header/_usage_example.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/header/header_pagetype.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/header/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/included_document_form/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/issue/banner.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/issue/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/modal/_usage_example.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/modal/form.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/modal/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node/card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node/copy_stable_link_button.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node/node_controls/card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node/node_controls/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node/readonly.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node/root.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_content/card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_content/card_extends_card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_content/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_content/index_extends_node.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_content/index_extends_readonly.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_content/tiny.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_content/tiny_extends_card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/README.txt +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/comments/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/document_meta/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/document_title/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/files/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/links/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/meta/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/multiline/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/rationale/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/section_h/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/section_h/pdf.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/section_title/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/statement/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/text/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/title/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/uid/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/node_field/uid_standalone/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/resizable_bar/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/section/card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/section/card_extends_card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/section/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/section/index_extends_node.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/section/pdf.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/section/tiny.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/section/tiny_extends_card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/table_key_value/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/text_node/card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/text_node/card_extends_card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/text_node/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/text_node/index_extends_node.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/text_node/pdf.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/text_node/tiny.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/components/text_node/tiny_extends_card.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/rst/anchor.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/frame_header_document_title.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/frame_show_full_node.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/frame_show_full_section.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/frame_toc.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/project_tree.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/project_tree_child_documents.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/resizable_bar_with_project_tree.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/resizable_bar_with_toc.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/toc.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/_shared/viewtype_menu.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/document/actions.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/document/frame_document_config.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/document/frame_document_config_edit.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/document/frame_document_content.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/document/frame_document_issues.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/document/frame_requirement_form.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/document/frame_section_form.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/document/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/document/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/pdf/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/pdf/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/pdf/template/footer.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/pdf/template/frontpage.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/pdf/template/header.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/pdf/toc.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/table/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/table/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/traceability/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/traceability/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/traceability_deep/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/document/traceability_deep/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/changelog_content.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/diff_content.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/diff_controls.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/fields/document_fields.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/fields/requirement_fields.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/fields/section_fields.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/form.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/frame_changelog_result.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/frame_diff_result.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/legend.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/nav_tabs.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/node/requirement.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/node/section.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/skeleton.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/git/sync/button.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/nestor/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/actions.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/frame_form_import_reqif.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/frame_form_new_document.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/frame_project_tree.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/project_map.jinja.js +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/project_map_file.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/project_map_folder.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/project_map_node.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/project_map_section.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/project_tree.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/project_tree_file.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_index/project_tree_folder.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_statistics/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/project_statistics/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/search/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/search/legend.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/search/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_coverage/file.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_coverage/folder.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_coverage/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_coverage/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_coverage/thead.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_coverage/value_bar.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_view/aside.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_view/file_stats.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_view/header__actions.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_view/header__source_file_name.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_view/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_view/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_view/node_title_for_banner_header.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_view/range_button.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/source_file_view/requirement.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/traceability_matrix/file.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/traceability_matrix/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/traceability_matrix/main.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/traceability_matrix/project_tree_flat_anchor_list.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/traceability_matrix/requirement.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/screens/traceability_matrix/resizable_bar_with_project_tree.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/website/document/index.jinja +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/templates/websocket.jinja.html +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/tools/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/tools/html_embedded.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html2pdf/html2pdf_generator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html2pdf/pdf_print_driver.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/json/json_generator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/rst/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/rst/directives/raw_html_role.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/rst/directives/wildcard_enhanced_image.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/rst/document_rst_generator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/rst/rst_templates.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/rst/templates/requirement.jinja.rst +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/rst/writer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/spdx/spdx_generator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/spdx/spdx_sdoc_container.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/spdx/spdx_to_sdoc_converter.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/git/change.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/git/change_generator.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/git/git_client.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/git/project_diff_analyzer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/auto_described.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/cast.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/coverage.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/deprecation_engine.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/diff.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/exception.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/file_modification_time.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/file_stats.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/file_system.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/form_data.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/git_client.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/google_test.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/math.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/md5.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/net.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/ordered_set.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/parallelizer.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/path_filter.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/paths.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/pickle.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/rst.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/sha256.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/shard.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/sorting.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/string.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/textx.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/helpers/timing.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/server/__init__.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/server/app.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/server/config.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/server/helpers/turbo.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/server/reload_config.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/server/routers/main_router.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/server/routers/other_router.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/server/server.py +0 -0
- {strictdoc-0.9.0 → strictdoc-0.9.1}/tests/integration/scripting_examples/questionnaires/02_user_provided_example/LICENSE +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: strictdoc
|
3
|
-
Version: 0.9.
|
3
|
+
Version: 0.9.1
|
4
4
|
Summary: StrictDoc is open-source software for technical documentation and requirements management.
|
5
5
|
Project-URL: Changelog, https://github.com/strictdoc-project/strictdoc/blob/main/CHANGELOG.md
|
6
6
|
Project-URL: Homepage, https://strictdoc.readthedocs.io/en/stable/
|
@@ -1,15 +1,19 @@
|
|
1
|
-
|
1
|
+
from typing import List
|
2
|
+
|
3
|
+
|
2
4
|
class DocumentTreeError(Exception):
|
3
|
-
def __init__(self, problem_uid, cycled_uids):
|
5
|
+
def __init__(self, problem_uid: str, cycled_uids: List[str]) -> None:
|
4
6
|
super().__init__()
|
5
|
-
self.problem_uid = problem_uid
|
6
|
-
self.cycled_uids = cycled_uids
|
7
|
+
self.problem_uid: str = problem_uid
|
8
|
+
self.cycled_uids: List[str] = cycled_uids
|
7
9
|
|
8
10
|
@staticmethod
|
9
|
-
def cycle_error(
|
11
|
+
def cycle_error(
|
12
|
+
problem_uid: str, cycled_uids: List[str]
|
13
|
+
) -> "DocumentTreeError":
|
10
14
|
return DocumentTreeError(problem_uid, cycled_uids)
|
11
15
|
|
12
|
-
def to_print_message(self):
|
16
|
+
def to_print_message(self) -> str:
|
13
17
|
cycled_uids = ", ".join(self.cycled_uids)
|
14
18
|
message = (
|
15
19
|
"error: document tree: "
|
@@ -19,7 +23,7 @@ class DocumentTreeError(Exception):
|
|
19
23
|
)
|
20
24
|
return message
|
21
25
|
|
22
|
-
def to_validation_message(self):
|
26
|
+
def to_validation_message(self) -> str:
|
23
27
|
return (
|
24
28
|
"A cycle detected: requirements in the document tree must not "
|
25
29
|
"reference each other. "
|
@@ -204,7 +204,7 @@ class GrammarElementRelationParent:
|
|
204
204
|
):
|
205
205
|
assert relation_type == "Parent"
|
206
206
|
self.parent = parent
|
207
|
-
self.relation_type = relation_type
|
207
|
+
self.relation_type: str = relation_type
|
208
208
|
self.relation_role: Optional[str] = (
|
209
209
|
relation_role
|
210
210
|
if relation_role is not None and len(relation_role) > 0
|
@@ -122,7 +122,7 @@ class ExportCommandConfig:
|
|
122
122
|
def __init__(
|
123
123
|
self,
|
124
124
|
input_paths,
|
125
|
-
output_dir: str,
|
125
|
+
output_dir: Optional[str],
|
126
126
|
config_path: Optional[str],
|
127
127
|
project_title: Optional[str],
|
128
128
|
formats,
|
@@ -141,7 +141,7 @@ class ExportCommandConfig:
|
|
141
141
|
):
|
142
142
|
assert isinstance(input_paths, list), f"{input_paths}"
|
143
143
|
self.input_paths: List[str] = input_paths
|
144
|
-
self.output_dir: str = output_dir
|
144
|
+
self.output_dir: Optional[str] = output_dir
|
145
145
|
self._config_path: Optional[str] = config_path
|
146
146
|
self.project_title: Optional[str] = project_title
|
147
147
|
self.formats = formats
|
@@ -156,7 +156,6 @@ class ExportCommandConfig:
|
|
156
156
|
self.reqif_multiline_is_xhtml: bool = reqif_multiline_is_xhtml
|
157
157
|
self.reqif_enable_mid: bool = reqif_enable_mid
|
158
158
|
self.view: Optional[str] = view
|
159
|
-
self.output_html_root: str = os.path.join(output_dir, "html")
|
160
159
|
self.chromedriver: Optional[str] = chromedriver
|
161
160
|
|
162
161
|
def get_path_to_config(self) -> str:
|
@@ -259,14 +258,9 @@ class SDocArgsParser:
|
|
259
258
|
def get_export_config(self) -> ExportCommandConfig:
|
260
259
|
project_title: Optional[str] = self.args.project_title
|
261
260
|
|
262
|
-
output_dir = self.args.output_dir if self.args.output_dir else "output"
|
263
|
-
if not os.path.isabs(output_dir):
|
264
|
-
cwd = os.getcwd()
|
265
|
-
output_dir = os.path.join(cwd, output_dir)
|
266
|
-
|
267
261
|
return ExportCommandConfig(
|
268
262
|
self.args.input_paths,
|
269
|
-
output_dir,
|
263
|
+
self.args.output_dir,
|
270
264
|
self.args.config,
|
271
265
|
project_title,
|
272
266
|
self.args.formats,
|
@@ -9,7 +9,7 @@ from typing import Any, Dict, List, Optional, Tuple
|
|
9
9
|
|
10
10
|
import toml
|
11
11
|
|
12
|
-
from strictdoc import SDocRuntimeEnvironment
|
12
|
+
from strictdoc import SDocRuntimeEnvironment, __version__
|
13
13
|
from strictdoc.backend.reqif.sdoc_reqif_fields import ReqIFProfile
|
14
14
|
from strictdoc.backend.sdoc.constants import SDocMarkup
|
15
15
|
from strictdoc.cli.cli_arg_parser import (
|
@@ -67,7 +67,7 @@ class ProjectFeature(str, Enum):
|
|
67
67
|
class ProjectConfig:
|
68
68
|
DEFAULT_PROJECT_TITLE = "Untitled Project"
|
69
69
|
DEFAULT_DIR_FOR_SDOC_ASSETS = "_static"
|
70
|
-
DEFAULT_DIR_FOR_SDOC_CACHE = "
|
70
|
+
DEFAULT_DIR_FOR_SDOC_CACHE = "output/_cache"
|
71
71
|
|
72
72
|
DEFAULT_FEATURES: List[str] = [
|
73
73
|
ProjectFeature.TABLE_SCREEN,
|
@@ -125,7 +125,7 @@ class ProjectConfig:
|
|
125
125
|
if env_cache_dir := os.environ.get("STRICTDOC_CACHE_DIR"):
|
126
126
|
# The only use case for STRICTDOC_CACHE_DIR is to make the cache
|
127
127
|
# local to an itest folder.
|
128
|
-
assert env_cache_dir == "Output/
|
128
|
+
assert env_cache_dir == "Output/_cache", env_cache_dir
|
129
129
|
dir_for_sdoc_cache = env_cache_dir
|
130
130
|
elif dir_for_sdoc_cache == "$TMPDIR":
|
131
131
|
dir_for_sdoc_cache = os.path.join(
|
@@ -134,6 +134,12 @@ class ProjectConfig:
|
|
134
134
|
get_md5(os.getcwd()),
|
135
135
|
)
|
136
136
|
|
137
|
+
# Adding a __version__ part to the cache directory improves traceability
|
138
|
+
# by indicating which StrictDoc version the cache belongs to.
|
139
|
+
# This helps prevent issues when switching between versions that may use
|
140
|
+
# incompatible cache schemas.
|
141
|
+
dir_for_sdoc_cache = os.path.join(dir_for_sdoc_cache, __version__)
|
142
|
+
|
137
143
|
self.dir_for_sdoc_cache: str = dir_for_sdoc_cache
|
138
144
|
|
139
145
|
self.project_features: List[str] = project_features
|
@@ -251,6 +257,14 @@ class ProjectConfig:
|
|
251
257
|
if (output_dir_ := server_config.output_path) is not None:
|
252
258
|
self.output_dir = output_dir_
|
253
259
|
self.export_output_html_root = os.path.join(output_dir_, "html")
|
260
|
+
# If a custom cache folder is not specified in the config, adjust the
|
261
|
+
# cache folder to be located in the output folder.
|
262
|
+
if self.dir_for_sdoc_cache.startswith(
|
263
|
+
ProjectConfig.DEFAULT_DIR_FOR_SDOC_CACHE
|
264
|
+
):
|
265
|
+
self.dir_for_sdoc_cache = os.path.join(
|
266
|
+
output_dir_, "_cache", __version__
|
267
|
+
)
|
254
268
|
|
255
269
|
self.export_formats = ["html"]
|
256
270
|
self.generate_bundle_document = False
|
@@ -270,8 +284,27 @@ class ProjectConfig:
|
|
270
284
|
source_root_path = source_root_path.rstrip("/")
|
271
285
|
self.source_root_path = source_root_path
|
272
286
|
|
273
|
-
|
274
|
-
|
287
|
+
#
|
288
|
+
# Adjust the default output dir to the user-provided dir if needed.
|
289
|
+
#
|
290
|
+
output_dir = self.output_dir
|
291
|
+
if export_config.output_dir is not None:
|
292
|
+
output_dir = export_config.output_dir
|
293
|
+
if not os.path.isabs(output_dir):
|
294
|
+
cwd = os.getcwd()
|
295
|
+
output_dir = os.path.join(cwd, output_dir)
|
296
|
+
self.output_dir = output_dir
|
297
|
+
|
298
|
+
# If a custom cache folder is not specified in the config, adjust the
|
299
|
+
# cache folder to be located in the output folder.
|
300
|
+
if self.dir_for_sdoc_cache.startswith(
|
301
|
+
ProjectConfig.DEFAULT_DIR_FOR_SDOC_CACHE
|
302
|
+
):
|
303
|
+
self.dir_for_sdoc_cache = os.path.join(
|
304
|
+
output_dir, "_cache", __version__
|
305
|
+
)
|
306
|
+
|
307
|
+
self.export_output_html_root = os.path.join(self.output_dir, "html")
|
275
308
|
self.export_formats = export_config.formats
|
276
309
|
self.export_included_documents = export_config.included_documents
|
277
310
|
self.generate_bundle_document = export_config.generate_bundle_document
|
@@ -121,6 +121,7 @@ class CreateOrUpdateNodeCommand:
|
|
121
121
|
context_document=self.context_document,
|
122
122
|
).write_with_validation(field_.field_value)
|
123
123
|
if parsed_html is None:
|
124
|
+
assert rst_error is not None
|
124
125
|
form_object.add_error(field_.field_name, rst_error)
|
125
126
|
else:
|
126
127
|
try:
|
@@ -1,30 +1,30 @@
|
|
1
|
-
# mypy: disable-error-code="no-untyped-call,no-untyped-def"
|
2
1
|
from collections import deque
|
3
|
-
from typing import Deque, Tuple
|
2
|
+
from typing import Callable, Deque, List, Set, Tuple
|
4
3
|
|
5
4
|
from strictdoc.backend.sdoc.errors.document_tree_error import DocumentTreeError
|
6
|
-
from strictdoc.backend.sdoc.models.model import SDocNodeIF
|
7
5
|
|
8
6
|
BEFORE = 1
|
9
7
|
AFTER = 2
|
10
8
|
|
11
9
|
|
12
10
|
class TreeCycleDetector:
|
13
|
-
def __init__(self):
|
14
|
-
self.checked = set()
|
11
|
+
def __init__(self) -> None:
|
12
|
+
self.checked: Set[str] = set()
|
15
13
|
|
16
|
-
def check_node(
|
14
|
+
def check_node(
|
15
|
+
self, node: str, links_function: Callable[[str], List[str]]
|
16
|
+
) -> None:
|
17
17
|
if node in self.checked:
|
18
18
|
return
|
19
|
-
stack: Deque[Tuple[
|
19
|
+
stack: Deque[Tuple[str, int]] = deque()
|
20
20
|
stack.append((node, BEFORE))
|
21
|
-
visited = set()
|
21
|
+
visited: Set[str] = set()
|
22
22
|
while stack:
|
23
23
|
current_node, token = stack[-1]
|
24
24
|
if token == BEFORE:
|
25
25
|
visited.add(current_node)
|
26
26
|
stack[-1] = (current_node, AFTER)
|
27
|
-
node_links = links_function(current_node)
|
27
|
+
node_links: List[str] = links_function(current_node)
|
28
28
|
for node_link in reversed(node_links):
|
29
29
|
if node_link in visited:
|
30
30
|
cycled_nodes = []
|
@@ -45,10 +45,24 @@ class TreeCycleDetector:
|
|
45
45
|
|
46
46
|
|
47
47
|
class SingleShotTreeCycleDetector:
|
48
|
-
def check_node(
|
49
|
-
|
48
|
+
def check_node(
|
49
|
+
self,
|
50
|
+
new_uid: str,
|
51
|
+
node: str,
|
52
|
+
links_function: Callable[[str], List[str]],
|
53
|
+
) -> None:
|
54
|
+
"""
|
55
|
+
Detect if a newly added node would cause a link/relation cycle in the
|
56
|
+
traceability index.
|
57
|
+
|
58
|
+
FIXME: Both cycle detector classes are very similar. Find a way to merge
|
59
|
+
them. The added value of this 'single shot' detector is that it
|
60
|
+
checks for cycles possibly added by a new node.
|
61
|
+
"""
|
62
|
+
|
63
|
+
checked: Set[str] = set()
|
50
64
|
|
51
|
-
stack: Deque[Tuple[
|
65
|
+
stack: Deque[Tuple[str, int]] = deque()
|
52
66
|
stack.append((node, BEFORE))
|
53
67
|
visited = {new_uid}
|
54
68
|
while stack:
|
{strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/export/html/form_objects/requirement_form_object.py
RENAMED
@@ -1,7 +1,6 @@
|
|
1
|
-
# mypy: disable-error-code="arg-type,attr-defined,no-untyped-call,no-untyped-def,union-attr"
|
2
1
|
from collections import defaultdict
|
3
2
|
from enum import Enum
|
4
|
-
from typing import Dict,
|
3
|
+
from typing import Dict, Iterator, List, Optional, Set, Tuple, Union
|
5
4
|
|
6
5
|
from starlette.datastructures import FormData
|
7
6
|
|
@@ -27,10 +26,10 @@ from strictdoc.backend.sdoc.models.type_system import (
|
|
27
26
|
GrammarElementFieldSingleChoice,
|
28
27
|
RequirementFieldType,
|
29
28
|
)
|
29
|
+
from strictdoc.core.constants import GraphLinkType
|
30
30
|
from strictdoc.core.graph.abstract_bucket import ALL_EDGES
|
31
31
|
from strictdoc.core.project_config import ProjectConfig
|
32
32
|
from strictdoc.core.traceability_index import (
|
33
|
-
GraphLinkType,
|
34
33
|
TraceabilityIndex,
|
35
34
|
)
|
36
35
|
from strictdoc.core.tree_cycle_detector import SingleShotTreeCycleDetector
|
@@ -59,7 +58,7 @@ class RequirementFormField:
|
|
59
58
|
field_type: RequirementFormFieldType,
|
60
59
|
field_value: str,
|
61
60
|
field_gef_type: str = RequirementFieldType.STRING,
|
62
|
-
):
|
61
|
+
) -> None:
|
63
62
|
assert isinstance(field_value, str)
|
64
63
|
self.field_mid: str = field_mid
|
65
64
|
self.field_name: str = field_name
|
@@ -86,10 +85,10 @@ class RequirementFormField:
|
|
86
85
|
RequirementFieldType.TAG,
|
87
86
|
)
|
88
87
|
|
89
|
-
def get_input_field_name(self):
|
88
|
+
def get_input_field_name(self) -> str:
|
90
89
|
return f"requirement[fields][{self.field_mid}][value]"
|
91
90
|
|
92
|
-
def get_input_field_type_name(self):
|
91
|
+
def get_input_field_type_name(self) -> str:
|
93
92
|
return f"requirement[fields][{self.field_mid}][name]"
|
94
93
|
|
95
94
|
@staticmethod
|
@@ -173,7 +172,7 @@ class RequirementReferenceFormField:
|
|
173
172
|
field_type: FieldType,
|
174
173
|
field_value: str,
|
175
174
|
field_role: Optional[str],
|
176
|
-
):
|
175
|
+
) -> None:
|
177
176
|
assert isinstance(field_mid, str), field_mid
|
178
177
|
assert isinstance(field_value, str), field_value
|
179
178
|
self.field_mid: str = field_mid
|
@@ -184,13 +183,13 @@ class RequirementReferenceFormField:
|
|
184
183
|
)
|
185
184
|
self.validation_messages: List[str] = []
|
186
185
|
|
187
|
-
def get_input_field_name(self):
|
186
|
+
def get_input_field_name(self) -> str:
|
188
187
|
return "requirement_relation"
|
189
188
|
|
190
|
-
def get_value_field_name(self):
|
189
|
+
def get_value_field_name(self) -> str:
|
191
190
|
return f"requirement[relations][{self.field_mid}][value]"
|
192
191
|
|
193
|
-
def get_type_field_name(self):
|
192
|
+
def get_type_field_name(self) -> str:
|
194
193
|
return f"requirement[relations][{self.field_mid}][typerole]"
|
195
194
|
|
196
195
|
|
@@ -217,7 +216,7 @@ class RequirementFormObject(ErrorObject):
|
|
217
216
|
grammar: DocumentGrammar,
|
218
217
|
# FIXME: Better name.
|
219
218
|
relation_types: List[str],
|
220
|
-
):
|
219
|
+
) -> None:
|
221
220
|
super().__init__()
|
222
221
|
assert isinstance(element_type, str), element_type
|
223
222
|
self.is_new: bool = is_new
|
@@ -256,7 +255,9 @@ class RequirementFormObject(ErrorObject):
|
|
256
255
|
requirement_fields = defaultdict(list)
|
257
256
|
form_ref_fields: List[RequirementReferenceFormField] = []
|
258
257
|
|
259
|
-
context_document_mid =
|
258
|
+
context_document_mid = assert_cast(
|
259
|
+
request_form_dict["context_document_mid"], str
|
260
|
+
)
|
260
261
|
requirement_dict = assert_cast(request_form_dict["requirement"], dict)
|
261
262
|
|
262
263
|
element_type = assert_cast(request_form_dict["element_type"], str)
|
@@ -282,24 +283,13 @@ class RequirementFormObject(ErrorObject):
|
|
282
283
|
relation_role = None
|
283
284
|
else:
|
284
285
|
raise AssertionError("Must not reach here") # pragma: no cover
|
285
|
-
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
RequirementReferenceFormField.FieldType.FILE
|
293
|
-
if relation_type == "File"
|
294
|
-
else ""
|
295
|
-
)
|
296
|
-
)
|
297
|
-
)
|
298
|
-
assert field_type in (
|
299
|
-
RequirementReferenceFormField.FieldType.PARENT,
|
300
|
-
RequirementReferenceFormField.FieldType.CHILD,
|
301
|
-
RequirementReferenceFormField.FieldType.FILE,
|
302
|
-
)
|
286
|
+
|
287
|
+
field_type = {
|
288
|
+
"Parent": RequirementReferenceFormField.FieldType.PARENT,
|
289
|
+
"Child": RequirementReferenceFormField.FieldType.CHILD,
|
290
|
+
"File": RequirementReferenceFormField.FieldType.FILE,
|
291
|
+
}[relation_type]
|
292
|
+
|
303
293
|
relation_value = relation_dict["value"].strip()
|
304
294
|
|
305
295
|
form_ref_fields.append(
|
@@ -517,7 +507,7 @@ class RequirementFormObject(ErrorObject):
|
|
517
507
|
|
518
508
|
return form_object
|
519
509
|
|
520
|
-
def any_errors(self):
|
510
|
+
def any_errors(self) -> bool:
|
521
511
|
if super().any_errors():
|
522
512
|
return True
|
523
513
|
for reference_field in self.reference_fields:
|
@@ -565,7 +555,9 @@ class RequirementFormObject(ErrorObject):
|
|
565
555
|
raise NotImplementedError(ref_type)
|
566
556
|
return references
|
567
557
|
|
568
|
-
def enumerate_fields(
|
558
|
+
def enumerate_fields(
|
559
|
+
self, multiline: bool
|
560
|
+
) -> Iterator[List[RequirementFormField]]:
|
569
561
|
for field_name_, field in self.fields.items():
|
570
562
|
try:
|
571
563
|
requirement_field: RequirementFormField = field[0]
|
@@ -582,12 +574,14 @@ class RequirementFormObject(ErrorObject):
|
|
582
574
|
continue
|
583
575
|
yield field
|
584
576
|
|
585
|
-
def enumerate_reference_fields(
|
577
|
+
def enumerate_reference_fields(
|
578
|
+
self,
|
579
|
+
) -> Iterator[List[RequirementReferenceFormField]]:
|
586
580
|
yield from self.reference_fields
|
587
581
|
|
588
582
|
def enumerate_relation_roles(
|
589
583
|
self, relation_field: RequirementReferenceFormField
|
590
|
-
):
|
584
|
+
) -> Iterator[Tuple[str, Optional[str], bool]]:
|
591
585
|
requirement_element = self.grammar.elements_by_type[self.element_type]
|
592
586
|
for relation_ in requirement_element.relations:
|
593
587
|
is_current = (
|
@@ -608,7 +602,7 @@ class RequirementFormObject(ErrorObject):
|
|
608
602
|
traceability_index: TraceabilityIndex,
|
609
603
|
context_document: SDocDocument,
|
610
604
|
config: ProjectConfig,
|
611
|
-
):
|
605
|
+
) -> None:
|
612
606
|
assert isinstance(traceability_index, TraceabilityIndex)
|
613
607
|
assert isinstance(context_document, SDocDocument)
|
614
608
|
|
@@ -723,6 +717,7 @@ class RequirementFormObject(ErrorObject):
|
|
723
717
|
context_document=context_document,
|
724
718
|
).write_with_validation(field_value)
|
725
719
|
if parsed_html is None:
|
720
|
+
assert rst_error is not None
|
726
721
|
self.add_error(
|
727
722
|
grammar_element_field_.title, rst_error
|
728
723
|
)
|
@@ -834,60 +829,75 @@ class RequirementFormObject(ErrorObject):
|
|
834
829
|
reference_field.field_type, field_role_or_none
|
835
830
|
)
|
836
831
|
|
837
|
-
|
838
|
-
|
832
|
+
self._validate_no_cycle_by_new_node(
|
833
|
+
traceability_index, reference_field, requirement_uid
|
834
|
+
)
|
839
835
|
|
840
|
-
|
841
|
-
|
842
|
-
|
843
|
-
|
844
|
-
|
845
|
-
|
846
|
-
|
847
|
-
|
848
|
-
|
849
|
-
link_type=GraphLinkType.NODE_TO_PARENT_NODES,
|
850
|
-
lhs_node=node,
|
851
|
-
edge=ALL_EDGES,
|
852
|
-
),
|
853
|
-
)
|
854
|
-
)
|
836
|
+
@staticmethod
|
837
|
+
def _validate_no_cycle_by_new_node(
|
838
|
+
traceability_index: TraceabilityIndex,
|
839
|
+
reference_field: RequirementReferenceFormField,
|
840
|
+
requirement_uid: str,
|
841
|
+
) -> None:
|
842
|
+
"""
|
843
|
+
Check if a relation being added by a new node would form a cycle.
|
844
|
+
"""
|
855
845
|
|
856
|
-
|
857
|
-
node = traceability_index.graph_database.get_link_value(
|
858
|
-
link_type=GraphLinkType.UID_TO_NODE,
|
859
|
-
lhs_node=node_id,
|
860
|
-
)
|
861
|
-
return list(
|
862
|
-
map(
|
863
|
-
lambda node_: node_.reserved_uid,
|
864
|
-
traceability_index.graph_database.get_link_values(
|
865
|
-
link_type=GraphLinkType.NODE_TO_CHILD_NODES,
|
866
|
-
lhs_node=node,
|
867
|
-
edge=ALL_EDGES,
|
868
|
-
),
|
869
|
-
)
|
870
|
-
)
|
846
|
+
ref_uid = reference_field.field_value
|
871
847
|
|
872
|
-
|
873
|
-
|
874
|
-
|
875
|
-
|
876
|
-
|
848
|
+
def parent_lambda(node_id: str) -> List[str]:
|
849
|
+
node = traceability_index.graph_database.get_link_value(
|
850
|
+
link_type=GraphLinkType.UID_TO_NODE,
|
851
|
+
lhs_node=node_id,
|
852
|
+
)
|
853
|
+
return list(
|
854
|
+
map(
|
855
|
+
lambda node_: node_.reserved_uid,
|
856
|
+
traceability_index.graph_database.get_link_values(
|
857
|
+
link_type=GraphLinkType.NODE_TO_PARENT_NODES,
|
858
|
+
lhs_node=node,
|
859
|
+
edge=ALL_EDGES,
|
860
|
+
),
|
861
|
+
)
|
862
|
+
)
|
877
863
|
|
878
|
-
|
879
|
-
|
880
|
-
|
881
|
-
|
882
|
-
|
883
|
-
|
884
|
-
|
885
|
-
|
886
|
-
|
887
|
-
|
888
|
-
|
864
|
+
def child_lambda(node_id: str) -> List[str]:
|
865
|
+
node = traceability_index.graph_database.get_link_value(
|
866
|
+
link_type=GraphLinkType.UID_TO_NODE,
|
867
|
+
lhs_node=node_id,
|
868
|
+
)
|
869
|
+
return list(
|
870
|
+
map(
|
871
|
+
lambda node_: node_.reserved_uid,
|
872
|
+
traceability_index.graph_database.get_link_values(
|
873
|
+
link_type=GraphLinkType.NODE_TO_CHILD_NODES,
|
874
|
+
lhs_node=node,
|
875
|
+
edge=ALL_EDGES,
|
876
|
+
),
|
877
|
+
)
|
878
|
+
)
|
879
|
+
|
880
|
+
relations_lambda = (
|
881
|
+
parent_lambda
|
882
|
+
if reference_field.field_type == "Parent"
|
883
|
+
else child_lambda
|
884
|
+
)
|
885
|
+
|
886
|
+
cycle_detector = SingleShotTreeCycleDetector()
|
887
|
+
try:
|
888
|
+
cycle_detector.check_node(
|
889
|
+
requirement_uid,
|
890
|
+
ref_uid,
|
891
|
+
relations_lambda,
|
892
|
+
)
|
893
|
+
except DocumentTreeError as error_:
|
894
|
+
reference_field.validation_messages.append(
|
895
|
+
error_.to_validation_message()
|
896
|
+
)
|
889
897
|
|
890
|
-
def _validate_choice(
|
898
|
+
def _validate_choice(
|
899
|
+
self, grammar_element_field: GrammarElementField
|
900
|
+
) -> None:
|
891
901
|
field_0 = self.fields[grammar_element_field.title][0]
|
892
902
|
if len(field_0.field_value) == 0 and not grammar_element_field.required:
|
893
903
|
# The empty choice fields are allowed if the field is not REQUIRED.
|
@@ -5,7 +5,7 @@ import os
|
|
5
5
|
import re
|
6
6
|
import sys
|
7
7
|
from pathlib import Path
|
8
|
-
from typing import Optional
|
8
|
+
from typing import Optional, Tuple
|
9
9
|
|
10
10
|
from docutils.core import publish_parts
|
11
11
|
from docutils.parsers.rst import directives, roles
|
@@ -145,7 +145,9 @@ class RstToHtmlFragmentWriter:
|
|
145
145
|
|
146
146
|
return html
|
147
147
|
|
148
|
-
def write_with_validation(
|
148
|
+
def write_with_validation(
|
149
|
+
self, rst_fragment
|
150
|
+
) -> Tuple[Optional[str], Optional[str]]:
|
149
151
|
# How do I convert a docutils document tree into an HTML string?
|
150
152
|
# https://stackoverflow.com/a/32168938/598057
|
151
153
|
# Use a io.StringIO as the warning stream to prevent warnings from
|
@@ -0,0 +1,18 @@
|
|
1
|
+
from typing import Dict, List
|
2
|
+
|
3
|
+
|
4
|
+
class ErrorObject:
|
5
|
+
def __init__(self) -> None:
|
6
|
+
self.errors: Dict[str, List[str]] = {}
|
7
|
+
|
8
|
+
def any_errors(self) -> bool:
|
9
|
+
return len(self.errors) > 0
|
10
|
+
|
11
|
+
def get_errors(self, field_name: str) -> List[str]:
|
12
|
+
if field_name not in self.errors:
|
13
|
+
return []
|
14
|
+
return self.errors[field_name]
|
15
|
+
|
16
|
+
def add_error(self, field_name: str, error: str) -> None:
|
17
|
+
error_container = self.errors.setdefault(field_name, [])
|
18
|
+
error_container.append(error)
|
@@ -1,16 +0,0 @@
|
|
1
|
-
# mypy: disable-error-code="no-untyped-def"
|
2
|
-
class ErrorObject:
|
3
|
-
def __init__(self):
|
4
|
-
self.errors = {}
|
5
|
-
|
6
|
-
def any_errors(self):
|
7
|
-
return len(self.errors)
|
8
|
-
|
9
|
-
def get_errors(self, field_name):
|
10
|
-
if field_name not in self.errors:
|
11
|
-
return []
|
12
|
-
return self.errors[field_name]
|
13
|
-
|
14
|
-
def add_error(self, field_name, error):
|
15
|
-
error_container = self.errors.setdefault(field_name, [])
|
16
|
-
error_container.append(error)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{strictdoc-0.9.0 → strictdoc-0.9.1}/strictdoc/backend/excel/import_/excel_to_sdoc_converter.py
RENAMED
File without changes
|
File without changes
|
File without changes
|