-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Add perspective to the community build #10750
Conversation
@Katrix One of the community test build seems to be failing, did you have a change to investigate? |
Ah yes. It's something about syntax. Just need to find some time to get back to this |
Worked fine on local at least now |
.gitmodules
Outdated
@@ -174,3 +174,6 @@ | |||
[submodule "community-build/community-projects/scalatestplus-junit"] | |||
path = community-build/community-projects/scalatestplus-junit | |||
url = https://github.com/dotty-staging/scalatestplus-junit.git | |||
[submodule "community-build/community-projects/perspective"] | |||
path = community-build/community-projects/perspective | |||
url = https://github.com/Katrix/perspective.git |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it ok to use the original repo directly instead of a fork? If we don't have permissions to fully manage this repo, we might not be able to fix our tests in case some changes are pushed there without all tests passing for scala 3 or with flaky tests. @smarter ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Our current policy is to always make a fork in dotty-staging indeed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@smarter I could create the fork but it looks like I don't have the right permissions for that
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You should have access now.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
877f8b8
to
9a1773b
Compare
Sorry for taking so long with this rebased on top of master and updated the submodule path. The build is currently failing, to me, those errors look like exactly the kind of bugs I thougth having perspective in the community build would help spot. |
Seems like some updates may be required due to #10940? |
Alright, updated stuff to the latest nightly version on my repo. How is that now transferred to the dotty-staging repo? Did notice a strange bit here where I had to reference the extension method I wanted to call from outside the extension block. Seems like in other cases I didn't have to. |
@Katrix if you want your project to use a specific branch in the community build you should specify it
I updated this branch inside the fork to the latest revision. |
9a1773b
to
090bfbf
Compare
Alright all green now. Should I squash the commits or clean up the history in any way? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it would be nice to squash the commits. Otherwise, LGTM.
e69000a
to
8a60b77
Compare
Alrighty, all squashed |
No idea if I've done this correctly, but let's hope so :P
This will add perspective to the community build. perspective is a generic programming library like shapeless, but taking a different paradigm instead (functional instead of logic based, value level instead of type level). Reason why I thought perspective might fit in well in the community build is that it is probably one of the projects that uses polymorphic function types the most as of now. I've already come across a few bugs in relation to this, which I have already submitted.
No tests for now, as I don't know if there are any other libraries updated to Dotty which includes typeclasses that are easy to test. (Using circe currently for the scala 2 part of the project). Just the fact that it compiles should at least provide some confidence that nothing broke in terms of typechecking or similar which perspective relies upon.