Skip to content

Windows specific Permission Error when dso init / dso-compile-config #152

@DSchreyer

Description

@DSchreyer

Report

On Windows, dso init fails during config compilation with:

Steps to Reproduce

  1. Run dso init on Windows (any directory).
  2. Observe that after project creation, compilation fails with PermissionError.

Error Message

dso init
? Project name, used as folder name, e.g. "single_cell_lung_atlas"
? A short project description, used in the README
Directory already exists. Do you want to initialize DSO in an existing project? [y/n]: y
[08/21/25 14:36:37] INFO     Created project directory.
[08/21/25 14:36:41] INFO     Created folder structure from template.
                    INFO     Project initalized successfully.
                    INFO     Detected ...
[08/21/25 14:36:44] INFO     Compiling a total of 1 config files.
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\daniel.schreyer\.local\bin\dso.exe\__main__.py", line 10, in <module>
    sys.exit(dso())
             ~~~^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\rich_click\rich_command.py", line 404, in __call__
    return super().__call__(*args, **kwargs)
           ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\click\core.py", line 1442, in __call__
    return self.main(*args, **kwargs)
           ~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\rich_click\rich_command.py", line 187, in main
    rv = self.invoke(ctx)
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\click\core.py", line 1830, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\click\core.py", line 1226, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\click\core.py", line 794, in invoke
    return callback(*args, **kwargs)
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\click\decorators.py", line 34, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\dso\cli\__init__.py", line 122, in dso_init
    compile_all_configs([target_dir])
    ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\dso\_compile_config.py", line 197, in compile_all_configs
    with open(tmpfile.name, "w") as f:
         ~~~~^^^^^^^^^^^^^^^^^^^
PermissionError: [Errno 13] Permission denied: 'C:\\Users\\DANIEL~1.SCH\\AppData\\Local\\Temp\\tmp42uhmq7e'


dso compile-config
[08/21/25 14:37:04] INFO     Detected ...
[08/21/25 14:37:06] INFO     Compiling a total of 1 config files.
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "C:\Users\daniel.schreyer\.local\bin\dso.exe\__main__.py", line 10, in <module>
    sys.exit(dso())
             ~~~^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\rich_click\rich_command.py", line 404, in __call__
    return super().__call__(*args, **kwargs)
           ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\click\core.py", line 1442, in __call__
    return self.main(*args, **kwargs)
           ~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\rich_click\rich_command.py", line 187, in main
    rv = self.invoke(ctx)
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\click\core.py", line 1830, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\click\core.py", line 1226, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\click\core.py", line 794, in invoke
    return callback(*args, **kwargs)
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\dso\cli\__init__.py", line 42, in dso_compile_config
    compile_all_configs(paths)
    ~~~~~~~~~~~~~~~~~~~^^^^^^^
  File "C:\Users\daniel.schreyer\AppData\Roaming\uv\tools\dso-core\Lib\site-packages\dso\_compile_config.py", line 197, in compile_all_configs
    with open(tmpfile.name, "w") as f:
         ~~~~^^^^^^^^^^^^^^^^^^^
PermissionError: [Errno 13] Permission denied: 'C:\\Users\\DANIEL~1.SCH\\AppData\\Local\\Temp\\tmpb_urzlu3'

Versions

dso, version 0.13.2

Metadata

Metadata

Labels

bugSomething isn't working

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions