This file describes user-visible changes between pockets versions.
- Adds absolute-import-only mode to pockets.inspect.resolve() by passing an empty string for the modules parameter
- Changes pockets.collections.mappify() to return an empty dict if passed None
- Adds pockets.collections.is_mappy() and pockets.string.splitify()
- Drops support for Python 2.6 and Python 3.3
- Adds "key" parameter to pockets.collections.uniquify()
- Updates pockets.inspect.import_star() so that it returns a map of attrs instead of setting them on the module
- Better exception reporting in pockets.inspect.resolve()
- pockets.inspect.hoist_submodules() now updates parent __all__ by default
- Adds pockets.inspect.import_star()
- More restrictive error handling in pockets.inspect.resolve()
- Makes pockets.inspect.resolve() more robust
- Adds pockets.inspect.hoist_submodules and pockets.inspect.import_submodules
- Fixes Python 3.7 deprecation warnings
- Fixes pockets.inspect.resolve() so deeply nested modules will resolve
- Adds test support for Python 3.7
- Update pockets.collections.readable_join() to ignore whitespace strings
- Renames pockets.string.slug -> sluggify
Adds the following functions and classes:
- pockets.collections.groupify
- pockets.collections.keydefaultdict
- pockets.collections.nesteddefaultdict
- pockets.collections.readable_join
- pockets.datetime.ceil_datetime
- pockets.datetime.floor_datetime
- pockets.datetime.round_datetime
- pockets.datetime.timedelta_total_seconds
- pockets.decorators.argmod
- pockets.inspect.unwrap
- pockets.string.fieldify
- pockets.string.unfieldify
- pockets.string.slug
Additionally renames the following classes (the original names are still exported for backwards compatibility):
- pockets.iterators.modify_iter -> itermod
- pockets.iterators.peek_iter -> iterpeek
- Renames pockets.inspect.is_data_attr to pockets.inspect.is_data
- Adds pockets.decorators module
- Adds pockets.inspect.is_data_attr function
- Adds pockets.inspect.collect_subclasses
- Adds pockets.inspect.collect_superclasses
- Adds pockets.inspect.collect_superclass_attr_names
- Renames IndentMultilinesLogFormatter to IndentMultilineLogFormatter
- Adds cls parameter to pockets.collections.uniquify function
- Adds pockets.collections.uniquify function
- Adds pockets.logging module
- Adds pockets.autolog module
- Excludes tests directory from package contents
- Fixes Python 3.6 compatibility by only using re.LOCALE flag on Python 2
- Adds UnicodeMixin to aid Python 2 and 3 compatibility
- Lowers required version of six library to 1.5.2
- Modifies behavior of resolve to allow relative imports
- Enables bdist_wheel distributions
- Minimum required six version changed to 1.7
- Adds collections module
- Adds inspect module
- Adds string module
- Initial version.