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

release 1.7.3 #2132

Closed
Closed

Conversation

andreasabel
Copy link
Member

@andreasabel andreasabel commented Oct 10, 2023

Branched off tag v1.7.2 (branch release-1.7.3-base) to gather commits for v1.7.3.

TODO:

Commits:

  • Put indexed data types in the right universe
  • Prepare for v1.7.3: move CHANGELOG to CHANGELOG/v1.7.2
  • v1.7.3 CHANGELOG entry for --large-indices (Put indexed data types in the right universes #2030)
  • Bump agda-stdlib-utils to 1.7.3; update its dependencies and CI
  • Update CI for v1.7.3: Use Agda 2.6.4; deploy HTML to v1.7.3 subdirectory

plt-amy and others added 4 commits October 10, 2023 10:36
To fix agda/agda#6654, we've decided that large indices will no longer
be allowed by default. There is an infective flag `--large-indices` to
bring them back, but none of the uses of large indices in the standard
library were essential: to avoid complicated mutually-recursive PRs
across repos, I adjusted the levels to check with `--no-large-indices`
instead of adding the flag to the modules that used them.
@andreasabel andreasabel changed the base branch from master to release-1.7.3-base October 10, 2023 09:20
@andreasabel andreasabel added this to the v1.7.3 milestone Oct 10, 2023
@andreasabel andreasabel marked this pull request as draft October 10, 2023 09:21
Also:
- install alex and happy
- bump Agda heap to -M6G
Copy link
Contributor

@MatthewDaggitt MatthewDaggitt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for getting this off the ground!

Get CI to run: CI runs at https://github.com/andreasabel/agda-stdlib/actions

I'm afraid my expertise at CI wrangling pales in comparison to yours so I'm maybe you have better ideas why its failing than me? I have to confess I've never dug deeply into the CI code myself.

Implement missing points described in the release guide

Happy to do this once we have the content thrashed out.

Consider additions for forward-compatibility with v2.0: #2129 (comment)

Could you make a separate PR onto this branch with your proposed changes?

CHANGELOG/ is missing changelogs for v1.7 and v1.7.1

Hmm so they're present on master. Not quite sure why they never made it to this branch. I'll copy them from there.

if [[ '${{ github.ref }}' == 'refs/heads/master' \
|| '${{ github.ref }}' == 'refs/heads/experimental' ]]; then
echo "AGDA_DEPLOY=true" >> $GITHUB_ENV
fi
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So I imagine that we'd be merging this branch back into master at some point. While a lot of the changes to this CI file are enhancements (e.g. bumping versions), can we avoid removing functionality like this?

In particular it's important that if we're on the experimental branch, we install a different version of Agda!

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, apologies, I didn't know this would be merged back into master.
What are the reasons for merging it in there?
master already contains the relevant patch to remove the use of large indices (I cherry-picked it from there).

E.g. for the release of Agda-2.6.4, I am not merging the release branch back in. It only contains changes that are relevant for the release. The tag v2.6.4 will sit on some leaf three commits away from the trunk. Is there a problem with this approach I have chosen?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well on principle, I don't think we should be making any changes that we don't want to merge back across. Furthermore you're making various improvements to the CI for example right? Bumping versions etc. it would nice if those were added back across. I guess we can cherry-pick them...

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The versions are already bumped in master, the last CI bumps are in:

@@ -6,79 +6,144 @@
#
# haskell-ci regenerate
#
# For more information, see https://github.com/haskell-CI/haskell-ci
# For more information, see https://github.com/andreasabel/haskell-ci
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you explain why we're switching to your own fork? Have to confess I'm a bit reluctant to, unless strictly necessarily. If it necessary, then documentation as to the reason should be added here.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My fork uses the ubuntu-20.04 image rather than the ubuntu-18.04 image which allows it to use the latest version of action/checkout. Otherwise, it is interchangeable, and you could as well regenerate the CI with the original haskell-ci.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And why do we need the latest version of action/checkout?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not needed.
But you might get harassed by dependabot if you don't use it...

If it matters to you, I can install the original haskell-ci and recreate this workflow. But this is anyway just customary CI for 1.7.3 which won't end up in master.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I guess that's my real question! Why are we trying to make a custom CI pass for v1.7.3?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't want to release without having run CI. But I now I am passing the bucket to you, so I make #2141 without CI changes.

@MatthewDaggitt
Copy link
Contributor

CHANGELOG/ is missing changelogs for v1.7 and v1.7.1

Hmm so they're present on master. Not quite sure why they never made it to this branch. I'll copy them from there.

Actually I'm a bit confused about the setup for this whole PR. When I try to checkout andreasabel/release-1.7.3 I end up in a detached head state, but it looks just like an ordinary branch...

@andreasabel
Copy link
Member Author

Actually I'm a bit confused about the setup for this whole PR. When I try to checkout andreasabel/release-1.7.3 I end up in a detached head state, but it looks just like an ordinary branch...

What do you get with gh pr checkout 2132? (You might have to install the gh tool first.)

…-1.7.3-base

Restricting to branch release-1.7.3-base will hopefully stop duplicate
CI runs.
bump to 1.7.3 in
- standard-library.agda-lib
- README.agda
- installation-guide.txt
@MatthewDaggitt
Copy link
Contributor

MatthewDaggitt commented Oct 12, 2023

What do you get with gh pr checkout 2132? (You might have to install the gh tool first.)

Unfortunately I don't have gh installed. Do you have a standard git CLI based command? What are you hoping to see?

@MatthewDaggitt
Copy link
Contributor

@andreasabel would you be free to briefly join the standard library dev ((https://meet.google.com/trh-fpbj-kfi)) meeting at https://time.is/1200_12_Oct_2023_in_UTC today?

@andreasabel
Copy link
Member Author

@andreasabel would you be free to briefly join the standard library dev ((https://meet.google.com/trh-fpbj-kfi)) meeting at https://time.is/1200_12_Oct_2023_in_UTC today?

Yes, thanks for the invitation! I will join, but have only like 50min because of another meeting.

Some objects will get a new name in v2.0.
We add some of these names already here to ease the transition to v2.0:

- add modules `Effect.*` reexporting `Category.*`
- add `IO.Primitive.pure` as alias for `IO.Primitive.return`
@andreasabel
Copy link
Member Author

I added a commit with aliases for forward compatibility as proposed by @jamesmckinna in:

@MatthewDaggitt: I'll make a new PR that does not touch CI.

@andreasabel andreasabel mentioned this pull request Oct 12, 2023
@andreasabel
Copy link
Member Author

andreasabel commented Oct 12, 2023

Superseded by #2141 which does not make an attempt at running it through CI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants