Skip to content

Changelog v0.2.0.0 #22

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

Merged
merged 16 commits into from
Mar 31, 2023
Merged

Changelog v0.2.0.0 #22

merged 16 commits into from
Mar 31, 2023

Conversation

lyokha
Copy link
Collaborator

@lyokha lyokha commented Mar 29, 2023

lyokha and others added 9 commits March 28, 2023 12:59
Linux man 3 resolver says:
    Every call to res_ninit() requires a corresponding call to
    res_nclose() to free memory allocated by res_ninit() and subsequent
    calls to res_nquery().
withCResInit which makes sure that allocated resources get correctly
released by wrapping actions following a successful call to c_res_init
in finally handler.
This protects against asynchronous exceptions. If an asynchronous
exception happens somewhere inside of

    rc1 <- c_res_opt_set_use_dnssec stptr
    unless (rc1 == 0) $
        fail "res_init(3) failed"
    resetErrno

then it may leak memory after successful call to res_ninit() inside
c_res_opt_set_use_dnssec.

Note that it is safe to run c_res_close stptr if all fields of stptr
are memzeroed (which is our case before the call to res_ninit()): this
means that wrapping the entire body of withCResInit is safe even if an
asynchronous exception occurs before the call to res_ninit().
@lyokha
Copy link
Collaborator Author

lyokha commented Mar 29, 2023

Version in resolv.cabal must be also bumped to 0.2.0.0. @andreasabel, what is your opinion: should this be made in this PR or in a separate task?

@andreasabel
Copy link
Member

Version in resolv.cabal must be also bumped to 0.2.0.0

I did this on master now since we already decided to release the next version as 0.2.0.0 (and we have added @since info to the other PR). Usually, I might do this in the PR that prepares the release.

The changelog you wrote is good!
I just added links to the PRs so one can quickly get more information.
Also, I added release dates and author to the previous releases (on master).

Once everything is ready for release, the release date has to be inserted here.
After releasing and merging this, we also need to set the v0.2.0.0 tag on this repo.

@andreasabel andreasabel added this to the 0.2.0.0 milestone Mar 29, 2023
@lyokha
Copy link
Collaborator Author

lyokha commented Mar 29, 2023

I added yet another tiny improvement to #17 (de12926), seems that you didn't merge this yet.

@andreasabel
Copy link
Member

I added yet another tiny improvement to #17

Me too, please review!

@andreasabel andreasabel added the pr: squash me PR should be squashed upon merge label Mar 30, 2023
@andreasabel
Copy link
Member

Candidate looks fine: https://hackage.haskell.org/package/resolv-0.2.0.0/candidate

Shall I release?

@lyokha
Copy link
Collaborator Author

lyokha commented Mar 30, 2023

Yes, I think it's ok to release!

@andreasabel andreasabel changed the title Changelog v0200 Changelog v0.2.0.0 Mar 31, 2023
@andreasabel andreasabel merged commit 8c0c7d0 into haskell-hvr:master Mar 31, 2023
@andreasabel
Copy link
Member

Done! Thanks for the nice collaboration!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr: squash me PR should be squashed upon merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants