Просмотр исходного кода

Merge remote-tracking branch 'origin/main' into CURA-10127-dont-allow-minimum-speed-to-be-zero

Jelle Spijker 2 лет назад
Родитель
Сommit
58b88a2ab4

+ 4 - 19
.github/workflows/conan-package.yml

@@ -78,25 +78,12 @@ jobs:
       - name: Setup Python and pip
         uses: actions/setup-python@v4
         with:
-          python-version: '3.10.x'
+          python-version: '3.11.x'
           cache: 'pip'
           cache-dependency-path: .github/workflows/requirements-conan-package.txt
 
       - name: Install Python requirements for runner
-        run: pip install -r https://raw.githubusercontent.com/Ultimaker/Cura/main/.github/workflows/requirements-conan-package.txt
-        #  Note the runner requirements are always installed from the main branch in the Ultimaker/Cura repo
-
-      - name: Use Conan download cache (Bash)
-        if: ${{ runner.os != 'Windows' }}
-        run: conan config set storage.download_cache="$HOME/.conan/conan_download_cache"
-
-      - name: Cache Conan local repository packages (Bash)
-        uses: actions/cache@v3
-        with:
-          path: |
-            $HOME/.conan/data
-            $HOME/.conan/conan_download_cache
-          key: conan-ubuntu-${{ runner.arch }}-create-cache
+        run: pip install -r .github/workflows/requirements-conan-package.txt
 
       # NOTE: Due to what are probably github issues, we have to remove the cache and reconfigure before the rest.
       #       This is maybe because grub caches the disk it uses last time, which is recreated each time.
@@ -108,10 +95,7 @@ jobs:
           sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
           sudo apt update
           sudo apt upgrade
-          sudo apt install efibootmgr build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config flex bison -y
-
-      - name: Install GCC-12
-        run: |
+          sudo apt install efibootmgr build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config flex bison g++-12 gcc-12 -y
           sudo apt install g++-12 gcc-12 -y
           sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12
           sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12
@@ -133,6 +117,7 @@ jobs:
         if: always()
         run: |
           conan upload ${{ needs.conan-recipe-version.outputs.recipe_id_full }} -r cura --all -c
+          conan upload "*@_/_" -r cura --all -c
           conan upload ${{ needs.conan-recipe-version.outputs.recipe_id_latest }} -r cura -c
 
   notify-create:

+ 1 - 1
.github/workflows/conan-recipe-version.yml

@@ -132,7 +132,7 @@ jobs:
                         # %% Get the actual version
                         latest_branch_version = Version("0.0.0")
                         latest_branch_tag = None
-                        for tag in repo.git.tag(merged = True).splitlines():
+                        for tag in repo.active_branch.repo.tags:
                             if str(tag).startswith("firmware") or str(tag).startswith("master"):
                                 continue  # Quick-fix for the versioning scheme name of the embedded team in fdm_materials(_private) repo
                             try:

+ 68 - 0
.github/workflows/update-translation.yml

