276 Commits

Author SHA1 Message Date
Lipu Fei
16764f4750 Create user containers for newly created custom FDM printer extruders
CURA-4188

The newly created extruder stacks don't have user containers, so the
user changes cannot be saved. This fix makes sure that in the upgrade,
user containers will be created.
2017-08-22 17:37:25 +02:00
Lipu Fei
3d75342a11 Stop the loop if any extruder is found
CURA-4188
2017-08-22 10:51:14 +02:00
Lipu Fei
72575eaf37 Rename function to _acquireNextUniqueCustomFdmPrinterExtruderStackIdIndex()
CURA-4188
2017-08-22 10:44:22 +02:00
Lipu Fei
1332489391 Add comments for upgradeMachineStack()
CURA-4188
2017-08-22 10:42:33 +02:00
Lipu Fei
67cfb064e6 Fix upgrading custom FDM printers from 2.5
CURA-4188

Custom FDM printers in 2.5 don't have multi-extrusion support but they
do since 2.6. Upgrading from 2.5 to 2.6 will not create the missing
extruder stacks for the old custom FDM printers, which causes a crash.
This fix makes sure that all custom FDM printers will have 8 extruder
stacks during the upgrade so that Cura can still start normally and
those printers will still be usable.
2017-08-18 13:06:46 +02:00
Ghostkeeper
9a00c07c3d
Also upgrade variants
Variants can be customised as well, you know.
2017-08-18 09:59:51 +02:00
Ghostkeeper
89cd11e62a
Upgrade g-code flavour Volumatric to Volumetric
Contributes to issue CURA-3998.
2017-07-24 16:19:59 +02:00
Lipu Fei
ed91bf816f Correct definition_changes location in 2.6 to 2.7 upgrade script
CURA-4053
2017-07-21 11:36:47 +02:00
Lipu Fei
5bf080950f Fix upgrade from 2.5 to 2.6 to 2.7
CURA-3975

- Set Preferences setting_version in CuraApplication so Preferences can
  get upgraded correctly
- Fix upgrade script for 2.5 to 2.6
- Fix upgrade script for 2.6 to 2.7 which relies on the upgrade of 2.5
  to 2.6
2017-07-06 14:19:26 +02:00
Lipu Fei
4727e4aa95 Remove unused imports
CURA-3975
2017-07-06 12:13:30 +02:00
Lipu Fei
4e3ff1b770 Fix version upgrade for 2.5 to 2.6
CURA-3975

- Preferences version is not set correctly
- The upgrade script should use a standalone version string because the
  CuraApplication.SettingVersion can change
2017-07-06 12:11:28 +02:00
Lipu Fei
c196a4bf00 Fix stack file version number in VersionUpgrade26to27
CURA-3975
2017-07-06 10:42:26 +02:00
Lipu Fei
42858b4715 Add upgrade script for 2.6 to 2.7 to rename quality profiles
CURA-3975
2017-07-06 10:26:02 +02:00
Ghostkeeper
cd4bffb380
Set author to Ultimaker B.V. instead of Ultimaker
To be consistent with the rest of the plug-ins and with the material files.

Contributes to issue CURA-3857.
2017-06-28 13:50:37 +02:00
Lipu Fei
4ea8cc448a Use semantic versioning for all plugin.json
CURA-3712
2017-06-22 08:57:47 +02:00
Lipu Fei
73f598ff9f Fix code style
CURA-3712
2017-06-22 08:54:04 +02:00
Jaime van Kessel
e3629cec39 Replaced catalog metadata entry with i18n-catalog
CURA-3712 & Cura-3856
2017-06-21 14:24:00 +02:00
Jaime van Kessel
44125d3275 Moved certain meta data entries to seperate file
CURA-3856 & CURA-3712
2017-06-21 11:22:35 +02:00
Jaime van Kessel
475455d473 Definition changes are now also upgraded
CURA-3837
2017-05-19 10:39:37 +02:00
Lipu Fei
d02d004986 Correct profile_translations in VersionUpgrade21to22
CURA-3777
2017-05-17 13:44:34 +02:00
Lipu Fei
40d70b5f39 Fix version upgrade for project loading
CURA-3756
2017-05-16 14:38:27 +02:00
Jaime van Kessel
e40f60a52b Changed profile names
CURA-3777
2017-05-15 16:52:25 +02:00
Ghostkeeper
adefbaf72e
Add more unhappy-path tests
One for the new setting_version. One for the misconception of version numbers being a major-minor version or something, because it's not stored that way.

Contributes to issue CURA-3427.
2017-05-12 15:01:27 +02:00
Ghostkeeper
04ef2bf1f0
Update setting_version tests
Included a bit of a more difficult case.

Contributes to issue CURA-3427.
2017-05-12 14:58:11 +02:00
Ghostkeeper
55b2392a1d
Load setting version from metadata
I'm not really awake today, am I? The functionality happened to still work because of how our real data is structured right now, but the tests still failed. Those are successful now.

Contributes to issue CURA-3427.
2017-05-12 14:55:19 +02:00
Ghostkeeper
9820dac4a6
Actually use setting_version to get the setting version number
This was sort of hidden because we've always incremented the normal version number up until now.

Contributes to issue CURA-3427.
2017-05-12 14:51:44 +02:00
Ghostkeeper
20e9d19587
Update tests to account for new way of getting version numbers
The normal version number is multiplied by a million. Currently these tests fail, so nice to have them.

