26117 Commits

Author SHA1 Message Date
Ghostkeeper
034f62ea2c
Match table name with container type
The table name is used as the container type in the resulting metadata, so we need to use the container type string as table name correctly, or none of the profiles can be found.

Contributes to issue CURA-6096.
2021-09-08 16:40:22 +02:00
Ghostkeeper
057ba8cdeb
Fix setting container type of subclasses
This mistake caused all of the container types to end up as either None or the actual instance itself, which was causing crashes.

Contributes to issue CURA-6096.
2021-09-08 15:46:25 +02:00
Ghostkeeper
adac0af1ec
Revert "Use SQLQueryFactory for container DB"
This reverts commit 571a051041b7c126ca942055961c7714312a967f.
2021-09-08 15:10:32 +02:00
jelle Spijker
571a051041
Use SQLQueryFactory for container DB
Needed to add a Filter possibility to facilitate that
Created a Simple UserString class which can be used as:

```py
        sql_filter = SQLFilter(f"SELECT {{}} FROM table_name WHERE id = ?")
        cursor.execute(sql_filter)  # Will execute: SELECT * FROM table_name WHERE id = ?
        cursor.execute(sql_filter["id", "name"])  # Will execute: SELECT id, name FROM table_name WHERE id = ?

```

Contributes to CURA-6096
2021-09-02 16:55:24 +02:00
jelle Spijker
4067d9d607
Fixed typing
Contributes to CURA-6096
2021-09-02 10:17:40 +02:00
jelle Spijker
f80e1ec279
Updated documentation
Contributes to CURA-6096
2021-09-01 18:58:03 +02:00
jelle Spijker
7aa08d4acd
Use a class to build to sql queries
This greatly reduced the amount of duplicate code in the DataBaseHandlers
Not sure how secure this is SQL injections. Need to check that and maybe
put in some guards. Using double underscores for now and only provide a
getter. But then again why bother with an SQL injection as
you can just as easily modify the Python code, and we still have the old
Containers to fallback to if the Database gets corrupted.

Contributes to CURA-6096
2021-09-01 16:58:48 +02:00
Jaime van Kessel
3191baf5a0 Add delete to handlers
CURA-6096
2021-08-27 14:36:04 +02:00
Jaime van Kessel
55d6ff0e61 Clean up formating of the insert queries
CURA-6096
2021-08-25 13:58:11 +02:00
Jaime van Kessel
132b863e13 Add update queries for variant, intent & qualit DB handlers
CURA-6096
2021-08-25 13:48:25 +02:00
Jaime van Kessel
2bef85c6c2 Remove weird whitespace
CURA-6096
2021-08-24 14:45:52 +02:00
Jaime van Kessel
e0e8223c5d Move DB handling into specialised classes
This keeps CuraContainerRegistry a lot cleaner, especially when more container types are
added

Cura-6096
2021-08-20 15:40:50 +02:00
Jaime van Kessel
27f0fe8bb9 Ensure that all metadata of profiles is stored
CURA-6096
2021-08-20 14:40:55 +02:00
Jaime van Kessel
6f32809a3a Prepare the inserts before actually doing them
CURA-6096
2021-08-20 13:09:40 +02:00
Jaime van Kessel
5311c949f0 Add variants to the database
CURA-6096
2021-08-20 11:05:37 +02:00
Jaime van Kessel
48ab21ac68 Add functions to get & add variants & qualities from DB
CURA-6096
2021-08-20 10:17:57 +02:00
Jaime van Kessel
3f80fcb5e5 Add first stub for profile database
CURA-6096
2021-08-19 15:20:20 +02:00
Jaime van Kessel
0348293f87 Merge branch '4.11' of github.com:Ultimaker/Cura 2021-08-19 10:01:20 +02:00
Jaime van Kessel
668624e13d Set lifetimes correctly 2021-08-19 10:01:01 +02:00
Ghostkeeper
1c9b3a0784
Merge branch 'CURA-8490_Make_sure_no_keyring_backend_is_available_on_Linux' into 4.11 2021-08-19 09:33:33 +02:00
Ghostkeeper
fcadba944a
Merge branch '4.11' into CURA-8491_sdk_upgrade_770 2021-08-19 09:17:17 +02:00
fvrmr
090a793e8a Merge branch '4.11' of https://github.com/Ultimaker/Cura into 4.11 2021-08-18 17:28:03 +02:00
Konstantinos Karmas
ed32f24f45 Merge branch '4.11' into CURA-8490_Make_sure_no_keyring_backend_is_available_on_Linux 2021-08-18 17:27:32 +02:00
fvrmr
7493233e3f Update 4.html
Fixed a typo's
2021-08-18 17:27:16 +02:00
Konstantinos Karmas
0972f1b721 Merge branch '4.11' of https://github.com/Ultimaker/Cura into 4.11 2021-08-18 17:18:51 +02:00
Konstantinos Karmas
9f31e1421b Make lifetime optional in the getBackwardsCompatibleMessage
This should fix the failing tests
2021-08-18 17:18:21 +02:00
fvrmr
1d00f959c4 Update whats new pages
Updated the links in the whats new pages
2021-08-18 17:18:07 +02:00
Konstantinos Karmas
617c4a0a5d Merge branch '4.11' into CURA-8490_Make_sure_no_keyring_backend_is_available_on_Linux 2021-08-18 17:12:53 +02:00
Remco Burema
898abc92a8
Update SDK 7.6 -> 7.7 because of API changes in 4.11
CURA-8491
2021-08-18 16:56:29 +02:00
Konstantinos Karmas
d218b0bff9 Remove check for "frozen" when setting the keyring backend
There is no need to have a different behavior from source compared to frozen builds when it comes to the keyring.

