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

Remove IO dependency from DB module #987

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

herr-bubu
Copy link
Contributor

This PR removes IO dependency from DB module :)

@herr-bubu herr-bubu changed the title Removed IO dependency from DB module Remove IO dependency from DB module Nov 19, 2022
@adamw
Copy link
Member

adamw commented Nov 21, 2022

Thanks :) Why the DB module, and not others?

@herr-bubu
Copy link
Contributor Author

herr-bubu commented Nov 22, 2022

@adamw baby steps :)
I'll have more soon, so probably by the end of the year we'll have this one done :)

@adamw
Copy link
Member

adamw commented Nov 26, 2022

Ok, I guess we'd need to make up our minds if we want to go full-tagless-final, or keep the current approach of a hybrid (using a concrete effect IO where possible, tagless final only when necessary). The first one is uniform, the second provides simpler development of most services. So I'm on the fence :)

@softberries
Copy link
Member

I went through writing everything in TF-way to simply using concrete effect like cats IO everywhere instead, this was a long journey but today I think that writing all your code tagless final just for the sake of it, brings nothing to the table and only complicates things and slows down development. I understand that its a nice exercise but I would use it only in places where we can actually gain smth from it, eg. handling errors with Cats MTL. And yes, I understand that you can use different effect in your tests or maybe easier swap cats IO for smth else in the future but no one does it :)

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

3 participants