Commit graph

7047 commits

Author SHA1 Message Date
Ghostkeeper
0788df4797
Add log entry upon exporting container
Quite a salient moment in the log. According to our log levels definitions this must be info since it's the direct result of a user interaction.
2021-01-06 14:11:15 +01:00
Remco Burema
793430fa7a
Add documentation. What is an 'alternate version'? 2021-01-06 12:16:08 +01:00
Remco Burema
a25a51eddb
Windows workaround for OAuth data removal from config.
Windows won't allow long keys in the backend the keyring python package uses as a backend. This means the access_token part can't be stored in the obvious way. Timeboxed some attempts at working around this limitation, but couldn't make it work within the time set. As this is mostly an extra precaustion protecting users that share config folders around against themselves (in other words, if this goes wrong it's not unreasonable to blame the user) it's not top critical, and the important part of that (the refresh_token) can proceed, giving any potential attacker only a 10 minute window from the moment any user shares their %appdata%/cura files (again, this is not how we intent for users to behave, but they can and will do it this way).

CURA-7180
2020-12-24 14:39:22 +01:00
Kostas Karmas
71994eaaf9 Change the Open File(s) option according to the file providers count
When there is only one file provider (i.e. the local file provider), the Open File(s) will be a
simple item in the File menu.
When there are more than one file providers, the Open File(s) will become a submenu in the File
menu, which will contain all the file providers as submenu items.

CURA-7868
2020-12-23 17:13:14 +01:00
Jaime van Kessel
7f27ff5432
Reset scene metadata if the buildplate was cleared
CURA-7615
2020-12-23 14:08:59 +01:00
Jaime van Kessel
bff3ba577b
Store auth & refresh key in keyring instead of in preferences
People tend to share configuration folders, which just isn't secure.

CURA-7180
2020-12-21 14:02:45 +01:00
Remco Burema
0fdcd208ee
Possible alternate non-numbered versions.
CURA-7932
2020-12-20 21:55:13 +01:00
Kostas Karmas
43615a57b6 Change client scope in the Account
CURA-7868
2020-12-18 14:34:29 +01:00
Jaime van Kessel
037b5d5b44
Ensure that the skirt_brim_line_width is selected from right extruder
This fixes CURA-7835 and Fixes #8716
2020-12-18 11:31:55 +01:00
Ghostkeeper
2fbbd79789
Merge branch 'CURA-7683_VersionUpgrader_for_libArachne_5.0' into libArachne_rebased 2020-12-08 15:33:07 +01:00
Jaime van Kessel
7096f64ca2
Fix crash when extruder could not be found
Fixes #8891
2020-12-07 16:45:28 +01:00
Kostas Karmas
5bca31e37a Update setting version to 18 for libArachne release
Although it is not entirely sure yet, we are fairly certain that libArachne release will have
a setting version of 18, so it is changed by this commit. With this change, the VersionUpgrader
will be properly triggered.

Contributes to CURA-7683 and CURA-7656
2020-12-02 15:29:25 +01:00
Jaime van Kessel
99c12de6b0
Merge branch 'master' of github.com:Ultimaker/Cura into fix_grouping_below_build_plate 2020-11-25 15:42:15 +01:00
Jaime van Kessel
68bc75e7a2
Merge branch 'CURA-7501_fix_warning_preloaded_plugins' of github.com:Ultimaker/Cura 2020-11-16 15:24:31 +01:00
fieldOfView
0c668053e5 Add warning icon to show which extruder makes the configuration Not Supported 2020-11-12 14:04:58 +01:00
Remco Burema
9afbc64934
Merge branch '4.8' 2020-11-10 11:31:53 +01:00
Kostas Karmas
4b35bd1724 Correct the print sequence when discarding the current changes
CURA-7827
2020-11-09 18:10:50 +01:00
Kostas Karmas
fab2c31b4f Cover the last remaining case when setting the print sequence
If for some reason the print sequence is set to one-at-a-time be default in the printer definition
and the number of extruders of the printer is set to >=2, then the print_sequence won't show up in
neither the quality changes nor the user changes, yet it will still have "one-at-a-time" as a
value. In a such case, it will still need to be set to "all-at-once" in the user changes.

This is a theoretical case, as it is very unlikely for a printer to have "one-at-a-time" set by
default in its definition (.def.json) file and still be able to support more than one extruders.
But it is a world full of possibilities out there, so you never know...

CURA-7827
2020-11-09 16:55:43 +01:00
Kostas Karmas
07453e101e Add detailed documentation for _correctPrintSequence function
CURA-7827
2020-11-09 16:32:05 +01:00
Kostas Karmas
2ccdd11098 Properly set the print sequence in the correct container
Previously, the print sequence would be always set to all-at-once in the user container whenever
the second extruder would be enabled. This was causing an interface issue, where the circular
reset-setting arrow would appear next to the setting, even if the quality changes already had the
correct value ("all-at-once").

This is now fixed by checking the following:
- If print_sequence == "one_at_a_time" in the quality (so it is already saved in a quality profile)
then set the print_sequence to "all_at_once" in the user changes so that it will be displayed as
an unsaved change
- If print_sequence == "one_at_a_time" in the user changes container only, meaning that it is not
saved in any quality profiles, then just reset the print_sequence in the user changes, so that it
will have the correct value ("all-at-once") without the reset-setting arrow appearing next to it.

CURA-7827
2020-11-09 16:20:13 +01:00
Jaime van Kessel
01648a329e
Convert list of all base_files into set
Co-authored-by: Ghostkeeper <Ghostkeeper@users.noreply.github.com>
2020-11-09 15:28:13 +01:00
Jaime van Kessel
5a14ef2a56
Simplify and speed up the extending of the qualities list 2020-11-09 14:14:32 +01:00
Kostas Karmas
a1c7ebe1c3 Fix mypy complaints
CURA-7827
2020-11-05 19:04:29 +01:00
Kostas Karmas
845c994cbc Replace f string since it's not available in Python3.5
That should fix the failing test which produces a SyntaxError.

CURA-7827
2020-11-05 17:38:34 +01:00
Kostas Karmas
1a759f81df Change print sequence when the number of enabled extruders changes
Fixes https://github.com/Ultimaker/Cura/issues/8682 while still maintaining the correct behavior for CURA-6914.

CURA-7827
2020-11-05 16:58:47 +01:00
Jaime van Kessel
080832fcf2
Merge branch '4.8' of github.com:Ultimaker/Cura 2020-11-04 11:07:38 +01:00
Kostas Karmas
726175a01d Merge branch '4.8' of https://github.com/Ultimaker/Cura into 4.8 2020-11-04 09:22:42 +01:00
Kostas Karmas
881e4406a4 Ensure the organization_id is None 2020-11-04 09:21:28 +01:00
Jaime van Kessel
526eb8dacd
Gracefully handle exceptions in arrange
CURA-7785
2020-11-03 09:48:54 +01:00
Ghostkeeper
39287264d9
Pynest2d.Point requires integer coordinates
These were floats. Rounding numpy-floats still results in floats so I'm just using int(). The result is rounded down instead of nearest, but the difference is at most 50 nanometres anyway.

Contributes to issue CURA-7501.
2020-10-30 18:12:18 +01:00
Ghostkeeper
ef1952f34c
Fix providing floats to integer parameters
In newer Python versions this results in a warning.

Contributes to issue CURA-7501.
2020-10-30 17:45:57 +01:00
Ghostkeeper
31ee864f04
Disallow printer names that start with a dot
Fixes #8639.
2020-10-30 11:10:46 +01:00
Kostas Karmas
309c5fe9f9 Merge branch '4.8' 2020-10-27 14:42:38 +01:00
Jaime van Kessel
d35d6b087a
Reset the entire transformation when merging
This fixes the issue when the packing algorithm rotated an object