@@ -0,0 +1,68 @@
+name: update-translations
+
+on:
+    push:
+        paths:
+            - 'plugins/**'
+            - 'resources/**'
+            - 'cura/**'
+            - 'icons/**'
+            - 'tests/**'
+            - 'packaging/**'
+            - '.github/workflows/conan-*.yml'
+            - '.github/workflows/notify.yml'
+            - '.github/workflows/requirements-conan-package.txt'
+            - 'requirements*.txt'
+            - 'conanfile.py'
+            - 'conandata.yml'
+            - 'GitVersion.yml'
+            - '*.jinja'
+
+jobs:
+    update-translations:
+        name: Update translations
+
+        runs-on: ubuntu-latest
+        steps:
+            -   name: Checkout
+                uses: actions/checkout@v3
+
+            -   name: Setup Python and pip
+                uses: actions/setup-python@v4
+                with:
+                    python-version: 3.11.x
+                    cache: pip
+                    cache-dependency-path: .github/workflows/requirements-conan-package.txt
+
+            -   name: Install Python requirements for runner
+                run: pip install -r .github/workflows/requirements-conan-package.txt
+
+            # NOTE: Due to what are probably github issues, we have to remove the cache and reconfigure before the rest.
+            #       This is maybe because grub caches the disk it uses last time, which is recreated each time.
+            -   name: Install Linux system requirements
+                if: ${{ runner.os == 'Linux' }}
+                run: |
+                    sudo rm /var/cache/debconf/config.dat
+                    sudo dpkg --configure -a
+                    sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
+                    sudo apt update
+                    sudo apt upgrade
+                    sudo apt install efibootmgr build-essential checkinstall libegl-dev zlib1g-dev libssl-dev ninja-build autoconf libx11-dev libx11-xcb-dev libfontenc-dev libice-dev libsm-dev libxau-dev libxaw7-dev libxcomposite-dev libxcursor-dev libxdamage-dev libxdmcp-dev libxext-dev libxfixes-dev libxi-dev libxinerama-dev libxkbfile-dev libxmu-dev libxmuu-dev libxpm-dev libxrandr-dev libxrender-dev libxres-dev libxss-dev libxt-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev xtrans-dev libxcb-render0-dev libxcb-render-util0-dev libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev xkb-data libxcb-dri3-dev uuid-dev libxcb-util-dev libxkbcommon-x11-dev pkg-config flex bison g++-12 gcc-12 -y
+                    sudo apt install g++-12 gcc-12 -y
+                    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 12
+                    sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 12
+
+            -   name: Create the default Conan profile
+                run: conan profile new default --detect
+
+            -   name: Get Conan configuration
+                run: conan config install https://github.com/Ultimaker/conan-config.git
+
+            -   name: generate the files using Conan install
+                run: conan install . --build=missing --update -o cura:devtools=True
+
+            -   uses: stefanzweifel/git-auto-commit-action@v4
+                with:
+                    file_pattern: resources/i18n/*.po resources/i18n/*.pot
+                    status_options: --untracked-files=no
+                    commit_message: update translations

+ 6 - 0
README.md

@@ -1,4 +1,10 @@
 
+> # Work with us!
+> If you're interested in working with us on Cura and Thingiverse, please apply to one of the open positions below. 
+> - [Software Engineer C++ & Python](https://www.linkedin.com/jobs/view/3516545085) for [Cura](https://github.com/Ultimaker/Cura)
+> - [DevOps Engineer Community Software](https://www.linkedin.com/jobs/view/3516542580) for [Cura](https://github.com/Ultimaker/Cura) and [Thingiverse](https://www.thingiverse.com/)
+> - [QA / Test Engineer Cura (3D printing)](https://www.linkedin.com/jobs/view/3516538895) for [Cura](https://github.com/Ultimaker/Cura) and [Thingiverse](https://www.thingiverse.com/)
+
 <br>
 
 <div align = center>

+ 4 - 3
conanfile.py

@@ -26,7 +26,7 @@ class CuraConan(ConanFile):
     no_copy_source = True  # We won't build so no need to copy sources to the build folder
 
     # FIXME: Remove specific branch once merged to main
-    python_requires = "umbase/[>=0.1.7]@ultimaker/stable", "translationextractor/[>=2.0.0]@ultimaker/stable"
+    python_requires = "umbase/[>=0.1.7]@ultimaker/stable", "translationextractor/[>=2.1.1]@ultimaker/stable"
     python_requires_extend = "umbase.UMBaseConanfile"
 
     options = {
@@ -305,7 +305,7 @@ class CuraConan(ConanFile):
         if self.options.devtools:
             if self.settings.os != "Windows" or self.conf.get("tools.microsoft.bash:path", check_type = str):
                 # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement
-                self.tool_requires("gettext/0.21@ultimaker/testing")
+                self.tool_requires("gettext/0.21@ultimaker/testing", force_host_context = True)
 
     def layout(self):
         self.folders.source = "."
@@ -340,7 +340,8 @@ class CuraConan(ConanFile):
                 vb.generate()
 
                 # FIXME: once m4, autoconf, automake are Conan V2 ready use self.win_bash and add gettext as base tool_requirement
-                pot = self.python_requires["translationextractor"].module.ExtractTranslations(self)
+                cpp_info = self.dependencies["gettext"].cpp_info
+                pot = self.python_requires["translationextractor"].module.ExtractTranslations(self, cpp_info.bindirs[0])
                 pot.generate()
 
     def build(self):

+ 4 - 2
resources/definitions/fdmprinter.def.json

@@ -4419,8 +4419,10 @@
                     "type": "float",
                     "value": "material_print_temperature",
                     "enabled": "cool_min_layer_time > 0",
-                    "minimum_value": "max(material_final_print_temperature, material_initial_print_temperature)",
-                    "maximum_value": "material_print_temperature",
+                    "minimum_value_warning": "max(material_final_print_temperature, material_initial_print_temperature)",
+                    "maximum_value_warning": "material_print_temperature",
+                    "minimum_value": "-273.15",
+                    "maximum_value": "365",
                     "settable_per_mesh": false,
                     "settable_per_extruder": true
                 }

+ 17 - 17
resources/i18n/cs_CZ/cura.po

@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Cura 5.1\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-03-07 09:01+0100\n"
+"POT-Creation-Date: 2023-03-09 11:03+0000\n"
 "PO-Revision-Date: 2023-02-16 20:28+0100\n"
 "Last-Translator: Miroslav Šustek <sustmidown@centrum.cz>\n"
 "Language-Team: DenyCZ <www.github.com/DenyCZ>\n"
@@ -1281,45 +1281,45 @@ msgctxt "@message:description"
 msgid "Report a bug on UltiMaker Cura's issue tracker."
 msgstr "Nahlásit chybu v UltiMaker Cura issue trackeru."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:401
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:416
 msgctxt "@info:status"
 msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
 msgstr "Nelze slicovat s aktuálním materiálem, protože je nekompatibilní s vybraným strojem nebo konfigurací."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:402
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:435
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:462
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:474
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:486
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:499
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:417
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:450
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:477
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:489
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:501
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:514
 msgctxt "@info:title"
 msgid "Unable to slice"
 msgstr "Nelze slicovat"
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:434
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:449
 #, python-brace-format
 msgctxt "@info:status"
 msgid "Unable to slice with the current settings. The following settings have errors: {0}"
 msgstr "S aktuálním nastavením nelze slicovat. Následující nastavení obsahuje chyby: {0}"
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:461
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:476
 #, python-brace-format
 msgctxt "@info:status"
 msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
 msgstr "Nelze slicovat kvůli některým nastavení jednotlivých modelů. Následující nastavení obsahuje chyby na jednom nebo více modelech: {error_labels}"
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:473
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:488
 msgctxt "@info:status"
 msgid "Unable to slice because the prime tower or prime position(s) are invalid."
 msgstr "Nelze slicovat, protože hlavní věž nebo primární pozice jsou neplatné."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:485
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:500
 #, python-format
 msgctxt "@info:status"
 msgid "Unable to slice because there are objects associated with disabled Extruder %s."
 msgstr "Nelze slicovat, protože jsou zde objekty asociované k zakázanému extruder %s."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:495
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:510
 msgctxt "@info:status"
 msgid ""
 "Please review settings and check if your models:\n"
@@ -6591,17 +6591,17 @@ msgctxt "@label Header for list of settings."
 msgid "Affected By"
 msgstr "Ovlivněno"
 
-#: resources/qml/Settings/SettingItem.qml:190
+#: resources/qml/Settings/SettingItem.qml:196
 msgctxt "@label"
 msgid "This setting is always shared between all extruders. Changing it here will change the value for all extruders."
 msgstr "Toto nastavení je vždy sdíleno všemi extrudéry. Jeho změnou se změní hodnota všech extruderů."
 
-#: resources/qml/Settings/SettingItem.qml:194
+#: resources/qml/Settings/SettingItem.qml:200
 msgctxt "@label"
 msgid "This setting is resolved from conflicting extruder-specific values:"
 msgstr "Toto nastavení je vyřešeno z konfliktních hodnot specifického extruder:"
 
-#: resources/qml/Settings/SettingItem.qml:234
+#: resources/qml/Settings/SettingItem.qml:240
 msgctxt "@label"
 msgid ""
 "This setting has a value that is different from the profile.\n"
@@ -6612,7 +6612,7 @@ msgstr ""
 "\n"
 "Klepnutím obnovíte hodnotu profilu."
 
-#: resources/qml/Settings/SettingItem.qml:334
+#: resources/qml/Settings/SettingItem.qml:340
 msgctxt "@label"
 msgid ""
 "This setting is normally calculated, but it currently has an absolute value set.\n"

+ 269 - 269
resources/i18n/cura.pot

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-03-07 09:01+0100\n"
+"POT-Creation-Date: 2023-03-09 11:03+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1243,45 +1243,45 @@ msgctxt "@message:description"
 msgid "Report a bug on UltiMaker Cura's issue tracker."
 msgstr ""
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:401
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:416
 msgctxt "@info:status"
 msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
 msgstr ""
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:402
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:435
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:462
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:474
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:486
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:499
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:417
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:450
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:477
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:489
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:501
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:514
 msgctxt "@info:title"
 msgid "Unable to slice"
 msgstr ""
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:434
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:449
 #, python-brace-format
 msgctxt "@info:status"
 msgid "Unable to slice with the current settings. The following settings have errors: {0}"
 msgstr ""
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:461
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:476
 #, python-brace-format
 msgctxt "@info:status"
 msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
 msgstr ""
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:473
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:488
 msgctxt "@info:status"
 msgid "Unable to slice because the prime tower or prime position(s) are invalid."
 msgstr ""
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:485
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:500
 #, python-format
 msgctxt "@info:status"
 msgid "Unable to slice because there are objects associated with disabled Extruder %s."
 msgstr ""
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:495
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:510
 msgctxt "@info:status"
 msgid ""
 "Please review settings and check if your models:\n"
@@ -5911,17 +5911,17 @@ msgctxt "@label Header for list of settings."
 msgid "Affected By"
 msgstr ""
 
-#: resources/qml/Settings/SettingItem.qml:190
+#: resources/qml/Settings/SettingItem.qml:196
 msgctxt "@label"
 msgid "This setting is always shared between all extruders. Changing it here will change the value for all extruders."
 msgstr ""
 
-#: resources/qml/Settings/SettingItem.qml:194
+#: resources/qml/Settings/SettingItem.qml:200
 msgctxt "@label"
 msgid "This setting is resolved from conflicting extruder-specific values:"
 msgstr ""
 
-#: resources/qml/Settings/SettingItem.qml:234
+#: resources/qml/Settings/SettingItem.qml:240
 msgctxt "@label"
 msgid ""
 "This setting has a value that is different from the profile.\n"
@@ -5929,7 +5929,7 @@ msgid ""
 "Click to restore the value of the profile."
 msgstr ""
 
-#: resources/qml/Settings/SettingItem.qml:334
+#: resources/qml/Settings/SettingItem.qml:340
 msgctxt "@label"
 msgid ""
 "This setting is normally calculated, but it currently has an absolute value set.\n"
@@ -6254,154 +6254,154 @@ msgstr ""
 msgctxt "@label"
 msgid "No items to select from"
 msgstr ""
-#: plugins/PostProcessingPlugin/plugin.json
+#: plugins/CuraProfileWriter/plugin.json
 msgctxt "description"
-msgid "Extension that allows for user created scripts for post processing"
+msgid "Provides support for exporting Cura profiles."
 msgstr ""
 
-#: plugins/PostProcessingPlugin/plugin.json
+#: plugins/CuraProfileWriter/plugin.json
 msgctxt "name"
-msgid "Post Processing"
+msgid "Cura Profile Writer"
 msgstr ""
 
-#: plugins/SolidView/plugin.json
+#: plugins/UFPWriter/plugin.json
 msgctxt "description"
-msgid "Provides a normal solid mesh view."
+msgid "Provides support for writing Ultimaker Format Packages."
 msgstr ""
 
-#: plugins/SolidView/plugin.json
+#: plugins/UFPWriter/plugin.json
 msgctxt "name"
-msgid "Solid View"
+msgid "UFP Writer"
 msgstr ""
 
-#: plugins/LegacyProfileReader/plugin.json
+#: plugins/PostProcessingPlugin/plugin.json
 msgctxt "description"
-msgid "Provides support for importing profiles from legacy Cura versions."
+msgid "Extension that allows for user created scripts for post processing"
 msgstr ""
 
-#: plugins/LegacyProfileReader/plugin.json
+#: plugins/PostProcessingPlugin/plugin.json
 msgctxt "name"
-msgid "Legacy Cura Profile Reader"
+msgid "Post Processing"
 msgstr ""
 
-#: plugins/XRayView/plugin.json
+#: plugins/3MFReader/plugin.json
 msgctxt "description"
-msgid "Provides the X-Ray view."
+msgid "Provides support for reading 3MF files."
 msgstr ""
 
-#: plugins/XRayView/plugin.json
+#: plugins/3MFReader/plugin.json
 msgctxt "name"
-msgid "X-Ray View"
+msgid "3MF Reader"
 msgstr ""
 
-#: plugins/SimulationView/plugin.json
+#: plugins/UltimakerMachineActions/plugin.json
 msgctxt "description"
-msgid "Provides the preview of sliced layerdata."
+msgid "Provides machine actions for Ultimaker machines (such as bed leveling wizard, selecting upgrades, etc.)."
 msgstr ""
 
-#: plugins/SimulationView/plugin.json
+#: plugins/UltimakerMachineActions/plugin.json
 msgctxt "name"
-msgid "Simulation View"
+msgid "UltiMaker machine actions"
 msgstr ""
 
-#: plugins/AMFReader/plugin.json
+#: plugins/GCodeGzWriter/plugin.json
 msgctxt "description"
-msgid "Provides support for reading AMF files."
+msgid "Writes g-code to a compressed archive."
 msgstr ""
 
-#: plugins/AMFReader/plugin.json
+#: plugins/GCodeGzWriter/plugin.json
 msgctxt "name"
-msgid "AMF Reader"
+msgid "Compressed G-code Writer"
 msgstr ""
 
-#: plugins/PreviewStage/plugin.json
+#: plugins/DigitalLibrary/plugin.json
 msgctxt "description"
-msgid "Provides a preview stage in Cura."
+msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
 msgstr ""
 
-#: plugins/PreviewStage/plugin.json
+#: plugins/DigitalLibrary/plugin.json
 msgctxt "name"
-msgid "Preview Stage"
+msgid "Ultimaker Digital Library"
 msgstr ""
 
-#: plugins/DigitalLibrary/plugin.json
+#: plugins/CuraDrive/plugin.json
 msgctxt "description"
-msgid "Connects to the Digital Library, allowing Cura to open files from and save files to the Digital Library."
+msgid "Backup and restore your configuration."
 msgstr ""
 
-#: plugins/DigitalLibrary/plugin.json
+#: plugins/CuraDrive/plugin.json
 msgctxt "name"
-msgid "Ultimaker Digital Library"
+msgid "Cura Backups"
 msgstr ""
 
-#: plugins/FirmwareUpdater/plugin.json
+#: plugins/3MFWriter/plugin.json
 msgctxt "description"
-msgid "Provides a machine actions for updating firmware."
+msgid "Provides support for writing 3MF files."
 msgstr ""
 
-#: plugins/FirmwareUpdater/plugin.json
+#: plugins/3MFWriter/plugin.json
 msgctxt "name"
-msgid "Firmware Updater"
+msgid "3MF Writer"
 msgstr ""
 
-#: plugins/ImageReader/plugin.json
+#: plugins/MachineSettingsAction/plugin.json
 msgctxt "description"
-msgid "Enables ability to generate printable geometry from 2D image files."
+msgid "Provides a way to change machine settings (such as build volume, nozzle size, etc.)."
 msgstr ""
 
-#: plugins/ImageReader/plugin.json
+#: plugins/MachineSettingsAction/plugin.json
 msgctxt "name"
-msgid "Image Reader"
+msgid "Machine Settings Action"
 msgstr ""
 
-#: plugins/CuraDrive/plugin.json
+#: plugins/SentryLogger/plugin.json
 msgctxt "description"
-msgid "Backup and restore your configuration."
+msgid "Logs certain events so that they can be used by the crash reporter"
 msgstr ""
 
-#: plugins/CuraDrive/plugin.json
+#: plugins/SentryLogger/plugin.json
 msgctxt "name"
-msgid "Cura Backups"
+msgid "Sentry Logger"
 msgstr ""
 
-#: plugins/Marketplace/plugin.json
+#: plugins/SolidView/plugin.json
 msgctxt "description"
-msgid "Manages extensions to the application and allows browsing extensions from the UltiMaker website."
+msgid "Provides a normal solid mesh view."
 msgstr ""
 
-#: plugins/Marketplace/plugin.json
+#: plugins/SolidView/plugin.json
 msgctxt "name"
-msgid "Marketplace"
+msgid "Solid View"
 msgstr ""
 
-#: plugins/X3DReader/plugin.json
+#: plugins/PreviewStage/plugin.json
 msgctxt "description"
-msgid "Provides support for reading X3D files."
+msgid "Provides a preview stage in Cura."
 msgstr ""
 
-#: plugins/X3DReader/plugin.json
+#: plugins/PreviewStage/plugin.json
 msgctxt "name"
-msgid "X3D Reader"
+msgid "Preview Stage"
 msgstr ""
 
-#: plugins/3MFWriter/plugin.json
+#: plugins/PerObjectSettingsTool/plugin.json
 msgctxt "description"
-msgid "Provides support for writing 3MF files."
+msgid "Provides the Per Model Settings."
 msgstr ""
 
-#: plugins/3MFWriter/plugin.json
+#: plugins/PerObjectSettingsTool/plugin.json
 msgctxt "name"
-msgid "3MF Writer"
+msgid "Per Model Settings Tool"
 msgstr ""
 
-#: plugins/FirmwareUpdateChecker/plugin.json
+#: plugins/GCodeReader/plugin.json
 msgctxt "description"
-msgid "Checks for firmware updates."
+msgid "Allows loading and displaying G-code files."
 msgstr ""
 
-#: plugins/FirmwareUpdateChecker/plugin.json
+#: plugins/GCodeReader/plugin.json
 msgctxt "name"
-msgid "Firmware Update Checker"
+msgid "G-code Reader"
 msgstr ""
 
 #: plugins/TrimeshReader/plugin.json
@@ -6414,483 +6414,483 @@ msgctxt "name"
 msgid "Trimesh Reader"
 msgstr ""
 
-#: plugins/GCodeReader/plugin.json
+#: plugins/SimulationView/plugin.json
 msgctxt "description"
-msgid "Allows loading and displaying G-code files."
+msgid "Provides the preview of sliced layerdata."
 msgstr ""
 
-#: plugins/GCodeReader/plugin.json
+#: plugins/SimulationView/plugin.json
 msgctxt "name"
-msgid "G-code Reader"
+msgid "Simulation View"
 msgstr ""
 
-#: plugins/UltimakerMachineActions/plugin.json
+#: plugins/USBPrinting/plugin.json
 msgctxt "description"
-msgid "Provides machine actions for Ultimaker machines (such as bed leveling wizard, selecting upgrades, etc.)."
+msgid "Accepts G-Code and sends them to a printer. Plugin can also update firmware."
 msgstr ""
 
-#: plugins/UltimakerMachineActions/plugin.json
+#: plugins/USBPrinting/plugin.json
 msgctxt "name"
-msgid "UltiMaker machine actions"
+msgid "USB printing"
 msgstr ""
 
-#: plugins/GCodeGzWriter/plugin.json
+#: plugins/SliceInfoPlugin/plugin.json
 msgctxt "description"
-msgid "Writes g-code to a compressed archive."
+msgid "Submits anonymous slice info. Can be disabled through preferences."
 msgstr ""
 
-#: plugins/GCodeGzWriter/plugin.json
+#: plugins/SliceInfoPlugin/plugin.json
 msgctxt "name"
-msgid "Compressed G-code Writer"
+msgid "Slice info"
 msgstr ""
 
-#: plugins/MachineSettingsAction/plugin.json
+#: plugins/FirmwareUpdater/plugin.json
 msgctxt "description"
-msgid "Provides a way to change machine settings (such as build volume, nozzle size, etc.)."
+msgid "Provides a machine actions for updating firmware."
 msgstr ""
 
-#: plugins/MachineSettingsAction/plugin.json
+#: plugins/FirmwareUpdater/plugin.json
 msgctxt "name"
-msgid "Machine Settings Action"
+msgid "Firmware Updater"
 msgstr ""
 
-#: plugins/GCodeProfileReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade411to412/plugin.json
 msgctxt "description"
-msgid "Provides support for importing profiles from g-code files."
+msgid "Upgrades configurations from Cura 4.11 to Cura 4.12."
 msgstr ""
 
-#: plugins/GCodeProfileReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade411to412/plugin.json
 msgctxt "name"
-msgid "G-code Profile Reader"
+msgid "Version Upgrade 4.11 to 4.12"
 msgstr ""
 
-#: plugins/CuraEngineBackend/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade22to24/plugin.json
 msgctxt "description"
-msgid "Provides the link to the CuraEngine slicing backend."
+msgid "Upgrades configurations from Cura 2.2 to Cura 2.4."
 msgstr ""
 
-#: plugins/CuraEngineBackend/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade22to24/plugin.json
 msgctxt "name"
-msgid "CuraEngine Backend"
+msgid "Version Upgrade 2.2 to 2.4"
 msgstr ""
 
-#: plugins/PrepareStage/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade45to46/plugin.json
 msgctxt "description"
-msgid "Provides a prepare stage in Cura."
+msgid "Upgrades configurations from Cura 4.5 to Cura 4.6."
 msgstr ""
 
-#: plugins/PrepareStage/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade45to46/plugin.json
 msgctxt "name"
-msgid "Prepare Stage"
+msgid "Version Upgrade 4.5 to 4.6"
 msgstr ""
 
-#: plugins/UFPWriter/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade47to48/plugin.json
 msgctxt "description"
-msgid "Provides support for writing Ultimaker Format Packages."
+msgid "Upgrades configurations from Cura 4.7 to Cura 4.8."
 msgstr ""
 
-#: plugins/UFPWriter/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade47to48/plugin.json
 msgctxt "name"
-msgid "UFP Writer"
+msgid "Version Upgrade 4.7 to 4.8"
 msgstr ""
 
-#: plugins/SentryLogger/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade52to53/plugin.json
 msgctxt "description"
-msgid "Logs certain events so that they can be used by the crash reporter"
+msgid "Upgrades configurations from Cura 5.2 to Cura 5.3."
 msgstr ""
 
-#: plugins/SentryLogger/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade52to53/plugin.json
 msgctxt "name"
-msgid "Sentry Logger"
+msgid "Version Upgrade 5.2 to 5.3"
 msgstr ""
 
-#: plugins/RemovableDriveOutputDevice/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade42to43/plugin.json
 msgctxt "description"
-msgid "Provides removable drive hotplugging and writing support."
+msgid "Upgrades configurations from Cura 4.2 to Cura 4.3."
 msgstr ""
 
-#: plugins/RemovableDriveOutputDevice/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade42to43/plugin.json
 msgctxt "name"
-msgid "Removable Drive Output Device Plugin"
+msgid "Version Upgrade 4.2 to 4.3"
 msgstr ""
 
-#: plugins/PerObjectSettingsTool/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade462to47/plugin.json
 msgctxt "description"
-msgid "Provides the Per Model Settings."
+msgid "Upgrades configurations from Cura 4.6.2 to Cura 4.7."
 msgstr ""
 
-#: plugins/PerObjectSettingsTool/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade462to47/plugin.json
 msgctxt "name"
-msgid "Per Model Settings Tool"
+msgid "Version Upgrade 4.6.2 to 4.7"
 msgstr ""
 
-#: plugins/GCodeWriter/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade41to42/plugin.json
 msgctxt "description"
-msgid "Writes g-code to a file."
+msgid "Upgrades configurations from Cura 4.1 to Cura 4.2."
 msgstr ""
 
-#: plugins/GCodeWriter/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade41to42/plugin.json
 msgctxt "name"
-msgid "G-code Writer"
+msgid "Version Upgrade 4.1 to 4.2"
 msgstr ""
 
-#: plugins/USBPrinting/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade30to31/plugin.json
 msgctxt "description"
-msgid "Accepts G-Code and sends them to a printer. Plugin can also update firmware."
+msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
 msgstr ""
 
-#: plugins/USBPrinting/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade30to31/plugin.json
 msgctxt "name"
-msgid "USB printing"
+msgid "Version Upgrade 3.0 to 3.1"
 msgstr ""
 
-#: plugins/SliceInfoPlugin/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade40to41/plugin.json
 msgctxt "description"
-msgid "Submits anonymous slice info. Can be disabled through preferences."
+msgid "Upgrades configurations from Cura 4.0 to Cura 4.1."
 msgstr ""
 
-#: plugins/SliceInfoPlugin/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade40to41/plugin.json
 msgctxt "name"
-msgid "Slice info"
+msgid "Version Upgrade 4.0 to 4.1"
 msgstr ""
 
-#: plugins/CuraProfileWriter/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade32to33/plugin.json
 msgctxt "description"
-msgid "Provides support for exporting Cura profiles."
+msgid "Upgrades configurations from Cura 3.2 to Cura 3.3."
 msgstr ""
 
-#: plugins/CuraProfileWriter/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade32to33/plugin.json
 msgctxt "name"
-msgid "Cura Profile Writer"
+msgid "Version Upgrade 3.2 to 3.3"
 msgstr ""
 
-#: plugins/UM3NetworkPrinting/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade49to410/plugin.json
 msgctxt "description"
-msgid "Manages network connections to UltiMaker networked printers."
+msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
 msgstr ""
 
-#: plugins/UM3NetworkPrinting/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade49to410/plugin.json
 msgctxt "name"
-msgid "UltiMaker Network Connection"
+msgid "Version Upgrade 4.9 to 4.10"
 msgstr ""
 
-#: plugins/MonitorStage/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade27to30/plugin.json
 msgctxt "description"
-msgid "Provides a monitor stage in Cura."
+msgid "Upgrades configurations from Cura 2.7 to Cura 3.0."
 msgstr ""
 
-#: plugins/MonitorStage/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade27to30/plugin.json
 msgctxt "name"
-msgid "Monitor Stage"
+msgid "Version Upgrade 2.7 to 3.0"
 msgstr ""
 
-#: plugins/3MFReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade460to462/plugin.json
 msgctxt "description"
-msgid "Provides support for reading 3MF files."
+msgid "Upgrades configurations from Cura 4.6.0 to Cura 4.6.2."
 msgstr ""
 
-#: plugins/3MFReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade460to462/plugin.json
 msgctxt "name"
-msgid "3MF Reader"
+msgid "Version Upgrade 4.6.0 to 4.6.2"
 msgstr ""
 
-#: plugins/XmlMaterialProfile/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade35to40/plugin.json
 msgctxt "description"
-msgid "Provides capabilities to read and write XML-based material profiles."
+msgid "Upgrades configurations from Cura 3.5 to Cura 4.0."
 msgstr ""
 
-#: plugins/XmlMaterialProfile/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade35to40/plugin.json
 msgctxt "name"
-msgid "Material Profiles"
+msgid "Version Upgrade 3.5 to 4.0"
 msgstr ""
 
-#: plugins/UFPReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade26to27/plugin.json
 msgctxt "description"
-msgid "Provides support for reading Ultimaker Format Packages."
+msgid "Upgrades configurations from Cura 2.6 to Cura 2.7."
 msgstr ""
 
-#: plugins/UFPReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade26to27/plugin.json
 msgctxt "name"
-msgid "UFP Reader"
+msgid "Version Upgrade 2.6 to 2.7"
 msgstr ""
 
-#: plugins/ModelChecker/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade25to26/plugin.json
 msgctxt "description"
-msgid "Checks models and print configuration for possible printing issues and give suggestions."
+msgid "Upgrades configurations from Cura 2.5 to Cura 2.6."
 msgstr ""
 
-#: plugins/ModelChecker/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade25to26/plugin.json
 msgctxt "name"
-msgid "Model Checker"
+msgid "Version Upgrade 2.5 to 2.6"
 msgstr ""
 
-#: plugins/CuraProfileReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade413to50/plugin.json
 msgctxt "description"
-msgid "Provides support for importing Cura profiles."
+msgid "Upgrades configurations from Cura 4.13 to Cura 5.0."
 msgstr ""
 
-#: plugins/CuraProfileReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade413to50/plugin.json
 msgctxt "name"
-msgid "Cura Profile Reader"
+msgid "Version Upgrade 4.13 to 5.0"
 msgstr ""
 
-#: plugins/SupportEraser/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade34to35/plugin.json
 msgctxt "description"
-msgid "Creates an eraser mesh to block the printing of support in certain places"
+msgid "Upgrades configurations from Cura 3.4 to Cura 3.5."
 msgstr ""
 
-#: plugins/SupportEraser/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade34to35/plugin.json
 msgctxt "name"
-msgid "Support Eraser"
+msgid "Version Upgrade 3.4 to 3.5"
 msgstr ""
 
-#: plugins/GCodeGzReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade33to34/plugin.json
 msgctxt "description"
-msgid "Reads g-code from a compressed archive."
+msgid "Upgrades configurations from Cura 3.3 to Cura 3.4."
 msgstr ""
 
-#: plugins/GCodeGzReader/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade33to34/plugin.json
 msgctxt "name"
-msgid "Compressed G-code Reader"
+msgid "Version Upgrade 3.3 to 3.4"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade41to42/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade44to45/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.1 to Cura 4.2."
+msgid "Upgrades configurations from Cura 4.4 to Cura 4.5."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade41to42/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade44to45/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.1 to 4.2"
+msgid "Version Upgrade 4.4 to 4.5"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade22to24/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade21to22/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 2.2 to Cura 2.4."
+msgid "Upgrades configurations from Cura 2.1 to Cura 2.2."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade22to24/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade21to22/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 2.2 to 2.4"
+msgid "Version Upgrade 2.1 to 2.2"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade413to50/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade48to49/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.13 to Cura 5.0."
+msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade413to50/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade48to49/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.13 to 5.0"
+msgid "Version Upgrade 4.8 to 4.9"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade26to27/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade43to44/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 2.6 to Cura 2.7."
+msgid "Upgrades configurations from Cura 4.3 to Cura 4.4."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade26to27/plugin.json
+#: plugins/VersionUpgrade/VersionUpgrade43to44/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 2.6 to 2.7"
+msgid "Version Upgrade 4.3 to 4.4"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade411to412/plugin.json
+#: plugins/CuraProfileReader/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.11 to Cura 4.12."
+msgid "Provides support for importing Cura profiles."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade411to412/plugin.json
+#: plugins/CuraProfileReader/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.11 to 4.12"
+msgid "Cura Profile Reader"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade52to53/plugin.json
+#: plugins/GCodeWriter/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 5.2 to Cura 5.3."
+msgid "Writes g-code to a file."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade52to53/plugin.json
+#: plugins/GCodeWriter/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 5.2 to 5.3"
+msgid "G-code Writer"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade462to47/plugin.json
+#: plugins/XmlMaterialProfile/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.6.2 to Cura 4.7."
+msgid "Provides capabilities to read and write XML-based material profiles."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade462to47/plugin.json
+#: plugins/XmlMaterialProfile/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.6.2 to 4.7"
+msgid "Material Profiles"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade21to22/plugin.json
+#: plugins/ModelChecker/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 2.1 to Cura 2.2."
+msgid "Checks models and print configuration for possible printing issues and give suggestions."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade21to22/plugin.json
+#: plugins/ModelChecker/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 2.1 to 2.2"
+msgid "Model Checker"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade30to31/plugin.json
+#: plugins/PrepareStage/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 3.0 to Cura 3.1."
+msgid "Provides a prepare stage in Cura."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade30to31/plugin.json
+#: plugins/PrepareStage/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 3.0 to 3.1"
+msgid "Prepare Stage"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade43to44/plugin.json
+#: plugins/Marketplace/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.3 to Cura 4.4."
+msgid "Manages extensions to the application and allows browsing extensions from the UltiMaker website."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade43to44/plugin.json
+#: plugins/Marketplace/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.3 to 4.4"
+msgid "Marketplace"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade49to410/plugin.json
+#: plugins/X3DReader/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.9 to Cura 4.10."
+msgid "Provides support for reading X3D files."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade49to410/plugin.json
+#: plugins/X3DReader/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.9 to 4.10"
+msgid "X3D Reader"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade45to46/plugin.json
+#: plugins/AMFReader/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.5 to Cura 4.6."
+msgid "Provides support for reading AMF files."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade45to46/plugin.json
+#: plugins/AMFReader/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.5 to 4.6"
+msgid "AMF Reader"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade42to43/plugin.json
+#: plugins/RemovableDriveOutputDevice/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.2 to Cura 4.3."
+msgid "Provides removable drive hotplugging and writing support."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade42to43/plugin.json
+#: plugins/RemovableDriveOutputDevice/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.2 to 4.3"
+msgid "Removable Drive Output Device Plugin"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade47to48/plugin.json
+#: plugins/UFPReader/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.7 to Cura 4.8."
+msgid "Provides support for reading Ultimaker Format Packages."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade47to48/plugin.json
+#: plugins/UFPReader/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.7 to 4.8"
+msgid "UFP Reader"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade40to41/plugin.json
+#: plugins/ImageReader/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.0 to Cura 4.1."
+msgid "Enables ability to generate printable geometry from 2D image files."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade40to41/plugin.json
+#: plugins/ImageReader/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.0 to 4.1"
+msgid "Image Reader"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade32to33/plugin.json
+#: plugins/XRayView/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 3.2 to Cura 3.3."
+msgid "Provides the X-Ray view."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade32to33/plugin.json
+#: plugins/XRayView/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 3.2 to 3.3"
+msgid "X-Ray View"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade35to40/plugin.json
+#: plugins/GCodeGzReader/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 3.5 to Cura 4.0."
+msgid "Reads g-code from a compressed archive."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade35to40/plugin.json
+#: plugins/GCodeGzReader/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 3.5 to 4.0"
+msgid "Compressed G-code Reader"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade25to26/plugin.json
+#: plugins/LegacyProfileReader/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 2.5 to Cura 2.6."
+msgid "Provides support for importing profiles from legacy Cura versions."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade25to26/plugin.json
+#: plugins/LegacyProfileReader/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 2.5 to 2.6"
+msgid "Legacy Cura Profile Reader"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade44to45/plugin.json
+#: plugins/SupportEraser/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.4 to Cura 4.5."
+msgid "Creates an eraser mesh to block the printing of support in certain places"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade44to45/plugin.json
+#: plugins/SupportEraser/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.4 to 4.5"
+msgid "Support Eraser"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade27to30/plugin.json
+#: plugins/CuraEngineBackend/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 2.7 to Cura 3.0."
+msgid "Provides the link to the CuraEngine slicing backend."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade27to30/plugin.json
+#: plugins/CuraEngineBackend/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 2.7 to 3.0"
+msgid "CuraEngine Backend"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade34to35/plugin.json
+#: plugins/UM3NetworkPrinting/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 3.4 to Cura 3.5."
+msgid "Manages network connections to UltiMaker networked printers."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade34to35/plugin.json
+#: plugins/UM3NetworkPrinting/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 3.4 to 3.5"
+msgid "UltiMaker Network Connection"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade460to462/plugin.json
+#: plugins/FirmwareUpdateChecker/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.6.0 to Cura 4.6.2."
+msgid "Checks for firmware updates."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade460to462/plugin.json
+#: plugins/FirmwareUpdateChecker/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.6.0 to 4.6.2"
+msgid "Firmware Update Checker"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade48to49/plugin.json
+#: plugins/GCodeProfileReader/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 4.8 to Cura 4.9."
+msgid "Provides support for importing profiles from g-code files."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade48to49/plugin.json
+#: plugins/GCodeProfileReader/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 4.8 to 4.9"
+msgid "G-code Profile Reader"
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade33to34/plugin.json
+#: plugins/MonitorStage/plugin.json
 msgctxt "description"
-msgid "Upgrades configurations from Cura 3.3 to Cura 3.4."
+msgid "Provides a monitor stage in Cura."
 msgstr ""
 
-#: plugins/VersionUpgrade/VersionUpgrade33to34/plugin.json
+#: plugins/MonitorStage/plugin.json
 msgctxt "name"
-msgid "Version Upgrade 3.3 to 3.4"
+msgid "Monitor Stage"
 msgstr ""
 

+ 17 - 17
resources/i18n/de_DE/cura.po

@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-03-07 09:01+0100\n"
+"POT-Creation-Date: 2023-03-09 11:03+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1279,45 +1279,45 @@ msgctxt "@message:description"
 msgid "Report a bug on UltiMaker Cura's issue tracker."
 msgstr "Einen Fehler im Issue Tracker von UltiMaker Cura melden."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:401
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:416
 msgctxt "@info:status"
 msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
 msgstr "Slicing mit dem aktuellen Material nicht möglich, da es mit der gewählten Maschine oder Konfiguration nicht kompatibel ist."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:402
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:435
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:462
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:474
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:486
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:499
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:417
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:450
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:477
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:489
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:501
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:514
 msgctxt "@info:title"
 msgid "Unable to slice"
 msgstr "Slicing nicht möglich"
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:434
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:449
 #, python-brace-format
 msgctxt "@info:status"
 msgid "Unable to slice with the current settings. The following settings have errors: {0}"
 msgstr "Die aktuellen Einstellungen lassen kein Schneiden (Slicing) zu. Die folgenden Einstellungen sind fehlerhaft:{0}"
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:461
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:476
 #, python-brace-format
 msgctxt "@info:status"
 msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
 msgstr "Aufgrund der Pro-Modell-Einstellungen ist kein Schneiden (Slicing) möglich. Die folgenden Einstellungen sind für ein oder mehrere Modelle fehlerhaft: {error_labels}"
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:473
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:488
 msgctxt "@info:status"
 msgid "Unable to slice because the prime tower or prime position(s) are invalid."
 msgstr "Schneiden (Slicing) ist nicht möglich, da der Einzugsturm oder die Einzugsposition(en) ungültig ist (sind)."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:485
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:500
 #, python-format
 msgctxt "@info:status"
 msgid "Unable to slice because there are objects associated with disabled Extruder %s."
 msgstr "Schneiden (Slicing) ist nicht möglich, da Objekte vorhanden sind, die mit dem deaktivierten Extruder %s verbunden sind."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:495
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:510
 msgctxt "@info:status"
 msgid ""
 "Please review settings and check if your models:\n"
@@ -6571,17 +6571,17 @@ msgctxt "@label Header for list of settings."
 msgid "Affected By"
 msgstr "Wird beeinflusst von"
 
-#: resources/qml/Settings/SettingItem.qml:190
+#: resources/qml/Settings/SettingItem.qml:196
 msgctxt "@label"
 msgid "This setting is always shared between all extruders. Changing it here will change the value for all extruders."
 msgstr "Diese Einstellung wird stets zwischen allen Extrudern geteilt. Eine Änderung ändert den Wert für alle Extruder."
 
-#: resources/qml/Settings/SettingItem.qml:194
+#: resources/qml/Settings/SettingItem.qml:200
 msgctxt "@label"
 msgid "This setting is resolved from conflicting extruder-specific values:"
 msgstr "Diese Einstellung wird durch gegensätzliche, extruderspezifische Werte gelöst:"
 
-#: resources/qml/Settings/SettingItem.qml:234
+#: resources/qml/Settings/SettingItem.qml:240
 msgctxt "@label"
 msgid ""
 "This setting has a value that is different from the profile.\n"
@@ -6592,7 +6592,7 @@ msgstr ""
 "\n"
 "Klicken Sie, um den Wert des Profils wiederherzustellen."
 
-#: resources/qml/Settings/SettingItem.qml:334
+#: resources/qml/Settings/SettingItem.qml:340
 msgctxt "@label"
 msgid ""
 "This setting is normally calculated, but it currently has an absolute value set.\n"

+ 17 - 17
resources/i18n/es_ES/cura.po

@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: Cura 5.3\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-03-07 09:01+0100\n"
+"POT-Creation-Date: 2023-03-09 11:03+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1278,45 +1278,45 @@ msgctxt "@message:description"
 msgid "Report a bug on UltiMaker Cura's issue tracker."
 msgstr "Informar de un error en el rastreador de problemas de UltiMaker Cura."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:401
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:416
 msgctxt "@info:status"
 msgid "Unable to slice with the current material as it is incompatible with the selected machine or configuration."
 msgstr "No se puede segmentar con el material actual, ya que es incompatible con el dispositivo o la configuración seleccionados."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:402
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:435
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:462
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:474
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:486
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:499
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:417
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:450
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:477
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:489
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:501
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:514
 msgctxt "@info:title"
 msgid "Unable to slice"
 msgstr "No se puede segmentar"
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:434
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:449
 #, python-brace-format
 msgctxt "@info:status"
 msgid "Unable to slice with the current settings. The following settings have errors: {0}"
 msgstr "Los ajustes actuales no permiten la segmentación. Los siguientes ajustes contienen errores: {0}"
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:461
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:476
 #, python-brace-format
 msgctxt "@info:status"
 msgid "Unable to slice due to some per-model settings. The following settings have errors on one or more models: {error_labels}"
 msgstr "Los ajustes de algunos modelos no permiten la segmentación. Los siguientes ajustes contienen errores en uno o más modelos: {error_labels}."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:473
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:488
 msgctxt "@info:status"
 msgid "Unable to slice because the prime tower or prime position(s) are invalid."
 msgstr "No se puede segmentar porque la torre auxiliar o la posición o posiciones de preparación no son válidas."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:485
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:500
 #, python-format
 msgctxt "@info:status"
 msgid "Unable to slice because there are objects associated with disabled Extruder %s."
 msgstr "No se puede segmentar porque hay objetos asociados al extrusor %s que está deshabilitado."
 
-#: plugins/CuraEngineBackend/CuraEngineBackend.py:495
+#: plugins/CuraEngineBackend/CuraEngineBackend.py:510
 msgctxt "@info:status"
 msgid ""
 "Please review settings and check if your models:\n"
@@ -6576,17 +6576,17 @@ msgctxt "@label Header for list of settings."
 msgid "Affected By"
 msgstr "Afectado por"
 
-#: resources/qml/Settings/SettingItem.qml:190
+#: resources/qml/Settings/SettingItem.qml:196
 msgctxt "@label"
 msgid "This setting is always shared between all extruders. Changing it here will change the value for all extruders."
 msgstr "Este ajuste siempre se comparte entre extrusores. Si lo modifica, modificará el valor de todos los extrusores."
 
-#: resources/qml/Settings/SettingItem.qml:194
+#: resources/qml/Settings/SettingItem.qml:200
 msgctxt "@label"
 msgid "This setting is resolved from conflicting extruder-specific values:"
 msgstr "Este valor se resuelve a partir de valores en conflicto específicos del extrusor:"
 
-#: resources/qml/Settings/SettingItem.qml:234
+#: resources/qml/Settings/SettingItem.qml:240
 msgctxt "@label"
 msgid ""
 "This setting has a value that is different from the profile.\n"
@@ -6597,7 +6597,7 @@ msgstr ""
 "\n"
 "Haga clic para restaurar el valor del perfil."
 
-#: resources/qml/Settings/SettingItem.qml:334
+#: resources/qml/Settings/SettingItem.qml:340
 msgctxt "@label"
 msgid ""
 "This setting is normally calculated, but it currently has an absolute value set.\n"

Некоторые файлы не были показаны из-за большого количества измененных файлов