[Unstable Update] April 2024 Edition

9 posts were split to a new topic: Are rebuilt python packages being synced/replaced on the go?

:point_up:

2 Likes

I havent done much.
But seems to have gone off fine.
Reboot, login, and browser all work well. :slight_smile:

1 Like

:sos: My previous personal experience:
About a year ago I broke my OS by making it un-bootable by installing partial python packages updates (all that server provides at that time). I did not read the unstable thread first. It took me pure several hours to fix it but during some long period of time.

:exclamation: The problem:
a) Frequent (1-2 times a day) updates (as unstable branch usually provides) are not highly compatible with constant daily reading of the unstable thread prior each update to make.
Having updates 1-2 times a day it is unreal to check unstable thread first each time prior an update just in order to read predictable/awaited breaks of the OS, which could be prevented by improving maintenance of the unstable update method.
b) Moreover, updates by portions could lead to problems a days after it fixed by package maintainers: there are may be a servers which got only half of packages rebuilds and then they could break self-sync for a 1-2 of more days and nevertheless a user see a maintainerā€™s post that it is alright to update now, user still donā€™t know are their server(s) are synced fully with all portions of python packages or not.

All two items are problems.

:white_check_mark: Possible solution:
Instead of pushing python-rebuild packages partially into end-user branch (unstable) may be better to create a temp internal branch (for example pre-unstable or any other) and to push any package portion count, any number of days it takes to prepare major part of python packages need to be rebuilt, and only then it is ready - to merge/push bunch of all major packages of that temp branch into the end-user unstable branch.

That solution covers problems (a) and (b). But may be there are more suitable/comfortable solutions for maintainers.


I canā€™t see an option to start a poll to realize am I alone who lacks the single time push of all major python packages rebuilt into unstable branch or not.
I suggest to
{vote for some intermediate stuff and only if it is ready to push that package bunch into unstable}
or
{vote against some intermediate stuff}
by using thumb up/thumb down marks on this message.

Thank you for taking part in the discussion of that my (as end-user of unstable branch) problem!

All Arch rebuilds were already done and moved from Arch Testing to Arch Stable today mostly all at once. I then synced all of them (almost 3,000 packages) to Manjaro Unstable.

The Manjaro package rebuilds are pushed to the main server as they are built. Some are pushed sooner than others for other packages that require them to build, etc. Then itā€™s up to the mirrors to sync. Itā€™s up to the user to make sure they are using up to date mirrors.

Preliminary testing no issues here. :slightly_smiling_face:

