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

Add Linux and MacOS ARM64 support to CI (backport to 0.28.x) #3143

Merged
merged 10 commits into from
Feb 10, 2025

Conversation

gmesm
Copy link
Contributor

@gmesm gmesm commented Feb 2, 2025

This PR is a backport of #3142 to 0.28.x (with the hopes that it gets included before 0.28.4 @neheb release) with minimal changes to not break the version naming scheme of "linux64" even though the master branch has moved away from that scheme. This is to not break any other dependent projects CI that might hardcode or search for "linux64".

See https://github.com/gmesm/exiv2/releases/tag/v0.28.3 and https://github.com/gmesm/exiv2/releases/tag/v0.28.3 for successful release creation

@kmilos kmilos added CI Issues related with CI jobs platforms Cygwin, MinGW, cross-compilation, NetBSD, FreeBSD etc labels Feb 3, 2025
@kmilos kmilos added this to the v0.28.4 milestone Feb 3, 2025
@kmilos
Copy link
Collaborator

kmilos commented Feb 3, 2025

This is to not break any other dependent projects CI that might hardcode or search for "linux64".

I'm personally not bothered about this TBH. These binaries are provided purely for convenience and are in no way any type of commitment/contract/guarantee of level of service... CI should be using a know distribution of exiv2 (native package from repos, conan, wrap, etc.), or bulid from source...

@gmesm
Copy link
Contributor Author

gmesm commented Feb 3, 2025

This is to not break any other dependent projects CI that might hardcode or search for "linux64".

I'm personally not bothered about this TBH. These binaries are provided purely for convenience and are in no way any type of commitment/contract/guarantee of level of service... CI should be using a know distribution of exiv2 (native package from repos, conan, wrap, etc.), or bulid from source...

Sounds good. I can pick the required commits from main to use the new naming. I agree it's cleaner but didn't know if there was any reason to attempt to keep the old naming scheme. I'll ping you when I get around to that.

@kmilos
Copy link
Collaborator

kmilos commented Feb 3, 2025

Shall we fix main packages while at it as well?

os-arch makes more sense than arch-os IMHO...

(I can take of main changes...)

LeoHsiao1 and others added 7 commits February 8, 2025 15:15
Use `64bit` or `32bit` on Windows hosts (including MinGW/Cygwin/MSYS),
the value of `${CMAKE_HOST_SYSTEM_ARCHITECTURE}` on all others.
Always insert into package filename directly after version,
separated from preceding version and following flags with hyphens.

So, e.g.
* `exiv2-1.0.9-Linux64.tar.gz`
* `exiv2-1.0.9-Darwin.tar.gz`
* `exiv2-1.0.9-2019msvc64.zip`
become:
* `exiv2-1.0.9-x86_64-Linux.tar.gz`
* `exiv2-1.0.9-arm64-Darwin.tar.gz`
* `exiv2-1.0.9-64bit-2019msvc.zip`
respectively.
@gmesm
Copy link
Contributor Author

gmesm commented Feb 8, 2025

@kmilos this now picks all the dependent changes from main to 0.28.x

@gmesm gmesm changed the title Add Linux ARM64 support to CI (backport to 0.28.x) Add Linux and MacOS ARM64 support to CI (backport to 0.28.x) Feb 8, 2025
@gmesm
Copy link
Contributor Author

gmesm commented Feb 8, 2025

Copy link

codecov bot commented Feb 8, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 64.68%. Comparing base (f1632fe) to head (e0e09f9).
Report is 104 commits behind head on 0.28.x.

Additional details and impacted files
@@            Coverage Diff             @@
##           0.28.x    #3143      +/-   ##
==========================================
+ Coverage   64.66%   64.68%   +0.01%     
==========================================
  Files         104      104              
  Lines       22169    22241      +72     
  Branches    10839    10887      +48     
==========================================
+ Hits        14335    14386      +51     
- Misses       5590     5604      +14     
- Partials     2244     2251       +7     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Collaborator

@kmilos kmilos left a comment

Choose a reason for hiding this comment

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

LGTM, thanks!

@gmesm
Copy link
Contributor Author

gmesm commented Feb 8, 2025

One of your CI is failing due to not running an apt update before attempting to install packages. github actions ci isn't guaranteed to have the latest apt cache so if ubuntu pushes a new package version attempting to directly install a package will fail (ie: E: Failed to fetch mirror+file:/etc/apt/apt-mirrors.txt/pool/main/g/glibc/libc6-dbg_2.35-0ubuntu3.8_amd64.deb 404 Not Found [IP: 52.252.75.106 80] when the latest version is newer 2.35-0ubuntu3.9).

That is unrelated to this CI and shouldn't block

@kmilos
Copy link
Collaborator

kmilos commented Feb 8, 2025

Thanks, I'll try re-running those a bit later...

@kevinbackhouse
Copy link
Collaborator

That CI issue has just started happening. It's happening on main too. I don't think we changed anything so it must be something that changed in Ubuntu.

@kmilos
Copy link
Collaborator

kmilos commented Feb 9, 2025

Let's merge and release anyway?

@kevinbackhouse
Copy link
Collaborator

Merging this PR is fine, but I'd also like to fix the CI issue and include that in the release.

@gmesm
Copy link
Contributor Author

gmesm commented Feb 9, 2025

That CI issue has just started happening. It's happening on main too. I don't think we changed anything so it must be something that changed in Ubuntu.

I already explained what changed here and how to fix. You were lucky it ever worked. #3143 (comment)

@kmilos
Copy link
Collaborator

kmilos commented Feb 9, 2025

@kevinbackhouse I hope #3158 should do it...

@kmilos kmilos merged commit b1a66ab into Exiv2:0.28.x Feb 10, 2025
55 of 57 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI Issues related with CI jobs platforms Cygwin, MinGW, cross-compilation, NetBSD, FreeBSD etc
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants