Changes to add coherece and order to muttlib
Description
Reviewing muttlib in depth I think there are some changes needed to add coherence and order to the library.
Here is my list:
-
gcd.py
module seems to be just a couple of internal classes that should belong more inside a framework than in a library of utilities like this one. I would remove this module -
file_processing.py
still basically has a bunch of classes and functions that were used in Claro Streams project. These functions don't seem to serve a clear purpose and their use is not well documented. I would remove or at least document a short example on how they might be useful. -
ipynb_utils.py
andutils.py
seem to collide in part of their purpose and content. First, usuallyutils.py
are best used sparingly with just a few functions with no unifying theme. Both modules here are pretty large + have a lot of functions that have some shared purpose. There are functions for manipulating and operating over pandas dataframes, others to generate SQL code for Cloudera Impala or other similar databases and some functions for data exploration. I would unify all functions that operate over dataframes to a pandas_utils.py, then the sql ones tosql_utils.py
and finally remove some functions and leave others inutils.py
. I would specially remove function one liners likewrite_to_clipboard()
.
These changes should probably be done before publicly advertising the library.
What do you think @pablo25 @crossnox ? Any other similar changes?