CURA-8490
2021-08-18 16:54:28 +02:00
Ghostkeeper
8650dd9b0f
Merge branch '4.11' 2021-08-18 16:18:43 +02:00
Ghostkeeper
a40c7e7410
Default lifetime for successful upload messages
There is no real reason to keep this visible indefinitely.
2021-08-18 15:36:41 +02:00
fvrmr
57c6efd427 Merge branch '4.11' of https://github.com/Ultimaker/Cura into 4.11 2021-08-18 12:08:14 +02:00
fvrmr
da92033666 Update change log + whats new pages
Update change log 4.11 beta
Update whats new pages + img

Links in whats new pages still needs to be updated
2021-08-18 12:08:09 +02:00
Konstantinos Karmas
c5a956068f Fix mypy complaint
The `Keyring` is already imported from MacOS, so it's best to rename the fail on for Linux.

CURA-8490
2021-08-18 12:02:13 +02:00
Konstantinos Karmas
b1dc38f126 Don't load a keyring backend on Linux
We do not support it on Linux and it can cause problems if there is a system keyring configured.

CURA-8490
2021-08-18 11:57:09 +02:00
Konstantinos Karmas
e5374ada3b Merge branch '4.11' 2021-08-17 15:59:53 +02:00
Konstantinos Karmas
e5856bf6bc Log the connection error message produced by the request 2021-08-17 15:52:12 +02:00
Konstantinos Karmas
bbb1f0f0f3 Fix wrong icon mapping
The deprecated icon "pencil" was being mapped to the new icon "Pencil" which is actually called "Pen".

This commit also replaces tabs with spaces in the deprecated_icons.json.

Fixes CURA-8488
2021-08-17 15:32:21 +02:00
Jaime van Kessel
b27dcf9873
Merge pull request #10288 from fieldOfView/feature_pause_at_height_optional_parking
Make parking optional in all "methods" of Pause at Height 

CURA-8487
2021-08-17 13:41:16 +02:00
Jelle Spijker
d87c7a70cb
Switch return order for Repetier pauseAtHeight
While testing I noticed that the movement after the pause will
first move the head down and then move to the position before
the pause. This could result in noticeable artifacts or
accidentally push thin towers from the bed.) See the code below.

```gcode
;TYPE:CUSTOM
;added code by post processing
;script: PauseAtHeight.py
;current z: 5
;current height: 5.0
M83 ; switch to relative E values for any needed retraction
G1 F300 Z6 ; move up a millimeter to get out of the way
G1 F9000 X190 Y190
G1 F300 Z20.0
M84 E0
@pause now change filament and press ; Do the actual pause
G1 F300 Z5
G1 F9000 X30.759 Y30.759
G1 F1800 ; restore extrusion feedrate
```
I have switched the lines in the script such that it will first move to the correct X, Y and then move down
```python
prepend_gcode += self.putValue(G = 1, X = x, Y = y, F = 9000) + "\n"
prepend_gcode += self.putValue(G = 1, Z = current_z, F = 300) + "\n"
```
As shown in the code below
```gcode
;TYPE:CUSTOM
;added code by post processing
;script: PauseAtHeight.py
;current z: 5
;current height: 5.0
M83 ; switch to relative E values for any needed retraction
G1 F300 Z6 ; move up a millimeter to get out of the way
G1 F9000 X190 Y190
G1 F300 Z20.0
M84 E0
@pause now change filament and press ; Do the actual pause
G1 F9000 X30.759 Y30.759
G1 F300 Z5
G1 F1800 ; restore extrusion feedrate
```
2021-08-17 13:38:50 +02:00
Ghostkeeper
901b05d1a6
Merge branch '4.11' 2021-08-17 13:35:00 +02:00
Ghostkeeper
33edc4a8c9
Fix display of unlinking button
It was not being displayed with Qt 5.15 due to the following error:
MaterialsView.qml:34:5: Unable to assign QStringList to QString
This is correct. And it should not just concatenate all of these material names; it should add a comma between them for human-readable display in the text label above the button.

Fixes #10235.
2021-08-17 13:34:43 +02:00
fieldOfView
91b2a9b325 Fix typo 2021-08-16 21:07:55 +02:00
Konstantinos Karmas
e0e4a3f2c0 Add shadow behind the what's new pages
As discussed during the eCCB.
2021-08-16 17:00:30 +02:00
Konstantinos Karmas
2299f90808 Add shadow behind the what's new pages
As discussed during the eCCB.
2021-08-16 16:57:57 +02:00
fieldOfView
e4a04c186f Merge branch 'master' into feature_pause_at_height_optional_parking
# Conflicts:
#	plugins/PostProcessingPlugin/scripts/PauseAtHeight.py
2021-08-16 12:19:49 +02:00
fieldOfView
6c585deb1e Make parking optional
Not adding parking gcode makes the repetier @pause method suitable for use with OctoPrint.

Contributes to #7842
2021-08-16 12:15:38 +02:00
Jaime van Kessel
d5d163377b Merge branch '4.11' of github.com:Ultimaker/Cura 2021-08-16 11:16:29 +02:00
Jaime van Kessel
a124342127 Fix Pause at height issue
Fixes #8575

Thanks to @EGOiST1991 for suggesting the fix!
2021-08-16 11:15:30 +02:00