[ https://issues.apache.org/jira/browse/AVRO-199?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Patrick Hunt updated AVRO-199: ------------------------------ Status: Open (was: Patch Available) This patch looks good to me in general, the use of '"xxx"' rather than "\"xxx\"" is def more readable. (still not great but def better). Kudos on adding some comments. I personally don't like the multi line use of """ for some of the schema definitions in this patch. I admit this is my personal preference, but I find having these lines "stick out" of normal indentation to be "bad". Would you consider doing the following instead? rather than: + expected_schema = """\ +{"type": "record", + "name": "Foo", + "fields": [{"name": "f", "type": %s, "default": %s}]} +""" % (schemajson, defaultjson) + expected = schema.parse(expected_schema) instead do: + expected_schema = ( + '{"type": "record",' + '"name": "Foo",' + '"fields": [{"name": "f", "type": %s, "default": %s}]}' + ) % (schemajson, defaultjson) + expected = schema.parse(expected_schema) > Clean up schemas in testio.py > ----------------------------- > > Key: AVRO-199 > URL: https://issues.apache.org/jira/browse/AVRO-199 > Project: Avro > Issue Type: Improvement > Components: python > Reporter: Jeff Hammerbacher > Assignee: Jeff Hammerbacher > Attachments: AVRO-199.patch, AVRO-199.patch > > > As discussed on the mailing list, it would be nice to leverage Python's > expressive string syntax to not perform lots of escaping of Avro schemas > defined in code and make the schemas more readable. > This patch cleans up schemas in testio.py to make them more readable. Note > that to get this to pass the tests, I had to implement a new > "remove_whitespace()" helper function to replace the current naive approach > to replacing whitespace (s.replace(" ", "") is not going to cut it). I also > object to the round-trip string conversion test, as noted in the comments to > this patch, but I'll save that change for another patch to better separate > concerns. > If this code change is deemed useful, I'll convert the rest of the schemas in > the Python code to leverage Python's string formatting. I have a ridiculously > naive tool that I used for schema conversion that I threw up at > http://github.com/hammer/avro-tools/blob/master/pprint_avsc for those > interested. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.