- key/value pairs: I think I agree, but having the thing being used most like as suggested fits better with the other methods. Nothing carved in stone yet, though
- defaults. Once the API stabalized, I'll add them more clearly
- auto-detect. Good thought. All auto-detection on, and disable with key/value options. I like that
- lower case will be the default, but casing can be another option none/lc/uc/tc
- auto_header? autoconfigure_from_header seems like getting to high an expectation level
- BOM: yes, definitely
- eol: no. though possible, it is useless, as readline will only read a line that already is covered by the default eol setting (undef)
- quote: unreliable. will cause surprises
- escape: unreliable. will cause surprises
- allow_whitespace: possibly harmful. If the header contains spaces around the separators, it is likely the data will also have it, but that is not vice-versa.
- allow_loose_quote: no (see allow_whitespace)
- allow_loose_escapes: no (see allow_whitespace)
- quote_empty: no, it is very unlikely a header contains empty fields. If it does, using this new functionality will only cause more trouble than it is worth
Enjoy, Have FUN! H.Merijn