{"push_id":968499539,"size":1,"distinct_size":1,"ref":"refs/heads/BUG-float-parsing","head":"12b05a2898e78db8d4cd5491ce2a137caab526be","before":"b51a35a6b84ab4e4d183d5de1ce96fcd1318f427","commits":[{"sha":"12b05a2898e78db8d4cd5491ce2a137caab526be","author":{"email":"73675debcd8a436be48ec22211dcf44fe0df0a64@redfrontdoor.org","name":"Ben North"},"message":"BUG: Reject empty-exponent strings as non-floats\n\nThe man page for strode(3) says: \"A decimal exponent consists of an 'E'\nor 'e', followed by an optional plus or minus sign, followed by a\nNONEMPTY sequence of decimal digits\".  (Emphasis on 'nonempty' added.)\nCurrently, Pandas parses the string '2E' as a valid float, interpreting\nit as '2E0', i.e., 2.0.  It should reject '2E'.\n\nUpdate the functions\n\n    precise_xstrtod()\n    xstrtod() (two copies)\n\nsuch that they require at least one digit after the 'e' or 'E'.  If\nthere are no digits, then there is not a valid exponent, and in that\ncase, we rewind the 'next character' pointer back to point to the 'e' or\n'E'.\n\nAdd tests:\n\n    test_scientific_no_exponent() in tests/test_tseries.py\n\n    ParserTests.test_scientific_no_exponent in io/tests/test_parsers.py\n    (tests behaviour under C and Python engines; and for the three\n    float_precision variants under the C engine)","distinct":true,"url":"https://api.github.com/repos/bennorth/pandas/commits/12b05a2898e78db8d4cd5491ce2a137caab526be"}]}