{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":38581626,"defaultBranch":"master","name":"pybind11","ownerLogin":"pybind","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2015-07-05T19:46:48.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/17565521?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1722914352.0","currentOid":""},"activityList":{"items":[{"before":"96324e618c9d9b724d3ad50e27a093996cc53216","after":null,"ref":"refs/heads/pre-commit-ci-update-config","pushedAt":"2024-08-06T03:19:12.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"}},{"before":"845105383f4a80666330cbf1c9fefa373cbb7425","after":"20551ab3d8de4afd85738e3b31cd9378017da1c4","ref":"refs/heads/master","pushedAt":"2024-08-06T03:19:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"chore(deps): update pre-commit hooks (#5288)\n\nupdates:\r\n- [github.com/astral-sh/ruff-pre-commit: v0.5.0 → v0.5.6](https://github.com/astral-sh/ruff-pre-commit/compare/v0.5.0...v0.5.6)\r\n- [github.com/pre-commit/mirrors-mypy: v1.10.1 → v1.11.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.10.1...v1.11.1)\r\n- [github.com/PyCQA/pylint: v3.2.4 → v3.2.6](https://github.com/PyCQA/pylint/compare/v3.2.4...v3.2.6)\r\n- [github.com/python-jsonschema/check-jsonschema: 0.28.6 → 0.29.1](https://github.com/python-jsonschema/check-jsonschema/compare/0.28.6...0.29.1)\r\n\r\nCo-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>","shortMessageHtmlLink":"chore(deps): update pre-commit hooks (#5288)"}},{"before":null,"after":"96324e618c9d9b724d3ad50e27a093996cc53216","ref":"refs/heads/pre-commit-ci-update-config","pushedAt":"2024-08-05T23:41:29.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"pre-commit-ci[bot]","name":null,"path":"/https/github.com/apps/pre-commit-ci","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/68672?s=80&v=4"},"commit":{"message":"chore(deps): update pre-commit hooks\n\nupdates:\n- [github.com/astral-sh/ruff-pre-commit: v0.5.0 → v0.5.6](https://github.com/astral-sh/ruff-pre-commit/compare/v0.5.0...v0.5.6)\n- [github.com/pre-commit/mirrors-mypy: v1.10.1 → v1.11.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.10.1...v1.11.1)\n- [github.com/PyCQA/pylint: v3.2.4 → v3.2.6](https://github.com/PyCQA/pylint/compare/v3.2.4...v3.2.6)\n- [github.com/python-jsonschema/check-jsonschema: 0.28.6 → 0.29.1](https://github.com/python-jsonschema/check-jsonschema/compare/0.28.6...0.29.1)","shortMessageHtmlLink":"chore(deps): update pre-commit hooks"}},{"before":"a1fd631542ae0d23999b0be7ee47d42c3c902eb9","after":null,"ref":"refs/heads/dependabot/github_actions/actions-75e193b3d7","pushedAt":"2024-08-05T14:07:58.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"henryiii","name":"Henry Schreiner","path":"/https/github.com/henryiii","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4616906?s=80&v=4"}},{"before":"916778df48dc1c05b359ac74303ed18e5104799b","after":"845105383f4a80666330cbf1c9fefa373cbb7425","ref":"refs/heads/master","pushedAt":"2024-08-05T14:07:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"henryiii","name":"Henry Schreiner","path":"/https/github.com/henryiii","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4616906?s=80&v=4"},"commit":{"message":"chore(deps): bump the actions group with 2 updates (#5287)\n\nBumps the actions group with 2 updates: [pypa/cibuildwheel](https://github.com/pypa/cibuildwheel) and [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance).\r\n\r\n\r\nUpdates `pypa/cibuildwheel` from 2.19 to 2.20\r\n- [Release notes](https://github.com/pypa/cibuildwheel/releases)\r\n- [Changelog](https://github.com/pypa/cibuildwheel/blob/main/docs/changelog.md)\r\n- [Commits](https://github.com/pypa/cibuildwheel/compare/v2.19...v2.20)\r\n\r\nUpdates `actions/attest-build-provenance` from 1.3.3 to 1.4.0\r\n- [Release notes](https://github.com/actions/attest-build-provenance/releases)\r\n- [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md)\r\n- [Commits](https://github.com/actions/attest-build-provenance/compare/5e9cb68e95676991667494a6a4e59b8a2f13e1d0...210c1913531870065f03ce1f9440dd87bc0938cd)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: pypa/cibuildwheel\r\n dependency-type: direct:production\r\n update-type: version-update:semver-minor\r\n dependency-group: actions\r\n- dependency-name: actions/attest-build-provenance\r\n dependency-type: direct:production\r\n update-type: version-update:semver-minor\r\n dependency-group: actions\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>","shortMessageHtmlLink":"chore(deps): bump the actions group with 2 updates (#5287)"}},{"before":null,"after":"a1fd631542ae0d23999b0be7ee47d42c3c902eb9","ref":"refs/heads/dependabot/github_actions/actions-75e193b3d7","pushedAt":"2024-08-05T02:31:12.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/https/github.com/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"chore(deps): bump the actions group with 2 updates\n\nBumps the actions group with 2 updates: [pypa/cibuildwheel](https://github.com/pypa/cibuildwheel) and [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance).\n\n\nUpdates `pypa/cibuildwheel` from 2.19 to 2.20\n- [Release notes](https://github.com/pypa/cibuildwheel/releases)\n- [Changelog](https://github.com/pypa/cibuildwheel/blob/main/docs/changelog.md)\n- [Commits](https://github.com/pypa/cibuildwheel/compare/v2.19...v2.20)\n\nUpdates `actions/attest-build-provenance` from 1.3.3 to 1.4.0\n- [Release notes](https://github.com/actions/attest-build-provenance/releases)\n- [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md)\n- [Commits](https://github.com/actions/attest-build-provenance/compare/5e9cb68e95676991667494a6a4e59b8a2f13e1d0...210c1913531870065f03ce1f9440dd87bc0938cd)\n\n---\nupdated-dependencies:\n- dependency-name: pypa/cibuildwheel\n dependency-type: direct:production\n update-type: version-update:semver-minor\n dependency-group: actions\n- dependency-name: actions/attest-build-provenance\n dependency-type: direct:production\n update-type: version-update:semver-minor\n dependency-group: actions\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"chore(deps): bump the actions group with 2 updates"}},{"before":"48f25275c44d52d0ceade122e328dc1f2e48ef44","after":"7c6fe491063d4a7efdfd84c36b3b045cbcd253a0","ref":"refs/heads/smart_holder","pushedAt":"2024-08-04T16:16:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"find . -name '*.h' -o -name '*.cpp' -o -name '*.py' | xargs -n 1 -- sed -i 's/PYBIND11_HAVE_/PYBIND11_HAS_/g' (#5286)","shortMessageHtmlLink":"find . -name '*.h' -o -name '*.cpp' -o -name '*.py' | xargs -n 1 -- s…"}},{"before":"723307283ed7dc03c901fba1da1127c7b16a4a0d","after":"916778df48dc1c05b359ac74303ed18e5104799b","ref":"refs/heads/master","pushedAt":"2024-08-02T19:17:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"fix: typo in documentation (#5284)","shortMessageHtmlLink":"fix: typo in documentation (#5284)"}},{"before":"6765d4e8144eb0b73aa5d20ff738cd462f274ef4","after":"48f25275c44d52d0ceade122e328dc1f2e48ef44","ref":"refs/heads/smart_holder","pushedAt":"2024-07-31T13:17:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"[smart_holder] Bake smart_holder functionality into `class_` and `type_caster_base` (#5257)\n\n* Put bakein branch @ 18b72c0ffa6ff2747ed6c4b869a80adfb8e762c9 on top of smart_holder branch:\r\n\r\nCommands used:\r\n\r\n```\r\ngit checkout bakein\r\ngit diff smart_holder > ~/zd\r\ngit checkout smart_holder\r\ngit checkout -b bakein_sh\r\npatch -p 1 < ~/zd\r\ngit checkout smart_holder \\\r\nMANIFEST.in \\\r\nREADME.rst \\\r\nREADME_smart_holder.rst \\\r\ndocs/advanced/smart_ptrs.rst \\\r\nubench/holder_comparison.cpp \\\r\nubench/holder_comparison.py \\\r\nubench/holder_comparison_extract_sheet_data.py \\\r\nubench/number_bucket.h \\\r\nubench/python/number_bucket.clif\r\ngit add -A\r\n```\r\n\r\n* Add back README_smart_holder.rst in tests/extra_python_package/test_files.py\r\n\r\n* Restore smart_holder_poc.h as-is on smart_holder branch (i.e. undo `PYBIND11_SMART_HOLDER_PADDING`, which was meant for stress-testing only).\r\n\r\n* Insert `std::move()` as suggested by @laramiel\r\n\r\n* `property_cpp_function_sh_*` named specializations, as suggested by @laramiel (https://github.com/pybind/pybind11/pull/5257#discussion_r1688346807)\r\n\r\n* Call `property_cpp_function_classic` member functions, rather than inlining the implementations.\r\n\r\n* Use `PYBIND11_HAVE_INTERNALS_WITH_SMART_HOLDER_SUPPORT` in holder_comparison.cpp (holder_comparison.py is NOT changed accordingly in this commit, i.e. can still only be run if the smart_holder functionality is available).\r\n\r\n* Systematically rename `loaded_as` to `load_as` (`shared_ptr`, `unique_ptr`) as suggested by @laramiel\r\n\r\n* Make change as suggested by @laramiel. This makes it much more obvious that the latest implementation of `smart_holder_from_unique_ptr()` accepts all existing `return_value_policy` enum values except `copy`.\r\n\r\n* Resolve `BAKEIN_WIP: Rewrite comment.` for `property_cpp_function_*` specializations.\r\n\r\n* Resolve `BAKEIN_WIP: Add comment to explain: This is meant for stress-testing only.`\r\n\r\n* Resolve all remaining BAKEIN_WIP (in pybind11/cast.h).\r\n\r\nLeave only two pairs of SMART_HOLDER_BAKEIN_FOLLOW_ON comments: refactoring of copyable_holder_caster, move_only_holder_caster. This is best left until after the smart_holder branch is merged into the master branch.\r\n\r\n* Remove obsolete `using holder_type = smart_holder;` in `load_helper`\r\n\r\n* Add SMART_HOLDER_BAKEIN_FOLLOW_ON comment for `internals::default_holder`\r\n\r\n* README_smart_holder.rst update (line count reduced from 356 to 123).","shortMessageHtmlLink":"[smart_holder] Bake smart_holder functionality into class_ and `typ…"}},{"before":"79fd12b8ccb8cc9c0ab45162529cf2510730e4ec","after":"6765d4e8144eb0b73aa5d20ff738cd462f274ef4","ref":"refs/heads/smart_holder","pushedAt":"2024-07-31T02:23:34.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Tracking ci.yml changes from master.","shortMessageHtmlLink":"Tracking ci.yml changes from master."}},{"before":"2e260b067f565ecd7f8427667ef2f384eceb7f12","after":"723307283ed7dc03c901fba1da1127c7b16a4a0d","ref":"refs/heads/master","pushedAt":"2024-07-30T16:18:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"feat: remove Python 3.7 support (#5191)\n\n* First pass updating misc files, informed by https://github.com/pybind/pybind11/pull/5177/commits\r\n\r\n* Remove jobs using silkeh/clang and gcc docker containers that come with Python 3.7\r\n\r\n* Add silkeh/clang:17-bookworm\r\n\r\n* Add job using GCC 7\r\n\r\n* Revert \"Add job using GCC 7\"\r\n\r\nThis reverts commit 518515a761ac37dc2cf5d0980da82d0de39edc28.\r\n\r\n* Try running in ubuntu-18.04 container under ubuntu-latest (to get GCC 7)\r\n\r\n* Fix `-` vs `:` mixup.\r\n\r\n* This reverts commit b1c4304475b8ad129c12330c7ed7eb85d15ba14a.\r\n\r\nRevert \"Try running in ubuntu:18.04 container under ubuntu-latest (to get GCC 7)\"\r\n\r\nThis reverts commit b203a294bb444fc6ae57a0100fa91dc91b8d3264.\r\n\r\n* `git grep 0x03080000` cleanup.\r\n\r\n* `git grep -I -E '3\\.7'` cleanup.\r\n\r\nRemoves two changes made under pybind/pybind11#3702\r\n\r\n* Revert \"`git grep -I -E '3\\.7'` cleanup.\"\r\n\r\nThis reverts commit bb5b9d187bffbfb61e2977d7eee46b766fa1cce9.\r\n\r\n* Remove comments that are evidently incorrect:\r\n\r\n```\r\n...\r\n-- The CXX compiler identification is Clang 15.0.7\r\n...\r\n- Found Python: /usr/bin/python3.9 (found suitable version \"3.9.2\", minimum required is \"3.7\") found components: Interpreter Development.Module Development.Embed\r\n...\r\n/__w/pybind11/pybind11/include/pybind11/gil.h:150:13: error: 'auto key' can be declared as 'auto *key' [readability-qualified-auto,-warnings-as-errors]\r\n auto key = internals.tstate;\r\n ^~~~~\r\n auto *\r\n/__w/pybind11/pybind11/include/pybind11/gil.h:174:13: error: 'auto key' can be declared as 'auto *key' [readability-qualified-auto,-warnings-as-errors]\r\n auto key = detail::get_internals().tstate;\r\n ^~~~~\r\n auto *\r\n```\r\n\r\n* .github/workflows/configure.yml: Change from Python 3.7 to 3.8\r\n\r\n* Misc cleanup pass\r\n\r\n* Miscellaneous changes based on manual review of the `git grep` matches below:\r\n\r\n```\r\ngit_grep_37_38.sh |& sort | uniq -c\r\n```\r\n\r\nWith git_grep_37_38.sh:\r\n\r\n```\r\nset -x\r\ngit grep 0x0307\r\ngit grep 0x0308\r\ngit grep PY_MINOR_VERSION\r\ngit grep PYPY_VERSION\r\ngit grep -I -E '3\\.7'\r\ngit grep -I -E '3\\.8'\r\ngit grep -I -E '\\(3, 7'\r\ngit grep -I -E '\\(3, 8'\r\ngit grep -I -E '3[^A-Za-z0-9.]+7'\r\ngit grep -I -E '3[^A-Za-z0-9.]+8'\r\n```\r\n\r\nOutput:\r\n\r\n```\r\n 1 .appveyor.yml: $env:CMAKE_INCLUDE_PATH = \"eigen-3.3.7;$env:CMAKE_INCLUDE_PATH\"\r\n 1 .appveyor.yml: 7z x eigen-3.3.7.zip -y > $null\r\n 1 .appveyor.yml: Start-FileDownload 'https://gitlab.com/libeigen/eigen/-/archive/3.3.7/eigen-3.3.7.zip'\r\n 1 CMakeLists.txt: # Bug in macOS CMake < 3.7 is unable to download catch\r\n 1 CMakeLists.txt: elseif(WINDOWS AND CMAKE_VERSION VERSION_LESS 3.8)\r\n 1 CMakeLists.txt: if(OSX AND CMAKE_VERSION VERSION_LESS 3.7)\r\n 1 CMakeLists.txt: message(WARNING \"CMAKE 3.7+ needed on macOS to download catch, and newer HIGHLY recommended\")\r\n 1 CMakeLists.txt: message(WARNING \"CMAKE 3.8+ tested on Windows, previous versions untested\")\r\n 1 CMakeLists.txt: # Only tested with 3.8+ in CI.\r\n 1 docs/advanced/functions.rst:Python 3.8 introduced a new positional-only argument syntax, using ``/`` in the\r\n 1 docs/changelog.rst:* Adapt pybind11 to a C API convention change in Python 3.8. `#1950\r\n 1 docs/changelog.rst:* Allow thread termination to be avoided during shutdown for CPython 3.7+ via\r\n 1 docs/changelog.rst: considered as conversion, consistent with Python 3.8+.\r\n 1 docs/changelog.rst: CPython 3.8 and 3.9 debug builds.\r\n 1 docs/changelog.rst:* Enum now has an ``__index__`` method on Python <3.8 too.\r\n 1 docs/changelog.rst: on Python 3.8. `#1780 `_.\r\n 1 docs/changelog.rst:* PyPy 3.10 support was added, PyPy 3.7 support was dropped.\r\n 2 docs/changelog.rst:* Support PyPy 7.3.7 and the PyPy3.8 beta. Test python-3.11 on PRs with the\r\n 1 docs/changelog.rst:* Use ``macos-13`` (Intel) for CI jobs for now (will drop Python 3.7 soon).\r\n 1 docs/changelog.rst:* Use new Python 3.7 Thread Specific Storage (TSS) implementation if available.\r\n 1 docs/compiling.rst: cmake -DPYBIND11_PYTHON_VERSION=3.8 ..\r\n 1 docs/compiling.rst: find_package(Python 3.8 COMPONENTS Interpreter Development REQUIRED)\r\n 1 docs/limitations.rst:- PyPy3 7.3.1 and 7.3.2 have issues with several tests on 32-bit Windows.\r\n 1 docs/requirements.txt:idna==3.7 \\\r\n 1 + git grep 0x0307\r\n 1 + git grep 0x0308\r\n 1 + git grep -I -E '\\(3, 7'\r\n 1 + git grep -I -E '3\\.7'\r\n 1 + git grep -I -E '\\(3, 8'\r\n 1 + git grep -I -E '3\\.8'\r\n 1 + git grep -I -E '3[^A-Za-z0-9.]+7'\r\n 1 + git grep -I -E '3[^A-Za-z0-9.]+8'\r\n 1 + git grep PY_MINOR_VERSION\r\n 1 + git grep PYPY_VERSION\r\n 2 .github/workflows/ci.yml: - '3.8'\r\n 1 .github/workflows/ci.yml: - 3.8\r\n 1 .github/workflows/ci.yml: - name: Add Python 3.8\r\n 1 .github/workflows/ci.yml: - 'pypy-3.8'\r\n 2 .github/workflows/ci.yml: python: '3.8'\r\n 1 .github/workflows/ci.yml: - python: '3.8'\r\n 1 .github/workflows/ci.yml: - python: 3.8\r\n 1 .github/workflows/ci.yml: python: 'pypy-3.8'\r\n 1 .github/workflows/configure.yml: cmake: \"3.8\"\r\n 1 .github/workflows/configure.yml: name: 🐍 3.8 • CMake ${{ matrix.cmake }} • ${{ matrix.runs-on }}\r\n 1 .github/workflows/configure.yml: - name: Setup Python 3.8\r\n 1 .github/workflows/configure.yml: python-version: 3.8\r\n 1 .github/workflows/pip.yml: name: 🐍 3.8 • 📦 & 📦 tests • ubuntu-latest\r\n 1 .github/workflows/pip.yml: name: 🐍 3.8 • 📦 tests • windows-latest\r\n 2 .github/workflows/pip.yml: - name: Setup 🐍 3.8\r\n 2 .github/workflows/pip.yml: python-version: 3.8\r\n 2 include/pybind11/cast.h:#if !defined(PYPY_VERSION)\r\n 2 include/pybind11/cast.h:#if defined(PYPY_VERSION)\r\n 2 include/pybind11/cast.h: // PyPy: 7.3.7's 3.8 does not implement PyLong_*'s __index__ calls.\r\n 5 include/pybind11/detail/class.h:#if !defined(PYPY_VERSION)\r\n 1 include/pybind11/detail/class.h:#if defined(PYPY_VERSION)\r\n 1 include/pybind11/detail/class.h: // This was not needed before Python 3.8 (Python issue 35810)\r\n 1 include/pybind11/detail/common.h: && !defined(PYPY_VERSION) && !defined(PYBIND11_ASSERT_GIL_HELD_INCREF_DECREF)\r\n 2 include/pybind11/detail/common.h:# error \"PYTHON < 3.8 IS UNSUPPORTED. pybind11 v2.13 was the last to support Python 3.7.\"\r\n 1 include/pybind11/detail/common.h:#if defined(PYPY_VERSION) && !defined(PYBIND11_SIMPLE_GIL_MANAGEMENT)\r\n 1 include/pybind11/detail/common.h:#if PY_VERSION_HEX < 0x03080000\r\n 1 include/pybind11/detail/common.h: = PYBIND11_TOSTRING(PY_MAJOR_VERSION) \".\" PYBIND11_TOSTRING(PY_MINOR_VERSION); \\\r\n 1 include/pybind11/detail/internals.h: // called. PYBIND11_TLS_FREE is PyThread_tss_free on python 3.7+. On older python, it does\r\n 1 include/pybind11/detail/internals.h:#if PYBIND11_INTERNALS_VERSION <= 4 || defined(PYPY_VERSION)\r\n 1 include/pybind11/detail/internals.h:// The old Python Thread Local Storage (TLS) API is deprecated in Python 3.7 in favor of the new\r\n 1 include/pybind11/detail/type_caster_base.h:#if defined(PYPY_VERSION)\r\n 1 include/pybind11/embed.h:# define PYBIND11_PYCONFIG_SUPPORT_PY_VERSION_HEX (0x03080000)\r\n 1 include/pybind11/embed.h:#if defined(PYPY_VERSION)\r\n 1 include/pybind11/eval.h: // globals if not yet present. Python 3.8 made PyRun_String behave\r\n 2 include/pybind11/eval.h:#if defined(PYPY_VERSION)\r\n 2 include/pybind11/eval.h: // was missing from PyPy3.8 7.3.7.\r\n 2 include/pybind11/gil.h: /// allowed during shutdown. Check _Py_IsFinalizing() on Python 3.7+, and\r\n 1 include/pybind11/pybind11.h:#if !defined(PYPY_VERSION)\r\n 4 include/pybind11/pybind11.h:#if !defined(PYPY_VERSION) && PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION == 9\r\n 1 include/pybind11/pytypes.h:#endif //! defined(PYPY_VERSION)\r\n 2 include/pybind11/pytypes.h:#if !defined(PYPY_VERSION)\r\n 1 include/pybind11/pytypes.h:# if defined(PYPY_VERSION_NUM) && PYPY_VERSION_NUM < 0x07030a00\r\n 1 include/pybind11/pytypes.h:#ifdef PYPY_VERSION\r\n 1 include/pybind11/stl/filesystem.h:# if !defined(PYPY_VERSION)\r\n 2 pybind11/__init__.py:if sys.version_info < (3, 8):\r\n 2 pybind11/__init__.py: msg = \"pybind11 does not support Python < 3.8. v2.13 was the last release supporting Python 3.7.\"\r\n 1 pyproject.toml:master.py-version = \"3.8\"\r\n 1 pyproject.toml:python_version = \"3.8\"\r\n 1 README.rst:lines of code and depend on Python (3.8+, or PyPy) and the C++\r\n 2 README.rst:- Python 3.8+, and PyPy3 7.3 are supported with an implementation-agnostic\r\n 1 setup.cfg: Programming Language :: Python :: 3.8\r\n 1 setup.cfg:python_requires = >=3.8\r\n 1 setup.py:# TODO: use literals & overload (typing extensions or Python 3.8)\r\n 1 tests/CMakeLists.txt:if(NOT CMAKE_VERSION VERSION_LESS 3.8)\r\n 2 tests/constructor_stats.h:#if defined(PYPY_VERSION)\r\n 1 tests/env.py: doesn't work on CPython 3.8.0 with pytest==3.3.2 on Ubuntu 18.04 (#2922).\r\n 1 tests/requirements.txt:build~=1.0; python_version>=\"3.8\"\r\n 1 tests/requirements.txt:numpy~=1.21.5; platform_python_implementation!=\"PyPy\" and python_version>=\"3.8\" and python_version<\"3.10\"\r\n 1 tests/requirements.txt:numpy~=1.23.0; python_version==\"3.8\" and platform_python_implementation==\"PyPy\"\r\n 1 tests/test_buffers.py: env.PYPY, reason=\"PyPy 7.3.7 doesn't clear this anymore\", strict=False\r\n 1 tests/test_builtin_casters.py: # Before Python 3.8, `PyLong_AsLong` does not pick up on `obj.__index__`,\r\n 2 tests/test_builtin_casters.py: if (3, 8) <= sys.version_info < (3, 10) and env.CPYTHON:\r\n 4 tests/test_builtin_casters.py: # TODO: PyPy 3.8 does not behave like CPython 3.8 here yet (7.3.7)\r\n 1 tests/test_callbacks.py: assert m.test_callback3(z.double) == \"func(43) = 86\"\r\n 2 tests/test_call_policies.cpp:#if !defined(PYPY_VERSION)\r\n 1 tests/test_chrono.py: diff = m.test_chrono_float_diff(43.789012, 1.123456)\r\n 1 tests/test_constants_and_functions.py: assert m.f3(86) == 89\r\n 1 tests/test_eigen_matrix.py: a_copy3[8, 1] = 11\r\n 1 tests/test_eigen_matrix.py: assert np.all(cornersc == np.array([[1.0, 3], [7, 9]]))\r\n 1 tests/test_eigen_matrix.py: assert np.all(cornersr == np.array([[1.0, 3], [7, 9]]))\r\n 1 tests/test_eigen_matrix.py: mymat = chol(np.array([[1.0, 2, 4], [2, 13, 23], [4, 23, 77]]))\r\n 1 tests/test_exceptions.py: if hasattr(pytest, unraisable): # Python >= 3.8 and pytest >= 6\r\n 2 tests/test_exceptions.py:@pytest.mark.xfail(env.PYPY, reason=\"Failure on PyPy 3.8 (7.3.7)\", strict=False)\r\n 1 tests/test_factory_constructors.py: assert [i.alive() for i in cstats] == [13, 7]\r\n 1 tests/test_kwargs_and_defaults.cpp:#ifdef PYPY_VERSION\r\n 1 tests/test_local_bindings.py: assert i1.get3() == 8\r\n 1 tests/test_methods_and_attributes.cpp:#if !defined(PYPY_VERSION)\r\n 1 tests/test_numpy_array.py: a = np.arange(3 * 7 * 2) + 1\r\n 1 tests/test_numpy_array.py: assert str(excinfo.value) == \"cannot reshape array of size 42 into shape (3,7,1)\"\r\n 2 tests/test_numpy_array.py: assert x.shape == (3, 7, 2)\r\n 2 tests/test_numpy_array.py: m.reshape_tuple(a, (3, 7, 1))\r\n 2 tests/test_numpy_array.py: x = m.reshape_tuple(a, (3, 7, 2))\r\n 1 tests/test_numpy_vectorize.py: assert np.isclose(m.vectorized_func3(np.array(3 + 7j)), [6 + 14j])\r\n 1 tests/test_pickling.cpp:#if !defined(PYPY_VERSION)\r\n 1 tests/test_pytypes.cpp:#if (defined(__APPLE__) && defined(__clang__)) || defined(PYPY_VERSION)\r\n 1 tests/test_smart_ptr.cpp: m.def(\"make_myobject3_1\", []() { return new MyObject3(8); });\r\n 1 tests/test_smart_ptr.py: assert cstats.values() == [\"MyObject3[9]\", \"MyObject3[8]\", \"MyObject3[9]\"]\r\n 1 tests/test_stl_binders.py: assert v_int2 == m.VectorInt([0, 99, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 88])\r\n 1 tests/test_stl_binders.py: assert v_int2 == m.VectorInt([0, 99, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 88, 4])\r\n 1 tests/test_type_caster_pyobject_ptr.cpp:#if !defined(PYPY_VERSION) // It is not worth the trouble doing something special for PyPy.\r\n 1 tools/FindPythonLibsNew.cmake: set(PythonLibsNew_FIND_VERSION \"3.8\")\r\n 1 tools/JoinPaths.cmake:# https://docs.python.org/3.7/library/os.path.html#os.path.join\r\n 1 tools/pybind11NewTools.cmake: Python 3.8 REQUIRED COMPONENTS ${_pybind11_interp_component} ${_pybind11_dev_component}\r\n 1 tools/pybind11NewTools.cmake:# Python debug libraries expose slightly different objects before 3.8\r\n 1 tools/pybind11Tools.cmake: \"3.12;3.11;3.10;3.9;3.8\"\r\n 1 tools/pybind11Tools.cmake: if(NOT DEFINED PYPY_VERSION)\r\n 1 tools/pybind11Tools.cmake: message(STATUS \"PYPY ${PYPY_VERSION} (Py ${PYTHON_VERSION})\")\r\n 1 tools/pybind11Tools.cmake:# Python debug libraries expose slightly different objects before 3.8\r\n 1 tools/pybind11Tools.cmake: set(PYPY_VERSION\r\n```\r\n\r\n* Change `[tool.ruff]` `target-version` to `\"py38\"`, as suggested by @Skylion007","shortMessageHtmlLink":"feat: remove Python 3.7 support (#5191)"}},{"before":"ec557ff61230ec17a015be8959487aa6bd8e3e42","after":"79fd12b8ccb8cc9c0ab45162529cf2510730e4ec","ref":"refs/heads/smart_holder","pushedAt":"2024-07-30T03:26:18.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Add `NOLINTNEXTLINE(bugprone-unused-return-value)` in smart_holder_poc_test.cpp\n\nFollow-on to https://github.com/pybind/pybind11/pull/5272 — clang-tidy upgrade (to version 18)\n\nFixes this error:\n\n```\n/__w/pybind11/pybind11/tests/pure_cpp/smart_holder_poc_test.cpp:167:12: error: the value returned by this function should not be disregarded; neglecting it may lead to errors [bugprone-unused-return-value,-warnings-as-errors]\n 167 | (void) new_owner.release(); // Manually verified: without this, clang++ -fsanitize=address\n | ^~~~~~~~~~~~~~~~~~~\n```\n\nSee also: https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unused-return-value.html\n\nSpecifically there:\n\n> std::unique_ptr::release(). Not using the return value can lead to resource leaks if the same pointer isn’t stored anywhere else. Often, ignoring the release() return value indicates that the programmer confused the function with reset().\n\nI.e. the only way to tell clang-tidy that the smart_holder_poc_test.cpp is correct is to add the `NOLINT`.","shortMessageHtmlLink":"Add NOLINTNEXTLINE(bugprone-unused-return-value) in smart_holder_po…"}},{"before":"8e7307f0699726c29f5bdc2c177dd55b6b330061","after":"2e260b067f565ecd7f8427667ef2f384eceb7f12","ref":"refs/heads/master","pushedAt":"2024-07-29T18:10:03.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"clang-tidy upgrade (to version 18) (#5272)\n\n* `container: silkeh/clang:18-bookworm` in .github/workflows/format.yml\r\n\r\n* clang-tidy auto-fix (trivial, in test only)\r\n\r\n* Disable `performance-enum-size` (noisy, low value)\r\n\r\n* Temporarily turn off 3 diagnostics (to be tackled one-by-one).\r\n\r\n* Add explicit `switch` `default` to resolve clang-tidy `bugprone-switch-missing-default-case`\r\n\r\nDebian clang version 18.1.8 (++20240718080534+3b5b5c1ec4a3-1~exp1~20240718200641.143)\r\nTarget: x86_64-pc-linux-gnu\r\n\r\ntests/test_numpy_dtypes.cpp:212:5: warning: switching on non-enum value without default case may not cover all cases [bugprone-switch-missing-default-case]\r\n\r\n* Add clang-17 and clang-18 testing.\r\n\r\n* Add `NOLINTNEXTLINE(clang-analyzer-optin.core.EnumCastOutOfRange)` in test_tagbased_polymorphic.cpp\r\n\r\nDebian clang version 18.1.8 (++20240718080534+3b5b5c1ec4a3-1~exp1~20240718200641.143)\r\nTarget: x86_64-pc-linux-gnu\r\n\r\ntests/test_tagbased_polymorphic.cpp:77:40: warning: The value '150' provided to the cast expression is not in the valid range of values for 'Kind' [clang-analyzer-optin.core.EnumCastOutOfRange]\r\n\r\n* Fix inconsistent pybind11/eigen/tensor.h behavior:\r\n\r\nThis existing comment in pybind11/eigen/tensor.h\r\n\r\n```\r\n // move, take_ownership don't make any sense for a ref/map:\r\n```\r\n\r\nis at odds with the `delete src;` three lines up.\r\n\r\nIn real-world client code `take_ownership` will not exist (unless the client code is untested and unused). I.e. the `delete` is essentially only useful to avoid leaks in the pybind11 unit tests.\r\n\r\nWhile upgrading to clang-tidy 18, the warning below appeared. Apparently it is produced during LTO, and it appears difficult to suppress. Regardless, the best way to resolve this is to remove the `delete` and to simply make the test objects `static` in the unit test code.\r\n\r\n________\r\n\r\nDebian clang version 18.1.8 (++20240718080534+3b5b5c1ec4a3-1~exp1~20240718200641.143)\r\nTarget: x86_64-pc-linux-gnu\r\n________\r\n\r\n```\r\nlto-wrapper: warning: using serial compilation of 3 LTRANS jobs\r\nlto-wrapper: note: see the ‘-flto’ option documentation for more information\r\nIn function ‘cast_impl’,\r\n inlined from ‘cast’ at /mounted_pybind11/include/pybind11/eigen/tensor.h:414:25,\r\n inlined from ‘operator()’ at /mounted_pybind11/include/pybind11/eigen/../pybind11.h:296:40,\r\n inlined from ‘_FUN’ at /mounted_pybind11/include/pybind11/eigen/../pybind11.h:267:21:\r\n/mounted_pybind11/include/pybind11/eigen/tensor.h:475:17: warning: ‘operator delete’ called on unallocated object ‘’ [-Wfree-nonheap-object]\r\n 475 | delete src;\r\n | ^\r\n/mounted_pybind11/include/pybind11/eigen/../pybind11.h: In function ‘_FUN’:\r\n/mounted_pybind11/include/pybind11/eigen/../pybind11.h:297:75: note: declared here\r\n 297 | std::move(args_converter).template call(cap->f),\r\n | ^\r\n```\r\n\r\n* Disable `bugprone-chained-comparison`: this clang-tidy check is incompatible with the Catch2 `REQUIRE` macro (26 warnings like the one below).\r\n________\r\n\r\nDebian clang version 18.1.8 (++20240718080534+3b5b5c1ec4a3-1~exp1~20240718200641.143)\r\nTarget: x86_64-pc-linux-gnu\r\n________\r\n\r\n```\r\n/mounted_pybind11/tests/test_embed/test_interpreter.cpp:127:9: warning: chained comparison 'v0 <= v1 == v2' may generate unintended results, use parentheses to specify order of evaluation or a logical operator to separate comparison expressions [bugprone-chained-comparison]\r\n 127 | REQUIRE(ret == 42);\r\n | ^\r\n/build/tests/catch/catch.hpp:17670:24: note: expanded from macro 'REQUIRE'\r\n 17670 | #define REQUIRE( ... ) INTERNAL_CATCH_TEST( \"REQUIRE\", Catch::ResultDisposition::Normal, __VA_ARGS__ )\r\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n/build/tests/catch/catch.hpp:2710:47: note: expanded from macro 'INTERNAL_CATCH_TEST'\r\n 2710 | catchAssertionHandler.handleExpr( Catch::Decomposer() <= __VA_ARGS__ ); \\\r\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n/mounted_pybind11/tests/test_embed/test_interpreter.cpp:127:9: note: operand 'v0' is here\r\n 127 | REQUIRE(ret == 42);\r\n | ^\r\n/build/tests/catch/catch.hpp:17670:24: note: expanded from macro 'REQUIRE'\r\n 17670 | #define REQUIRE( ... ) INTERNAL_CATCH_TEST( \"REQUIRE\", Catch::ResultDisposition::Normal, __VA_ARGS__ )\r\n | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n/build/tests/catch/catch.hpp:2710:47: note: expanded from macro 'INTERNAL_CATCH_TEST'\r\n 2710 | catchAssertionHandler.handleExpr( Catch::Decomposer() <= __VA_ARGS__ ); \\\r\n | ^~~~~~~~~~~~~~~~~~~\r\n/mounted_pybind11/tests/test_embed/test_interpreter.cpp:127:17: note: operand 'v1' is here\r\n 127 | REQUIRE(ret == 42);\r\n | ^\r\n/build/tests/catch/catch.hpp:17670:90: note: expanded from macro 'REQUIRE'\r\n 17670 | #define REQUIRE( ... ) INTERNAL_CATCH_TEST( \"REQUIRE\", Catch::ResultDisposition::Normal, __VA_ARGS__ )\r\n | ^~~~~~~~~~~\r\n/build/tests/catch/catch.hpp:2710:70: note: expanded from macro 'INTERNAL_CATCH_TEST'\r\n 2710 | catchAssertionHandler.handleExpr( Catch::Decomposer() <= __VA_ARGS__ ); \\\r\n | ^~~~~~~~~~~\r\n/mounted_pybind11/tests/test_embed/test_interpreter.cpp:127:24: note: operand 'v2' is here\r\n 127 | REQUIRE(ret == 42);\r\n | ^\r\n/build/tests/catch/catch.hpp:17670:90: note: expanded from macro 'REQUIRE'\r\n 17670 | #define REQUIRE( ... ) INTERNAL_CATCH_TEST( \"REQUIRE\", Catch::ResultDisposition::Normal, __VA_ARGS__ )\r\n | ^~~~~~~~~~~\r\n/build/tests/catch/catch.hpp:2710:70: note: expanded from macro 'INTERNAL_CATCH_TEST'\r\n 2710 | catchAssertionHandler.handleExpr( Catch::Decomposer() <= __VA_ARGS__ ); \\\r\n | ^~~~~~~~~~~\r\n```\r\n\r\n* Add 8 `// NOLINT(bugprone-empty-catch)`\r\n\r\n* Resolve clang-tidy `bugprone-multi-level-implicit-pointer-conversion` warnings.\r\n________\r\nDebian clang version 18.1.8 (++20240718080534+3b5b5c1ec4a3-1~exp1~20240718200641.143)\r\nTarget: x86_64-pc-linux-gnu\r\n________\r\n```\r\npybind11/detail/internals.h:556:53: warning: multilevel pointer conversion from 'internals **' to 'const void *', please use explicit cast [bugprone-multi-level-implicit-pointer-conversion]\r\n\r\npybind11/detail/type_caster_base.h:431:20: warning: multilevel pointer conversion from 'void **' to 'void *', please use explicit cast [bugprone-multi-level-implicit-pointer-conversion]\r\n\r\npybind11/numpy.h:904:81: warning: multilevel pointer conversion from '_object *const *' to 'const void *', please use explicit cast [bugprone-multi-level-implicit-pointer-conversion]\r\npybind11/numpy.h:1989:39: warning: multilevel pointer conversion from 'typename vectorize_arg::type *' (aka 'const double **') to 'void *', please use explicit cast [bugprone-multi-level-implicit-pointer-conversion]\r\npybind11/numpy.h:1989:39: warning: multilevel pointer conversion from 'typename vectorize_arg::type *' (aka 'const VectorizeTestClass **') to 'void *', please use explicit cast [bugprone-multi-level-implicit-pointer-conversion]\r\n\r\npybind11/stl/filesystem.h:75:44: warning: multilevel pointer conversion from 'PyObject **' (aka '_object **') to 'void *', please use explicit cast [bugprone-multi-level-implicit-pointer-conversion]\r\npybind11/stl/filesystem.h:83:42: warning: multilevel pointer conversion from 'PyObject **' (aka '_object **') to 'void *', please use explicit cast [bugprone-multi-level-implicit-pointer-conversion]\r\n```\r\n\r\n* Introduce `PYBIND11_REINTERPRET_CAST_VOID_PTR_IF_NOT_PYPY` to resolve PyPy build errors:\r\n\r\n```\r\nIn file included from /Users/runner/work/pybind11/pybind11/tests/test_stl.cpp:18:\r\n/Users/runner/work/pybind11/pybind11/include/pybind11/stl/filesystem.h:75:17: error: no matching function for call to 'PyPyUnicode_FSConverter'\r\n if (PyUnicode_FSConverter(buf, reinterpret_cast(&native)) != 0) {\r\n ^~~~~~~~~~~~~~~~~~~~~\r\n/Users/runner/hostedtoolcache/PyPy/3.10.14/x64/include/pypy3.10/pypy_decl.h:969:31: note: expanded from macro 'PyUnicode_FSConverter'\r\n ^~~~~~~~~~~~~~~~~~~~~~~\r\n/Users/runner/hostedtoolcache/PyPy/3.10.14/x64/include/pypy3.10/pypy_decl.h:970:17: note: candidate function not viable: cannot convert argument of incomplete type 'void *' to 'struct _object **' for 2nd argument\r\nPyAPI_FUNC(int) PyUnicode_FSConverter(struct _object *arg0, struct _object **arg1);\r\n ^\r\n/Users/runner/hostedtoolcache/PyPy/3.10.14/x64/include/pypy3.10/pypy_decl.h:969:31: note: expanded from macro 'PyUnicode_FSConverter'\r\n ^\r\nIn file included from /Users/runner/work/pybind11/pybind11/tests/test_stl.cpp:18:\r\n/Users/runner/work/pybind11/pybind11/include/pybind11/stl/filesystem.h:83:17: error: no matching function for call to 'PyPyUnicode_FSDecoder'\r\n if (PyUnicode_FSDecoder(buf, reinterpret_cast(&native)) != 0) {\r\n ^~~~~~~~~~~~~~~~~~~\r\n/Users/runner/hostedtoolcache/PyPy/3.10.14/x64/include/pypy3.10/pypy_decl.h:971:29: note: expanded from macro 'PyUnicode_FSDecoder'\r\n ^~~~~~~~~~~~~~~~~~~~~\r\n/Users/runner/hostedtoolcache/PyPy/3.10.14/x64/include/pypy3.10/pypy_decl.h:972:17: note: candidate function not viable: cannot convert argument of incomplete type 'void *' to 'struct _object **' for 2nd argument\r\nPyAPI_FUNC(int) PyUnicode_FSDecoder(struct _object *arg0, struct _object **arg1);\r\n ^\r\n/Users/runner/hostedtoolcache/PyPy/3.10.14/x64/include/pypy3.10/pypy_decl.h:971:29: note: expanded from macro 'PyUnicode_FSDecoder'\r\n ^\r\n```\r\n\r\n* clang-tidy auto-fix\r\n\r\n* Fix silly oversight.","shortMessageHtmlLink":"clang-tidy upgrade (to version 18) (#5272)"}},{"before":"6d4805ced1f8fc8f503d41381853f6082f3064a3","after":"8e7307f0699726c29f5bdc2c177dd55b6b330061","ref":"refs/heads/master","pushedAt":"2024-07-24T02:32:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"henryiii","name":"Henry Schreiner","path":"/https/github.com/henryiii","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4616906?s=80&v=4"},"commit":{"message":"docs: remove outdated known limitation. (#5263)\n\n* Fix typo.\r\n\r\n* Remove outdated known limitation.\r\n\r\nSee #5179.","shortMessageHtmlLink":"docs: remove outdated known limitation. (#5263)"}},{"before":"51a968c954edd7afadda564a83729aa39852ee3a","after":"ec557ff61230ec17a015be8959487aa6bd8e3e42","ref":"refs/heads/smart_holder","pushedAt":"2024-07-22T08:56:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Backport non-functional test_class_sh_*.cpp changes from PR #5213: 1. To avoid compiler warnings for unused code in the unnamed namespace. 2. To avoid clang-format changes. (#5258)","shortMessageHtmlLink":"Backport non-functional test_class_sh_*.cpp changes from PR #5213: 1.…"}},{"before":"800e5e1df387f935f76ab68cab4ee5bed868bad6","after":"51a968c954edd7afadda564a83729aa39852ee3a","ref":"refs/heads/smart_holder","pushedAt":"2024-07-20T08:00:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Import additional test code originally added under PR #5213 (test_class_sh_property_bakein) (#5256)\n\nCorresponding to PR #5213 commit 3406be68772fa3fe20db10b9e149b65f2a18ecec\r\n\r\nReduced from use cases in the wild:\r\n\r\n* `test_readonly_char6_member()`: https://github.com/pytorch/pytorch/blob/4410c44ae6fd8eb36f2358ac76f7d988ca7537c5/torch/csrc/cuda/Module.cpp#L961\r\n\r\n* `test_readonly_const_char_ptr_member()`: https://github.com/facebookresearch/nle/blob/862a439a84f52abca94d1f744d57061da12c5831/include/permonst.h#L43","shortMessageHtmlLink":"Import additional test code originally added under PR #5213 (test_cla…"}},{"before":"8fd495afcf285746726cb1feb63b0c1998d8ded3","after":"800e5e1df387f935f76ab68cab4ee5bed868bad6","ref":"refs/heads/smart_holder","pushedAt":"2024-07-20T06:55:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Remove type_caster_odr_guard feature. (The feature will continue to live in the pybind11k repo.) (#5255)\n\nThis rolls back https://github.com/pybind/pybind11/pull/4022 (including follow-on tweaks in other PRs).","shortMessageHtmlLink":"Remove type_caster_odr_guard feature. (The feature will continue to l…"}},{"before":"e933e21e77d4b3c8fe6664b23efe4b0cf151b5da","after":"8fd495afcf285746726cb1feb63b0c1998d8ded3","ref":"refs/heads/smart_holder","pushedAt":"2024-07-20T05:18:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Remove test_exc_namespace_visibility.py and its dependencies. (The test will continue to live in the pybind11k repo.) (#5254)","shortMessageHtmlLink":"Remove test_exc_namespace_visibility.py and its dependencies. (The te…"}},{"before":"c6c9a9e59b2b64393de0432aa6867ed27367912a","after":"e933e21e77d4b3c8fe6664b23efe4b0cf151b5da","ref":"refs/heads/smart_holder","pushedAt":"2024-07-19T03:12:17.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Replace `#include \"detail/type_caster_base.h\"` with `#include \"detail/value_and_holder.h\"` in trampoline_self_life_support.h. This was made possible by PR #5251.","shortMessageHtmlLink":"Replace #include \"detail/type_caster_base.h\" with `#include \"detail…"}},{"before":"a582ca8a8e2705be848df164158c605e15e010fb","after":"6d4805ced1f8fc8f503d41381853f6082f3064a3","ref":"refs/heads/master","pushedAt":"2024-07-19T00:34:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Small cleanup/refactoring in support of PR #5213 (#5251)\n\n* Factor out detail/value_and_holder.h (from detail/type_caster_base.h)\r\n\r\nThis is in support of PR #5213:\r\n\r\n* trampoline_self_life_support.h depends on value_and_holder.h\r\n\r\n* type_caster_base.h depends on trampoline_self_life_support.h\r\n\r\n* Fix a minor and inconsequential inconsistency in `copyable_holder_caster`: the correct `load_value()` return type is `void` (as defined in `type_caster_generic`)\r\n\r\nFor easy future reference, this is the long-standing inconsistency:\r\n\r\n* https://github.com/pybind/pybind11/blob/dbf848aff7c37ef8798bc9459a86193e28b1032f/include/pybind11/detail/type_caster_base.h#L634\r\n\r\n* https://github.com/pybind/pybind11/blob/dbf848aff7c37ef8798bc9459a86193e28b1032f/include/pybind11/cast.h#L797\r\n\r\nNoticed in passing while working on PR #5213.\r\n\r\n* Add `DANGER ZONE` comment in detail/init.h, similar to a comment added on the smart_holder branch (all the way back in 2021).","shortMessageHtmlLink":"Small cleanup/refactoring in support of PR #5213 (#5251)"}},{"before":"dbf848aff7c37ef8798bc9459a86193e28b1032f","after":"a582ca8a8e2705be848df164158c605e15e010fb","ref":"refs/heads/master","pushedAt":"2024-07-18T18:50:38.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"henryiii","name":"Henry Schreiner","path":"/https/github.com/henryiii","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4616906?s=80&v=4"},"commit":{"message":"tests: run on pyodide (#4745)\n\n* tests: run on pyodide\r\n\r\nSigned-off-by: Henry Schreiner \r\n\r\n* ci: use cibuildwheel for pyodide test\r\n\r\nSigned-off-by: Henry Schreiner \r\n\r\n* tests: revert changes to test_embed\r\n\r\nSigned-off-by: Henry Schreiner \r\n\r\n---------\r\n\r\nSigned-off-by: Henry Schreiner ","shortMessageHtmlLink":"tests: run on pyodide (#4745)"}},{"before":"43de8014f96ab8fc0028f11a26edbcf9b937cd91","after":"dbf848aff7c37ef8798bc9459a86193e28b1032f","ref":"refs/heads/master","pushedAt":"2024-07-18T06:26:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"docs: extend `PYBIND11_MODULE` documentation, mention `mod_gil_not_used` (#5250)\n\nThis follows up on PR 5148, which introduced support for free-threaded CPython.","shortMessageHtmlLink":"docs: extend PYBIND11_MODULE documentation, mention `mod_gil_not_us…"}},{"before":"9193b8e7143594723e6272e6501e550237199cdc","after":"c6c9a9e59b2b64393de0432aa6867ed27367912a","ref":"refs/heads/smart_holder","pushedAt":"2024-07-16T18:54:53.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Merge branch 'master' into sh_merge_master","shortMessageHtmlLink":"Merge branch 'master' into sh_merge_master"}},{"before":"ccefee4c3187c2892fcf4590b1bbc850134b84bb","after":"43de8014f96ab8fc0028f11a26edbcf9b937cd91","ref":"refs/heads/master","pushedAt":"2024-07-16T18:06:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"fix: make gil_safe_call_once thread-safe in free-threaded CPython (#5246)\n\n* fix: Make gil_safe_call_once thread-safe in free-threaded CPython\r\n\r\nThe \"is_initialized_\" flags is not protected by the GIL in free-threaded\r\nPython, so it needs to be an atomic field.\r\n\r\nFixes #5245\r\n\r\n* style: pre-commit fixes\r\n\r\n* Apply changes from code review\r\n\r\n---------\r\n\r\nCo-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>","shortMessageHtmlLink":"fix: make gil_safe_call_once thread-safe in free-threaded CPython (#5246"}},{"before":"104038f262026d7b7b934ff027ce658e850d45a0","after":null,"ref":"refs/heads/dependabot/github_actions/actions-e1ba10e034","pushedAt":"2024-07-15T20:51:29.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"henryiii","name":"Henry Schreiner","path":"/https/github.com/henryiii","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4616906?s=80&v=4"}},{"before":"50acb81b0a0f769dedd265727ade44e03778a977","after":"ccefee4c3187c2892fcf4590b1bbc850134b84bb","ref":"refs/heads/master","pushedAt":"2024-07-15T20:51:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"henryiii","name":"Henry Schreiner","path":"/https/github.com/henryiii","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/4616906?s=80&v=4"},"commit":{"message":"chore(deps): bump actions/attest-build-provenance in the actions group (#5243)\n\nBumps the actions group with 1 update: [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance).\r\n\r\n\r\nUpdates `actions/attest-build-provenance` from 1.3.2 to 1.3.3\r\n- [Release notes](https://github.com/actions/attest-build-provenance/releases)\r\n- [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md)\r\n- [Commits](https://github.com/actions/attest-build-provenance/compare/bdd51370e0416ac948727f861e03c2f05d32d78e...5e9cb68e95676991667494a6a4e59b8a2f13e1d0)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: actions/attest-build-provenance\r\n dependency-type: direct:production\r\n update-type: version-update:semver-patch\r\n dependency-group: actions\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>","shortMessageHtmlLink":"chore(deps): bump actions/attest-build-provenance in the actions group ("}},{"before":null,"after":"104038f262026d7b7b934ff027ce658e850d45a0","ref":"refs/heads/dependabot/github_actions/actions-e1ba10e034","pushedAt":"2024-07-15T02:19:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/https/github.com/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"chore(deps): bump actions/attest-build-provenance in the actions group\n\nBumps the actions group with 1 update: [actions/attest-build-provenance](https://github.com/actions/attest-build-provenance).\n\n\nUpdates `actions/attest-build-provenance` from 1.3.2 to 1.3.3\n- [Release notes](https://github.com/actions/attest-build-provenance/releases)\n- [Changelog](https://github.com/actions/attest-build-provenance/blob/main/RELEASE.md)\n- [Commits](https://github.com/actions/attest-build-provenance/compare/bdd51370e0416ac948727f861e03c2f05d32d78e...5e9cb68e95676991667494a6a4e59b8a2f13e1d0)\n\n---\nupdated-dependencies:\n- dependency-name: actions/attest-build-provenance\n dependency-type: direct:production\n update-type: version-update:semver-patch\n dependency-group: actions\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"chore(deps): bump actions/attest-build-provenance in the actions group"}},{"before":"b044b4faef0784cc7099bd3caf3e39de67e39637","after":"9193b8e7143594723e6272e6501e550237199cdc","ref":"refs/heads/smart_holder","pushedAt":"2024-07-09T20:27:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Additional `assert is_disowned()` in test_class_sh_disowning.py (#5234)","shortMessageHtmlLink":"Additional assert is_disowned() in test_class_sh_disowning.py (#5234)"}},{"before":"64c886d41b61385058aabd2b4eb153441d7e103e","after":"b044b4faef0784cc7099bd3caf3e39de67e39637","ref":"refs/heads/smart_holder","pushedAt":"2024-07-08T17:19:09.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"},"commit":{"message":"Merge branch 'master' into sh_merge_master","shortMessageHtmlLink":"Merge branch 'master' into sh_merge_master"}},{"before":"0af3114a304a69324c8721de86426ebc5b3c70ec","after":null,"ref":"refs/heads/dependabot/pip/docs/certifi-2024.7.4","pushedAt":"2024-07-06T19:22:53.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"rwgk","name":"Ralf W. Grosse-Kunstleve","path":"/https/github.com/rwgk","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/740480?s=80&v=4"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEkqJJPQA","startCursor":null,"endCursor":null}},"title":"Activity · pybind/pybind11"}