jacobstanley / hadoop-tools

Tools for working with Hadoop, written with performance in mind.
Other
37 stars 15 forks source link

Split `hh` into library and front end to ease the development of copatible utilities #26

Closed luke-clifton closed 7 years ago

luke-clifton commented 7 years ago

Don't merge yet

I need to build a bunch of utilities that I would like to be compatible with the hh ecosystem (similar user experience, reuse config, similar error messages etc). To such an end, I would like to split out some of hh's user facing utility functions (e.g. argument parsing, config parsing, autocomplete) into a library which is distinct from hadoop-rpc (which should just remain a fairly raw interface to the hadoop rpc service).

I have done this by making hadoop-tools create both an executable, and a library.

@jystic Would you be open to such a change?

This still needs a lot of cleaning up.

jacobstanley commented 7 years ago

I like this idea, keep going for it :+1:

luke-clifton commented 7 years ago

Does anyone care about 7.8 still?

jacobstanley commented 7 years ago

Happy to drop support if you like

luke-clifton commented 7 years ago

I'll make it work, just installing 7.8.4 and building libraries now.

jacobstanley commented 7 years ago

I'll make it work, just installing 7.8.4 and building libraries now.

I honestly don't mind dropping support, the code would be a lot cleaner with AMP.

The docker image is for 7.10.1 so that will be fine.

luke-clifton commented 7 years ago

Ok. I'll drop 7.8.4 as part of this.

luke-clifton commented 7 years ago

Ok. I'm relatively happy with it. Tests pass and the CentOS build works.

jacobstanley commented 7 years ago

Looking good, mind if I just nitpick one thing? (file locations)

Would prefer to have the library stuff in src/ and then move src/Main.hs to main/hh.hs. This matches the convention I've settled on for all my projects.

jacobstanley commented 7 years ago

Awesome stuff, merging away :100: