Several folks said they find my rawhide posts useful, so I am going to keep doing them for now. They do at least give an idea of what sorts of problems you might run into in rawhide and how to easily debug them.

So, this week there was more broken deps than normal. We had:

  • lbgraph5
  • gcc 4.8.0
  • libgsoap
  • libseccomp
  • icu

All land at some point. We really need to get better at coordinating these. If you (you being the maintainer of the library thats changing ABI) don’t know all the packages that depend on your library, you should. Announcing the change in advance is great, but we should really strive to always rebuild things theĀ SAME DAY as the ABI breaking package is built.

The icu update deserves a special paragraph. This library has a charming feature allowing you to ‘disable-renaming’ meaning it produces a ABI compatible library over so name bumps or anything else for a subset of the consumers of the library. I’m really not sure how this is supposed to work, but in the end it doesn’t. The linux dynamic library SO naming works fine.

Rawhide kernel maintainers have been trying to isolate what debug options in rawhide are causing some people to have slowdowns that make running that kernel unusable. They started out with 0 debug options then have been slowly adding more day to day. I still need to test the most recent one, but overall so far they have continued to be usable. Hopefully we will identify the small options that cause the most problems and can disable those.

There was one serious rpm break that (almost) landed in rawhide. It would have resulted in your rpmdb getting wiped out. Luckily it was detected quickly and we stopped the rawhide compose for that day to prevent it going out to repos. So, lesson there is two fold: have backups, and test your packages as soon as you can so we can stop something really broken going out.