CURA-7796
2020-10-27 13:44:33 +01:00
Konstantinos Karmas
4e6097f499
Revert "Prevent duplicate adding of extruders" 2020-10-27 11:29:08 +01:00
Ghostkeeper
5cfe18d31c
Clarify user-facing string to remove internal terminology
The user doesn't know what a global stack is. This is a message that more clearly specifies what is really happening as far as the user can see.

The global stack may be None if this code is executed while there is no active printer. Normally the only time there is no active printer is:
- during first launch, while in the welcome screen
- during start-up until the profiles have been loaded
- if there was a profile corruption of some kind with the active printer.

So this function should not get called during those times. It probably isn't called except for the last case (in which case it's acceptable I guess).
This change is made after a request from a translator what the hell this means.

Contributes to issue CURA-7783.
2020-10-27 10:54:07 +01:00
Konstantinos Karmas
4804072625
Merge pull request #8553 from Ultimaker/CURA-7501_no_double_adding_extruders
Prevent duplicate adding of extruders
2020-10-26 17:02:51 +01:00
Jaime van Kessel
10ed7c1288
Merge branch '4.8' of github.com:Ultimaker/Cura 2020-10-22 13:41:44 +02:00
Kostas Karmas
03dc8d00fe Up the SDK version to 7.4.0
In preparation for release of the 4.8.

CURA-7795
2020-10-22 11:29:25 +02:00
Kostas Karmas
a42c1493b7 Merge branch '4.8' 2020-10-22 11:10:48 +02:00
Konstantinos Karmas
1e005260b4
Merge pull request #8582 from Ultimaker/CURA-7643_fix_prime_tower_overlap
Fix prime tower overlap
2020-10-22 11:02:20 +02:00
Jaime van Kessel
953d363d96
Merge branch '4.8' of github.com:Ultimaker/Cura 2020-10-20 14:20:29 +02:00
Jaime van Kessel
5109bd3684
Fix crash when duplicating node with support blocker
Suggested & reported by smartavonics.

Fixes #8581
2020-10-20 14:19:33 +02:00
Jaime van Kessel
e13ffb597d
Increase resolution of prime tower shadow and use doulbe brim size
It needs to use the double brim size, as it needs to ensure that
it has enough room for it's own brim and any object brim.

The resolution of the circle is increased so that the shadow matches
more with what is actually being printed

CURA-7643
2020-10-20 13:41:35 +02:00
Kostas Karmas
25612d4184 Merge branch '4.8' 2020-10-19 11:34:11 +02:00
Konstantinos Karmas
a2cd21ac49
Merge pull request #8549 from Ultimaker/CURA-7770_Update_setting_after_disable_extruder
Force an re-evaluation of a setting when extruder has been disabled
2020-10-19 11:33:10 +02:00
Jaime van Kessel
ff10eac372
Merge branch '4.8' of github.com:Ultimaker/Cura 2020-10-19 11:02:44 +02:00
Jaime van Kessel
02605f00e5
Merge branch 'CURA-7780_Fix_arrange_message_not_closing_when_arrange_crashes' of github.com:Ultimaker/Cura into 4.8 2020-10-19 10:58:47 +02:00
Ghostkeeper
4b3fda21e2
Prevent duplicate adding of extruders
The addMachineExtruders function assumes that this is a new printer (first time the printer is activated since a restart of Cura) and it needs to add the extruder stacks to it. However most of the time when we're switching, it's not to a new printer. If it's not a new printer, this function would get called anyway and we'd be adding the extruders multiple times. This then does a lot of unnecessary work and eventually fails a couple of calls deep.
This change prevents it from adding the extruders if there are already extruders associated with the printer, thus preventing this unnecessary work (switch is faster) and preventing the error from happening.

Discovered during work on CURA-7501.
2020-10-16 16:09:37 +02:00
Ghostkeeper
df69d543a2
Not logged in for API calls is not a warning
Many requests are made without being logged in, such as to get the list of plug-ins when opening the Marketplace.

Contributes to issue CURA-7501.
2020-10-16 14:15:18 +02:00