Skip to content

Use intro-installed.json instead of intro-install-plan.json to map files #105

Closed
@lithomas1

Description

@lithomas1

Currently, meson uses intro-install-plan.json to map files. However, for some reason, meson doesn't list installed directories, and also will list files that will not be installed.

For example, on Windows, when doing python -m build, the build will fail on the mapping step, as it cannot find the pdb file(which is listed in the install-plan.json file).
FWIW, meson will also not find this file, but it will skip it instead of erroring out, and the installed.json file will not contain it. e.g.

File 'pandas\\_libs\\window\\indexers.cp38-win_amd64.pdb' not found, skipping
This probably makes sense, as meson-python is building in release mode, so I would presume meson is deleting/not building the .pdb files which are used for debugging.

In addition, intro-install-plan.json will miss directories installed by install_subdir.
(I am installing into the python platlibdir like install_subdir('somedir', install_dir: get_option('python.platlibdir') / 'pandas/...')

I am currently using this as an alternative to py.install_sources and listing every file, which would create a ton of boilerplate code.

So, I think meson-python should switch to mapping files from installed.json or a combination of installed.json and install-plan.json

My code can be found here https://github.com/lithomas1/pandas/tree/meson-poc.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingdependency-bugA bug experienced by users of meson-python caused by a dependency, rather than in code in this repo

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions