speechDictHandler.speechDictVars.speechDictsPath is deprecated, instead use NVDAState.WritePaths.speechDictsDir
Stack trace:
File "C:\Python37\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "C:\Python37\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\cmd\build.py", line 295, in <module>
sys.exit(main(sys.argv[1:]))
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\cmd\build.py", line 289, in main
return make_main(argv)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\cmd\build.py", line 193, in make_main
return make_mode.run_make_mode(argv[1:])
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\cmd\make_mode.py", line 160, in run_make_mode
return make.run_generic_build(args[0])
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\cmd\make_mode.py", line 148, in run_generic_build
return build_main(args + opts)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\cmd\build.py", line 277, in build_main
app.build(args.force_all, filenames)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\application.py", line 349, in build
self.builder.build_update()
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\builders\__init__.py", line 303, in build_update
len(to_build))
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\builders\__init__.py", line 317, in build
updated_docnames = set(self.read())
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\builders\__init__.py", line 424, in read
self._read_serial(docnames)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\builders\__init__.py", line 445, in _read_serial
self.read_doc(docname)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\builders\__init__.py", line 498, in read_doc
publisher.publish()
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\core.py", line 218, in publish
self.settings)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\io.py", line 104, in read
self.parse()
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\readers\__init__.py", line 78, in parse
self.parser.parse(self.input, document)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\parsers.py", line 78, in parse
self.statemachine.run(inputlines, document, inliner=self.inliner)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 171, in run
input_source=document['source'])
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\statemachine.py", line 240, in run
context, state, transitions)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\statemachine.py", line 451, in check_line
return method(match, context, next_state)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 2769, in underline
self.section(title, source, style, lineno - 1, messages)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 327, in section
self.new_subsection(title, lineno, messages)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 395, in new_subsection
node=section_node, match_titles=True)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 282, in nested_parse
node=node, match_titles=match_titles)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 196, in run
results = StateMachineWS.run(self, input_lines, input_offset)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\statemachine.py", line 240, in run
context, state, transitions)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\statemachine.py", line 451, in check_line
return method(match, context, next_state)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 2769, in underline
self.section(title, source, style, lineno - 1, messages)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 327, in section
self.new_subsection(title, lineno, messages)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 395, in new_subsection
node=section_node, match_titles=True)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 282, in nested_parse
node=node, match_titles=match_titles)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 196, in run
results = StateMachineWS.run(self, input_lines, input_offset)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\statemachine.py", line 240, in run
context, state, transitions)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\statemachine.py", line 451, in check_line
return method(match, context, next_state)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 2342, in explicit_markup
nodelist, blank_finish = self.explicit_construct(match)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 2354, in explicit_construct
return method(self, expmatch)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 2097, in directive
directive_class, match, type_name, option_presets)
File "D:\my_repos\nvda\.venv\lib\site-packages\docutils\parsers\rst\states.py", line 2146, in run_directive
result = directive_instance.run()
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\ext\autodoc\directive.py", line 148, in run
documenter.generate(more_content=self.content)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\ext\autodoc\__init__.py", line 883, in generate
if not self.import_object():
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\ext\autodoc\__init__.py", line 1003, in import_object
ret = super().import_object(raiseerror)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\ext\autodoc\__init__.py", line 409, in import_object
warningiserror=self.config.autodoc_warningiserror)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\ext\autodoc\importer.py", line 79, in import_object
module = import_module(modname, warningiserror=warningiserror)
File "D:\my_repos\nvda\.venv\lib\site-packages\sphinx\ext\autodoc\importer.py", line 58, in import_module
return importlib.import_module(modname)
File "C:\Python37\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "speechDictHandler\speechDictVars.py", line 18, in <module>
stack_info=True
Current master.
This is not the first time where there are differences between source and binary builds. It would be good to pay attention to cases like this when reviewing. I'm also not sure why the module was deprecated by placing warnings at the top level - we usually don't do this. Either way my suggestion would be to remove speechDictHandler.speechDictVars in 2024.1 development cycle.
Steps to reproduce:
In a binary version of NVDA try to import
speechDictHandler.speechDictVars. alternatively build the developer documentation withscons devDocs.Actual behavior:
speechDictHandler.speechDictVarscannot be imported when using binary versions, even though its removal has not been announced in the change log. This occurs because, when the given module is not imported anywhere in core, py2exe does not bundle it. When trying to build developer documentation the following warning is raised:Expected behavior:
speechDictHandler.speechDictVarsshould be importable, alternatively it should be removed. Deprecated code should not cause warnings when building developer documentation.NVDA logs, crash dumps and other attachments:
System configuration
NVDA installed/portable/running from source:
From source
NVDA version:
Current master.
Windows version:
N/A
Name and version of other software in use when reproducing the issue:
None
Other information about your system:
Other questions
Does the issue still occur after restarting your computer?
Irrelevant
Have you tried any other versions of NVDA? If so, please report their behaviors.
Problem introduced with PR #15021
If NVDA add-ons are disabled, is your problem still occurring?
Irrelevant
Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?
Irrelevant
Additional context:
This is not the first time where there are differences between source and binary builds. It would be good to pay attention to cases like this when reviewing. I'm also not sure why the module was deprecated by placing warnings at the top level - we usually don't do this. Either way my suggestion would be to remove
speechDictHandler.speechDictVarsin 2024.1 development cycle.