Contributes to issue CURA-3427.
2017-05-12 14:50:43 +02:00
Ghostkeeper
98662bc6f6
Also update import to renamed package
Oops.

Contributes to issue CURA-3427.
2017-05-12 14:07:21 +02:00
Ghostkeeper
6e01c6ba60
Initialise config_name
Just a mistake that I saw because my IDE warned me about this. If a variant in Cura 2.3 has no general/name keyword, then it would break here. Now it doesn't break any more and gives a nonsensical name.

Contributes to issue CURA-3427.
2017-05-11 17:33:46 +02:00
Ghostkeeper
0a84a181c4
Track cfg version numbers with major-minor, sorta
We now have a (format) version and a setting version. Ideally we'd like major-minor version numbers in our profiles. However, introducing major-minor version numbers requires substantial changes to the version upgrade manager to compare version numbers, find a path towards the current version, or even keeping track of the current version. Therefore we just collapse the two version numbers into one: Multiply the major version number by a million and you'll never exceed it in the minor versioning. The only problem is that we now have to update the versioning for all of our three upgrade plug-ins, because they all need to know locally how to find the version number of their file types (because the upgrade manager has no knowledge of the file types) and they have no access to each other because a plug-in may be disabled.

Contributes to issue CURA-3427.
2017-05-11 17:31:37 +02:00
Ghostkeeper
639e86ca59
Set setting_version in 2.6's profiles
Contributes to issue CURA-3427.
2017-05-11 16:53:59 +02:00
Ghostkeeper
30321607d0
Remove Cubic Subdivision Radius from users' configuration
The setting no longer exists. This removes it from all instance containers and preference files.

Contributes to issue CURA-3427.
2017-05-11 15:30:24 +02:00
Ghostkeeper
22cfaddba5
Fix import
Oops.

The test passes again now.

Contributes to issue CURA-3427.
2017-05-11 14:35:54 +02:00
Ghostkeeper
833ad65507
Also rename test
Forgot that, sorry.

Contributes to issue CURA-3427.
2017-05-11 14:34:11 +02:00
Ghostkeeper
b57cb16f6d
Rename 24to25 to 25to26
The upgrade now upgrades profiles from the 2.5 format to 2.6, since we delayed the update for the 2.5 release.

Contributes to issue CURA-3427.
2017-05-11 14:32:45 +02:00
Ghostkeeper
99cb8bc169
Re-enable Version 2.4 to 2.5 upgrade
So that we can remove settings again, among which the Cubic Subdivision Radius setting.

Contributes to issue CURA-3427.
2017-05-11 14:29:25 +02:00
Ghostkeeper
5176b98f6e
Set the correct result in visible settings
Oops.

Contributes to issue CURA-3491.
2017-05-02 13:58:11 +02:00
Ghostkeeper
bb0e9c3fdc
Split interface line distance into two in user's profiles
This hasn't been deep-tested yet, but I assume that'll happen when the plug-in is reactivated in the source code.

Contributes to issue CURA-3491.
2017-05-02 12:36:25 +02:00
Jaime van Kessel
134425db90 Merge branch '2.5' of github.com:Ultimaker/Cura 2017-03-16 11:27:54 +01:00
Jaime van Kessel
a170624ff1 Disabled the 2.5 upgrader 2017-03-16 11:26:50 +01:00
Ghostkeeper
94c607e785
Also tests whether the upgrade didn't remove any good settings
It shouldn't remove any settings that are not set for removing.
It's now also using the actual _removed_settings property to make sure that the test upgrades for the simple case of another removed setting.

Contributes to issue CURA-3479.
2017-03-13 14:08:56 +01:00
Ghostkeeper
ad0d0bbd96
Add test for removing settings from instance containers
Currently only the happy path. I plan to add tests whether the rest of the settings are still intact.

Contributes to issue CURA-3479.
2017-03-13 13:49:19 +01:00
Ghostkeeper
d866216f0c
Add tests for removed settings from preferences files
Contributes to issue CURA-3479.
2017-03-13 13:39:10 +01:00
Ghostkeeper
14faf1abad
Use correct naming scheme for functions
It needs to start with 'test_' for pytest. But otherwise it needs to follow our naming conventions for function names.

Contributes to issue CURA-3479.
2017-03-13 12:49:48 +01:00
Ghostkeeper
ce50a6ebf1
Add tests for cfg_version
These test if the output of cfg_version is as expected.

Contributes to issue CURA-3479.
2017-03-13 12:44:18 +01:00
Ghostkeeper
f15990e89c
Implement version upgrade from 2.4 to 2.5
The version upgrade currently only removes the setting start_layers_at_same_position.

Contributes to issue CURA-3479.
2017-03-13 12:42:25 +01:00
Ghostkeeper
74d6d879f7
Implement version upgrade from 2.4 to 2.5
The version upgrade currently only removes the setting start_layers_at_same_position.

Contributes to issue CURA-3479.
2017-03-10 16:58:58 +01:00
Simon Edwards
4ab6b74930 Fixed a bunch of error which were reported by PyCharm's code analysis. 2017-02-26 21:05:09 +01:00
Simon Edwards
cf85831d87 Also check the upgrade plugins. 2017-01-17 20:56:28 +01:00
Simon Edwards
fb70eb6813 Merge branch 'master' into python_type_hinting 2017-01-17 08:42:55 +01:00