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

0.1.3 violates PVP #17

Closed
phadej opened this issue Sep 10, 2022 · 11 comments · Fixed by #30
Closed

0.1.3 violates PVP #17

phadej opened this issue Sep 10, 2022 · 11 comments · Fixed by #30

Comments

@phadej
Copy link
Contributor

phadej commented Sep 10, 2022

The flags introduced in that release are automatic, therefore solver can turn them off on will. And it very much does with later GHCs, as text bound is <1.3.

So one cannot rely that Text, Vector and ByteString instances exist.

These flags should have been manual, and 0.1.3 release kind of violates PVP as it allows removal of the instances. Reverse dependency packages have no way to ensure the instances exist.

@erikd
Copy link
Member

erikd commented Oct 23, 2022

@phadej What do you suggest we do? A new 0.2.0 release and deprecate 0.1.3 ?

@phadej
Copy link
Contributor Author

phadej commented Oct 24, 2022

@erikd yes.

@michaelpj
Copy link

Here's an example where this came up recently. vector-0.13 was released. This led to us losing the vector instances, because cabal prefers to pick vector-0.13 and turn off the vector flag in nothunks. Whereas I want the constraint to go the other way: I need the vector instances, so I want cabal to be forced to pick vector < 0.13.

@phadej
Copy link
Contributor Author

phadej commented Oct 31, 2022

Err. Sorry. There is no need for 0.2.0. I would

  • make a revision with base <0 for 0.1.3 to pretend it never existed (bad release).
  • make a 0.1.4 release with manual flags enabled by default, if the toggling functionality is really needed.

cc @Bodigrim who introduced the change.

Niols added a commit to tweag/hello-plutarch that referenced this issue Nov 3, 2022
gabrielhdt added a commit to tweag/hello-plutarch that referenced this issue Nov 3, 2022
- Bump Plutarch to 1.3
- Bump index states
- Follow @andreabedini's suggestions,
  cf #4 (comment)
  cf input-output-hk/nothunks#17
- Remove personal fork of Plutus repo
- Remove custom version of Plutus repo
- Clean imports

Co-authored-by: gabrielhdt <[email protected]>
@michaelpj
Copy link

This is still a problem.

@Bodigrim
Copy link
Contributor

As a Hackage trustee I made a revision allowing text-2.0 and vector-0.13, which should suffice for now.
https://hackage.haskell.org/package/nothunks-0.1.3/revisions/

@michaelpj
Copy link

Just to be clear, I think the issue will recur if vector-0.14 is released.

@phadej
Copy link
Contributor Author

phadej commented Mar 16, 2023

Or text-2.1 (as there is already merged breaking change in texts master).

@phadej
Copy link
Contributor Author

phadej commented Mar 16, 2023

As a Hackage trustee I'll make a blacklisting base <0 revision in few weeks. It have been six months to fix the issue.

(EDIT: and the fix is trivial #17 (comment), make flags manual and enabled by default and reupload new version)

@coot coot linked a pull request Mar 27, 2023 that will close this issue
@coot coot closed this as completed in #30 Mar 30, 2023
@coot
Copy link
Contributor

coot commented Mar 31, 2023

nothunks-0.1.4.0 is on hackage.

@coot
Copy link
Contributor

coot commented Mar 31, 2023

I also published a new revision of nothunks-0.1.3 with base <0.

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 a pull request may close this issue.

5 participants