> Webrev: > http://cr.opensolaris.org/~bpytlik/ips-7367-v1/
api.py: I'm concerned that you're not catching all of the different exceptions that can come out of the current transport code. If I were you, I'd move remote_search to retrieve.py, and have the api call become a wrapper for retrieve.remote_search. With that method moved into retrieve, it would be a lot easier for you to compare against the different methods and see what error handling is missing from the current code. From a quick look, you still need to catch retryable HTTP errors, socket timeouts that have been wrapped in a URLError, retryable socket errors, ValueError and httplib.IncompleteRead. If you're able to determine the content-length of a search response, you should also probably be checking that, too. The code that's reading from a fileobject also must catch ValueError and httplib.IncompleteRead, and retryable socket errors. I'd encourage you to take another look at the error handling code in retrieve.py. Get_versions() or get_manifest() are both good examples. -j _______________________________________________ pkg-discuss mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/pkg-discuss
