2
0
mirror of https://github.com/boostorg/python.git synced 2026-01-20 16:52:15 +00:00

Compare commits

...

5 Commits

Author SHA1 Message Date
Stefan Seefeld
8b7a8ccc85 Test multiple Python versions. 2025-03-18 16:00:49 -04:00
Aditya Pillai
3e7be69e1e Conditionally use Py_REFCNT 2025-03-10 15:10:12 -04:00
Aditya Pillai
cbdf1ce2a1 Use Py_REFCNT instead of ->ob_refcnt
Py_REFCNT was stabilized in 3.9, uses this official API instead of the
`ob_refcnt` field that doesn't exist in the free-threaded build of 3.13.
2025-03-10 15:10:12 -04:00
Stefan Seefeld
4fe3403584 Make sure to pass C++ version to preprocessor as well. 2025-02-01 22:55:02 -05:00
Stefan Seefeld
b1b43f1e1a Fix homebrew include path. 2025-02-01 22:55:02 -05:00
3 changed files with 14 additions and 4 deletions

View File

@@ -9,7 +9,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: [3.8.10]
python-version: ['3.8.10', '3.12']
cxx: [clang++]
std: [c++11, c++14] # TODO: c++17 is failing !
@@ -32,17 +32,19 @@ jobs:
faber -v
sed -e "s/\$PYTHON/python/g" .ci/faber > ~/.faber
faber \
--with-boost-include=/opt/homebrew/Cellar/boost/1.86.0/include \
--with-boost-include=$(brew --prefix boost)/include \
--builddir=build \
cxx.name=${{ matrix.cxx }} \
cxxflags=-std=${{ matrix.std }} \
cppflags=-std=${{ matrix.std }} \
-j`sysctl -n hw.ncpu`
- name: test
run: |
faber \
--with-boost-include=/opt/homebrew/Cellar/boost/1.86.0/include \
--with-boost-include=$(brew --prefix boost)/include \
--builddir=build\
cxx.name=${{ matrix.cxx }} \
cxxflags=-std=${{ matrix.std }} \
cppflags=-std=${{ matrix.std }} \
-j`sysctl -n hw.ncpu` \
test.report

View File

@@ -39,6 +39,7 @@ jobs:
--builddir=build \
cxx.name=${{ matrix.cxx }} \
cxxflags=-std=${{ matrix.std }} \
cppflags=-std=${{ matrix.std }} \
-j`nproc`
- name: test
run: |
@@ -47,5 +48,6 @@ jobs:
--builddir=build \
cxx.name=${{ matrix.cxx }} \
cxxflags=-std=${{ matrix.std }} \
cppflags=-std=${{ matrix.std }} \
-j`nproc` \
test.report

View File

@@ -222,7 +222,13 @@ namespace
, char const* ref_type)
{
handle<> holder(source);
if (source->ob_refcnt <= 1)
if (
#if PY_VERSION_HEX < 0x03090000
source->ob_refcnt
#else
Py_REFCNT(source)
#endif
<= 1)
{
handle<> msg(
#if PY_VERSION_HEX >= 0x3000000