Summary: | app-portage/flaggie: unknown python backtrace | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Raymond Jennings <shentino> |
Component: | Current packages | Assignee: | Michał Górny <mgorny> |
Status: | CONFIRMED --- | ||
Severity: | normal | CC: | shentino |
Priority: | Normal | Keywords: | PMASKED |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
python backtrace
emerge --info |
Description
Raymond Jennings
2016-10-30 21:30:29 UTC
Created attachment 451941 [details]
python backtrace
Created attachment 451943 [details]
emerge --info
Lovely. Well, long story short, it's unhappy about some unicode characters in the files. Probably you need to use io.open() somewhere with encoding='utf8', or something like that. That's one of the many reasons why I stopped developing anything serious in Python. I'd almost want to just huck the whole thing and write it in C++ or something. (In reply to Raymond Jennings from comment #4) > I'd almost want to just huck the whole thing and write it in C++ or > something. So do I. Sadly, I don't have time for that. Besides, it would be interesting to get libconfig to handle package.* files. Also, dumping make.conf is a good idea since pseudo-shell is a pain to process correctly. What exactly is libconfig for? (In reply to Raymond Jennings from comment #6) > What exactly is libconfig for? Manipulating configuration files. The wheel flaggie reinvents. Flaggie's unicode reading was choking on international characters (non ascii) in /usr/portage/profiles/desc/* libconfig doesn't seem to be a very good match here, as package.*/* files have a really trivial format compared to even the example on libconfig page. I am confused as to the possible advantage/use for a tool like flaggie? Parsing use-flags files is rather trivial, does not seem to warrant pulling in an extra dep.. flaggie can keep them tidy and sorted IIRC. I've used it a few times. It has a utility function akin to eclean-kernel |