-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
pkgin changes behavior if output is a tty or not, breaks Ansible #46
Comments
I believe this is also causing trouble for anyone using Chef (it certainly is for my org). |
I've worked around this in pkgsrc ansible for now, so that we have a working ansible package for 2015Q2: http://mail-index.netbsd.org/pkgsrc-changes/2015/06/25/msg126311.html As this pkgin behaviour has been in a few branches now I think we have no choice but to support both types of output in programs that parse it, as I've done above. However I'd still like to see this fixed as it's bound to catch other people out when they switch from e.g. It's also worth noting that ';' as a delimiter isn't ideal, as there are a few packages which include semicolons in their $ git grep "^COMMENT=[^#]*\;"
chat/gg2/Makefile:COMMENT= Instant messenger software for Poland; Jabber plugin included
devel/bcc/Makefile:COMMENT= Bruce Evans' C compiler (with as and ld); can do 16-bit code
devel/p5-Dist-Zilla/Makefile:COMMENT= Perl 5 module distribution builder; installer not included
games/crossfire-client-gtk/Makefile:COMMENT= Multi-player graphical arcade and adventure game; GTK client
games/crossfire-client-gtk2/Makefile:COMMENT= Multi-player graphical arcade and adventure game; GTK2 client
games/crossfire-client/Makefile:COMMENT= Multi-player graphical arcade and adventure game; X11 client
graphics/tkpiechart/Makefile:COMMENT= Tcl/Tk pie-chart utility; in Tcl, not as an extension
security/hs-digest/Makefile:COMMENT= Various cryptographic hashes for bytestrings; CRC32 and Adler32
security/libssh/Makefile:COMMENT= SSHv2+v1 protocol library; libssh.org version ${VER}
www/bozohttpd/Makefile:COMMENT= Bozotic HTTP server; small and secure
x11/xless/Makefile:COMMENT= X11 text viewer; useful as an add-on tool for other apps so anything which does split(';') or similar is not guaranteed the same size output array each time. |
- pkgin changed its output delimiter from a space to ';' when outputting to a non-tty, breaking various configuration management systems which relied on the previous behaviour. Handle both types in ansible until NetBSDfr/pkgin#46 is resolved. - OS X 10.10 changed the behaviour of sysctl(8) to hide certain entries unless they are explicitly named. Apply patch to fix hw.model and hw.usermem from https://github.com/ansible/ansible/pull/8171/files Clean up patches while here. Bump PKGREVISION.
Fixed in 1f9e65f and released in 0.9.0 (now in pkgsrc). |
super nice! thanks! |
when the '-p' flag was added (a good thing!), a change was also made to have this if output is not a tty.
This breaks (among other things, probably) pkgin's usage in ansible. (See
ansible/ansible-modules-extras#316? for more details)
in other words: to support future tools better, you broke existing tools :(
I'm not certain whether switching back is a good thing or not at this point; it's worth pointing out that this affects all versions of ansible from 1.7 to 1.9.1 - ansible 1.6.3 (which is the current version in pkgsrc) has more limited pkgin support, and doesn't break in this particular way (but it breaks in other ways, which were fixed in newer ansible, at least until pkgin broke it entirely)
The text was updated successfully, but these errors were encountered: