← Back to issue list

Snapcraft could show the traceback rather than just offer to send it to LP

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1815171
Type
issue
State
open
Author
~sabdfl
Labels
—
Created
Updated
Closed
—

Current evaluation

Traceback viewing was added in 3.1.1; the remaining edit-before-reporting idea is obsolete because legacy Sentry reporting was removed.

Suggested action: close stale

Reason: Sergius Ens confirmed that 3.1.1 added traceback viewing and left the issue open only to investigate editing before submission. Commit 0a120c694 removed snapcraft_legacy's Sentry reporting, and the current tree contains no reporting prompt, leaving no submission flow for the proposed Edit option to modify.

Evaluated by: mr-cal-bot

Impact: 25 Quick Win: 2 Complexity: 60 Confidence: 94 Actionability: 25

Issue body

I have a bug in my snapcraft plugin which causes it to crash. Snapcraft shows me this: Sorry, an error occurred in Snapcraft. We would appreciate it if you anonymously reported this issue. No other data than the traceback ('/tmp/tmpw4id89ag/trace.txt') and the version of snapcraft in use will be sent. Would you like to send this error data? (Yes/No/Always) [no]: That's nice, but it would be even better if it actually showed me the traceback. Perhaps like this: Sorry, an error occurred in Snapcraft. Here is the traceback: Traceback (most recent call last): File "/snap/snapcraft/2496/bin/snapcraft", line 11, in <module> load_entry_point('snapcraft==3.1', 'console_scripts', 'snapcraft')() File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/cli/__main__.py", line 81, in run run_snapcraft(prog_name="snapcraft") File "/snap/snapcraft/2496/lib/python3.5/site-packages/click/core.py", line 722, in __call__ return self.main(*args, **kwargs) File "/snap/snapcraft/2496/lib/python3.5/site-packages/click/core.py", line 697, in main rv = self.invoke(ctx) File "/snap/snapcraft/2496/lib/python3.5/site-packages/click/core.py", line 1066, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/snap/snapcraft/2496/lib/python3.5/site-packages/click/core.py", line 895, in invoke return ctx.invoke(self.callback, **ctx.params) File "/snap/snapcraft/2496/lib/python3.5/site-packages/click/core.py", line 535, in invoke return callback(*args, **kwargs) File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/cli/lifecycle.py", line 253, in snap _execute(steps.PRIME, parts=[], pack_project=True, output=output, **kwargs) File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/cli/lifecycle.py", line 110, in _execute project_config = project_loader.load_config(project) File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/internal/project_loader/__init__.py", line 47, in load_config return Config(project) File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/internal/project_loader/_config.py", line 242, in __init__ build_tools=self.build_tools, File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/internal/project_loader/_parts_config.py", line 52, in __init__ self._process_parts() File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/internal/project_loader/_parts_config.py", line 71, in _process_parts self.load_part(part_name, plugin_name, properties) File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/internal/project_loader/_parts_config.py", line 186, in load_part definitions_schema=self._validator.definitions_schema, File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/internal/pluginhandler/_plugin_loader.py", line 41, in load_plugin plugin_name, plugin_class, part_schema, definitions_schema File "/snap/snapcraft/2496/lib/python3.5/site-packages/snapcraft/internal/pluginhandler/_plugin_loader.py", line 112, in _validate_pull_and_build_properties part_schema, definitions_schema, plugin.schema() File "/root/project/snap/plugins/my_plugin.py", line 15, in schema schema['required'].append('my-property') KeyError: 'required' We would appreciate it if you anonymously reported this issue. No other data than the traceback and the version of snapcraft in use will be sent. Would you like to send this error data? (Yes/No/Edit/Always) [no]: Note that I added the option to 'Edit' which would launch an editor with the traceback so someone could remove any awkward information and then send it.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 25
Quick Win: 2
Complexity: 60
Confidence: 94
Actionability: 25
close stale Traceback viewing was added in 3.1.1; the remaining edit-before-reporting idea is obsolete because legacy Sentry reporting was removed.
stealth/space-bunny-alpha
Impact: 32
Quick Win: 9
Complexity: 58
Confidence: 94
Actionability: 67
keep open Snapcraft 3.1.1 added opt-in traceback viewing, but the request remains open for an Edit workflow that would let plugin authors sanitize a traceback before reporting.
stealth/space-bunny-alpha
Impact: 40
Quick Win: 20
Complexity: 43
Confidence: 85
Actionability: 87
needs triage Open, untriaged request to display crash tracebacks and optionally edit them before sending an anonymous Launchpad report, with a concrete UI mockup but no maintainer response.
qwen/qwen3.8-27b
Impact: 35
Quick Win: 24
Staleness: 95
Complexity: 30
Confidence: 70
Support Request: 10
close stale Feature request to display the full Python traceback in the terminal when snapcraft crashes, rather than only offering to anonymously send it to Launchpad. Open since 2018, no maintainer activity, and the referenced snapcraft 3.1 error flow no longer exists in the current codebase.
qwen/qwen3.6-35b-a3b
Staleness: 95
Complexity: 20
Confidence: 85
Support Request: 10
needs triage Feature request to display full Python tracebacks directly in the terminal instead of only prompting to send them to Launchpad. Untriaged, inactive for over seven years.
qwen/qwen3.6-35b-a3b
Staleness: 95
Complexity: 10
Confidence: 85
Support Request: 10
close stale Feature request to display full Python tracebacks by default instead of hiding them and only offering to send to Launchpad. Untriaged, inactive for over 7 years.
qwen3.6-35b-a3b-mtp-q6
Staleness: 95
Complexity: 15
Confidence: 90
Support Request: 10
close stale Feature request to print Python tracebacks directly to the console before offering to send them to Launchpad, with an optional edit step. Unaddressed for over 7 years.

Update history

Date Change
created

Related work

  • Superseded By: canonical/snapcraft#5592 (confidence 96%)

    Commit 0a120c694 removed legacy Sentry error reporting, making the proposed traceback-editing workflow obsolete.

Related issues

No related issues found above the similarity threshold.