0 Replies - 7261 Views - Last Post: 01 June 2013 - 04:22 PM Rate Topic: -----

#1 macosxnerd101  Icon User is offline

  • Games, Graphs, and Auctions
  • member icon

Reputation: 11393
  • View blog
  • Posts: 42,930
  • Joined: 27-December 08

[Link] Practicality beats purity when comes to backwards-compatibility

Posted 01 June 2013 - 04:22 PM


This past week I was on a 5 hour train ride where I was doing some API work on importlib to make it easier to customize imports. The route I have been taking to accomplish that is to define a couple key methods in the appropriate ABC so that subclasses can do as little custom work as possible and use sensible defaults as defined by the ABCs. That way gnarly details are taken care of in a consistent way by importlib and users can simply focus on what is different/special about their importers.

Part of that includes dealing with __path__. For those of you who might not be aware, the existence of __path__ on a module is the official definition of a package in Python. And if __path__ is defined it must be an iterable that only returns strings (if it returns anything at all; this all means [] is a legit value for __path__ to define that something is a package). Relatively straight-forward in the common case of some directory on your file system representing a package.


Is This A Good Question/Topic? 0
  • +

Page 1 of 1