Commit Graph

333 Commits

Author SHA1 Message Date
Uwe
b0d6a5a6b0 [Plugin] update build setup to latest LibPack
(the particular paths can easily be adapted)
2022-02-01 01:57:21 +01:00
Yorik van Havre
c1ba2962dc Tools: Using recursive option in lupdate script 2022-01-26 13:59:19 +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
mdkus
d530b6ea4a Update CreatePyModule.py 2022-01-18 15:53:25 +01:00
Yorik van Havre
d36b455e95 Merge pull request #5318 from chennes/lupdateCPPWorkaround
Tools: Add workaround for lupdate missing source
2022-01-10 11:13:43 +01:00
mdkus
aa9b853bfb Update _TEMPLATEPY_Workbench.svg
Replacing inkscape svg by plain svg
2022-01-09 22:14:39 +01:00
luz paz
4e2c1158c6 Tools: update _TEMPLATE to 2022 2022-01-05 13:20:48 +01:00
Chris Hennes
3e75db0d58 Tools: Add workaround for lupdate missing source
lupdate requires at least one C++ source file to be present in order
to process the project file. In cases where a workbench is Python-only,
this resulted in incorrect or missing extraction of strings in ui files.
Those files should have been processed by lupdate, but were not.
pyludate was not configured to process them. To work around this, the
updatets.py script is modified to create a dummy *.cpp file before
running qmake.
2022-01-01 15:20:43 -06:00
mdkus
e4c2cc3c76 Tools: small bug fix for showing the correct test icon 2021-12-30 15:39:07 +01:00
wmayer
e743c30f3b Add Global.h headers to modules 2021-12-18 14:06:40 +01:00
mdkus
569f61b19a Update CreatePyModule.py
Small bug fix: in comparison to CreateModule.py this codeline is missing in CreatePyModule.py, so CreatePyModule.py doesn't work,fine without it (tested under Win 7 and Win11)
2021-12-01 09:20:36 +01:00
wmayer
c5fb91170b dist-git: make script working again for Py3 and Linux 2021-10-30 14:50:00 +02:00
Chris Hennes
9cbfe835f3 [Tools] Eliminate default value modification
LGTM catches a potential error with the mutation of default values:
implement their suggested workaround of using a None placeholder to
ensure the default itself is never modified.
2021-10-11 21:13:22 -05:00
Yorik van Havre
7489e8ea9e Merge pull request #5078 from chennes/femRemoveExtraTranslations
[Fem] Clean up Fem.ts to remove extra translations
2021-10-08 14:46:04 +02:00
luz paz
1bac25de44 Tools: fix updatecrowdin.py variable typo [skip ci] 2021-10-06 18:15:53 -04:00
Chris Hennes
ef7127a456 [Tools] Strip translations from base TS files 2021-09-30 15:13:26 -05:00
Chris Hennes
20848125a9 Merge branch 'master' into fixMixedLanguageTranslationExtraction 2021-09-24 07:58:15 -05:00
Yorik van Havre
fafc18158c Tools: small fix in crowdin script 2021-09-23 17:14:31 +02:00
Chris Hennes
6a9b27df1e Tools: Corrected arguments to git.extractInfo 2021-09-21 11:17:21 -05:00
Chris Hennes
be10709785 Tools: LGTM - don't catch BaseException 2021-09-19 14:38:05 -05:00
wmayer
c1cbee9a06 Tools: port example of embedding to Py3 2021-09-19 18:01:24 +02:00
Chris Hennes
def6d0563a [Tools] Refactor updatets to support two-lang mods 2021-09-17 10:22:35 -05:00
Yorik van Havre
455412ccc7 Tools: Updated crowdin script after PR #5021 2021-09-13 15:40:36 +02:00
Yorik van Havre
419e601482 Tools: Updated crowdin scripts
- Removed updateFromCrowdin script (now merged within updateCrowdin)
- Now automatically installs all languages above 25% translated
- Now updates Gui/Language/Translator.cpp too
2021-09-07 11:27:05 +02:00
Yorik van Havre
e359c01cc9 Tools: Removed Plot from translation scripts 2021-08-26 14:50:36 +02:00
Chris Hennes
1b12226bd4 [Tools] Silence LGTM warning about missing init 2021-08-17 12:25:12 -05:00
Yorik van Havre
61ac0b4838 Merge pull request #4900 from sanguinariojoe/del_ship
Ship: Remove Ship module
2021-08-16 17:30:43 +02:00
Chris Hennes
6d136c9b1b Add PartDesign Python commands for translation (#4961)
Fixes #4583
2021-08-11 14:51:18 -05:00
Jose Luis Cercos-Pita
63c9e7ee72 Remove Ship module 2021-07-05 09:24:21 +02:00
Yorik van Havre
909dfa7036 Tools: allow to run updatets script from updatecrowdin 2021-07-01 13:57:24 +02:00
Yorik van Havre
ac4937f59c Tools: small cosmetic fix 2021-06-10 11:53:02 +02:00
luz paz
261c06a052 Fix misc. typos
Found via 
```codespell -q 3 -L aci,ake,aline,alle,alledges,alocation,als,ang,anid,apoints,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,parms,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,./build/doc/SourceDocu```
2021-06-03 14:36:21 -04:00
Yorik van Havre
ff26df0a6d Tools: updated help text 2021-06-03 15:45:55 +02:00
Yorik van Havre
c7fb3ff829 Tools: cosmetic tweaks to updatecrowdin script 2021-05-12 16:36:15 +02:00
luz paz
05a22ec22d Misc: remove py2 code 2021-04-27 18:52:01 +02:00
wmayer
2f276601f8 Fix generation and build of python classes for 3.8 2021-04-27 14:35:34 +02:00
markus
aa0dcff74f Fix generation and build of python classes for 3.9 2021-04-27 00:41:53 +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
Yorik van Havre
bd0c319962 Merge pull request #4536 from hyarion/feature-updatecrowdin-api-v2
[0.20] Tools: updatecrowdin.py rewrite to support new api
2021-04-20 11:51:11 +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
Yorik van Havre
62e4c7daf1 Merge branch 'master' into feature-updatecrowdin-api-v2 2021-03-30 13:08:45 +02:00
Chris Hennes
ee6222d216 [Start] Add missing files to translation script 2021-03-10 15:21:40 +01:00
Chris Hennes
6789ddaac9 Fix regex in translation extraction script 2021-03-04 19:18:23 +01:00
Benjamin Nauck
e8566f22bb Tools: Remove super old DistTools module
Back in 2004 the "new" build tools was introduced 2668c74b58
which are located in `src/Tools/fcbt/`. The new tools split up this file
into `src/Tools/fcbt/DistTools.py` and `src/Tools/fcbt/FilesTools.py`
which is why the both `DistTools.py` doesn't match up 1:1.

I've found no references in the repo to the version in `src/Tools/` so
I think it's safe to remove.
2021-03-03 21:53:02 +01:00
Chris Hennes
4b4a6b3580 [Offline Docs] Fix static analysis issues
LGTM identified a number of minor issues (mostly unused imports) in the
offline docs code. This commit addresses those, plus tweaks some output
formatting to include missing spaces, makes a regex more rigorously safe
by escaping some periods, and updates the use of a get() function which
appears to have changed since it was first written.
2021-02-28 17:53:58 +01:00
Chris Hennes
e2bb84fd2f [Tools] Fix static analyis issues
This commit addresses issues identified by LGTM for the various
independent (and mostly-independent) files in the Tools subdirectory.
The vast majority of the issues are trivial, and are things like unused
imports or catching BaseException. There was one true bug identified, a
global variable being changed in a function where it was not marked
global, but it only affected output quantity (the variable is named
"VERBOSE"). A couple of other issues identified variables that appear to
represent no-longer-existing options in the code. The options were left,
but a deprecation printout replaces the variable in the event the option
is provided.
2021-02-28 17:53:04 +01:00
Benjamin Nauck
f5b6c20699 Tools: updatecrowdin.py rewrite to support new api
Crowdin has depreciated their old api and will shut it down completely
in december 2021.

What's new:
 * rewritten in Python 3 (drops support for discontinued Python 2)
 * uses Crowdin's api v2
 * runs on vanilla Python 3, (no external modules)
 * automatically adds new translation from the src directory
 * supports api token to be specified in an environment variable
   (Makes GitHub integration easier in the future)
 * requires project id to be explicitly set with an environment variable
   (Makes testing safer)

The api token can be set either in ~/.crowdin-freecad-token similar to
how the old api key was set, or by specifying it in an environment
variable. The later has been added to make it easier with GitHub-Crowdin
integration in the future.

The requirement to explicitly set CROWDIN_PROJECT_ID has been introduced
to avoid accidentally using the main Crowdin project while testing the
script.

The script has been tested on Python versions 3.7, 3.8 and 3.9.

Co-authored-by: Mattias Pierre <github@mattiaspierre.com>
2021-02-28 12:03:41 +01:00
Chris Hennes
2599d67c2b Clean up various LGTM-flagged items
Static analysis showed some unused variables and imports, and running
the code in Python 3.9 revealed a few invalid escapes (previous versions
of Python silently "fixed" these, so the code change here will not
affect the results).
2021-02-27 18:23:15 +01:00
Yorik van Havre
872a1a3ecc Tools: Added link fix tool to offlinedoc tools 2021-02-22 22:05:51 +01:00
Yorik van Havre
442b1a5db5 Tools: Updated offline doc scripts 2021-02-22 14:07:33 +01:00