﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	blockedby	blocking	notify_on_close	platform	project
18233	pyproject.toml: tool.chimerax.extra-files fails on second run	Tristan Croll	Zach Pearson	"{{{
Server seems to be down, so reporting the old-fashioned way...


Rebuilding Clipper *without* doing a ""make clean"" in between fails:


{{{

chimerax --nogui --safemode --cmd ""devel install . ; exit""

Executing: devel install .

Traceback (most recent call last):

File
""/usr/lib/ucsf-chimerax/lib/python3.11/site-packages/chimerax/core/commands/devel.py"",
line 180, in _run

unbound_method(bb, *args, **kw)

File
""/usr/lib/ucsf-chimerax/lib/python3.11/site-packages/chimerax/bundle_builder/bundle_builder_toml.py"",
line 553, in make_install

wheel = self.build_wheel()

^^^^^^^^^^^^^^^^^^

File
""/usr/lib/ucsf-chimerax/lib/python3.11/site-packages/chimerax/bundle_builder/bundle_builder_toml.py"",
line 839, in build_wheel

self._clear_distutils_dir_and_prep_srcdir(build_exts=True)

File
""/usr/lib/ucsf-chimerax/lib/python3.11/site-packages/chimerax/bundle_builder/bundle_builder_toml.py"",
line 791, in _clear_distutils_dir_and_prep_srcdir

self._copy_extrafiles()

File
""/usr/lib/ucsf-chimerax/lib/python3.11/site-packages/chimerax/bundle_builder/bundle_builder_toml.py"",
line 686, in _copy_extrafiles

shutil.copytree(entry, destination)

File ""/usr/lib/ucsf-chimerax/lib/python3.11/shutil.py"", line 561, in
copytree

return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File ""/usr/lib/ucsf-chimerax/lib/python3.11/shutil.py"", line 459, in
_copytree

os.makedirs(dst, exist_ok=dirs_exist_ok)

File ""<frozen os>"", line 225, in makedirs

FileExistsError: [Errno 17] File exists: 'src/include/clipper_ext'

}}}


Culprit is this section of pyproject.toml:
https://github.com/tristanic/chimerax-clipper/blob/59c09818a0c9f9a53a31b5776e0e77114dee129c/pyproject.toml#L53-L56


Looks like the call to `shutil.copytree` should include
`dirs_include_ok=True`?

-- 
Altos Labs UK Limited | England | Company reg 13484917  
Registered 
address: 3rd Floor 1 Ashley Road, Altrincham, Cheshire, United Kingdom, 
WA14 2DT
}}}
"	defect	closed	normal	1.11	Build System		fixed		chimera-programmers				all	ChimeraX
