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 to v0.14.0-rc3 #17

Merged
merged 2 commits into from
Dec 5, 2020
Merged

Update to v0.14.0-rc3 #17

merged 2 commits into from
Dec 5, 2020

Conversation

JordanMartinez
Copy link
Contributor

@JordanMartinez
Copy link
Contributor Author

This fails with the following error. How should we handle this situation? I'm not sure how TacitString is used downstream:

[1/1 HiddenConstructors] src/Data/TacitString.purs:1:1

      v
   1  module Data.TacitString
   2    ( TacitString
   3    , hush
      ...
  17  
  18  hush :: String -> TacitString
  19  hush = TacitString
                       ^
  
  An export for TacitString hides data constructors but the type declares an instance of Data.Newtype.Newtype.
  Such instance allows to match and construct values of this type, effectively making the constructors public.

           Src   Lib   All
Warnings   0     0/6   0/6
Errors     1     0     1  
[error] Failed to build.

@thomashoneyman
Copy link
Contributor

From e944185#diff-fc8d1f080fd8a9d82fab01c6c3cc0a5ea2fd515790b0fb0255bda87b5c4e370c and 98874b7#diff-fc8d1f080fd8a9d82fab01c6c3cc0a5ea2fd515790b0fb0255bda87b5c4e370c I don't think this was ever supposed to have a Newtype instance in the first place, and I think the instance can be removed. It's only used to implement other instances and probably shouldn't be used downstream (maybe should even be in an Internal module?). @garyb, do you have thoughts?

@kl0tl
Copy link
Contributor

kl0tl commented Dec 5, 2020

I fixed this warning by removing the instance in #16.

@thomashoneyman
Copy link
Contributor

#16 is merged

@JordanMartinez
Copy link
Contributor Author

I've rebased on top of that branch. CI should pass now.

@garyb
Copy link
Member

garyb commented Dec 5, 2020

Yeah, TacitString isn't really something that is intended to be used as a normal datatype, it's only there as a helper for Show instances in recursive/higher order functors - the only things necessary for it are the type, show, and hush. 🙂

@JordanMartinez JordanMartinez merged commit 3f17d77 into purescript-contrib:main Dec 5, 2020
@JordanMartinez JordanMartinez deleted the updateTo14 branch December 5, 2020 22:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants