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

Update typeclasses.md #4325

Open
wants to merge 6 commits into
base: main
Choose a base branch
from
Open

Update typeclasses.md #4325

wants to merge 6 commits into from

Conversation

tsobako
Copy link

@tsobako tsobako commented Oct 27, 2022

Update the infographic to modern cats/cats-effect versions

Thank you for contributing to Cats!

This is a kind reminder to run sbt +prePR and commit the changed files, if any, before submitting.

Update the infographic to modern cats/cats-effect versions
@johnynek
Copy link
Contributor

thanks for doing this.

I haven't reviewed all the links, but when I view the new svg I see Bimonad arrow to Monad going to the center of the Monad node, not the edge, like the other cases. Do you see that?

Secondly, I think the URL should be a URL that typelevel controls, not a user (so even the tpolecat URL had this problem). I wonder if we could just commit the SVG to the ghpages branch for this repo? I'm not very experienced with all the issues with that here though.

@satorg
Copy link
Contributor

satorg commented Oct 27, 2022

I think the URL should be a URL that typelevel controls

Totally 👍 for that. It is quite annoying that even having all the doc sources fetched in a local repo we still have to fetch the SVG (which is supposed to be a part of the docs) from elsewhere.

I wonder though, how is that SVG got generated? Can we integrate it with the docs build somehow?

@armanbilge
Copy link
Member

I wonder though, how is that SVG got generated? Can we integrate it with the docs build somehow?

See https://github.com/tpolecat/cats-infographic

It appears to be an "OmniGraffle" file. Might be complicated to integrate into the build.

@armanbilge
Copy link
Member

Laika will hopefully be getting support for Mermaid diagrams soon.

Maybe we can make a similar diagram using that.

@tsobako
Copy link
Author

tsobako commented Oct 28, 2022

Thanks for comments, I'll try to update graph and move it to this repo later

@tsobako
Copy link
Author

tsobako commented Nov 3, 2022

Hi.
I decided to put just plain SVG file. It think it would be better to edit it manually when something in typeclass hierarchy is changed.

@satorg
Copy link
Contributor

satorg commented Nov 3, 2022

@tsobako fyi: in Cats 2.7.0 there was NonEmptyAlternative added that became a base trait for Alternative:

trait NonEmptyAlternative[F[_]] extends Applicative[F] with SemigroupK[F] { self =>

UPD. Looking at the diagram I am not sure if it is easy to squeeze NonEmptyAlternative into it. But if it was possible, it would be really cool. Anyway, it looks great, thanks!

@tsobako
Copy link
Author

tsobako commented Nov 7, 2022

Hi.
I removed SVG diagram as it was too hard to find good editor that does not break graph structure.
So I decided to rewrite the diagram into mermaid format which is easier to read.

@tsobako tsobako marked this pull request as draft November 9, 2022 14:46
@tsobako tsobako marked this pull request as ready for review December 7, 2022 13:33
@tsobako
Copy link
Author

tsobako commented Dec 7, 2022

Hi.
A mermaid diagram which contains all typeclasses is hard to read, so I group typeclasses belonging to different cats libraries into several diagrams.
Please review and comment

@armanbilge armanbilge linked an issue Jan 15, 2023 that may be closed by this pull request
@satorg
Copy link
Contributor

satorg commented Jan 15, 2023

Seems like this PR got stuck for some reason. I think it is because the most recent CI failed. Just wondering, is it failing due to issues with the update itself or is it just due to CI flakiness?

@armanbilge armanbilge closed this Jan 15, 2023
@armanbilge armanbilge reopened this Jan 15, 2023
@armanbilge
Copy link
Member

It's CI flake. But I think this PR is blocked until Laika supports Mermaid.

@armanbilge
Copy link
Member

@tsobako see some discussion/commentary in #4374 (comment).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

A new version of cats-infographic is created
4 participants