Comments (10)
Ugh. I'm not sure what to do about this; we certainly wouldn't want to swallow our own UnicodeDecodeErrors if we were to accidentally start throwing them.
from peep.
True, though I guess it wouldn't be silent per-se, we just would only show the original pip error rather than implying it was peep's fault. There is a small chance that people may then file issues against pip that are really peep's fault, but presumably our tests would catch those?
from peep.
from peep.
Okay, we're having a zillion of these with Let's Encrypt, so my opinion of this is rapidly changing.
from peep.
@erikrose - not to pile on but adding to this issue incase more info helps. Here is the error message I'm getting - pretty much the same story you have already been notified of -
peep: (3, 1, 1)
python: '2.7.11 (default, Dec 15 2015, 16:46:19)
[GCC 4.8.4]'
pip: '1.5.4'
Command line: ['/tmp/tmp.2Qoq6J4acW/peep.py', 'install', '-r', '/tmp/tmp.2Qoq6J4acW/letsencrypt-auto-requirements.txt']
Traceback (most recent call last):
File "/tmp/tmp.2Qoq6J4acW/peep.py", line 967, in
exit(main())
File "/tmp/tmp.2Qoq6J4acW/peep.py", line 939, in main
return commandsargv[1]
File "/tmp/tmp.2Qoq6J4acW/peep.py", line 884, in peep_install
req.install()
File "/tmp/tmp.2Qoq6J4acW/peep.py", line 652, in install
run_pip(['install'] + other_args + ['--no-deps', '-U', archive_path])
File "/tmp/tmp.2Qoq6J4acW/peep.py", line 206, in run_pip
status_code = pip.main(initial_args)
File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/pip/init.py", line 185, in main
return command.main(cmd_args)
File "/root/.local/share/letsencrypt/local/lib/python2.7/site-packages/pip/basecommand.py", line 161, in main
text = '
'.join(complete_log)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 79: ordinal not in range(128)
from peep.
Here's an idea: let's not show our little error-report form for PipExceptions. That way, anything that's pip's fault will bubble up, but we'll still get errors that happen from outside run_pip().
from peep.
Actually, from my reading of the code, that's what should be happening already: main() should be catching the PipException and returning an int, which the toplevel should unceremoniously exit with as a status code. I'm not sure why it's not.
from peep.
Oh, I see now. run_pip() needs to wrap its call to pip.main() in a try
.
from peep.
Also, we should exempt main()'s call to pip.main() from error trapping as well.
from peep.
Closing this out to de-clutter my GitHub open issues dashboard since peep is deprecated in favour of pip v8+.
from peep.
Related Issues (20)
- Reporting a "Peep had a problem" HOT 5
- No matching distribution found for argparse==1.4.0 HOT 2
- letsencrypt-auto failed HOT 4
- DistributionNotFound: No distributions at all found for Werkzeug==0.11.3 (from -r /tmp/tmp.YadJ1nkN9L/letsencrypt-auto-requirements.txt (line 177)) HOT 4
- here are some problem HOT 1
- nice errors HOT 1
- Letsencrypt fails with error: command 'gcc' failed with exit status 4
- UnicodeDecodeError 0xe2 in letsencrypt-auto HOT 8
- Bug ./letsencrypt-auto --help HOT 1
- Error message by install from letsencrypt HOT 1
- error using letsencrypt HOT 2
- Error installing certificate on Laravel Forge HOT 1
- Weird Error HOT 1
- bug repart letsencrypt
- Bug Report HOT 3
- peep error installing oneanddone requirements HOT 1
- letsencrypt-auto certonly HOT 1
- Had a problem while downloading and verifying Python packages
- Just had this error when trying to use with Letsencrypt HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from peep.