I would like to be able to enter a package range or specific version in the world file, rather than having an update world search for the newest package. E.g. I would like to be able to specify that I want exactly cups-1.1.20-r1 on my system instead of the newest version of cups. This is useful because sometimes a new version of a package has a bug or a feature I don't want, but I still want to be able to have it intalled and also prevent it from being updated while having most of my packages updated to the newest version on a regular basis. The portage manual seems to suggest this feature is already available when it states "You can also add entries to the world file in the form of ranges of packages". But I put the line: net-print/cups-1.1.20-r1 in world and ran: emerge --update --ask --deep --verbose world and it was trying to update it past 1.1.20-r1. If this behaviour is incorrect, then I guess that would make this a bug rather than an enhancement. Reproducible: Always Steps to Reproduce: 1. 2. 3.
Adding >net-print/cups-1.1.20-r1 to /etc/portage/package.mask is what you are after. The portage(5) man page describes all the different configuration files. I know that "pinning" packages in the world file is no longer supported, but I'm not sure where this bug should go so I'll leave it open for the time being.
OK, thanks, sorry I didn't read all the manuals, but it's hard to keep track of them all. At least we know now there might be an error in the documentation (although I noticed that the Portage Manual, where I got the information, said it's now been obsoleted and the Gentoo Handbook replaced it, which is strange because the Gentoo Handbook doesn't have all the information in the Portage Manual).
This is covered in Part 3 of the Handbook (http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=3), more specifically at http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=3&chap=3#doc_chap3_sect2