Opened 14 months ago
Closed 5 months ago
#15897 closed defect (fixed)
Core include files not found
Reported by: | Tristan Croll | Owned by: | Zach Pearson |
---|---|---|---|
Priority: | normal | Milestone: | 1.10 |
Component: | Build System | Version: | |
Keywords: | Cc: | chimera-programmers | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Windows-10-10.0.22631 ChimeraX Version: 1.9.dev202409060131 (2024-09-06 01:31:09 UTC) Description Getting a new compile error while trying to build the Clipper plugin for the current daily build: c:\program files\chimerax-daily\bin\lib\site-packages\chimerax\atomic_lib\include\atomstruct\string_types.h(31): fatal error C1083: Cannot open include file: 'chutil/CString.h': No such file or directory I'm guessing I need to declare a new build-time dependency, but I'm not clear on which one. OpenGL version: 3.3.0 NVIDIA 555.85 OpenGL renderer: NVIDIA GeForce RTX 3070 Laptop GPU/PCIe/SSE2 OpenGL vendor: NVIDIA Corporation Python: 3.11.4 Locale: en_GB.cp1252 Qt version: PyQt6 6.7.1, Qt 6.7.1 Qt runtime version: 6.7.2 Qt platform: windows Manufacturer: HP Model: HP ZBook Studio 15.6 inch G8 Mobile Workstation PC OS: Microsoft Windows 11 Pro (Build 22631) Memory: 34,007,068,672 MaxProcessMemory: 137,438,953,344 CPU: 16 11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz OSLanguage: en-GB Installed Packages: alabaster: 1.0.0 appdirs: 1.4.4 asttokens: 2.4.1 babel: 2.16.0 beautifulsoup4: 4.12.3 blockdiag: 3.0.0 blosc2: 2.7.1 build: 1.2.1 certifi: 2024.8.30 cftime: 1.6.4 charset-normalizer: 3.3.2 ChimeraX-AddCharge: 1.5.17 ChimeraX-AddH: 2.2.6 ChimeraX-AlignmentAlgorithms: 2.0.2 ChimeraX-AlignmentHdrs: 3.5 ChimeraX-AlignmentMatrices: 2.1 ChimeraX-Alignments: 2.14 ChimeraX-AlphaFold: 1.0.1 ChimeraX-AltlocExplorer: 1.1.1 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.1 ChimeraX-Atomic: 1.58.7 ChimeraX-AtomicLibrary: 14.1.6 ChimeraX-AtomSearch: 2.0.1 ChimeraX-AxesPlanes: 2.4 ChimeraX-BasicActions: 1.1.2 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 2.4.7 ChimeraX-BondRot: 2.0.4 ChimeraX-BugReporter: 1.0.1 ChimeraX-BuildStructure: 2.13 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.3.4 ChimeraX-ButtonPanel: 1.0.1 ChimeraX-CageBuilder: 1.0.1 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.4 ChimeraX-ChangeChains: 1.1 ChimeraX-CheckWaters: 1.4 ChimeraX-ChemGroup: 2.0.1 ChimeraX-Clashes: 2.3 ChimeraX-ColorActions: 1.0.5 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.6 ChimeraX-CommandLine: 1.2.5 ChimeraX-ConnectStructure: 2.0.1 ChimeraX-Contacts: 1.0.1 ChimeraX-Core: 1.9.dev202409060131 ChimeraX-CoreFormats: 1.2 ChimeraX-coulombic: 1.4.4 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0.1 ChimeraX-DataFormats: 1.2.3 ChimeraX-DeepMutationalScan: 1.0 ChimeraX-Dicom: 1.2.4 ChimeraX-DiffPlot: 1.0 ChimeraX-DistMonitor: 1.4.2 ChimeraX-DockPrep: 1.1.3 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ESMFold: 1.0 ChimeraX-FileHistory: 1.0.1 ChimeraX-Foldseek: 1.0.1 ChimeraX-FunctionKey: 1.0.1 ChimeraX-Geometry: 1.3 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 1.4.1 ChimeraX-Hbonds: 2.5 ChimeraX-Help: 1.3 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.1 ChimeraX-ImageFormats: 1.2 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0.3 ChimeraX-ItemsInspection: 1.0.1 ChimeraX-IUPAC: 1.0 ChimeraX-Label: 1.1.11 ChimeraX-ListInfo: 1.2.2 ChimeraX-Log: 1.2 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.9.1 ChimeraX-Map: 1.3 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0.1 ChimeraX-MapFilter: 2.0.1 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.1.1 ChimeraX-Markers: 1.0.1 ChimeraX-Mask: 1.0.2 ChimeraX-MatchMaker: 2.1.6 ChimeraX-MCopy: 1.0 ChimeraX-MDcrds: 2.7.1 ChimeraX-MedicalToolbar: 1.1 ChimeraX-Meeting: 1.0.1 ChimeraX-MLP: 1.1.1 ChimeraX-mmCIF: 2.14.2 ChimeraX-MMTF: 2.2 ChimeraX-Modeller: 1.5.17 ChimeraX-ModelPanel: 1.5 ChimeraX-ModelSeries: 1.0.1 ChimeraX-Mol2: 2.0.3 ChimeraX-Mole: 1.0 ChimeraX-Morph: 1.0.2 ChimeraX-MouseModes: 1.2 ChimeraX-Movie: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nifti: 1.2 ChimeraX-NMRSTAR: 1.0.2 ChimeraX-NRRD: 1.2 ChimeraX-Nucleotides: 2.0.3 ChimeraX-OpenCommand: 1.13.5 ChimeraX-OrthoPick: 1.0.1 ChimeraX-PDB: 2.7.6 ChimeraX-PDBBio: 1.0.1 ChimeraX-PDBLibrary: 1.0.4 ChimeraX-PDBMatrices: 1.0 ChimeraX-PickBlobs: 1.0.1 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1.2 ChimeraX-PubChem: 2.2 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1.2 ChimeraX-RemoteControl: 1.0 ChimeraX-RenderByAttr: 1.4.5 ChimeraX-RenumberResidues: 1.1 ChimeraX-ResidueFit: 1.0.1 ChimeraX-RestServer: 1.3 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 4.0 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.5.1 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0.2 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0.1 ChimeraX-Segmentations: 3.1.6 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.13 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0.1 ChimeraX-Shortcuts: 1.2.0 ChimeraX-ShowSequences: 1.0.3 ChimeraX-SideView: 1.0.1 ChimeraX-Smiles: 2.1.2 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.18.1 ChimeraX-STL: 1.0.1 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.2.1 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0.1 ChimeraX-SwapAA: 2.0.1 ChimeraX-SwapRes: 2.5 ChimeraX-TapeMeasure: 1.0 ChimeraX-TaskManager: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.2.3 ChimeraX-ToolshedUtils: 1.2.4 ChimeraX-Topography: 1.0 ChimeraX-ToQuest: 1.0 ChimeraX-Tug: 1.0.1 ChimeraX-UI: 1.40.1 ChimeraX-uniprot: 2.3.1 ChimeraX-UnitCell: 1.0.1 ChimeraX-ViewDockX: 1.4.4 ChimeraX-VIPERdb: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0.1 ChimeraX-vrml: 1.0 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0.2 ChimeraX-WebServices: 1.1.4 ChimeraX-Zone: 1.0.1 colorama: 0.4.6 comm: 0.2.2 comtypes: 1.4.5 contourpy: 1.3.0 cxservices: 1.2.3 cycler: 0.12.1 Cython: 3.0.10 debugpy: 1.8.5 decorator: 5.1.1 docutils: 0.21.2 executing: 2.1.0 filelock: 3.15.4 fonttools: 4.53.1 funcparserlib: 2.0.0a0 glfw: 2.7.0 grako: 3.16.5 h5py: 3.11.0 html2text: 2024.2.26 idna: 3.8 ihm: 1.3 imagecodecs: 2024.6.1 imagesize: 1.4.1 ipykernel: 6.29.5 ipython: 8.26.0 ipywidgets: 8.1.5 jedi: 0.19.1 Jinja2: 3.1.4 jupyter_client: 8.6.2 jupyter_core: 5.7.2 jupyterlab_widgets: 3.0.13 kiwisolver: 1.4.7 line_profiler: 4.1.3 lxml: 5.2.2 lz4: 4.3.3 MarkupSafe: 2.1.5 matplotlib: 3.9.2 matplotlib-inline: 0.1.7 msgpack: 1.0.8 ndindex: 1.8 nest-asyncio: 1.6.0 netCDF4: 1.6.5 networkx: 3.3 nibabel: 5.2.0 nptyping: 2.5.0 numexpr: 2.10.1 numpy: 1.26.4 openvr: 1.26.701 packaging: 23.2 ParmEd: 4.2.2 parso: 0.8.4 pep517: 0.13.1 pillow: 10.4.0 pip: 24.2 pkginfo: 1.11.1 platformdirs: 4.2.2 prompt_toolkit: 3.0.47 psutil: 6.0.0 pure_eval: 0.2.3 py-cpuinfo: 9.0.0 pycollada: 0.8 pydicom: 2.4.4 Pygments: 2.18.0 pynmrstar: 3.3.4 pynrrd: 1.0.0 PyOpenGL: 3.1.7 PyOpenGL-accelerate: 3.1.7 pyopenxr: 1.0.3401 pyparsing: 3.1.4 pyproject_hooks: 1.1.0 PyQt6-commercial: 6.7.1 PyQt6-Qt6: 6.7.2 PyQt6-WebEngine-commercial: 6.7.0 PyQt6-WebEngine-Qt6: 6.7.2 PyQt6-WebEngineSubwheel-Qt6: 6.7.2 PyQt6_sip: 13.8.0 python-dateutil: 2.9.0.post0 pytz: 2024.1 pywin32: 306 pyzmq: 26.2.0 qtconsole: 5.5.2 QtPy: 2.4.1 qtshim: 1.0 RandomWords: 0.4.0 requests: 2.32.3 scipy: 1.14.0 setuptools: 72.1.0 sfftk-rw: 0.8.1 six: 1.16.0 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 soupsieve: 2.6 Sphinx: 8.0.2 sphinx-autodoc-typehints: 2.2.3 sphinxcontrib-applehelp: 2.0.0 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 2.0.0 sphinxcontrib-htmlhelp: 2.1.0 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 2.0.0 sphinxcontrib-serializinghtml: 2.0.0 stack-data: 0.6.3 superqt: 0.6.3 tables: 3.10.1 tcia_utils: 1.5.1 tifffile: 2024.7.24 tinyarray: 1.2.4 tornado: 6.4.1 traitlets: 5.14.3 typing_extensions: 4.12.2 tzdata: 2024.1 urllib3: 2.2.2 wcwidth: 0.2.13 webcolors: 24.6.0 wheel: 0.43.0 wheel-filename: 1.4.1 widgetsnbextension: 4.0.13 WMI: 1.5.1
Change History (27)
comment:1 by , 14 months ago
Cc: | added |
---|---|
Component: | Unassigned → Build System |
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Core include files not found |
comment:2 by , 14 months ago
Milestone: | → 1.9 |
---|
comment:3 by , 14 months ago
comment:4 by , 14 months ago
I looked at the daily build on Windows and I can see that the core include folders (where that missing header is) are there. Trying to build clipper on my mac, I get the same error as you. That's weird! Internal bundles for some reason don't have to declare the core as a build dependency, but even putting build=true next to the Core dependency in your bundle_info.xml doesn't work for me.
comment:5 by , 14 months ago
Yeah, I tried putting build=true beside ChimeraX-Core as well. Sorry for not mentioning that. On Fri, Sep 6, 2024 at 7:58 PM ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote: > >
comment:6 by , 14 months ago
I wrote an XML to TOML converter so that I could build our documentation on readthedocs without forcing teammates to convert their bundles. I can't guarantee its correctness for clipper, because I only wrote the minimum needed to correctly convert the bundles I needed. However, if you're willing to try it out, run
/c/program\ files/chimerax-daily/bin/chimerax.exe -m chimerax.bundle_builder -c bundle_info.xml > pyproject.toml
in the git repo for clipper. Then move your bundle_info.xml out of the repo temporarily or rename it to something else so it isn't picked up by the devel
command, which still defaults to XML, and remove it from the dependencies of the wheel target in your makefile. I was able to build clipper with TOML bundle builder.
Some differences:
- TOML bundle builder puts dynamic libraries in chimerax/<pkg>/lib instead of chimerax/<pkg>/
- TOML bundle builder didn't pick up your docs DataDir or any of your extra-files
- The converter will create a very overbroad TOML file to try to guarantee correct behavior, e.g. it will add a dependency's include and library paths to every extension even if they're not needed for one or more of them.
I would add clipper's bundle_info.xml to bundle builder's conversion test cases if you went this route.
comment:7 by , 14 months ago
Oh, I just noticed I meant to say "the converter didn't pick up your docs..." rather than "TOML bundle builder didn't". TOML bundle builder can do everything XML bundle builder can do (and more, apparently, given that it builds your bundle). Still, I'm going to look and see why the XML one isn't including headers.
comment:8 by , 14 months ago
Resolution: | → not a bug |
---|---|
Status: | assigned → closed |
You specify your core dependency with ~=1.8.0
. ~=
in PEP440 is the 'compatible release' specifier. See:
https://peps.python.org/pep-0440/#compatible-release
My understanding is that ~=1.8.0
means >=1.8.0, ==1.8.*
, so your build fails as expected when you use the daily build, which has core version 1.9.dev<date>
.
Your specifier should be ~=1.8
, which would expand to >=1.8, == 1.*
. The >=1.8
will override the ==1.*
I was able to build your bundle using XML bundle builder and <Dependency name="ChimeraX-Core" version="~=1.8"/>
comment:9 by , 14 months ago
Greg let me know that you had a restrictive core dependency version to make it so that your bundle didn't show up as compatible with versions of ChimeraX newer than 1.8 on the Toolshed. If that's the case, you should bump your core dependency to ~=1.9.0 (and also your clipper version number).
comment:10 by , 13 months ago
Ah - that's still a change in behaviour from previous versions (where it would refuse to start the build if any of the dependency requirements were unmet). For what it's worth, trying to build in Windows using the .toml version leads to a new failure: library_utils.obj : error LNK2001: unresolved external symbol __imp_GetUserNameA src/lib\libccp4.dll : fatal error LNK1120: 1 unresolved externals From https://stackoverflow.com/questions/4232365/getusername-under-win64 it looks like it's not finding Windows' UserEnv.Lib - something missing in the search path? On Tue, Sep 10, 2024 at 12:49 AM ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote: > >
comment:11 by , 13 months ago
After updating the ChimeraX-Core dependency in bundle_info.xml I still get the same failure on chutil in both Windows and Linux RHEL build (Windows ChimeraX build a few days old; Linux one today's). The Linux error message echoes the full command: subprocess.CalledProcessError: Command '['/opt/rh/gcc-toolset-10/root/usr/bin/gcc', '-pipe', '-fPIC', '-std=gnu99', '-fstack-protector-strong', '-DUSE_DYLD_GLOBAL_NAMESPACE', '-std=gnu11', '-pthread', '-DDYNAMIC_ANNOTATIONS_ENABLED=1', '-DNDEBUG', '-g', '-O3', '-Wall', '-D_FORTIFY=2', '-fstack-protector-strong', '-fPIC', '-std=c++11', '-DCLIPPER_CX_EXPORTS', '-DCLIPPER_VERBOSE', '-DDYNAMIC_LIBRARY=1', '-I/usr/libexec/UCSF-ChimeraX-daily/include', '-I/usr/libexec/UCSF-ChimeraX-daily/lib/python3.11/site-packages/numpy/core/include', '-Isrc/deps', '-I/usr/libexec/UCSF-ChimeraX-daily/lib/python3.11/site-packages/chimerax/atomic_lib/include', '-I/usr/libexec/UCSF-ChimeraX-daily/lib/python3.11/site-packages/chimerax/arrays/include', '-I/usr/libexec/UCSF-ChimeraX-daily/include/python3.11', '-c', 'src/clipper_ext/xtal_mgr.cpp', '-o', 'src/clipper_ext/xtal_mgr.o']' returned non-zero exit status 1. `chutil` appears in the ChimeraX install tree as `/usr/libexec/UCSF-ChimeraX-daily/lib/python3.11/site-packages/chimerax/core/include/chutil`, but `...chimerax/core/include` isn't in the list of includes in the gcc command. I've tried with and without `build="true"` in the ChimeraX-Core dependency declaration - makes no difference. On Wed, Sep 11, 2024 at 11:36 AM ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote: > > > > > > > >
comment:12 by , 13 months ago
Resolution: | not a bug |
---|---|
Status: | closed → reopened |
comment:13 by , 13 months ago
It looks like 3 months ago we removed pkg_resources from bundle builder because it's due to be removed in Python 3.12. When we made that change, we started testing the version of the dependency, so we went from this code:
def _get_bundle_dirs(self, logger, dep): from chimerax.core import toolshed from pkg_resources import Requirement, get_distribution req = Requirement.parse(dep) if not get_distribution(req): raise RuntimeError("unsatisfied dependency: %s" % dep) ts = toolshed.get_toolshed() bundle = ts.find_bundle(req.project_name, logger)
to this code:
def _get_bundle_dirs(self, logger, dep): from chimerax.core import toolshed import importlib.metadata from packaging.requirements import Requirement req = Requirement(dep) d = importlib.metadata.distribution(req.name) if not req.specifier.contains(d.version, prereleases=True): raise RuntimeError("unsatisfied dependency: %s" % dep) ts = toolshed.get_toolshed() bundle = ts.find_bundle(req.name, logger)
"1.9.devXXXXXXXXXXXXXXXXXXXXXXX" isn't contained by "~=1.9.0" even with prereleases=True. I think that's because prereleases=True must apply to prerelease versions /higher/ than 1.9.0, wherease 1.9.0devXXXXXXXXXXXXXXXXXXXXXXXXXXX is considered lower than 1.9.0.
comment:14 by , 13 months ago
Ah. Dumb of me - I should have picked that up. Would be better/less confusing if it could still crash up-front due to the unmet dependency, I think. On Wed, 11 Sep 2024 at 19:45, ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote: > > > > > > > > >
comment:15 by , 13 months ago
Owner: | changed from | to
---|---|
Status: | reopened → assigned |
I think you have to specify that you depend on "~=1.X.dev0" or higher when you're trying to build for a ChimeraX that hasn't been released yet, but I'm reassigning the ticket to Greg because he made the ticket and probably understands the version checking better than I do.
comment:16 by , 13 months ago
Thanks for trying out TOML bundle builder, by the way! I need all the bug reports I can get.
comment:17 by , 13 months ago
To help with code:
$ python3 Python 3.8.17 (default, Aug 10 2023, 18:03:39) [GCC 8.5.0 20210514 (Red Hat 8.5.0-20)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> from packaging.version import Version >>> from packaging.specifiers import Specifier >>> v18 = Version("1.8") >>> v19dev = Version("1.9dev42") >>> v19 = Version("1.9") >>> v18 < v19dev True >>> v19dev < v19 True >>> srelease = Specifier("~=1.9.0") >>> spreview = Specifier("~=1.9dev0") >>> srelease.contains(v19dev, prereleases=True) False >>> spreview.contains(v19dev, prereleases=True) True >>>
comment:18 by , 12 months ago
So I still think the core problem here is that bundle_builder no longer checks for dependency version matching *before* launching into the build, and just carries through until (a) something breaks due to library incompatibility, or (b) it attempts to install the completed bundle and *then* pip realises something's wrong. Just got the below error at the tail end of an ISOLDE build against the Oct 19 ChimeraX daily. Used to be that this sort of dependency incompatibility would lead to an immediate up-front crash. Distribution is in .\dist\ChimeraX_ISOLDE-1.9rc0-cp311-cp311-win_amd64.whl Installing bundle Executing: toolshed install .\dist\ChimeraX_ISOLDE-1.9rc0-cp311-cp311-win_amd64.whl Traceback (most recent call last): File "c:\Program Files\ChimeraX-Daily\bin\Lib\site-packages\chimerax\toolshed_utils\__init__.py", line 528, in _pip_install results = run_logged_pip(command, logger) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "c:\Program Files\ChimeraX-Daily\bin\Lib\site-packages\chimerax\core\python_utils.py", line 143, in run_logged_pip raise RuntimeError(s) RuntimeError: ERROR: Cannot install ChimeraX-ISOLDE, chimerax-atomic==1.58.7, chimerax-atomiclibrary==14.1.8 and chimerax-isolde==1.9rc0 because these package versions have conflicting dependencies. ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts On Thu, Sep 12, 2024 at 11:02 PM ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote: > >
comment:19 by , 12 months ago
Can you push your code to something like a develop branch on the ISOLDE repository so I can download and test it?
comment:21 by , 6 months ago
Owner: | changed from | to
---|
comment:22 by , 5 months ago
OK, I'm revisiting this ticket as we're closing in on a 1.10 release, and I just want to make sure we're still on the same page:
- This new ~1.9dev0 specifier or whatever it is is fine
- The core complaint is that bundle builder doesn't fail fast enough when dependencies are unmet
I'm going to address the second bullet point today, but let me know if you have more concerns or reopen this ticket if I close it before you get around to it.
comment:23 by , 5 months ago
So in the bundle_builder.xml framework it seemed if the dependency versions weren’t me it wouldn’t complain about *that*, but it would fail to provide the associated include dirs. But since I’ve just (more-or-less) finished migrating to pyproject.toml, it’s (a) no longer relevant to me and (b) difficult for me to test. Don’t know if it’s likely to be a problem for anyone else. On Mon, 12 May 2025 at 20:23, ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote: > > > >
comment:24 by , 5 months ago
I'm using ISOLDE's master branch to test which appears to still have bundle_info.xml - I can just keep from updating. What branch are you working on / is it pushed? It might be good to ensure behavioral symmetry.
comment:25 by , 5 months ago
Just merged and pushed into master today - but the version prior to all that isn't going to be able to build against 1.10 because of the OpenMM shift to PyPI (needed some extra work to find its lib and include dirs at compile time). The Clipper plugin might be a better choice - I updated that to toml on May 1, so as long as you haven't pulled after that it should be fine to play with. On Mon, May 12, 2025 at 8:39 PM ChimeraX <ChimeraX-bugs-admin@cgl.ucsf.edu> wrote: > >
comment:26 by , 5 months ago
Bundle builder now checks requirements at the beginning of a build, while it's parsing bundle_info.xml or pyproject.toml
I also made TOML builder monkey-patch get_lib and get_include into OpenMM so maybe you won't need pyproject.toml.in anymore.
comment:27 by , 5 months ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
It's probably not an error on your part. I can see on your GitHub that Clipper uses XML as its metadata format. I think XML bundle builder is supposed to include core header paths automatically. I'll download the daily build and try to build clipper and see what's happening.