Page MenuHomeSoftware Heritage

setup.py: Install swh_ql.so alongside .py files, so it can be seen by pkg_resources
ClosedPublic

Authored by vlorentz on Jul 28 2021, 3:10 PM.

Details

Summary

Like this:

ql_rel_paths = [
    "swh_ql.so",  # installed
    "../../query_language/swh_ql.so",  # development
]
for ql_rel_path in ql_rel_paths:
    ql_path = resource_filename("swh.search", ql_rel_path)
    if os.path.exists(ql_path):
        break
else:
    assert False, 'not found'

search_ql = Language(ql_path, "swh_search_ql")

data_files is not designed to be accessed from the same Python
package, but to write files in standard locations (typically
.desktop files in /usr/share) that other packages read with
their own discovery mechanisms.

Diff Detail

Repository
rDSEA Archive search
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Build is green

Patch application report for D6039 (id=21834)

Rebasing onto 5f786a5c5e...

Current branch diff-target is up to date.
Changes applied before test
commit c34011b7c7621e872f96c5625543228324085133
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Wed Jul 28 15:08:29 2021 +0200

    setup.py: Install swh_ql.so alongside .py files, so it can be seen by pkg_resources
    
    Like this:
ql_rel_paths = [
    "swh_ql.so",  # installed
    "../../query_language/swh_ql.so",  # development
]
for ql_rel_path in ql_rel_paths:
    ql_path = resource_filename("swh.search", ql_rel_path)
    if os.path.exists(ql_path):
        break
else:
    assert False, 'not found'

search_ql = Language(ql_path, "swh_search_ql")
```

`data_files` is not designed to be accessed from the same Python
package, but to write files in standard locations (typically
`.desktop` files in /usr/share) that other packages read with
their own discovery mechanisms.
See https://jenkins.softwareheritage.org/job/DSEA/job/tests-on-diff/242/ for more details.
This revision is now accepted and ready to land.Jul 29 2021, 9:44 AM