Skip to content

Releasing version 3.1.2.0 #414

Description

@kazu-yamamoto

I would like to discuss what features should be implemented in version 4. Please speak up.

I would like to have:

  • using Strict and StrictData by default

Activity

  1. eborden commented on Jun 20, 2019

    @eborden
    Collaborator

    @kazu-yamamoto I've opened the v4 project https://github.com/haskell/network/projects/3

    There is a column for "Proposed" where we can stack items that we think should be in. That can serve as an initial brainstorm. Then we can spend some time triaging that list.

    I actually added Strict to the Q4 milestones. I wasn't thinking an epoch change for that. However I could be convinced.

  2. kazu-yamamoto commented on May 14, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    @eborden Do you have any idea to implement #151? If you explain the guideline on how to address this issue, I can try.

    Or should we release version 4 without fixing #151?

  3. eborden commented on May 17, 2020

    @eborden
    Collaborator

    @eborden Do you have any idea to implement #151? If you explain the guideline on how to address this issue, I can try.

    I'll spend some time formulating something. Even a domain specific exception like newtype NetworkException = NetworkException String would be an improvement over the current situation, but there is likely a lot more granularity that can provide utility.

    Or should we release version 4 without fixing #151?

    @kazu-yamamoto I'm attempting to round up the current unreleased changes (see unreleased in the CHANGELOG.md). Here is what I have:

    As far as I'm aware, the only breaking change is the transformation of SocketOption to a pattern synonym. Is there something else that I'm missing?

  4. kazu-yamamoto commented on May 17, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    @eborden First of all, no rush. I can wait for your work.

    New SocketOption maintains backward compatibility except CustomSockOpt. This means that most network code can compile with network v4 without modification.

    CustomSockOpt was removed since I don't know how to express pattern for the tuple. If we can express the pattern, we can provide perfect backward compatibility.

  5. kazu-yamamoto commented on May 17, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    @eborden Nice work for changelog. Thanks.

    I think we should describe new extensible APIs: getSockOpt and setSockOpt. Some users have been waiting for them.

  6. eborden commented on May 17, 2020

    @eborden
    Collaborator

    @kazu-yamamoto I might also debate whether removing CustomSockOpt represents an Epoch change or a Major change (Epoch.Major.Minor.Bug). The community style for Epoch would signal a major departure in design. Really we are just opening SocketOption to improved extensibility with a slight break in the original design for extension. As well this break is type checkable. I'd argue that is a Major break, not an Epoch break. That looks like 3.2.0.0, not 4.0.0.0 if we do not include exception redesign.

  7. kazu-yamamoto commented on May 17, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    v3.2 sounds good to me.

    At least, we can get back CustomSockOpt if we define SocketOption using a tuple. If we do so, we can keep v3.1.

  8. eborden commented on May 17, 2020

    @eborden
    Collaborator

    That is a solid design tradeoff for backwards compatibility.

  9. eborden commented on May 17, 2020

    @eborden
    Collaborator

    I'd support a deprecated pragma if PVP 1.1 was official, but as of today deprecation is still considered a breaking change.

    haskell/pvp#12

  10. changed the title [-]version 4[/-] [+]version 3.2 (or possibly 3.1)[/+] on May 18, 2020
  11. changed the title [-]version 3.2 (or possibly 3.1)[/-] [+]Releasing version 3.2 (or possibly 3.1)[/+] on May 18, 2020
  12. kazu-yamamoto commented on May 19, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    @eborden Could you confirm that master maintains backward compatibility with 3.1?

    If so, we can go forward step by step:

    • Releasing master as v3.1.2.0
    • Releasing v3.1.3 when new error handling is completed

    Let's drop Strict stuff for a while. It's likely v4 issue.

  13. kazu-yamamoto commented on May 19, 2020

    @kazu-yamamoto
    CollaboratorAuthor
  14. changed the title [-]Releasing version 3.2 (or possibly 3.1)[/-] [+]Releasing version 3.1.2.0[/+] on May 19, 2020
  15. eborden commented on May 20, 2020

    @eborden
    Collaborator

    @kazu-yamamoto I created a project to track progress on 3.1.2.0.

    https://github.com/haskell/network/projects/4

  16. kazu-yamamoto commented on Jul 22, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    @eborden After #471 is merged, let's release v3.1.2.0. Please don't forget to update CHANGELOG.md . :-)

  17. eborden commented on Jul 22, 2020

    @eborden
    Collaborator

    Sounds good!

  18. kazu-yamamoto commented on Jul 25, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    @eborden Now it's your turn. Let's release v3.1.2.0.

  19. eborden commented on Jul 26, 2020

    @eborden
    Collaborator

    👍 I'll give the changelog a once over and get it released this evening.

  20. kazu-yamamoto commented on Aug 3, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    @eborden Gentle ping.

  21. eborden commented on Aug 5, 2020

    @eborden
    Collaborator

    @kazu-yamamoto I've updated https://github.com/haskell/network/blob/master/CHANGELOG.md to include 3.1.2.0. Many changes were not previously represented there. Please let me know if you see anything I missed or needs further clarification. After you have approved I'll packaged everything up and release.

  22. kazu-yamamoto commented on Aug 6, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    @eborden LGTM. Let's go.

  23. eborden commented on Aug 6, 2020

    @eborden
    Collaborator
  24. kazu-yamamoto commented on Aug 7, 2020

    @kazu-yamamoto
    CollaboratorAuthor

    Please don't forget to make 3.1.1.0 and 3.1.1.1 deprecated due to the bug of gracefulClose.

  25. eborden commented on Aug 7, 2020

    @eborden
    Collaborator
    • Candidate published
    • Older versions deprecated
    • Cafe message sent
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions