mosfet80
be3ad26140
Disable python2 support
...
Disable python2 support
2024-12-01 10:39:48 +01:00
supermixed
f763425b4f
Core: Import STEP: Cancel button does not cancel ( #16499 )
...
* Fix importing .step file when user cancelled import settings dialog
* Refactor object loading python code, fix not using settings when STEP options dialog not shown
* Use custom exception type for user cancelling import instead of `RuntimeError`
* Pull python code out to external file
2024-09-20 08:25:23 -05:00
marioalexis
776158addd
Base: Add PropertyError exception
2024-08-02 20:19:16 -03:00
Chris Hennes
98b3df9442
Base: Fix missing NOLINTEND
2023-11-22 11:15:32 +01:00
wmayer
08b10cd287
fix cppcoreguidelines-*
...
* cppcoreguidelines-init-variables
* cppcoreguidelines-c-copy-assignment-signature
* cppcoreguidelines-macro-usage
* cppcoreguidelines-non-private-member-variables-in-classes
* cppcoreguidelines-pro-type-member-init
* cppcoreguidelines-slicing
* cppcoreguidelines-special-member-functions
* cppcoreguidelines-virtual-class-destructor
2023-11-16 01:22:09 +01:00
wmayer
e4975f0153
fix readability-braces-around-statements
2023-11-16 01:22:08 +01:00
wmayer
e85c383bff
Base: apply clang format
2023-11-13 12:01:26 -05:00
wmayer
010dca8303
Base: C++ core guidelines: init variables
2023-08-24 18:48:52 +02:00
wmayer
4fb07bcfd6
Base: modernize C++: use default member init
2023-08-23 19:51:44 +02:00
marioalexis
2185b8086d
Base: Add helper function to check Python types
2022-09-24 05:10:34 +02:00
wmayer
d2168f51b9
Base: modernize C++: replace 'typedef' with 'using'
2022-08-29 11:42:09 +02:00
wmayer
231de30c2f
Base: add convenience function to convert PyObject_IsTrue to a boolean
2022-07-16 12:41:01 +02:00
wmayer
c955372ecf
cppcoreguidelines-pro-type-union-access
...
According to https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md using union for type-punning is undefined behaviour.
Replace it with std::memcpy
2022-06-24 14:29:50 +02:00
wmayer
9160f06e1c
Base: rename BaseExceptionFreeCADError to PyExc_FC_GeneralError
2022-03-17 14:45:48 +01:00
wmayer
d69defaa3c
Py: replace BaseExceptionFreeCADError with more suitable exception types
2022-03-17 13:54:23 +01:00
wmayer
10a13c6dbc
Base: add more custom Python exception types
2022-03-17 11:29:09 +01:00
Uwe
9a42b61fcb
[Base] Py and Placement: remove unused includes
2022-03-01 12:13:58 +01:00
wmayer
31e2e95203
Base: Exception handling:
...
* Harmonize FreeCAD with Python exception types
* Implement AbortException::getPyExceptionType() to avoid handling it in client code
* Remove catch block for plain C strings
2022-01-19 18:00:04 +01:00
wmayer
2f99b5b56d
Base: [skip ci] allow to access the twin pointer of a PyObjectBase
2021-12-11 08:33:50 +01:00
wmayer
af16ab02a0
Base: remove some more deprecated Py2 code
...
and remove deprecated void from function signature and replace 0 or NULL with nullptr
2021-04-26 10:29:48 +02:00
luz paz
142c2c2c4d
Base: remove Py2 code
2021-04-26 09:23:58 +02:00
wmayer
56fb65de62
Base: use Python's weak reference mechanism to avoid memory leaks due to cyclic dependencies
2021-04-23 11:02:19 +02:00
wmayer
111a21e45c
Base: do not report C++ exception when converting it to Python exception
...
See https://forum.freecadweb.org/viewtopic.php?f=23&t=56464
2021-04-11 14:54:11 +02:00
Chris Hennes
7d5a1d7e5d
Remove catch block for plain C strings
...
LGTM complains about this construct leaking memory. Commit 13927b2465
eliminated the parts of FreeCAD that throw those strings. This commit
eliminates the catch block.
2021-02-07 13:41:42 +01:00
luz paz
d5f6c096b8
Base: Fix header uniformity, whitespace, and doxygen
...
[skip ci]
2020-11-22 18:12:16 +01:00
wmayer
39cd29c0d7
Part: [skip ci] include OCC hesder to PCHs, fix compiler warning when trying to delete void pointer
2020-09-28 20:23:33 +02:00
wmayer
afd6f39197
Base: [skip ci] allow to replace twin object of PyObjectBase
2020-09-28 11:21:20 +02:00
wmayer
cd5341001e
remove superfluous includes of iostream, use iosfwd instead
2020-07-28 15:22:23 +02:00
luz.paz
6f11ed298a
src/Base: [skip ci] fix header uniformity
...
This PR fixes header uniformity across all `src/Base` files
2019-12-25 11:38:58 +01:00
Zheng, Lei
22541cfbdf
Base: fix line ending in PyObjectBase.h
2019-08-28 17:46:06 +02:00
Zheng, Lei
9e3a981d37
Base: fix duplicated exception message
...
Because the exception can propagate across C++ and Python boundary
multiple times, prepending extra information may cause duplication,
something like,
"FreeCAD exception thrown(FreeCAD exception thrown(..."
2019-08-17 15:32:49 +02:00
Zheng, Lei
59417068f5
Base: improve exception
...
For better FC and Python exception mapping.
2019-08-17 14:52:08 +02:00
wmayer
dedaa80762
fixes 0003771: Memory leak in Part.Face.Surface
2019-01-23 22:38:51 +01:00
Michal Ulianko
faf8834484
py3.7 fix
...
PyUnicode_AsUTF8() returns const char* in py3.7 instead of char*. Making
changes to reflect that which should also be safe in
other Python versions.
2018-09-01 22:44:39 +02:00
wmayer
f8f4cd76cc
clear dict when invalidating Py object to fix possible cyclic references
2018-08-25 21:49:57 +02:00
wmayer
840c9e8b3c
prepare for PyCXX 7.0
2018-04-18 19:20:50 +02:00
Unknown
a8ecffb652
Misc. typo fixes
...
Various workbenches
2017-12-23 14:30:30 +01:00
wmayer
69d0e8bd7f
py3: partially revert of getattr -> getattro because getattro is only needed for the static callback function
...
issue 0000995
2017-06-03 10:51:05 +02:00
looooo
bc696e5ab5
py3: change of getattr -> getattro
...
issue 0000995
2017-06-03 10:51:05 +02:00
wmayer
1673ab801e
use specialized exception classes
2017-04-28 18:49:11 +02:00
wmayer
df1e2642d0
replacement for PR 698
2017-04-27 23:05:40 +02:00
wmayer
19111f1ed7
issue #2902 : track attribute objects in parent structure to notify about changes
2017-02-14 16:38:38 +01:00
wmayer
4f23b569b3
issue #0002902 : replace members of PyObjectBase with a PyDictObject
2017-02-14 13:09:09 +01:00
wmayer
b72aa9f369
issue #0002902 : PyObjectBase notification chain can lead to unexpected changes to document
2017-02-14 00:32:30 +01:00
wmayer
36e1d072a6
fix -Wunused-variable
2017-01-27 16:10:19 +01:00
looooo
9f2a389dbc
py3: add PyMOD_INIT_FUNC
...
from: py3: ported module init to python3, wwmayer
2017-01-25 10:16:06 +01:00
wmayer
fc2bbf52f9
remove deprecated macros
2016-11-09 16:58:54 +01:00
wmayer
1e12b54a7b
Coverity issues:
...
129202: replace dynamic_cast with static_cast
129421, 129422: fix Py_Return macro
128928: Unchecked return value
129488, 129490: uninitialized scalar variable
129567, 129661: uninitialized scalar field
129665: uninitialized pointer field
2016-08-15 21:28:41 +02:00
wmayer
ee28daa669
+ replace old C casts with static_cast in generated C++ code, remove unused parent structure of Python classes, support of -1 as return value of setCustomAttributes
2015-09-27 22:08:08 +02:00
Mateusz Skowroński
43a4a5938c
Fix files encoding. Go from ISO8859-1 to UTF-8.
2015-09-21 19:50:49 -03:00