30791 Commits

Author SHA1 Message Date
c.lamboo
ad3b2deb2a Merge remote-tracking branch 'origin/9773-add_quality_type_to_ufp_files' into 9773-add_quality_type_to_ufp_files 2022-11-25 16:12:49 +01:00
c.lamboo
1ae8f2da62 Add quality display name with ufp files
Cura-9773
2022-11-25 16:12:44 +01:00
c.lamboo
52ee149edc Unify activeQualityDisplayNameMap string creation
Generation quality display names in `CustomPrintSetup.qml` and `PrintSetupSelectorHeader.qml` were so similar that I decided to combine the logic.

Cura-9773
2022-11-25 16:09:55 +01:00
Joey de l'Arago
57ec36b7fe Fix typing 2022-11-25 14:37:22 +01:00
Joey de l'Arago
f8590be6da Remove elif after returns 2022-11-25 14:29:33 +01:00
Joey de l'Arago
00acc3f31a
Update printer-linter/src/printerlinter/diagnostic.py
Co-authored-by: Jelle Spijker <j.spijker@ultimaker.com>
2022-11-25 14:29:03 +01:00
Joey de l'Arago
86ac4c4ab8 Fix regex for list/dict match last item in list without comma at end.
Add some custom ordering to the json. This is so that important values like "version" don't get pushed to the end of the json.
2022-11-25 14:09:12 +01:00
Remco Burema
6a126f4d6b
Merge pull request #13799 from NilsRo/master
disable lin. adv. if accidently enabled by earlier print
2022-11-25 12:41:24 +01:00
Joey de l'Arago
f6c8312403
Merge pull request #13847 from xommit/main
Translating Cura - Update fr_FR language
2022-11-25 10:47:11 +01:00
c.lamboo
c2ad41e10e Add quality type to ufp files
Cura-9773
2022-11-24 23:02:13 +01:00
c.lamboo
e8f6786e97 Revert "Add quality type to ufp files"
This reverts commit 7e84082aff26195d82b8d3c9239dee863949c099.
2022-11-24 22:56:35 +01:00
Remco Burema
6dc0a24311 Cache and genericize ID to Product table.
part of CURA-9931
2022-11-24 15:33:39 +01:00
c.lamboo
7e84082aff Add quality type to ufp files
Cura-9773
2022-11-24 13:55:31 +01:00
Joey de l'Arago
e83ed933e2 Update readme with instruction for developing.
Change DiagnosticGenerator -> Linter since this is much easier to understand.
2022-11-23 17:52:33 +01:00
Joey de l'Arago
8e027c4af9 Add is not None because it makes it clearer that the lamdba returns a boolean. 2022-11-23 17:21:31 +01:00
Joey de l'Arago
a7800f824a Use formatters in terminal.py
Do some general refactoring for readability
2022-11-23 17:20:22 +01:00
Joey de l'Arago
b6ac85d251 Add separate package with file formatters. 2022-11-23 17:19:14 +01:00
Joey de l'Arago
ad436f37f8 Add some comments and refactoring 2022-11-23 16:48:39 +01:00
Joey de l'Arago
437b05f608 Add some doc strings 2022-11-23 15:28:57 +01:00
Joey de l'Arago
0b2e409929 Update documentation on diagnostic to be less specifically about strings. Since diagnostics can be related to other issues. 2022-11-23 15:25:13 +01:00
Joey de l'Arago
d19f1f3e42 Add typing for file and settings.
Add diagnostic generator documentation
2022-11-23 15:20:42 +01:00
Joey de l'Arago
f49f8b3cb8 Add some documentation to factory and format file. 2022-11-23 15:10:55 +01:00
Joey de l'Arago
c097838614 Add replacement documenation 2022-11-23 15:07:28 +01:00
Joey de l'Arago
44af869a2c Add documentation to diagnostic and reformat file. 2022-11-23 15:02:33 +01:00
Joey de l'Arago
4f4523c4b7 Use Diagnostic Generator super for Meshes 2022-11-23 14:38:31 +01:00
Joey de l'Arago
f74a40bed0 Flatten main logic.
Parse files from directories to remove checking if a file is a directory in many places.
2022-11-23 14:24:09 +01:00
Joey de l'Arago
ad7e719146 Format lists and dicts of a single item onto one line
example:
"dict":
{
 "value": 10
}
becomes
"dict": { "value": 10 }
2022-11-22 21:42:42 +01:00
Joey de l'Arago
a470f02373 Move linters into seperate module.
Give linters an abstract type to inherit, since they share an interface.
Add empty README
2022-11-22 19:26:50 +01:00
Joey de l'Arago
91daf89c2d add return types 2022-11-22 14:38:41 +01:00
Joey de l'Arago
bcaa4d3032
Merge pull request #13858 from Ultimaker/printer_linter_auto_format
Auto format printer/profiles with printer-linter
2022-11-22 14:12:35 +01:00
jspijker
187dfe1210 single-value-single-line formatting
Need to figure out the regex expression.
To only select overrides consisting of a
single value
2022-11-21 14:20:53 +01:00
jspijker
def686e61a Remove old workflow 2022-11-21 13:32:23 +01:00
jspijker
28110f3368 Added workflow requirements 2022-11-21 13:31:54 +01:00
jspijker
32673bedea Add PR review workflows
Using the pull-request-comments-from-clang-tidy-reports GH action
https://github.com/marketplace/actions/pull-request-comments-from-clang-tidy-reports

