Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use scikit-build #673

Draft
wants to merge 9 commits into
base: main
Choose a base branch
from
Draft

Use scikit-build #673

wants to merge 9 commits into from

Commits on Sep 25, 2024

  1. Use scikit-build-core

    Signed-off-by: Pablo Galindo <[email protected]>
    pablogsal authored and godlygeek committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    af30828 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a43f149 View commit details
    Browse the repository at this point in the history
  3. Drop CYTHON_TEST_MACROS / MEMRAY_MINIMIZE_INLINING

    These environment variables previously allowed us to conditionally
    enable extra safety checks in our Cython code, or conditionally disable
    optimizations that might break tools like Valgrind. Now, we control this
    based on the CMake build type, so that release builds have the extra
    optimizations and debug builds don't, and so that debug builds have the
    extra safety checks and release builds don't.
    
    Signed-off-by: Matt Wozniski <[email protected]>
    godlygeek committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    e276342 View commit details
    Browse the repository at this point in the history
  4. tests: Avoid clobbering environment variables

    Some tests were erroneously removing all environment variables from the
    environment and passing along an environment consisting of only a single
    variable. Since this removes environment variables like $PATH, this
    breaks automatic rebuilds -- they can't find the compiler!
    
    Signed-off-by: Matt Wozniski <[email protected]>
    godlygeek committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    491c1dc View commit details
    Browse the repository at this point in the history
  5. tests: Loosen a check on elapsed time

    This test failed in CI because the same time was captured in both
    `end_time` and `start_time`. There's no reason to assume that this took
    more than a millisecond, or that the system clock can give us better
    than millisecond granularity, so it seems more reasonable to simply
    check that the end time is no earlier than the start time. Technically
    even that assumption could be violated, since we're not using
    a monotonic clock, but oh well, this is just tests.
    
    Signed-off-by: Matt Wozniski <[email protected]>
    godlygeek committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    02a351a View commit details
    Browse the repository at this point in the history
  6. Remove our Makefile from .gitignore

    We meant to ignore any Makefile generated by CMake, but we shouldn't be
    ignoring our own hand-written Makefile.
    
    Signed-off-by: Matt Wozniski <[email protected]>
    godlygeek committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    2d04f82 View commit details
    Browse the repository at this point in the history
  7. ci: Set CXXFLAGS in addition to CFLAGS

    `setuptools` uses CFLAGS for both C and C++ builds, but CMake
    distinguishes between them, and only uses CXXFLAGS for C++ builds.
    Whenever we want to set flags that affect both C and C++ builds, ensure
    that we set both CFLAGS and CXXFLAGS.
    
    Signed-off-by: Matt Wozniski <[email protected]>
    godlygeek committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    7363ed4 View commit details
    Browse the repository at this point in the history
  8. docs: Drop the memray3.N entry point

    With `scikit-build-core`, we don't have any way to produce an entry
    point script called `memray3.N` (where `3.N` is the Python version
    Memray was installed for). Drop references to it from the docs.
    
    Signed-off-by: Matt Wozniski <[email protected]>
    godlygeek committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    8becdd3 View commit details
    Browse the repository at this point in the history
  9. Find _inject.abi3.so relative to _memray.*.so

    With an editable `scikit-build-core` install, shared libraries are not
    in the same directory as Python files, so we can no longer locate it
    relative to `__init__.py`.
    
    Signed-off-by: Matt Wozniski <[email protected]>
    godlygeek committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    44ec99f View commit details
    Browse the repository at this point in the history