Misleading progress bar against utf-16-le CSV input
Open
Nobody has claimed this yet.
bug
help wanted
- Dominant language
- Python
- Stars
- 2.2k
- Forks
- 172
- Avg merge
- 9m
- Merged PRs (30d)
- 1
Description
The program crashes without any error.
wget "https://artsdatabanken.no/Fab2018/api/export/csv"
sqlite-utils create-database test.db
sqlite-utils insert --csv --delimiter ";" --encoding "utf-16-le" test test.db csv
[------------------------------------] 0%
[#################-------------------] 49% 00:00:01
I would like to highlight various issues:
- sqlite-utils catches exceptions without printing the stacktrace and/or reraising the exception, so there is no easy way to use
pdbor similar to debug the program, solution: add a debug option - Silent crash: this is related to (1.), and it happens when there is a catch-all mechanism; solution: let the program fail.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the failure with the shown sqlite-utils insert command, using the utf-16-le CSV input and progress output. Trace the CLI's exception-handling path to determine where the crash is swallowed; done means the failure is diagnosable and no longer exits silently, with behavior covered by the relevant tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, sqlite
- Domain
- cli, database
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100