Commit Graph

61 Commits

Author SHA1 Message Date
wmayer 44e82ac3c4 App: remove some more deprecated Py2 code
and remove deprecated void from function signature and replace 0 or NULL with nullptr
2021-04-26 10:55:56 +02: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 df0f979f3b App/Gui: fix memory leaks:
+ add function to cleanup units and quantities in debug build
+ fix reference leak in PropertyVector::getPyPathValue()
+ fix reference leak in PropertyPlacement::getPyPathValue()
+ in InterpreterSingleton::init() use a static std::vector<wchar_t*> instead of a C array
  to free memory at program end
+ in MainWindow::closeEvent() explicitly delete all task watchers
+ in ReportOutputObserver constructor pass parent to QObject
+ in PropertyEditor destructor explicitly delete QItemEditorFactory
2021-02-27 10:56:19 +01:00
wmayer a152cd2d96 Py: [skip ci] replace PyList_Append with Py::List::append 2020-12-13 16:44:14 +01:00
luz paz d5f6c096b8 Base: Fix header uniformity, whitespace, and doxygen
[skip ci]
2020-11-22 18:12:16 +01:00
wmayer 0d27ad18ca Base: [skip ci] fix several -Wunused-parameter warnings 2020-11-06 08:15:44 +01:00
wmayer 36bece9925 Base: [skip ci] fix several -Wunused-parameter warnings 2020-11-06 08:14:00 +01:00
wmayer 34c11fcc63 Base: Py2 related fix 2020-09-04 19:02:29 +02:00
wmayer 1c91c1287e Base: [skip ci] Various fixes in InterpreterSingleton::runStringWithKey:
+ fix memory leak (localDictionary) by replacing C API with PyCXX
+ don't write the whole code as error message if an error occurs. Python raises an exception with all relevant information for debugging
2020-09-04 09:58:21 +02:00
mwganson df0204466e [CheckGeometry] fix segfault, reformat output with lower case, use try/except to check for runtime python errors and fall back on OCCT method if script failed. 2020-09-03 12:09:38 +02:00
mwganson b553ebe48b [check geometry] decrement some pyobject references 2020-09-03 12:09:38 +02:00
mwganson 9bb3b0e046 [CheckGeometry] fix python2 build 2020-09-03 12:09:38 +02:00
mwganson 1b8a410d29 [CheckGeometry] fix py2 build failure 2020-09-03 12:09:38 +02:00
mwganson dc3befbff3 [CheckGeometry] update a source code comment 2020-09-03 12:09:38 +02:00
mwganson a4e38baeb3 [CheckGeometry] add new shapecontent builder instead of OCCT's to correct some errors in OCCT's values and to add for some more advanced information, e.g. volume or area, add new method to Base::Interpreter runStringWithKey() -- allows to run a python script and get a string return value 2020-09-03 12:09:38 +02:00
wmayer 3b0eeb63e8 LGTM: [skip ci] fix: Inconsistent definition of copy constructor and assignment ('Rule of Two')
Remove user-defined copy constructor of Exception classes without assignment operator
2020-07-27 13:47:41 +02:00
wmayer 3f212ad8ac Porting Py3.8/Py3.9:
Since Py3.3: 'Py_ssize_t PyUnicode_GetSize(PyObject*)' is deprecated [-Wdeprecated-declarations]
Since Py3.9: 'PyObject* PyEval_CallObjectWithKeywords(PyObject*, PyObject*, PyObject*)' is deprecated [-Wdeprecated-declarations]
Since Py3.9: 'void PyEval_InitThreads()' is deprecated [-Wdeprecated-declarations]
2020-06-12 17:51:33 +02:00
luz.paz d36c3ebe57 Trivial code formatting for some {.cpp,.h} files 2020-04-06 12:55:27 +02:00
wmayer 49bfbf73f8 Base: [skip ci] add method to more easily set the Python error indicator from a Base::Exception 2020-03-18 17:53:13 +01: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
asapelkin 8bc5b585c8 Used single quotes for single character in string::find algorithm, more efficient 2019-11-21 18:59:43 +01:00
luz.paz 5b74dc8b0d Fix typos in src/Base 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 81ae5688d4 replace raw string with normal C string to fix build failure 2019-05-23 23:28:33 +02:00
ezzieyguywuf 81bae31085 Added python virtual environment initialization, if present. 2019-05-22 13:53:47 +02:00
wmayer 8d5d25da2e fix crash when checking an empty error message of an exception 2019-04-01 11:22:55 +02:00
luz.paz 6e64b4f75d Misc. typos 2018-05-19 12:06:34 -04:00
wmayer 7ed84a6590 workaround for bug in VS 2013 that occurs at Python init time 2018-04-15 19:05:06 +02:00
Unknown a8ecffb652 Misc. typo fixes
Various workbenches
2017-12-23 14:30:30 +01:00
wmayer 770c9ce095 fix various coverity issues 2017-09-15 11:48:38 +02:00
wmayer 9513792292 py3: support of Python 3.4 2017-06-06 23:49:42 +02:00
wmayer 8ce343291b py3: fox compiler warnings
issue 0000995
2017-06-04 00:17:57 +02:00
Yorik van Havre 7114667d64 py3: Base: files A-I ported to python3
issue 0000995
2017-05-17 16:39:28 +02:00
wmayer 7d47a723fb Fix various issues:
+ fix dangling pointers when fetching Python error text
+ initialize members in overloaded constructors of Exception class
+ implement assignment operator in sub-class
+ move to PyCXX API to simplify handling with reference counting and reading values from the dict
2017-05-15 18:49:09 +02:00
Abdullah Tahiri b410f8857c Enable exceptions to save/restore information in a python dictionary and enable throwing exception from dictionary information 2017-05-13 15:27:57 +02:00
Abdullah Tahiri db8511883c Enable PyException to reconstruct the original exception 2017-05-13 15:27:57 +02:00
wmayer 1673ab801e use specialized exception classes 2017-04-28 18:49:11 +02:00
wmayer 464a8f3860 Coverity issues:
129643
129654
129689
129714
2016-08-16 14:05:52 +02:00
wmayer c81aca0902 + unify method names 2016-05-18 23:43:58 +02:00
DeepSOIC 7f5197695d Attacher: add general purpose editor UI (python)
Added as PartGui.AttachmentEditor, and Part_EditAttachment gui command
2016-05-18 23:05:51 +02:00
Ian Rees bc71c6e64b More fixes around Python exit codes 2016-03-27 13:01:04 +13:00
wmayer 7df94ca9af + fix crash when raising SystemExitException if not called inside Python function 2016-03-21 18:50:57 +01:00
Bruce Lacey 9816e48b07 Propagate sys.exit(code) up the call stack to the shell
SystemExitException is instantiated and thrown by Base::Interpreter
whenever the python interpreter executes a sys.exit(<exitCode>) call.
However, in the current implementation, the SystemExitException
effectively swallows the <exitCode> hence under this change,
SystemExitException has been extended to save the <exitCode> passed to
the sys.exit() call when it is instantiated and provides a new
getExitCode() accessor method to retrieve the <exitCode> in a
try/catch block.  MainGui.cpp was change to pass the corresponding
<exitCode> to the system exit() call so it is accessible in the shell.
2016-03-21 18:28:29 +01:00
wmayer e9e9a38865 + improve exception handling in initialization scripts 2015-12-29 23:42:29 +01:00
wmayer 07ba938ff6 + issue: #0002350, handle Python's SystemExit exceptions and do not exit application when running from macro dialog or Python editor 2015-12-27 23:00:59 +01:00
Mateusz Skowroński 43a4a5938c Fix files encoding. Go from ISO8859-1 to UTF-8. 2015-09-21 19:50:49 -03:00
Eivind Kvedalen 75dab66916 Added InterpreterSingleton::getValue(...) function. 2015-02-13 21:53:57 +01:00
wmayer 053f76086b + fix one more missing va_end 2015-01-06 12:06:12 +01:00
wmayer a96f390097 + fix build problems with Python & MacOSX 2014-10-13 22:02:57 +02:00