Move third-party dependencies into git submodules
- thirdparty: resolve pugixml start-end tags mismatch
- thirdparty: update pybind11 to resolve use of undefined type '_frame'
- thirdparty: add QhullUser.cpp for qh_fprintf
- thirdparty: update cmake to use git submodule
- thirdparty: update cmake to use git submodule
- thirdparty: make qhull a thirdparty git submodule
- thirdparty: add dstg changes to pugixml as a git patch
- thirdparty: make pugixml a thirdparty git submodule
- thirdparty: make dirent a thirdparty git submodule
Pull upstream updates from https://github.com/fltdyn/Janus
- upstream Add convert units
- upstream Improve jansfunc
- upstream Resolve MinGW namespace clash
Fix error with example xmls not being found during testing
- Automated cibuildwheel for Windows, Linux and macOS, py3.7-py3.10
- Path resolution to example xmls for pytest
Fix cross-platform build of pyJanus
- Automated pip build and pytest for Windows MSVC, Ubuntu GCC and macOS Clang
- Removed python 3.8 f-string features for backwards compatibility with python 3.7
- Add
POSITION_INDEPENDENT_CODE
flag for static libraries when compiling pybindings (pybind/pybind11#466) - Fixes linking error on Linux systems
Cross-platform build of Janus and pyJanus
MinGW:
- Rename
signal.h
tosgnl.h
to avoid namespace conflict with MinGW header (https://github.com/mingw-w64/mingw-w64/blob/master/mingw-w64-headers/crt/signal.h) - Added cmake flag
-Wa,-mbig-obj
for compiling large files
macOS:
- Use
sleep()
on macOS, notSleep()
(https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man3/sleep.3.html) - Use
<functional>
not<tr1/functional>
on macOS > OS X 10.9 - Specify
std::abs
to avoid error call to 'abs' is ambiguous (https://cplusplus.github.io/LWG/issue2192) - Reorder templates to prevent unqualified lookup error (https://clang.llvm.org/compatibility.html#dep_lookup)
- Specified ascii code for degrees symbol to prevent illegal character encoding warning (https://www.ascii-code.com/)
- Add
cxx_std_11
for Examples cmake
- GitHub action to build on Windows MSVC, Windows MingGW, Ubuntu GCC, macOS Clang
Initial release of pyJanus on pypi: https://pypi.org/project/python-janus/
- Large sdist .tar.gz bundles due to third party library documentation being included
- Add missing third party source files to MANIFEST.in
Initial release of python bindings for Janus
- Bindings created using pybind11
- Examples/ directory used as test suite
- Wrapping of Janus and JanusVariableManager major methods and properties
- Initial python API creation
- Return value policies leading to incorrect ownership (pybind 11docs)