From a4f86a3106dff5d342380a19beac5191026bfb08 Mon Sep 17 00:00:00 2001 From: Kaalleen <36401965+kaalleen@users.noreply.github.com> Date: Mon, 19 Dec 2022 21:11:50 +0100 Subject: Point to troubleshoot in fatal error message (#1967) * point to troubleshoot in fatal error message * shapely version --- .github/workflows/build.yml | 2 +- lib/elements/element.py | 11 +++++++---- requirements.txt | 2 +- 3 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0b43b648..f7323acf 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -176,7 +176,7 @@ jobs: # with --no-binary argument may fix notary issues as well shapely speedups error issue pip install -U lxml --no-binary lxml pip uninstall --yes shapely - pip install -v -U Shapely==1.8.1 --no-binary Shapely + pip install -v -U Shapely==1.8.5 --no-binary Shapely pip install pyinstaller echo "${{ env.pythonLocation }}/bin" >> $GITHUB_PATH diff --git a/lib/elements/element.py b/lib/elements/element.py index df9e1b95..436423a4 100644 --- a/lib/elements/element.py +++ b/lib/elements/element.py @@ -380,7 +380,7 @@ class EmbroideryElement(object): return patches - def fatal(self, message): + def fatal(self, message, point_to_troubleshoot=False): label = self.node.get(INKSCAPE_LABEL) id = self.node.get("id") if label: @@ -389,8 +389,11 @@ class EmbroideryElement(object): name = id # L10N used when showing an error message to the user such as - # "Some Path (path1234): error: satin column: One or more of the rungs doesn't intersect both rails." - error_msg = "%s: %s %s" % (name, _("error:"), message) + # "Failed on PathLabel (path1234): Satin column: One or more of the rungs doesn't intersect both rails." + error_msg = "%s %s: %s" % (_("Failed on "), name, message) + if point_to_troubleshoot: + error_msg += "\n\n%s" % _("Please run Extensions > Ink/Stitch > Troubleshoot > Troubleshoot objects. " + "This will indicate the errorneus position.") inkex.errormsg(error_msg) sys.exit(1) @@ -425,4 +428,4 @@ class EmbroideryElement(object): for error in self.validation_errors(): # note that self.fatal() exits, so this only shows the first error - self.fatal(error.description) + self.fatal(error.description, True) diff --git a/requirements.txt b/requirements.txt index 66303cce..e73010d2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9,7 +9,7 @@ wxPython>=4.1.1 backports.functools_lru_cache networkx -shapely +shapely==1.8.5 lxml appdirs numpy -- cgit v1.2.3