1. Sep 12, 2020
    • Yannick Jadoul's avatar
      Add check if `str(handle)` correctly converted the object, and throw... · fe9ee86b
      Yannick Jadoul authored
      Add check if `str(handle)` correctly converted the object, and throw py::error_already_set if not (bis) (#2477)
      
      * Add check if `str(handle)` correctly converted the object, and throw py::error_already_set if not
      
      * Fix tests on Python 3
      
      * Apply @rwgk's fixes to cherry-picked commits from #2392
      fe9ee86b
  2. Sep 11, 2020
  3. Sep 10, 2020
    • Henry Schreiner's avatar
      fix: support nvcc and test (#2461) · 621906b3
      Henry Schreiner authored
      * fix: support nvcc and test
      
      * fixup! fix: support nvcc and test
      
      * docs: mention what compilers fail
      
      * fix: much simpler logic
      
      * refactor: slightly faster / clearer
      621906b3
  4. Sep 09, 2020
  5. Sep 08, 2020
  6. Sep 06, 2020
  7. Sep 05, 2020
  8. Sep 04, 2020
  9. Sep 01, 2020
  10. Aug 31, 2020
  11. Aug 29, 2020
    • Ralf W. Grosse-Kunstleve's avatar
      Fixing `pybind11::bytes()` ambiguous conversion issue. · 3c061f21
      Ralf W. Grosse-Kunstleve authored
      Adding missing `bytes` type to `test_constructors()`, to exercise the code change.
      
      The changes in the PR were cherry-picked from PR #2409 (with a very minor
      modification in test_pytypes.py related to flake8). Via PR #2409, these
      changes were extensively tested in the Google environment, as summarized here:
      https://docs.google.com/document/d/1TPL-J__mph_yHa1quDvsO12E_F5OZnvBaZlW9IIrz8M/
      The changes in this PR did not cause an issues at all.
      
      Note that `test_constructors()` before this PR passes for Python 2 only
      because `pybind11::str` can hold `PyUnicodeObject` or `PyBytesObject`. As a
      side-effect of this PR, `test_constructors()` no longer relies on this
      permissive `pybind11::str` behavior. However, the permissive behavior is still
      exercised/exposed via the existing `test_pybind11_str_raw_str()`.
      
      The test code change is designed to enable easy removal later, when Python 2
      support is dropped.
      
      For completeness: confusingly, the non-test code changes travelled through PR
      
      Example `ambiguous conversion` error fixed by this PR:
      ```
      pybind11/tests/test_pytypes.cpp:214:23: error: ambiguous conversion for functional-style cast from 'pybind11::detail::item_accessor' (aka 'accessor<accessor_policies::generic_item>') to 'py::bytes'
                  "bytes"_a=py::bytes(d["bytes"]),
                            ^~~~~~~~~~~~~~~~~~~~
      pybind11/include/pybind11/detail/../pytypes.h:957:21: note: candidate constructor
          PYBIND11_OBJECT(bytes, object, PYBIND11_BYTES_CHECK)
                          ^
      pybind11/include/pybind11/detail/../pytypes.h:957:21: note: candidate constructor
      pybind11/include/pybind11/detail/../pytypes.h:987:15: note: candidate constructor
      inline bytes::bytes(const pybind11::str &s) {
                    ^
      1 error generated.
      ```
      3c061f21
  12. Aug 28, 2020
    • Yannick Jadoul's avatar
      Fix bug roundtripping datetime.time objects after midnight in eastern... · 6a192781
      Yannick Jadoul authored
      Fix bug roundtripping datetime.time objects after midnight in eastern hemisphere timezones (#2417) (#2438)
      
      * Fix bug roundtripping datetime.time objects after midnight in eastern hemisphere timezones (#2417)
      
      * tests: check more timezones
      
      * Fix review remarks: remove useless comment and skip setting TZ environment variable on Windows
      6a192781
  13. Aug 27, 2020
  14. Aug 26, 2020
  15. Aug 25, 2020
  16. Aug 24, 2020
  17. Aug 23, 2020
    • jbarlow83's avatar
      Improve documentation of Python and C++ exceptions (#2408) · b8863698
      jbarlow83 authored
      The main change is to treat error_already_set as a separate category
      of exception that arises in different circumstances and needs to be
      handled differently. The asymmetry between Python and C++ exceptions
      is further emphasized.
      b8863698
  18. Aug 22, 2020
  19. Aug 21, 2020
  20. Aug 20, 2020
    • Henry Schreiner's avatar
      ci: reduce flakiness a little (#2418) · 110e6c12
      Henry Schreiner authored
      110e6c12
    • Henry Schreiner's avatar
      24dffe46
    • Henry Schreiner's avatar
      tests: avoid putting build products into source directory (#2353) · 04fdc44f
      Henry Schreiner authored
      * tests: keep source dir clean
      
      * ci: make first build inplace
      
      * ci: drop dev setting (wasn't doing anything)
      
      * tests: warn if source directory is dirty
      04fdc44f
    • Henry Schreiner's avatar
      feat: new FindPython support (#2370) · 1729aae9
      Henry Schreiner authored
      * feat: FindPython support
      
      * refactor: rename to PYBIND11_FINDPYTHON
      
      * docs: Caps fixes
      
      * feat: NOPYTHON mode
      
      * test: check simple call
      
      * docs: add changelog/upgrade guide
      
      * feat: Support Python3 and Python2
      
      * refactor: Use targets in tests
      
      * fix: support CMake 3.4+
      
      * feat: classic search also finds virtual environments
      
      * docs: some updates from @wjakob's review
      
      * fix: wrong name for QUIET mode variable, reported by @skoslowski
      
      * refactor: cleaner output messaging
      
      * fix: support debug Python's in FindPython mode too
      
      * fixup! refactor: cleaner output messaging
      
      * fix: missing pybind11_FOUND and pybind11_INCLUDE_DIR restored to subdir mode
      
      * fix: nicer reporting of Python / PyPy
      
      * fix: out-of-order variable fix
      
      * docs: minor last-minute cleanup
      1729aae9
  21. Aug 18, 2020
  22. Aug 17, 2020
    • Henry Schreiner's avatar
      docs: contrib/issue templates (#2377) · 64040997
      Henry Schreiner authored
      * docs: move helpers to .github where allowed
      
      * docs: more guidelines in CONTRIBUTING
      
      * chore: update issue templates
      
      * fix: review from @bstaletic
      
      * refactor: a few points from @rwgk
      
      * docs: more touchup, review changes
      64040997