1. 14 Oct, 2020 1 commit
  2. 12 Oct, 2020 1 commit
  3. 09 Oct, 2020 2 commits
    • Henry Schreiner's avatar
      chore: bump to 2.6.0rc1 · f385eccd
      Henry Schreiner authored
      f385eccd
    • Yannick Jadoul's avatar
      feat: deprecate public constructors of module_ class (#2552) · 0c5cc031
      Yannick Jadoul authored
      * Deprecated public constructors of module
      
      * Turn documentation comment of module_::add_object into valid doxygen documentation
      
      * Move definition of PYBIND11_DETAIL_MODULE_STATIC_DEF and PYBIND11_DETAIL_MODULE_CREATE macros up
      
      * Move detail::create_top_level_module to module_::create_extension_module, and unify Python 2 and 3 signature again
      
      * Throw error_already_set if module creation fails in module_::create_extension_module
      
      * Mention module_::create_extension_module in deprecation warning message of module_::module_
      0c5cc031
  4. 05 Oct, 2020 1 commit
    • Yannick Jadoul's avatar
      Fail on passing py::object with wrong Python type to py::object subclass using... · f537093a
      Yannick Jadoul authored
      Fail on passing py::object with wrong Python type to py::object subclass using PYBIND11_OBJECT macro (#2349)
      
      * Fail on passing py::object with wrong Python type to py::object subclass using PYBIND11_OBJECT macro
      
      * Split off test_non_converting_constructors from test_constructors
      
      * Fix test_as_type, as py::type constructor now throws an error itself if the argument is not a type
      
      * Replace tp_name access by pybind11::detail::get_fully_qualified_tp_name
      
      * Move forward-declaration of get_fully_qualified_tp_name to detail/common.h
      
      * Don't add the builtins module name in get_fully_qualified_tp_name for PyPy
      
      * Add PYBIND11_BUILTINS_MODULE macro, and use it in get_fully_qualified_tp_name
      f537093a
  5. 03 Oct, 2020 1 commit
  6. 02 Oct, 2020 2 commits
  7. 30 Sep, 2020 2 commits
  8. 27 Sep, 2020 1 commit
    • Ralf W. Grosse-Kunstleve's avatar
      static allocation for PyModuleDef, to avoid leak check errors. (#2413) · d159a563
      Ralf W. Grosse-Kunstleve authored
      * Initializing PyModuleDef object with PyModuleDef_HEAD_INIT.
      
      Python 3.8 documentation: m_base - Always initialize this member to PyModuleDef_HEAD_INIT.
      
      Long-standing (since first github commit in 2015), inconsequential bug.
      
      Also removing inconsequential Py_INCREF(def): PyModule_Create() resets the reference count to 1.
      
      * git rebase master
      
      * moving static PyModuleDef declaration to global scope, as requested by @wjakob
      
      * renaming the two new macros, to start with PYBIND11_DETAIL_MODULE
      d159a563
  9. 16 Sep, 2020 1 commit
    • Henry Schreiner's avatar
      feat: setup.py redesign and helpers (#2433) · fd61f503
      Henry Schreiner authored
      * feat: setup.py redesign and helpers
      
      * refactor: simpler design with two outputs
      
      * refactor: helper file update and Windows support
      
      * fix: review points from @YannickJadoul
      
      * refactor: fixes to naming and more docs
      
      * feat: more customization points
      
      * feat: add entry point pybind11-config
      
      * refactor: Try Extension-focused method
      
      * refactor: rename alt/inplace to global
      
      * fix: allow usage with git modules, better docs
      
      * feat: global as an extra (@YannickJadoul's suggestion)
      
      * feat: single version location
      
      * fix: remove the requirement that setuptools must be imported first
      
      * fix: some review points from @wjacob
      
      * fix: use .in, add procedure to docs
      
      * refactor: avoid monkeypatch copy
      
      * docs: minor typos corrected
      
      * fix: minor points from @YannickJadoul
      
      * fix: typo on Windows C++ mode
      
      * fix: MSVC 15 update 3+ have c++14 flag
      
      See <https://docs.microsoft.com/en-us/cpp/build/reference/std-specify-language-standard-version?view=vs-2019>
      
      * docs: discuss making SDists by hand
      
      * ci: use pep517.build instead of manual setup.py
      
      * refactor: more comments from @YannickJadoul
      
      * docs: updates from @ktbarrett
      
      * fix: change to newly recommended tool instead of pep517.build
      
      This was intended as a proof of concept; build seems to be the correct replacement.
      
      See https://github.com/pypa/pep517/pull/83
      
      * docs: updates from @wjakob
      
      * refactor: dual version locations
      
      * docs: typo spotted by @wjakob
      fd61f503
  10. 15 Sep, 2020 2 commits
  11. 12 Sep, 2020 1 commit
    • andriish's avatar
      fix: support NVIDIA-PGI HPC SDK (#2475) · 38370a87
      andriish authored
      
      
      * Added guards to the includes
      
      Added new CI config
      
      Added new trigger
      
      Changed CI workflow name
      
      Debug CI
      
      Debug CI
      
      Debug CI
      
      Debug CI
      
      Added flags fro PGI
      
      Disable Eigen
      
      Removed tests that fail
      
      Uncomment lines
      
      * fix: missing include
      
      fix: minor style cleanup
      
      tests: support skipping
      
      ci: remove and tighten a bit
      
      fix: try msvc workaround for pgic
      
      * tests: split up prealoc tests
      
      * fix: PGI compiler fix
      
      * fix: PGI void_t only
      
      * fix: try to appease nvcc
      
      * ci: better ordering for slow tests
      
      * ci: minor improvements to testing
      
      * ci: Add NumPy to testing
      
      * ci: Eigen generates CUDA warnings / PGI errors
      
      * Added CentOS7 back for a moment
      
      * Fix YAML
      
      * ci: runs-on missing
      
      * centos7 is missing pytest
      
      * ci: use C++11 on CentOS 7
      
      * ci: test something else
      
      * Try just adding flags on CentOS 7
      
      * fix: CentOS 7
      
      * refactor: move include to shared location
      
      * Added verbose flag
      
      * Try to use system cmake3 on CI
      
      * Try to use system cmake3 on CI, attempt2
      
      * Try to use system cmake3 on CI, attempt3
      
      * tests: not finding pytest should be a warning, not a fatal error
      
      * tests: cleanup
      
      * Weird issue?
      
      * fix: final polish
      Co-authored-by: default avatarAndrii Verbytskyi <andrii.verbytskyi@mpp.mpg.de>
      Co-authored-by: default avatarHenry Schreiner <henryschreineriii@gmail.com>
      Co-authored-by: default avatarAndrii Verbytskyi <averbyts@cern.ch>
      38370a87
  12. 31 Jul, 2020 2 commits
  13. 12 Jul, 2020 1 commit
  14. 08 Jul, 2020 1 commit
  15. 10 Jun, 2020 1 commit
  16. 04 Jun, 2020 2 commits
  17. 31 Mar, 2020 2 commits
  18. 02 Jan, 2020 2 commits
    • Wenzel Jakob's avatar
      Handle cases where binding code immediately throws py::error_already_set · bf2b0314
      Wenzel Jakob authored
      When binding code immediately throws an exception of type
      py::error_already_set (e.g. via py::module::import that fails), the
      catch block sets an import error as expected. Unfortunately, following
      this, the deconstructor of py::error_already_set decides to call
      py::detail::get_internals() and set up various internal data structures
      of pybind11, which fails given that the error flag is active. The call
      stack of this looks as follows:
      
      Py_init_mymodule() -> __cxa_decrement_exception_refcount ->
      error_already_set::~error_already_set() ->
      gil_scoped_acquire::gil_scoped_acquire() -> detail::get_internals() ->
      ... -> pybind11::detail::simple_collector() -> uh oh..
      
      The solution is simple: we call detail::get_internals() once before
      running any binding code to make sure that the internal data structures
      are ready.
      bf2b0314
    • Wenzel Jakob's avatar
      bindings for import_error exception · 4c206e8c
      Wenzel Jakob authored
      4c206e8c
  19. 19 Dec, 2019 1 commit
  20. 13 Dec, 2019 1 commit
  21. 14 Oct, 2019 2 commits
  22. 21 Sep, 2019 2 commits
  23. 20 Sep, 2019 2 commits
  24. 19 Sep, 2019 2 commits
  25. 19 Aug, 2019 2 commits
  26. 16 Aug, 2019 1 commit
    • Vladimír Vondruš's avatar
      Fix -Wmissing-prototypes warning on Clang. (#1863) · 5b0ea77c
      Vladimír Vondruš authored
      The -Wmissing-prototypes Clang warning (or -Wmissing-declarations on
      GCC) is very useful to avoid accidents where a function definition in a
      source file doesn't match the corresponding declaration in a header
      file, as it would warn already during compilation and not much later
      during link time.
      
      Unfortunately this means that exported functions defined only in the
      source file (usually the ones annotated with `extern "C"`) will cause
      this warning to be emitted too (on Clang, GCC has a slightly different
      behavior with -Wmissing-declarations and doesn't warn here). This fixes
      the warning by providing a declaration right before the definition.
      5b0ea77c
  27. 18 Jul, 2019 1 commit