archlinux-downgrade / downgrade

Downgrade packages in Arch Linux
GNU General Public License v2.0
570 stars 24 forks source link

Makefile patches #131

Closed pbrisbin closed 4 years ago

pbrisbin commented 4 years ago

Following up from https://github.com/pbrisbin/downgrade/pull/130#issuecomment-670925268, I'd like to see @atreyasha handle the next release.

I added you as co-maintainer in the AUR. For release, I typically do the following:

  1. Ensure translation files are all set
  2. Ensure CHANGELOG.md is correct
  3. Run make release.patch (in this case)

The release task relies on two other pieces of tooling:

I apologize it's not quite as polished and there are a few desperate parts to this. Please do feel free to use (or create) your own process, I just wanted to make you aware of the tooling I had in case it's useful.

Any questions, let me know!

atreyasha commented 4 years ago

Awesome, thank you. I got the notification for the AUR as well. Your tools are very helpful and I sourced/adapted them before for another AUR project.

Quick question: Do I have permissions to commit directly to master for the release? Last I checked, it was a protected branch and I was not allowed to commit directly.

pbrisbin commented 4 years ago

Ah good point! You're right, you can't currently push directly to mater.

Let me know if you have any others, but I think our options are:

  1. Make you an Admin on the repository, so you can commit around branch protection
  2. Remove branch protection
  3. Make all changes (including version bump and CHANGELOG) via PRs

I don't want to do (2) if we can avoid it. After a few releases, I think we could do (1), but maybe not yet. So how about (3) for now?

This means I'd have to Approve your PR that finalizes the release (not necessarily a bad thing for now), then you would merge the PR, create the tag, and proceed with the AUR repository update. I think you'll be able to create tags, even with the branch protection in place and your current non-admin status.

atreyasha commented 4 years ago

Makes sense to do (3) for the next few releases so I can get the hang of things, then we could do (1) in the future. Will open the (release) PR soon.

atreyasha commented 4 years ago

So it all worked. For future releases, we can follow the same procedure:

  1. Open a PR for the changelog/locales
  2. Merge to master
  3. Run make release.*, which will push tags directly to master and push a new commit to the AUR.

Just some comments based on my fiddling around with Makefile in the last 30 mins:

  1. https://github.com/pbrisbin/downgrade/blob/a2a9b23402f9fce86157c5e3e0792d5936474c87/Makefile#L62

Can I change this to .PHONY: release.patch?

  1. https://github.com/pbrisbin/downgrade/blob/a2a9b23402f9fce86157c5e3e0792d5936474c87/Makefile#L73

As per the syntax aur-release VERSION [NAME] [FILE, ...] here, should this be aur-release $(AUR_RELEASE_OPTIONS) "$(VERSION)" downgrade? I had to do that during this release as the current syntax resulted in an error.

  1. When executing aur-release, I encountered a no-command-found error for mksrcinfo here. I tried aliasing it but it did not help. Is there something I am missing? I circumvented it by modifying the source code of a localized aur-release installation; specifically changing mksrcinfo to makepkg --printsrcinfo > .SRCINFO.

Update:

  1. https://github.com/pbrisbin/downgrade/blob/a2a9b23402f9fce86157c5e3e0792d5936474c87/Makefile#L6-L10

Should we add aur-release-git as a dependency here? Maybe we could modify the target name here to something that indicates that these are dependencies for developing this repository; maybe something like devdeps?

pbrisbin commented 4 years ago

Nice!

So, I completely forgot that aur-release used to be its own repository with an AUR package. I've actually been using a script just in my dotfiles: https://github.com/pbrisbin/dotfiles/blob/master/local/bin/aur-release. It has a lot of the fixes you're talking about here.

To your comments:

  1. :man_facepalming: yeah, please fix :)
  2. See above
  3. See above
  4. See above. We would need to move my newer script back to that repository that backs the AUR package -- which I think makes a lot of sense! Alternatively, we could just check which aur-release and error -- rather than auto-installing.

Very sorry about the confusion on that, I don't even know how I ended up in this state.

pbrisbin commented 4 years ago

FYI, I pushed a new version of https://github.com/pbrisbin/aur-release and will soon remove my dotfiles script. Sorry about that!

atreyasha commented 4 years ago

Hey man! Sorry for the late response, was travelling the last few days. No worries at all, I thought that was the case as well :) Perfect, will install the latest version. Also, will include a fix for line 62 of our local Makefile (and other comments) with a separate PR.

pbrisbin commented 4 years ago

As far as I can tell, everything mentioned here has been addressed. Closing! :clap: