typemytype / booleanOperations

Boolean operations on paths
MIT License
38 stars 18 forks source link

What's the purpose of BooleanOperationManager? #24

Closed behdad closed 7 years ago

behdad commented 8 years ago

To me it looks like an unnecessary class.

anthrotype commented 8 years ago

Yeah, the self instance doesn't hold any data. It's really just a bundle of functions which happen to call _performOperation. But turning them into separate functions would break the current API... Maybe using the @staticmethod decorator would be better, as it would allow to call them directly on the class as well as on an instance, thus without breaking the API.

behdad commented 8 years ago

Thanks. I suggest also importing the methods into the toplevel module, removing the use of Manager completely.

typemytype commented 8 years ago

I guess it changed over time from a manager kind of object to a simpler model... and it stayed this way

thank for the pull request

Ideally it just have to be a set of function doing operations with lower level data/object (not glyph like objects)

This could be solved by collecting them into a new module operations.py and keep the booleanOperationMager.py just as legacy with a small deprecated warning. Or is this change to dramatic?

anthrotype commented 8 years ago

collecting them into a new module operations.py and keep the booleanOperationMager.py just as legacy with a small deprecated warning

You could do that, if you prefer. After that, we should push a 0.3 tag so the CI can deploy the precompiled wheels to the Github Releases page.