old_tree_timestamp: fix UnicodeDecodeError (530982)

Use _unicode_decode to safely decode bytes returned from time.strftime
for python-2.x (_unicode_decode allows unicode to pass through for
python-3.x).

X-Gentoo-Bug: 530982
X-Gentoo-Url: https://bugs.gentoo.org/show_bug.cgi?id=530982
Acked-by: Brian Dolbec <dolsen@gentoo.org>
_pkg_use_enabled: return frozenset (531112)

Since commit 9ba4f2aa6a2755a73fb652b4557919047d649fd1, _pkg_use_enabled
needs to consistently return a frozenset, so that the result is
hashable.

Fixes: 9ba4f2aa6a27 ("_slot_operator_update_probe: memoize use_reduce (529660)")
X-Gentoo-Bug: 531112
X-Gentoo-Url: https://bugs.gentoo.org/show_bug.cgi?id=531112
Acked-by: Brian Dolbec <dolsen@gentoo.org>
emerge: warn about @installed, don't deprecate (387059)

The @installed set may have some legitimate uses. Therefore, change
the deprecation warning to a warning about unsolved blockers. The
warning will now appear as follows:

 * The @installed set is not recommended when updating
 * packages because it will often introduce unsolved blocker
 * conflicts. Please refer to bug #387059 for details.

X-Gentoo-Bug: 387059
X-Gentoo-Url: https://bugs.gentoo.org/show_bug.cgi?id=387059
Acked-by: Brian Dolbec <dolsen@gentoo.org>
ebuild.sh: force fresh env for pkg_setup (528274)

In ebuild.sh, $T/environment is loaded for most phases, but it should
always start with a fresh environment for pkg_setup. Therefore, skip
environment loading for pkg_setup, and force the ebuild to be sourced.

This also requires a change in the config.environ method, in order
to ensure that the calling environment is inherited by pkg_setup
(even though $T/environment may exist).

X-Gentoo-Bug: 528274
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=528274
Acked-by: Brian Dolbec <dolsen@gentoo.org>