Bad error reporting when the command tries to parse a non existing file

Open
#755 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
35/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
javascript, python
Domain
compilers

Research direction

Start with the missing-file command in the report and trace compiler.py lines 98, 102, 120, 129, and 313, then inspect utils.py line 212. Reproduce the failure and ensure the original missing-file error is reported without the secondary IndexError or an unprintable Error object.

Written by the indexing model from the issue text.

Description

IS: improve comp. report PRIO: 2 want

Vue's loader generated me commands such as:
Error: Command failed: python3 -m transcrypt --nomin --map --verbose --esv 6 "pages.today"

Which ended up in a bad exist (exception within an exception) :

Error compiling /mnt/c/Users/sefir/OneDrive/VisualStudio/projects/nuxt-vue/pages/today.vue?vue&type=script&lang=py&:       17:42:06
Transcrypt (TM) Python to JavaScript Small Sane Subset Transpiler Version 3.7.17
Copyright (C) Geatec Engineering. License: Apache 2.0


Parsing module: /mnt/c/Users/sefir/OneDrive/VisualStudio/projects/transcrypt-binary/transcrypt/modules/org/transcrypt/__runtime__.py
Generating code for module: /mnt/c/Users/sefir/OneDrive/VisualStudio/projects/nuxt-vue/__target__/org.transcrypt.__runtime__.js
Saving source map in: /mnt/c/Users/sefir/OneDrive/VisualStudio/projects/nuxt-vue/__target__/org.transcrypt.__runtime__.map
Saving target code in: /mnt/c/Users/sefir/OneDrive/VisualStudio/projects/nuxt-vue/__target__/org.transcrypt.__runtime__.js
list index out of rangeTraceback (most recent call last):
  File "/mnt/c/Users/sefir/OneDrive/VisualStudio/projects/transcrypt-binary/transcrypt/modules/org/transcrypt/compiler.py", line 98, in __init__    self.provide (self.mainModuleName, '__main__')
  File "/mnt/c/Users/sefir/OneDrive/VisualStudio/projects/transcrypt-binary/transcrypt/modules/org/transcrypt/compiler.py", line 120, in provide
    return Module (self, moduleName, __moduleName__, filter)
  File "/mnt/c/Users/sefir/OneDrive/VisualStudio/projects/transcrypt-binary/transcrypt/modules/org/transcrypt/compiler.py", line 129, in __init__
    self.findPaths (filter)
  File "/mnt/c/Users/sefir/OneDrive/VisualStudio/projects/transcrypt-binary/transcrypt/modules/org/transcrypt/compiler.py", line 313, in findPaths
    raise utils.Error (
org.transcrypt.utils.Error: <unprintable Error object>

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/mnt/c/Users/sefir/OneDrive/VisualStudio/projects/transcrypt-binary/transcrypt/__main__.py", line 171, in main
    compiler.Program (transpilationDirs, __symbols__, __envir__)
  File "/mnt/c/Users/sefir/OneDrive/VisualStudio/projects/transcrypt-binary/transcrypt/modules/org/transcrypt/compiler.py", line 102, in __init__
    message = f'\n\t{exception}'
  File "/mnt/c/Users/sefir/OneDrive/VisualStudio/projects/transcrypt-binary/transcrypt/modules/org/transcrypt/utils.py", line 212, in __str__
    result += '\n\tFile \'{}\', line {}, namely:'.format (str (program.importStack [-1][0] .name), self.lineNr)
IndexError: list index out of range


Aborted
Dominant language
Python
Stars
2.9k
Forks
218
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from TranscryptOrg/Transcrypt

All issues in TranscryptOrg/Transcrypt

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.