Updates
[2024-04-27T17:11:23-0500] [ALPM] upgraded gcc-libs (13.2.1-5 -> 13.2.1-6)
[2024-04-27T17:11:23-0500] [ALPM] upgraded libcap-ng (0.8.5-1 -> 0.8.5-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded util-linux-libs (2.40-2 -> 2.40-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded audit (4.0.1-2 -> 4.0.1-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded libseccomp (2.5.5-2 -> 2.5.5-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded util-linux (2.40-2 -> 2.40-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded brotli (1.1.0-1 -> 1.1.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded android-udev (20231124-1 -> 20240221-1)
[2024-04-27T17:11:24-0500] [ALPM] installed mpdecimal (4.0.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python (3.11.8-1 -> 3.12.3-1)
[2024-04-27T17:11:24-0500] [ALPM] upgraded apparmor (3.1.7-1 -> 3.1.7-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded glib2 (2.80.0-2 -> 2.80.0-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded avahi (1:0.8+r194+g3f79789-1 -> 1:0.8+r194+g3f79789-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded blas (3.12.0-3 -> 3.12.0-5)
[2024-04-27T17:11:24-0500] [ALPM] upgraded boost-libs (1.83.0-5 -> 1.83.0-6)
[2024-04-27T17:11:24-0500] [ALPM] upgraded btrfs-progs (6.8-2 -> 6.8-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded dbus-python (1.3.2-2 -> 1.3.2-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded xcb-proto (1.17.0-1 -> 1.17.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python-cairo (1.26.0-1 -> 1.26.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded libgirepository (1.80.1-1 -> 1.80.1-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded gobject-introspection-runtime (1.80.1-1 -> 1.80.1-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python-gobject (3.48.1-2 -> 3.48.2-1)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python-ptyprocess (0.7.0-5 -> 0.7.0-6)
[2024-04-27T17:11:24-0500] [ALPM] upgraded python-pexpect (4.9.0-1 -> 4.9.0-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded libxml2 (2.12.6-1 -> 2.12.6-2)
[2024-04-27T17:11:24-0500] [ALPM] upgraded llvm-libs (17.0.6-2 -> 17.0.6-3)
[2024-04-27T17:11:24-0500] [ALPM] upgraded catfish (4.18.0-1 -> 4.18.0-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gcc (13.2.1-5 -> 13.2.1-6)
[2024-04-27T17:11:25-0500] [ALPM] upgraded clang (17.0.6-1 -> 17.0.6-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded cpupower (6.7-2 -> 6.7-3)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gpgme (1.23.2-1 -> 1.23.2-4)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gstreamer (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-plugins-base-libs (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded libplacebo (6.338.2-4 -> 6.338.2-6)
[2024-04-27T17:11:25-0500] [ALPM] upgraded vapoursynth (R66-1 -> R66-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded imath (3.1.11-1 -> 3.1.11-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-libav (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-plugins-bad-libs (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded lilv (0.24.24-1 -> 0.24.24-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded zbar (0.23.90-3 -> 0.23.93-1)
[2024-04-27T17:11:25-0500] [ALPM] upgraded libxslt (1.1.39-1 -> 1.1.39-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-plugins-bad (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:25-0500] [ALPM] upgraded gst-plugins-base (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libcaca (0.99.beta20-2 -> 0.99.beta20-4)
[2024-04-27T17:11:26-0500] [ALPM] upgraded gst-plugins-good (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded gst-plugins-ugly (1.24.1-2 -> 1.24.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded tdb (1.4.10-2 -> 1.4.10-3)
[2024-04-27T17:11:26-0500] [ALPM] upgraded hexchat (2.16.2-1 -> 2.16.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded lapack (3.12.0-3 -> 3.12.0-5)
[2024-04-27T17:11:26-0500] [ALPM] upgraded talloc (2.4.2-1 -> 2.4.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded tevent (1:0.16.1-2 -> 1:0.16.1-3)
[2024-04-27T17:11:26-0500] [ALPM] upgraded ldb (2:2.9.0-2 -> 2:2.9.0-3)
[2024-04-27T17:11:26-0500] [ALPM] upgraded lensfun (1:0.3.4-3 -> 1:0.3.4-4)
[2024-04-27T17:11:26-0500] [ALPM] upgraded lib32-gcc-libs (13.2.1-5 -> 13.2.1-6)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded volume_key (0.3.12-8 -> 0.3.12-9)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-crypto (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libbytesize (2.8-2 -> 2.8-3)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-fs (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-loop (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-mdraid (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libnvme (1.8-1 -> 1.8-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-nvme (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-part (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libblockdev-swap (3.1.1-1 -> 3.1.1-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libftdi (1.5-5 -> 1.5-6)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libgexiv2 (0.14.2-1 -> 0.14.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libgusb (0.4.8-1 -> 0.4.8-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libplist (2.4.0-1 -> 2.4.0-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libimobiledevice (1.3.0-11 -> 1.3.0-13)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libixion (0.19.0-1 -> 0.19.0-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libnewt (0.52.24-1 -> 0.52.24-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded liborcus (0.19.2-1 -> 0.19.2-2)
[2024-04-27T17:11:26-0500] [ALPM] upgraded libpwquality (1.4.5-3 -> 1.4.5-5)
[2024-04-27T17:11:27-0500] [ALPM] upgraded libreoffice-still (7.6.6-2 -> 7.6.6-3)
[2024-04-27T17:11:27-0500] [ALPM] upgraded libwbclient (4.20.0-2 -> 4.20.0-3)
[2024-04-27T17:11:27-0500] [ALPM] upgraded lightdm-gtk-greeter-settings (1.2.3-1 -> 1.2.3-2)
[2024-04-27T17:11:27-0500] [ALPM] upgraded lirc (1:0.10.2-3 -> 1:0.10.2-4)
[2024-04-27T17:11:27-0500] [ALPM] upgraded llvm (17.0.6-2 -> 17.0.6-3)
[2024-04-27T17:11:27-0500] [ALPM] upgraded python-charset-normalizer (3.3.2-1 -> 3.3.2-2)
[2024-04-27T17:11:27-0500] [ALPM] upgraded python-idna (3.6-1 -> 3.6-2)
[2024-04-27T17:11:27-0500] [ALPM] upgraded python-urllib3 (1.26.18-1 -> 1.26.18-3)
[2024-04-27T17:11:27-0500] [ALPM] upgraded python-requests (2.31.0-1 -> 2.31.0-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-npyscreen (4.10.5-8 -> 4.10.5-9)
[2024-04-27T17:11:28-0500] [ALPM] upgraded pacman-mirrors (4.24.1-1 -> 4.24.1-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded manjaro-application-utility (1.3.3-10 -> 1.3.3-11)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-psutil (5.9.8-1 -> 5.9.8-4)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-pyxdg (0.28-2 -> 0.28-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded menulibre (2.4.0-1 -> 2.4.0-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded mugshot (0.4.3-5 -> 0.4.3-6)
[2024-04-27T17:11:28-0500] [ALPM] upgraded nftables (1:1.0.9-1 -> 1:1.0.9-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded protobuf (25.3-3 -> 25.3-4)
[2024-04-27T17:11:28-0500] [ALPM] upgraded qt6-base (6.7.0-2 -> 6.7.0-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded shiboken6 (6.7.0-3 -> 6.7.0-5)
[2024-04-27T17:11:28-0500] [ALPM] upgraded pyside6 (6.7.0-3 -> 6.7.0-5)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-docopt (0.6.2-12 -> 0.6.2-13)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-keyutils (0.6-9 -> 0.6-10)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-pycups (2.0.4-1 -> 2.0.4-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-pycurl (7.45.2-3 -> 7.45.2-4)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-systemd (235-2 -> 235-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded python-yaml (6.0.1-2 -> 6.0.1-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded redshift (1.12-8 -> 1.12-11)
[2024-04-27T17:11:28-0500] [ALPM] upgraded smbclient (4.20.0-2 -> 4.20.0-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded samba (4.20.0-2 -> 4.20.0-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded system-config-printer (1.5.18-2 -> 1.5.18-3)
[2024-04-27T17:11:28-0500] [ALPM] upgraded thunarx-python (0.5.2-4 -> 0.5.2-5)
[2024-04-27T17:11:28-0500] [ALPM] upgraded udiskie (2.5.2-1 -> 2.5.2-2)
[2024-04-27T17:11:28-0500] [ALPM] upgraded ufw (0.36.2-3 -> 0.36.2-4)

Moderator edit: In the future, please use proper formatting: [HowTo] Post command output and file content as formatted text

Check again - we just got kernels :wink:

@alven please use testing branch, as that is aimed for end-users who want to have newer packages. unstable is our staging area and known to be broken. Donā€™t use unstable on productive machines as it may break by rebuild tasks like python. Only use unstable when you want to support testing the packages and report back missing rebuilds of packages.

sudo pacman -S manjaro-check-repos

Sync unstable after Arch updates to Python 3.12, then see what needs to be rebuilt:

sudo mbn update --files --unstable
mbn files ā€œusr/lib/python3.11ā€ --unstable | grep ā€˜::ā€™

4 Likes

Manjaro is doing it again for our loved unstable branch :crying_cat_face:

Medmedin, by answering on my suggestion to create an pre-unstable branch for internal usage before to share packages to end users, Philm said that staging role is already taken by unstable branch.
So: unstable is internal staging branch dedicated to experiments by the Manjaro Team, including partial updates.

As noted in the problem description, the partial updates state could reach the unstable not only by pushing each package after it was rebuild is ready (described part (a)), but after sudden pause of self sync of any server sharing branch updates, which could stop/hang in that partial update state for several hours and days (described part (b)).

Based on that, I can conclude, that unstable is internal staging branch of Manjaro Team, which just is shared to any user that want to use that branch dedicated to internal Manjaro Team use and easily could reach and - cause update server does not updates immediately and could hung up - to save the broken state for some period of time.
Moreover, properly/safer usage of the unstable branch is to read the forumā€™s unstable thread each time prior to update.

Medmedin, as you did, I also previously thought that there 3 waves (branches) of package updates dedicated for end users:
unstable,
testing,
stable.

But after Markā€™s and Philipā€™s posts I concluded that there are only 2 dedicated for end users:
testing,
stable.
And unstable is used as internal staging branch of Manjaro Team, which is free to join by any user, just shared widely but architecturally designed to be dedicated for internal usage of Manjaro Team as staging branch with partial packages updates (as each single package got rebuild and is ready - it immediately pushes into unstable). So server self-sync easily could act inside of that rebuild period and share to end users the partial update state.

But if we talk about prevention of getting partial packages update state (at least after python updates), we should use the testing or stable as having packages update states as settled down / staged / always fully ready to update (all queued packages to rebuild are done and always ready to update) - to have almost all bunch of package rebuilds at once.

Thatā€™s how the part (a) and part (b) of my problem getting solved in the Manjaro OS infrastructure.

Thanks, now I got it. Switched to first wave of new packages dedicated for end users (the testing branch).

1 Like

Depending on which packages you are using.
If you use a lot of installed Manjaro packages and Manjaro Kernel (they are built by Manjaro), youā€™d better switch to the testing branch.

Check what Manjaro package you use using:

$ grep -lzi 'manjaro' /var/lib/pacman/local/*/desc | cut -d/ -f6

The output shows which installed packages are built by Manjaro only.


I donā€™t have many problems with the unstable branch so far, because I use very few Manjaro packages for example: grub, systemd, pacman and mesa ā€¦ they are built by Manjaro and do not use Python dependencies.
The rest many installed packages (unstable branch) are the same as those from Arch stable branch. They are simply copied 1:1 from Arch mirror to Manjaro unstable branch. They work without any problems in my experience.

In the unstable branch, I am very cautious about Manjaro bleeding edge kernels that have not been tested by Arch team and Manjaro team, but they are tested or used directly by you and Manjaro team first. For this reason, I use my own ā€œstableā€ Kernels.
Of course, a bad bleeding edge Kernel can destroy your data if a filesystem has new critical bugs and its testing is not enough.

1 Like

It seems what is unstable in Unstable branch are what is modified by Manjaro. Well, for now I will stick with it, and see what to do.

@alven

Unstable branch is where everything enters the Manjaro eco-system.

If you are using unstable branch - you are offering yourself as test-rabbit - but you can use it as an ā€˜end-userā€™.

If you want to consider yourself as ā€˜end-userā€™ - I have said this before - disable update checkers - schedule your updates to e.g. once a week or twice a week - what suits you.

There is only this monthly announcement for packages added or updated in unstable - offering the members to option to report their issues - if one encounter a deal breaker.

As you can see from the discussion - there is a process which will streamline the release cadence with automated releases.

1 Like

Erā€¦ what? The Manjaro Team uses the unstable branch and of course tests them. I do most of the packaging, so Iā€™m always up to date before anyone else is.

@alven Well, based on your feedback @philm has moved Unstable Updates from Announcements to Manjaro Development. :man_shrugging:

2 Likes

Itā€™s really not a good move, some Manjaro users adopt unstable branch for daily usage to get the stability ensured from Arch stable repo, plus fixing the compatibility with AUR packages which Manjaro testing and stable branches canā€™t and will never be able to solve.

So, by labelling Unstable under development tag, no sane user (except Manjaro devs) will attempt to adopt a dev branch for daily usage.

3 Likes

Thanks for the feedback. Iā€™ll discuss it with @philm.

3 Likes

Sorry, I corrected my post.

Inappropriate: this method postpones security updates also, which is not nice.
May be is it only me who is crazy and realize only now that unstable is staging branch with possibility to reach partial update state by design (by package flow/way). Only now I realized that and moved to testing. Thanks, Frede!

Checked this, thx! If to talk about the scheme in the initial post of linked issue thread, I see that the edge branch gets packages after packages became settled down/ā€œstabilizedā€. Thatā€™s what I previously always expect from unstable branch - to get whole bunch of python updated packages at once, not one by one as rebuild is done as unstable get.

Yeah, Mark, directly after your post I checked and saw that also. Some time later unstable was moved back.
May be it is good to ignore just a single crazy ideas (like mine) cause perhaps only a few persons thinks that unstable should be more stable (to receive all python packages as bunch - at once to prevent partial updates w/o checking forum thread before each update).

Thanks!

unstable has always been the place where everything enters Manjaro.

Yes - there is occasional glitches - if you were using Arch :man_shrugging: - I have used Manjaro unstable since late 2016 - yes occasional gliches occur - but you know that on unstable - nothing new.

If you perceive Manjaro unstable - more or less equals Arch stable - you also know that - unstable is as stable as the user makes it.

If you donā€™t like it - there is nothing I - or anyone else - can say ā€¦ but you are barking up the wrong tree.

4 Likes