Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Functional IO package #694

Merged
merged 11 commits into from
May 26, 2016
Merged

Functional IO package #694

merged 11 commits into from
May 26, 2016

Conversation

patricksnape
Copy link
Contributor

@patricksnape patricksnape commented May 15, 2016

Now the IO package is much more functional and importers and exporters are just expected to be defined as functions/callables that take either a path (input) or a file handle (output) and do the appropriate job. This makes it much easier for users to leverage the menpo smart globbing etc but actually import whatever they want.

TODO

  • mio.register_*_importer('.jpg', custom_jpg_importer)

Make it simpler to create an importer by removing inheritance
from the importer classes. Also, make some of the menpo methods
more generic so they can be used by menpo3d.

Finally, improve behaviour for importing file types with compound
extensions such as .pkl.gz -> Now try all subsequences of
extensions rather than just .pkl.gz and .pkl.
Rename functions to function style names and use some of the new
logic or looking up compound file types.

Fix the tests appropriately.
Creates a partial and copies the __doc__ and optionally allows setting a
name.
You can now register custom image, video, landmark and pickle importers.
dunderscore arguments are mangled in Python2 - so we shouldn't
use them.
@patricksnape
Copy link
Contributor Author

patricksnape commented May 25, 2016

@jabooth Please review me

@patricksnape patricksnape changed the title WIP: Functional IO package Functional IO package May 26, 2016
from menpo.visualize import print_progress

from ..utils import _norm_path, _possible_extensions_from_filepath, \
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we do

from foo import (lots, of,
                 items)

not a fan of \ + newline

@jabooth
Copy link
Member

jabooth commented May 26, 2016

@patricksnape really minor comments, but other than those looks really good. +1.

@patricksnape
Copy link
Contributor Author

Go home Appveyor you're drunk. Merging.

@patricksnape patricksnape merged commit 4d8116e into menpo:master May 26, 2016
@patricksnape patricksnape deleted the functional_io branch May 26, 2016 11:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants