Skip to content

Commit 21d81fc

Browse files
authored
[smart_holder] Fix terrible merge accident: PYBIND11_INTERNALS_SH_DEF missing in PYBIND11_INTERNALS_ID and PYBIND11_MODULE_LOCAL_ID (#5159)
* Fix oversight: Add `-DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"` for new `manylinux` job (Manylinux on 🐍 3.13t • GIL). * Fix terrible merge accident introduced with #5085: `PYBIND11_INTERNALS_SH_DEF` was accidentally removed from `PYBIND11_INTERNALS_ID` and `PYBIND11_MODULE_LOCAL_ID`.
1 parent 540c760 commit 21d81fc

File tree

3 files changed

+35
-26
lines changed

3 files changed

+35
-26
lines changed

.github/workflows/ci_sh_def.yml

+1
Original file line numberDiff line numberDiff line change
@@ -235,6 +235,7 @@ jobs:
235235
-DDOWNLOAD_CATCH=ON
236236
-DDOWNLOAD_EIGEN=ON
237237
-DPython_ROOT_DIR=.venv
238+
-DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
238239
239240
- name: Build C++11
240241
run: cmake --build build -j2

.github/workflows/ci_sh_def.yml.patch

+30-22
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
--- ci.yml 2024-06-09 23:55:50.405348417 -0700
2-
+++ ci_sh_def.yml 2024-06-09 23:56:22.061331136 -0700
1+
--- ci.yml 2024-06-10 13:25:02.926609611 -0700
2+
+++ ci_sh_def.yml 2024-06-10 15:09:50.700252443 -0700
33
@@ -1,4 +1,16 @@
44
-name: CI
55
+# PLEASE KEEP THIS GROUP OF FILES IN SYNC AT ALL TIMES:
@@ -51,23 +51,31 @@
5151
-DPYBIND11_INTERNALS_VERSION=10000000
5252
${{ matrix.args }}
5353

54-
@@ -293,6 +308,7 @@
54+
@@ -220,6 +235,7 @@
55+
-DDOWNLOAD_CATCH=ON
56+
-DDOWNLOAD_EIGEN=ON
57+
-DPython_ROOT_DIR=.venv
58+
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
59+
60+
- name: Build C++11
61+
run: cmake --build build -j2
62+
@@ -293,6 +309,7 @@
5563
-DDOWNLOAD_CATCH=ON
5664
-DDOWNLOAD_EIGEN=ON
5765
-DCMAKE_CXX_STANDARD=17
5866
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
5967

6068
- name: Build
6169
run: cmake --build build -j 2
62-
@@ -361,6 +377,7 @@
70+
@@ -361,6 +378,7 @@
6371
-DPYBIND11_WERROR=ON
6472
-DDOWNLOAD_CATCH=ON
6573
-DCMAKE_CXX_STANDARD=${{ matrix.std }}
6674
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
6775
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
6876

6977
- name: Build
70-
@@ -390,7 +407,7 @@
78+
@@ -390,7 +408,7 @@
7179
run: apt-get update && DEBIAN_FRONTEND="noninteractive" apt-get install -y cmake git python3-dev python3-pytest python3-numpy
7280

7381
- name: Configure
@@ -76,7 +84,7 @@
7684

7785
- name: Build
7886
run: cmake --build build -j2 --verbose
79-
@@ -478,7 +495,7 @@
87+
@@ -478,7 +496,7 @@
8088
cmake -S . -B build -DDOWNLOAD_CATCH=ON \
8189
-DCMAKE_CXX_STANDARD=17 \
8290
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") \
@@ -85,127 +93,127 @@
8593
-DPYBIND11_TEST_FILTER="test_smart_ptr.cpp"
8694

8795
- name: Build
88-
@@ -532,6 +549,7 @@
96+
@@ -532,6 +550,7 @@
8997
-DPYBIND11_WERROR=ON
9098
-DDOWNLOAD_CATCH=ON
9199
-DCMAKE_CXX_STANDARD=${{ matrix.std }}
92100
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
93101
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
94102

95103
- name: Build
96-
@@ -554,6 +572,7 @@
104+
@@ -554,6 +573,7 @@
97105
-DPYBIND11_WERROR=ON
98106
-DDOWNLOAD_CATCH=ON
99107
-DCMAKE_CXX_STANDARD=${{ matrix.std }}
100108
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
101109
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
102110
"-DPYBIND11_TEST_OVERRIDE=test_call_policies.cpp;test_gil_scoped.cpp;test_thread.cpp"
103111

104-
@@ -603,6 +622,7 @@
112+
@@ -603,6 +623,7 @@
105113
-DDOWNLOAD_CATCH=ON \
106114
-DDOWNLOAD_EIGEN=OFF \
107115
-DCMAKE_CXX_STANDARD=11 \
108116
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT" \
109117
-DCMAKE_CXX_COMPILER=$(which icpc) \
110118
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
111119

112-
@@ -635,6 +655,7 @@
120+
@@ -635,6 +656,7 @@
113121
-DDOWNLOAD_CATCH=ON \
114122
-DDOWNLOAD_EIGEN=OFF \
115123
-DCMAKE_CXX_STANDARD=17 \
116124
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT" \
117125
-DCMAKE_CXX_COMPILER=$(which icpc) \
118126
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
119127

120-
@@ -713,6 +734,7 @@
128+
@@ -713,6 +735,7 @@
121129
-DDOWNLOAD_CATCH=ON
122130
-DDOWNLOAD_EIGEN=ON
123131
-DCMAKE_CXX_STANDARD=11
124132
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
125133
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
126134

127135
- name: Build
128-
@@ -763,6 +785,7 @@
136+
@@ -763,6 +786,7 @@
129137
cmake ../pybind11-tests
130138
-DDOWNLOAD_CATCH=ON
131139
-DPYBIND11_WERROR=ON
132140
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
133141
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
134142
working-directory: /build-tests
135143

136-
@@ -858,6 +881,7 @@
144+
@@ -858,6 +882,7 @@
137145
-DPYBIND11_WERROR=ON
138146
-DDOWNLOAD_CATCH=ON
139147
-DDOWNLOAD_EIGEN=ON
140148
+ -DCMAKE_CXX_FLAGS="/GR /EHsc /DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
141149
${{ matrix.args }}
142150
- name: Build C++11
143151
run: cmake --build build -j 2
144-
@@ -912,6 +936,7 @@
152+
@@ -912,6 +937,7 @@
145153
-DPYBIND11_WERROR=ON
146154
-DDOWNLOAD_CATCH=ON
147155
-DDOWNLOAD_EIGEN=ON
148156
+ -DCMAKE_CXX_FLAGS="/GR /EHsc /DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
149157
${{ matrix.args }}
150158
- name: Build C++11
151159
run: cmake --build build --config Debug -j 2
152-
@@ -954,6 +979,7 @@
160+
@@ -954,6 +980,7 @@
153161
-DDOWNLOAD_CATCH=ON
154162
-DDOWNLOAD_EIGEN=ON
155163
-DCMAKE_CXX_STANDARD=20
156164
+ -DCMAKE_CXX_FLAGS="/GR /EHsc /DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
157165

158166
- name: Build C++20
159167
run: cmake --build build -j 2
160-
@@ -974,6 +1000,7 @@
168+
@@ -974,6 +1001,7 @@
161169
-DDOWNLOAD_CATCH=ON
162170
-DDOWNLOAD_EIGEN=ON
163171
-DCMAKE_CXX_STANDARD=20
164172
+ -DCMAKE_CXX_FLAGS="/GR /EHsc /DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
165173
"-DPYBIND11_TEST_OVERRIDE=test_call_policies.cpp;test_gil_scoped.cpp;test_thread.cpp"
166174

167175
- name: Build C++20 - Exercise cmake -DPYBIND11_TEST_OVERRIDE
168-
@@ -1026,6 +1053,7 @@
176+
@@ -1026,6 +1054,7 @@
169177
run: >-
170178
cmake -G "MinGW Makefiles" -DCMAKE_CXX_STANDARD=11 -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON
171179
-DPYTHON_EXECUTABLE=$(python -c "import sys; print(sys.executable)")
172180
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
173181
-S . -B build
174182

175183
- name: Build C++11
176-
@@ -1047,6 +1075,7 @@
184+
@@ -1047,6 +1076,7 @@
177185
run: >-
178186
cmake -G "MinGW Makefiles" -DCMAKE_CXX_STANDARD=14 -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON
179187
-DPYTHON_EXECUTABLE=$(python -c "import sys; print(sys.executable)")
180188
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
181189
-S . -B build2
182190

183191
- name: Build C++14
184-
@@ -1068,6 +1097,7 @@
192+
@@ -1068,6 +1098,7 @@
185193
run: >-
186194
cmake -G "MinGW Makefiles" -DCMAKE_CXX_STANDARD=17 -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON
187195
-DPYTHON_EXECUTABLE=$(python -c "import sys; print(sys.executable)")
188196
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
189197
-S . -B build3
190198

191199
- name: Build C++17
192-
@@ -1135,6 +1165,7 @@
200+
@@ -1135,6 +1166,7 @@
193201
-DDOWNLOAD_EIGEN=ON
194202
-DCMAKE_CXX_COMPILER=clang++
195203
-DCMAKE_CXX_STANDARD=17
196204
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
197205

198206
- name: Build
199207
run: cmake --build . -j 2
200-
@@ -1200,6 +1231,7 @@
208+
@@ -1200,6 +1232,7 @@
201209
-DDOWNLOAD_EIGEN=ON
202210
-DCMAKE_CXX_COMPILER=clang++
203211
-DCMAKE_CXX_STANDARD=17
204212
+ -DCMAKE_CXX_FLAGS="-DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT"
205213
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
206214

207215
- name: Build
208-
@@ -1223,6 +1255,7 @@
216+
@@ -1223,6 +1256,7 @@
209217
-DDOWNLOAD_EIGEN=ON
210218
-DCMAKE_CXX_COMPILER=clang++
211219
-DCMAKE_CXX_STANDARD=17

include/pybind11/detail/internals.h

+4-4
Original file line numberDiff line numberDiff line change
@@ -329,13 +329,13 @@ struct type_info {
329329

330330
#define PYBIND11_INTERNALS_ID \
331331
"__pybind11_internals_v" PYBIND11_TOSTRING(PYBIND11_INTERNALS_VERSION) \
332-
PYBIND11_INTERNALS_KIND PYBIND11_COMPILER_TYPE PYBIND11_STDLIB \
333-
PYBIND11_BUILD_ABI PYBIND11_BUILD_TYPE "__"
332+
PYBIND11_INTERNALS_KIND PYBIND11_COMPILER_TYPE PYBIND11_STDLIB PYBIND11_BUILD_ABI \
333+
PYBIND11_BUILD_TYPE PYBIND11_INTERNALS_SH_DEF "__"
334334

335335
#define PYBIND11_MODULE_LOCAL_ID \
336336
"__pybind11_module_local_v" PYBIND11_TOSTRING(PYBIND11_INTERNALS_VERSION) \
337-
PYBIND11_INTERNALS_KIND PYBIND11_COMPILER_TYPE PYBIND11_STDLIB \
338-
PYBIND11_BUILD_ABI PYBIND11_BUILD_TYPE "__"
337+
PYBIND11_INTERNALS_KIND PYBIND11_COMPILER_TYPE PYBIND11_STDLIB PYBIND11_BUILD_ABI \
338+
PYBIND11_BUILD_TYPE PYBIND11_INTERNALS_SH_DEF "__"
339339

340340
/// Each module locally stores a pointer to the `internals` data. The data
341341
/// itself is shared among modules with the same `PYBIND11_INTERNALS_ID`.

0 commit comments

Comments
 (0)