Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 603446 - app-portage/gentoolkit - 'write() argument 1 must be unicode, not str' when using new python revdep-rebuild
Summary: app-portage/gentoolkit - 'write() argument 1 must be unicode, not str' when u...
Status: RESOLVED DUPLICATE of bug 589130
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Tools (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Portage Tools Team
Depends on:
Reported: 2016-12-22 09:10 UTC by David Ross
Modified: 2017-01-01 21:27 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Note You need to log in before you can comment on or make changes to this bug.
Description David Ross 2016-12-22 09:10:32 UTC
Here's a log:

$ sudo revdep-rebuild
 * This is the new python coded version
 * Please report any bugs found using it.
 * The original revdep-rebuild script is installed as
 * Please file bugs at:
 * Collecting system binaries and libraries
	Could not save cache: write() argument 1 must be unicode, not str
 * Checking dynamic linking consistency

Your system is consistent
$ sudo
 * Configuring search environment for revdep-rebuild

 * Checking reverse dependencies
 * Packages containing binaries and libraries broken by a package update
 * will be emerged.

 * Collecting system binaries and libraries
 * Generated new 1_files.rr
 * Collecting complete LD_LIBRARY_PATH
 * Generated new 2_ldpath.rr
 * Checking dynamic linking consistency
[ 100% ]                 

 * Dynamic linking on your system is consistent... All done. 
$ sudo revdep-rebuild --version
revdep-rebuild 0.3.2-r1

The tool itself seems to be completely working, it just doesn't "save the cache". The message is reproducible, by that I mean it happens every time I run revdep-rebuild if I run it multiple times.

If there is any other information I can provide, I will be happy to do so.
Comment 1 Brian Dolbec (RETIRED) gentoo-dev 2016-12-22 15:21:41 UTC
what python version is this happening? Do you have it installed to other python versions?  What happens if you eselect those pythons then run it?
Comment 2 David Ross 2016-12-22 22:25:30 UTC
The error occurs when python2.7 is selected, but not with python3.4.
Comment 3 Zac Medico gentoo-dev 2016-12-22 22:38:01 UTC
The message is slightly different from the one in bug 589130, comment #0, but the patch referenced in that bug is for a write() call:
Comment 4 Volker Wegert 2017-01-01 09:46:30 UTC
I'm seeing the same error message with app-portage/gentoolkit-0.3.2-r1 and Python 2.7.12 on an amd64 system.
Comment 5 Stefano 2017-01-01 13:16:54 UTC
Same thing happening here:

$ emerge --info
Portage 2.3.0 (python 2.7.12-final-0, default/linux/amd64/13.0/desktop/plasma, gcc-4.9.4, glibc-2.22-r4, 4.4.39-gentoo x86_64)
System uname: Linux-4.4.39-gentoo-x86_64-Intel-R-_Core-TM-_i7-4702HQ_CPU_@_2.20GHz-with-gentoo-2.3
KiB Mem:    16403928 total,  11010204 free
KiB Swap:   12597244 total,  12597244 free
Timestamp of repository gentoo: Sun, 01 Jan 2017 13:00:01 +0000
sh bash 4.3_p48-r1
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
ccache version 3.2.4 [disabled]
app-shells/bash:          4.3_p48-r1::gentoo
dev-java/java-config:     2.2.0-r3::gentoo
dev-lang/perl:            5.22.3_rc4::gentoo
dev-lang/python:          2.7.12::gentoo, 3.4.5::gentoo
dev-util/ccache:          3.2.4::gentoo
dev-util/cmake:           3.6.3::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.3::gentoo
sys-apps/openrc:          0.22.4::gentoo
sys-apps/sandbox:         2.10-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1-r1::gentoo
sys-devel/gcc:            4.9.4::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6-r2::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers)
sys-libs/glibc:           2.22-r4::gentoo

    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://
    priority: -1000

    location: /var/lib/layman/steam-overlay
    masters: gentoo
    priority: 0

CFLAGS="-march=native -O2 -pipe"
CONFIG_PROTECT="/etc /etc/stunnel/stunnel.conf /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0 /usr/share/themes/oxygen-gtk/gtk-3.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS=" rsync://"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
USE="X a52 aac acl acpi alsa amd64 archive arts async bash-completion berkdb bindist bluetooth branding bzip2 cairo cardbus cdda cdparanoia cdr cli consolekit cracklib crypt cryptsetup css cups curlwrappers cxx dbus declarative dell dga dhcp directfb djbfft dri dts dvb dvd dvdr emboss encode exif fat fbcon fbsplash fftw firefox flac foomaticdb fortran fpx ftp gdbm gif glamor glibc-omitfp gnutls gphoto2 gpm gs gtk gzip hpn hybrid-auth iconv icq idea ieee1394 imagemagick imap ios ipod iproute2 ipv6 irda jabber javascript john jpeg jpeg2k kde kipi kpathsea lapack laptop lcdfilter libnotify lilo lm_sensors mad mbox messages mime mmap mmx mmxext mng modules mozilla mp3 mp4 mpeg mplayer msn multilib mysqli nagios-dns ncurses nls nocd nptl nsplugin ntfs ntlm nvidia octave ogg opengl optimization optimized-qmake oscar pam pango pcapnav pcmcia pcntl pcre pda pdf perl phonon plasma png policykit posix ppds pulseaudio python qml qt3support qt4 qt5 radius rdesktop readline replytolist samba scanner seccomp semantic-desktop session sharedmem silc slp sms sockets sox spell sse sse2 sse3 sse4 sse4_1 sse4_2 sse4a ssl ssse3 startup-notification svg sysfs sysvipc tcpd threads tiff truetype udev udisks unicode upower usb userlocales v4l v4l2 vcd vorbis widgets wifi winbind wps wxwidgets x264 xcb xcomposite xinerama xml xmlrpc xscreensaver xv xvid xvmc yahoo zlib" ABI_X86="64" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev synaptics mouse keyboard v4l" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby21" USERLAND="GNU" VIDEO_CARDS="intel nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Comment 6 Brian Dolbec (RETIRED) gentoo-dev 2017-01-01 17:53:52 UTC
Please test gentoolkit-0.3.3 to see if it fixes the write() problem for you.
Comment 7 Zac Medico gentoo-dev 2017-01-01 20:54:22 UTC
To install gentoolkit-0.3.3 on a stable system, you should create a setting like this in /etc/portage/package.accept_keywords:

=app-portage/gentoolkit-0.3.3 ~amd64

There's some more info here:
Comment 8 Volker Wegert 2017-01-01 21:08:03 UTC
app-portage/gentoolkit-0.3.3 appears to resolve the issue on my amd64 system with Python 2.7.12 - at least the message is gone.
Comment 9 Zac Medico gentoo-dev 2017-01-01 21:27:21 UTC

*** This bug has been marked as a duplicate of bug 589130 ***