packages icon indicating copy to clipboard operation
packages copied to clipboard

glog: Update to 0.7.1

Open uni-dos opened this issue 1 year ago • 8 comments

Fixes #2225.

Summary

  • changelog
  • added homepage
  • build using cmake/ninja

Test Plan

Ensure pspec contains homepage tag

Checklist

  • [x] Package was built and tested against unstable

uni-dos avatar Jul 20 '24 16:07 uni-dos

Resolves https://github.com/getsolus/packages/issues/2225

androidnisse avatar Jul 20 '24 18:07 androidnisse

This change feels weird. Why was the ABI changed from libglog.so.0 to libglog.so.2? If this is intended, this means that we would need to rebuild the following packages:

> rg libglog.so.0 -l --iglob=abi_used_libs
packages/o/opencv/abi_used_libs
packages/py/pytorch/abi_used_libs
packages/py/python-torchaudio/abi_used_libs
packages/c/ceres-solver/abi_used_libs
packages/l/librime/abi_used_libs

GZGavinZhao avatar Jul 27 '24 15:07 GZGavinZhao

I'm not sure why the abi changed. I built glog without looking at the cmake file. The package is also 4 years old, maybe they had to make a change.

uni-dos avatar Jul 27 '24 16:07 uni-dos

According to their 0.7.0 Release note :

Compatibility

glog aims to maintain source compatibility with the previous release. We did our best to ensure such compatibility in this version as well. However, downstream clients must recompile against the new glog version due to ABI incompatible changes.

So, I think the ABI change is intended. That means all revdeps need to be rebuild against this.

malfisya avatar Aug 03 '24 09:08 malfisya

Is this a task that I can do or is it something the Solus team handles?

uni-dos avatar Aug 03 '24 16:08 uni-dos

You can do it if you want. It is necessary for this PR to be merged. All the rebuilds must be included in this PR. If you don't feel like it, that's fine too.

malfisya avatar Aug 03 '24 16:08 malfisya

To check packages that rely on it, do I just run eopkg info glog? Also, if those packages themselves have breaking abi changes, those will need to be rebuilt, correct?

uni-dos avatar Aug 03 '24 16:08 uni-dos

So, in stack rebuild (this is what we call rebuilding revdeps), we usually avoids updating any of the packages to new version. It might get ballooned uncontrolably.

To check what must be rebuild : eopkg info is a good starting point. But sometime a package is only needed at build time, so it is not linked during runtime which eopkg info doesn't show. You can use ripgrep/rg the package repository to find all packages that has glog in the recipe. Or my prefered method, use vscode to search it.

Edit: I just realized Gavin already list all the package that needs to be rebuilt in previous comment.

malfisya avatar Aug 03 '24 16:08 malfisya

Hey @uni-dos have you had time to look at this? If you're not comfortable with the rebuilds, we can put this up for grabs

davidjharder avatar Oct 31 '24 16:10 davidjharder

Sorry about that. I forgot about it and have been busy with school.

uni-dos avatar Oct 31 '24 18:10 uni-dos

I poked at this a bit. Some of the pytorch-ish revdeps were not happy. This will require some extra work. Gonna mark it as draft for now

davidjharder avatar Nov 04 '24 17:11 davidjharder

Fits better here :D

Tried to rebuild against this. Pytorch seems to build with these two patches, I get no build errors but it maxes out my RAM so my computer freezes, and I have 32 GB. So if someone with more RAM wanna test.

https://gitlab.archlinux.org/archlinux/packaging/packages/python-pytorch/-/blob/main/87773.patch?ref_type=heads https://gitlab.archlinux.org/archlinux/packaging/packages/python-pytorch/-/blob/main/glog-0.7.patch?ref_type=heads

androidnisse avatar Jul 07 '25 07:07 androidnisse