-
Notifications
You must be signed in to change notification settings - Fork 222
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
move parser into its own module #792
Conversation
@yanns Where do you think |
Yes we can move it into the parser module. |
You can rebase on |
I'm making that private, so just leaving the full implementation in |
d5cbb0f
to
526fed4
Compare
Should I delete this method in this PR? and deprecate it in 2.x? |
Should I deprecate the |
da609ff
to
c326b13
Compare
no I'd not do that. |
I think that this implementation should be moved to its own class as it's something present in the specs: http://spec.graphql.org/October2021/#sec-String-Value.Block-Strings The existing tests should be also extracted in a separated class. And |
OK, so I won't "deprecate the
Right. Since I'm assuming also that no one is currently using the traits directly, I see no reason to make them part of the usable public API. That would restrict our freedom to refactor. It also might buy some performance, depending on the assumptions that the compiler makes. I know that works for visibility: |
But are you sure that anyone's using it? I don't see it being called from open source Scala code on GitHub. Deprecating the method and seeing who complains might make more sense than needlessly exposing parser internals. (I made the changes locally, but paused on this thought before committing.) |
Yes, we can deprecate |
Users of this parser library probably don't need this API. Also copies some StringUtil methods into the parser code. Adds the `parser` project to the `root` target's aggregate.
Shapeless was removed in parboiled2 upstream. Avoid depending on it directly for an easier upgrade path.
It's believed that this method is unused outside of the parser. Moves the parser's copy of the implementation from the `Tokens` trait into a new `Lexical` object, from which it can be easily made visible if needed in the future. Moves the tests over from `core` into `parser`. Also fixes some IDE warnings.
074fc9d
to
60ccc2a
Compare
Anything else? Do we want to make Actually, I should hold off on that. I don't know enough to make that happen quickly. |
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've run this version with some applications, and no issues detected!
👍
Yes, it's something we can add later if we need. |
Fixes #466. Based on PR #790.