Commit Graph

87 Commits

Author SHA1 Message Date
Chris Hennes
fa8e0a6865 Remove various sys.version_info >= 3 checks 2022-11-09 14:08:54 +01:00
Chris Hennes
48307b91f5 Addon Manager: use versioned Python package dirs 2022-11-05 11:45:02 -05:00
luz paz
7b10713d6f Fix typos and whitespace
Found via `codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,anormal,apoints,ba,beginn,behaviour,bloaded,bottome,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childrens,childs,colour,colours,commen,connexion,currenty,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,inout,ist,itsel,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oce,oder,ontop,orgin,orginx,orginy,ot,pard,parm,parms,pres,programm,que,rady,recurrance,ro,rougly,seperator,serie,sinc,siz,strack,substraction,te,technic,thist,thru,tread,uint,unter,uptodate,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml,./src/Base/StackWalker.cpp,./build/doc/SourceDocu`
2022-08-23 18:49:47 +02:00
wmayer
b485f7943c Base: expose enum NumberFormat to Python 2022-08-15 11:12:53 +02:00
Uwe
1f0181cdcc [App] remove check for Python 2 2022-07-27 01:55:52 +02:00
wmayer
1bf56a9999 App: add default macro directory to sys.path 2022-06-01 11:21:51 +02:00
wmayer
108810b57b App: expose PropertyType enum to Python 2022-05-03 11:24:23 +02:00
wmayer
d98aaecbfe Mod: issue #6274: Source code installation failed 2022-04-18 12:27:09 +02:00
wmayer
0b2c73cf32 Gui: clean-up Selection API
Replace the int of the 'resolve' argument of several functions with a proper enum class.
* This avoids the inconsistencies in client code where often true/false is passed when an int is expected
* This avoids the use of magic numbers like 0, 1, 2 or the undocumented 3
2022-04-09 17:03:43 +02:00
wmayer
1a62c2024d lgtm: removes unused imports in Python scripts 2022-03-20 23:00:55 +01:00
Chris Hennes
0c85c16932 Core: Support disabling Addon by FreeCAD version
If package.xml metadata file exists, it is scanned for FreeCAD version
compatibility before the Addon is loaded. If the Addon specifies that it is
explicitly not compatible with the current version of FreeCAD, the Addon is
not loaded.
2022-03-08 23:19:04 -06:00
Chris Hennes
6dd6c3168d Core: Remove Init.py stop file check from inner package loop
Check was unused, only stop files located at the top-level should halt loading.
2022-03-02 10:00:52 -06:00
Chris Hennes
ec90b7f954 Core: Add mechanism to disable addon 2022-02-20 22:09:57 -06:00
wmayer
0208608b9e Base: fix Matrix4D::hasScale
* If all column vectors of the 3x3 sub-matrix are equal the function incorrectly claims that it's uniform scaling.
* Detect also non-uniform scaling and if was applied from the left or right side
* Replace the int with an enum and expose it to Python
* Add several new unit tests
2022-02-15 21:05:11 +01:00
Chris Hennes
8d96cadb69 Addon manager: install dependencies (#5376)
Addon Manager: Dependency Installation

The Addon Manager can now attempt to use pip directly to install
required packages as specified in either metadata.txt or
requirements.txt files provided by AddOns. The packages are installed
into FreeCAD.getUserAppDataDir()/AdditionalPythonPackages directory.
Only simplified requirements.txt data is supported: any version
information is stripped out, and only packages are supported (that is,
no pip arguments, included files, etc.). Further, packages are checked
against a list of allowed packages prior to being suggested for
installation. Addon authors should submit a PR to the FreeCAD repo
adding their requirements to the allowed list, for packages that are not
already on the list (this is a malware-prevention mechanism).
2022-01-21 10:19:21 -06:00
Chris Hennes
12e3f9f222 Core: Fix installation conflict with pkgutils 2021-12-18 20:29:42 -06:00
Chris Hennes
3aebf0aead GUI: Handle packaged Workbenches and their icons 2021-12-18 20:29:42 -06:00
Yorik van Havre
ae84229ebc App: Added warning at startup if user mods are found in older location 2021-11-26 16:01:23 +01:00
Preslav
5030d8bb6d Added stiffness units to FreeCAD [mN/m, N/m, kN/m, MN/m] 2021-08-16 12:27:41 +01:00
wmayer
7eaf08063e App: add system32 to Python's search paths 2021-03-27 13:05:03 +01:00
donovaly
6c67300d62 [Base] add electrical conductivity
- this is necessary to perform electrodynamics simulations. Since the typical values are in the range of 1e6 S/m, we need the new units kS and MS

- since this is for simulations, also add electrical conductivity to the FEM material cards
2021-03-25 17:13:52 +01:00
Chris Hennes
6b11d45e7a LGTM: Minor fixes to FreeCADApp.py
LGTM flagged several redundant imports, and was confused by the else
clause of one loop. This commit removes those imports, and because of
the loop's construction, removes the else entirely and lets the loop
fall through to the error state if it fails to find what it's looking
for.
2021-02-11 11:54:24 +01:00
wmayer
a0de713ca2 Py2: do not open Init[Gui].py files with utf-8 encoding 2020-11-26 00:48:28 +01:00
wmayer
c3b147a5c9 Init: [skip ci] do explicitly open Init[Gui].py files with utf-8 encoding 2020-11-24 14:15:26 +01:00
luz paz
84553bf191 App: Fix header uniformity, trailing whitespace, and doxygen headers 2020-11-19 13:38:37 +01:00
wmayer
7a3097586d Win32: [skip ci] DLL resolution in Python 3.8 on Windows has changed 2020-11-14 16:38:02 +01:00
wmayer
b161bdb78f Base: [skip ci] add an enum for unit schemes in Python to avoid to work with numbers 2020-08-07 23:02:25 +02:00
qingfengxia
768b1e718a FEM: fix unit for volumetric thermal exapnsion coefficient 2020-05-23 00:03:12 +02:00
luz.paz
ebe194a9e9 Fix typos
Found via  
```
codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,ba,beginn,behaviour,bloaded,byteorder,calculater,cancelled,cancelling,cas,cascade,centimetre,childs,colour,colours,commen,connexion,currenty,dof,doubleclick,dum,eiter,elemente,ende,feld,finde,findf,freez,hist,iff,indicies,initialisation,initialise,initialised,initialises,initialisiert,ist,kilometre,lod,mantatory,methode,metres,millimetre,modell,nd,noe,normale,normaly,nto,numer,oder,orgin,orginx,orginy,ot,pard,pres,programm,que,recurrance,rougly,seperator,serie,sinc,strack,substraction,te,thist,thru,tread,uint,unter,vertexes,wallthickness,whitespaces -S ./.git,*.po,*.ts,./ChangeLog.txt,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./src/CXX,./src/zipios++,./src/Base/swig*,./src/Mod/Robot/App/kdl_cp,./src/Mod/Import/App/SCL,./src/WindowsInstaller,./src/Doc/FreeCAD.uml
```
2020-03-06 14:50:35 +01:00
wmayer
0b9626cf61 Py2: [skip ci] provide time._process_time 2020-01-18 12:21:00 +01:00
donovaly
d1b354fc6b add units Gauss, Weber and Oersted 2020-01-07 07:36:22 -03:00
donovaly
68ea38cc8d add the units Ohm and Siemens 2020-01-05 15:00:46 +01:00
luz.paz
019f73852c src/App: [skip ci] fix header uniformity
This PR fixes header uniformity across all `src/App` files
2019-12-25 11:38:43 +01:00
wmayer
95e852051e [skip ci] MPH already defined 2019-12-24 13:33:38 +01:00
donovaly
3da00267cf cosmetics to keep the overview 2019-12-24 13:31:00 +01:00
donovaly
b255475d7c missing parts from from commit 33b8054228
- also add keV and MeV since these are the units used in practice
2019-12-24 13:31:00 +01:00
donovaly
a6a043a6f2 also add unit THz as requested 2019-12-23 16:49:45 +01:00
donovaly
edd97de6a2 add units Mpsi, cal and kcal
- also ass missing parts from commit 0021efbf
2019-12-23 16:49:45 +01:00
donovaly
26196ae612 add mJ and kW
- also some fixes
- add conversions for forces
2019-12-19 13:31:12 +01:00
donovaly
94bae36cee add the following units:
- mmol
- ml
- bar
- mbar
- kJ
- kWh
- eV
- C
- T
- F (p, n, u, m)
- H (n, u, m)
2019-12-19 13:31:12 +01:00
luz.paz
d10ca28c88 LGTM: remove unnecessary 'pass' statements
Issue: A pass statement is only necessary when it is the only statement in a block (the list of statements forming part of a compound statement). This is because the purpose of the pass statement is to allow empty blocks where they would otherwise be syntactically invalid. If the block already contains other statements then the pass statement is unnecessary.

Recommendation: Remove the pass statement.

Relevant links: 
1a82a5e136/files/src/Mod/Import/stepZ.py (x78f479c31a062553):1

1a82a5e136/files/src/Mod/OpenSCAD/OpenSCADCommands.py (xad4868ffcdf82498):1

1a82a5e136/files/src/App/FreeCADInit.py (x9034ec6815c48e38):1
2019-12-17 15:15:53 -03:00
wmayer
617a8d7598 Support for Frequency in quantity parser 2019-10-21 11:49:55 +02:00
Dietmar Czekay
65ccdee9d8 add VacuumPermittivity and fix adding user values to material editor in FEM 2019-09-04 11:29:09 -03:00
luz.paz
3a1a6eb7d8 Fix typos in src/App 2019-08-17 15:32:48 +02:00
Zheng, Lei
ebd60c8595 App/Gui: Changes to application Python init script
* Better module import error handling

* Allow co-installation of Python2 and Python3 version of FreeCAD

* Add FreeCAD.Logger class for convenient logging in Python. See class
  document for more details.
2019-08-17 15:08:34 +02:00
Bernd Hahnebach
3650b3e59d Units: add AngleOfFriction as another parameter with Angle unit 2019-04-30 07:41:56 +02:00
Bernd Hahnebach
f1edabd09b Units: add various Material stress properties 2019-02-14 21:11:22 +01:00
wmayer
fb27265934 Expose some standard units and quantities to Python 2019-02-12 15:12:19 +01:00
wmayer
d1d470c149 fixes #0003588: The path to the Addons does not allow special characters 2018-09-14 00:00:22 +02:00
wmayer
398fc8ce80 issue #0003588: The path to the Addons does not allow special characters 2018-09-13 21:40:30 +02:00