Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign upRemove old generics and generics-rep record support #3007
Conversation
paf31
added
breaking
ready for review
labels
Jul 30, 2017
This comment has been minimized.
This comment has been minimized.
|
I was expecting that we wouldn't derive |
This comment has been minimized.
This comment has been minimized.
|
Also, this seems fairly significant, so I think it might be sensible to call the first release containing this v0.12.0, just in case we later notice some problem with it which we want to fix, but fixing it requires another breaking change. |
This comment has been minimized.
This comment has been minimized.
|
Yes, sorry I meant we should write instances for those. And yes, I think we do need a 0.12.0 release separate from 1.0.0 at this point. |
This comment has been minimized.
This comment has been minimized.
|
Is there anything stopping us from writing those instances now, and releasing updated core libraries with those instances, so that people can use them with the 0.11.x compiler? |
This comment has been minimized.
This comment has been minimized.
|
Yes, we'd need to move |
This comment has been minimized.
This comment has been minimized.
|
Fixes #2911. |
hdgarrood
approved these changes
Jul 30, 2017
|
Would it make sense to add a test which ensures that code which attempts to derive an old-style |
paf31
added some commits
Sep 9, 2017
This comment has been minimized.
This comment has been minimized.
|
@hdgarrood Done, thanks! I'll merge once CI passes. |
kRITZCREEK
approved these changes
Sep 14, 2017
paf31
merged commit fe6a098
into
master
Sep 14, 2017
paf31
deleted the
phil/remove-old-generics
branch
Sep 14, 2017
This comment has been minimized.
This comment has been minimized.
|
Would it be possible to add a |
This comment has been minimized.
This comment has been minimized.
|
How would it work? The compiler won't derive instances for records any more, so the issue is not that we don't want an instance to exist, but that we want other instances to exist (e.g. |
This comment has been minimized.
This comment has been minimized.
|
I see. What sort of message do you get when you try to derive now? |
This comment has been minimized.
This comment has been minimized.
|
zudov
referenced this pull request
Nov 4, 2017
Closed
Not compatible yet with purs 0.11.6-dev it seems? #8
LiamGoodacre
referenced this pull request
Apr 11, 2018
Merged
Remove Rec and Field & update package & bower symbols #26
This comment has been minimized.
This comment has been minimized.
fsoikin
commented
May 14, 2018
|
What's the official way of migrating old |
This comment has been minimized.
This comment has been minimized.
|
You could try using this code. If it doesn't get merged, I'll probably close the PR and make a |
This comment has been minimized.
This comment has been minimized.
fsoikin
commented
May 14, 2018
|
Got it, thanks @paf31. One question, out of curiosity though: a comment on that PR states that "For standard data structures, you can simply write |
This comment has been minimized.
This comment has been minimized.
|
I may have copied that incorrectly from the original docs |
This comment has been minimized.
This comment has been minimized.
fsoikin
commented
May 14, 2018
|
Ok, got it. |
paf31 commentedJul 30, 2017
•
edited
This removes
genericderiving mechanismgenerics-repIt needs some changes to
generics-rep, and we'd probably want to deprecategenericstoo.This is breaking, so it would go into 1.0 or 0.12.0.
Finally, this means we need to figure out how to derive
Eq,Show,Ord, etc. for records usingRowToList, which means moving some things around in the core libraries.