It's possible to emerge girara-0.1.6-r200 and 0.1.5-r300 at the same time, but it leads to a wrong combination of headers and libraries. (Under this situation, building app-text/zathura-0.2.3 fails.) It's quite probable that splitting into slots is wrong. Maybe IUSE="gtk2 gtk3" or forcing only one of gtk2 and 3 solves. (Read: I guess you'll receive less bug reports, so less annoyed. Longer description: I had a quick browse of bug 454358 and bug 374057, but I'm not convinced that slotting is correct. When developers decide to delete IUSE and settle to gtk3, it's ok, and that's all, no? It's likely that reporters tend to think slots of girara are wrong, or at least weird. How about forcing gtk2 for now, since anyway zathura is built against girara:2 ? You can later mask gtk2-based girara anytime.) Thanks beforehand.
Please define one single issue very clearly and then reopen this bug report.
Bug definition: dev-libs/girara-0.1.6-r200 has to depend on 0.1.6-r300, NOT on 0.1.5-r300. Currently girara-0.1.6-r200 and 0.1.5-r300 can be emerged at the same time, but it results in the coexistence of contradictory libraries and headers. The rest is my opinion. Let me propose one thing: If developers decide to keep 2 slots, ok, I respect you, but please write somewhere "Slot 2 and 3 build gtk2- and gtk3-dependent libraries. As soon as slot 3 is stabilized, slot 2 will be removed." Users wonder the reason of these peculiar slotting and dependency upon "emerge -a". Without proper communication, it cannot be a group project, but remains a mere personal property. ;-) (Even for your personal project, you can't remember all of your own codes and decisions. Inadequacy of logs and/or visible messages is a lack of expertise.) Cheers.
I have placed the gist of your description in the summuary; in the future, please expand with details in the description instead of matters that distracts from the problem, suggestions are best documented in a separate comment or bug. Thank you.
Created attachment 352158 [details] Build log from zathura when girara-0.1.6 is installed, as required by zathura, but its header files do not exist Build log of a failed zathura build: - Both girara 0.1.5 and 0.1.6 are installed at the same time, but 0.1.6 does not install any header files (and if it did, it would still be a problem, as both ebuilds seem to try to install these to /usr/include): $ grep include /var/db/pkg/dev-libs/girara-0.1.6-r200/CONTENTS dir /usr/include - But girara 0.1.5 installs header files: $ grep include /var/db/pkg/dev-libs/girara-0.1.5-r300/CONTENTS dir /usr/include dir /usr/include/girara obj /usr/include/girara/commands.h 3d1f667b53ffa3fb0543ec52cabe4930 1372319138 obj /usr/include/girara/girara.h 8b782e4e2f87fcf30d550a63c7f58c82 1372319138 [...] - As girara 0.1.6 is installed, this satisfies DEPEND for zathura, and thus no girara upgrade is forced, but the zathura build fails because there are no header files for girara 0.1.6.
+ 07 Aug 2013; Samuli Suominen <ssuominen@gentoo.org> girara-0.1.5-r200.ebuild, + girara-0.1.6-r200.ebuild: + Force matching version of library and headers wrt #474604 by "teika"
Argh. This is absolutely wrong approach, it forces gtk3 on everyone for no good reason. Instead headers should be split out to separate package and depended on properly. Currently zathura supports both gtk2 and gtk3. I propose putting gtk3 useflag on it and altering ZATHURA_GTK_VERSION accordingly, same with dependencies. Jumanji indeed requires gtk3 version, through it's webkit-gtk dependency. I don't know of any other programs using this library. The change should be quite simple. For reference, here's how arch builds the separate girara-common packages: https://projects.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/girara