Which is possible because the printer-linter auto
puts the suggested fixes in the same format as
clang-tidy.

It consists of two workflows, to ensure safe handling
of forks PR's. The first workflows is the analysis and
the suggested fixes, these are then upload to the
second workflow which will use the suggested fixes
to past comments on the PR
2022-11-21 13:23:04 +01:00
jspijker
db7e89815e Renamed the workflow for consistency 2022-11-21 13:16:26 +01:00
jspijker
4d0d9ec2dd Merge branch 'printer_linter' into printer_linter_auto_format 2022-11-21 13:13:17 +01:00
jspijker
67688aad95 Formatted the messages 2022-11-21 13:11:52 +01:00
jspijker
0070cb7af0 flatten list 2022-11-21 10:58:28 +01:00
jspijker
4b455d45e9 Use same yaml structure as cling-tidy 2022-11-21 10:51:08 +01:00
jspijker
2b90807326 Update gitignore with python build files 2022-11-20 12:38:22 +01:00
jspijker
0c7807e0cd Create a proper Pyhton packages for printer-linter
Such that it can be downloaded, installed and used locally and on other
repo's actions etc
2022-11-20 12:16:37 +01:00
jspijker
f78fbd3edf Auto format printer/profiles with printer-linter
Runs only master and release branch, will create a
co-authored commit if formatting was applied
2022-11-20 10:51:42 +01:00
jspijker
49305474ea Added a diagnose flag
Allowing the user to opt-in or out of diagnosing the file
2022-11-20 10:46:21 +01:00
jspijker
cec022f330 Fix the fax value 2022-11-19 20:31:47 +01:00
jspijker
a4615fd729 Update default setting values 2022-11-19 20:31:28 +01:00
jspijker
104bc585f4 Added a linting tool for Cura Printers and Profiles
printer-linter works of definitions, profiles and meshes;
It has various diagnostic checks. With possible suggestions for fixes.
It should also be able to fix certain diagnostic issues and it can be used
to format the files according to code-style.

It can output the diagnostics in a yaml file, which can then be used to comment
on PR's with suggestions to the author. Future PR.

The settings for the diagnostics and checks are defined in `.printer-linter`
and are very self explanatory.

```
checks:
    diagnostic-mesh-file-extension: true
    diagnostic-mesh-file-size: true
    diagnostic-definition-redundant-override: true
fixes:
    diagnostic-definition-redundant-override: true
format:
    format-definition-bracket-newline: false
    format-definition-paired-coordinate-array: true
    format-definition-sort-keys: true
    format-definition-indent: 4
    format-profile-space-around-delimiters: true
    format-profile-sort-keys: true
diagnostic-mesh-file-size: 1200000
```
2022-11-19 19:07:32 +01:00
jspijker
fb69cff511 fix typo 2022-11-18 13:04:38 +01:00
jspijker
87cea8f8f4 write directly to the env file 2022-11-18 13:02:04 +01:00
jspijker
be0b2b15c7 Use quotes for output to env files 2022-11-18 11:59:36 +01:00
jspijker
55040a7040 Use Env file for workflow output 2022-11-18 11:50:10 +01:00