From owner-freebsd-pkg@FreeBSD.ORG Fri Jan 31 09:35:39 2014 Return-Path: Delivered-To: freebsd-pkg@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 94FBBA2B for ; Fri, 31 Jan 2014 09:35:39 +0000 (UTC) Received: from mail-vb0-x22c.google.com (mail-vb0-x22c.google.com [IPv6:2607:f8b0:400c:c02::22c]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 53AC61D8D for ; Fri, 31 Jan 2014 09:35:39 +0000 (UTC) Received: by mail-vb0-f44.google.com with SMTP id f12so2738755vbg.17 for ; Fri, 31 Jan 2014 01:35:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:from:date:message-id:subject:to:content-type; bh=++W4u0nfBkQTb125RZexZOHjpa4reOLG849X2pSaau4=; b=zI4F0CCwrLndZAy9nZDBFerxD1UP9fIAa6BL3ROccO/MRXl5ZCjvZalh2JKEBQK6L8 VQL6qQiJTSSKEn44fMuMvF9K528nlVm2nY1ehzmOAMSTIThgM/iByThiG+6NrdDMWmmM CzSSVyc80vwYQoHuzGOA5fkxY3qZYCg5z7VABTJKCnbZNL5FYEe24l7SXkOOYH7TwLLZ 8MWDJZ4fS1e6osTtKQWdZ8TSjkz+WKG8do3M5wxeQ51X6rsrRWWUKB00vUP7Eh5nsyV+ KDVfGXlTk24P9qsePqX/QysSRaBrVAt851cjJsG/T9JCHAAKtvpM2ZBGbzbn8HQanQE6 sD0w== X-Received: by 10.52.155.66 with SMTP id vu2mr85448vdb.50.1391160938335; Fri, 31 Jan 2014 01:35:38 -0800 (PST) MIME-Version: 1.0 Sender: ivoras@gmail.com Received: by 10.58.171.42 with HTTP; Fri, 31 Jan 2014 01:34:57 -0800 (PST) From: Ivan Voras Date: Fri, 31 Jan 2014 10:34:57 +0100 X-Google-Sender-Auth: d_Gd3Mzzo7qmGn8Uee8NB7Dvzcg Message-ID: Subject: Upgrading sets of packages? To: freebsd-pkg@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-pkg@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Binary package management and package tools discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 09:35:39 -0000 Hello, An example of a very common operation I have to do is to upgrade PHP. Here's what I have one one of my machines: # pkg info -q | grep php php5-5.3.8 php5-bcmath-5.3.8 php5-bz2-5.3.8 php5-ctype-5.3.8 php5-curl-5.3.8 php5-dom-5.3.8 php5-exif-5.3.8 php5-extensions-1.6 php5-fileinfo-5.3.8 php5-filter-5.3.8 php5-ftp-5.3.8 php5-gd-5.3.8 php5-hash-5.3.8 php5-iconv-5.3.8 php5-json-5.3.8 php5-ldap-5.3.8 php5-mbstring-5.3.8 php5-mcrypt-5.3.8 php5-mysql-5.3.8 php5-mysqli-5.3.8 php5-openssl-5.3.8 php5-pcntl-5.3.8 php5-pdo-5.3.8 php5-pdo_sqlite-5.3.8 php5-pgsql-5.3.8 php5-phar-5.3.8 php5-posix-5.3.8 php5-session-5.3.8 php5-snmp-5.3.8 php5-soap-5.3.8 php5-sockets-5.3.8 php5-sqlite-5.3.8 php5-sqlite3-5.3.8 php5-tokenizer-5.3.8 php5-xml-5.3.8 php5-xmlreader-5.3.8 php5-xmlrpc-5.3.8 php5-xmlwriter-5.3.8 php5-zip-5.3.8 php5-zlib-5.3.8 All of the module packages depend on the php package. Simply running "pkg install php5" only wants to upgrade the php5 package, which will obviously break everything: ---- Updating repository catalogue The following 2 packages will be installed: Upgrading libxml2: 2.7.8_1 -> 2.8.0_3 Upgrading php5: 5.3.8 -> 5.4.24 The installation will require 2 MB more space ---- Trying to upgrade the php5-extensions package which depends on all the rest also doesn't work as it wants to upgrade only a subset of the packages: ---- Updating repository catalogue The following 21 packages will be installed: Upgrading libxml2: 2.7.8_1 -> 2.8.0_3 Upgrading sqlite3: 3.8.0.2 -> 3.8.2 Upgrading php5: 5.3.8 -> 5.4.24 Upgrading php5-xmlwriter: 5.3.8 -> 5.4.24 Upgrading php5-dom: 5.3.8 -> 5.4.24 Upgrading php5-xml: 5.3.8 -> 5.4.24 Upgrading php5-simplexml: 5.3.8 -> 5.4.24 Upgrading php5-ctype: 5.3.8 -> 5.4.24 Upgrading php5-posix: 5.3.8 -> 5.4.24 Upgrading php5-hash: 5.3.8 -> 5.4.24 Upgrading php5-filter: 5.3.8 -> 5.4.24 Upgrading php5-tokenizer: 5.3.8 -> 5.4.24 Upgrading php5-json: 5.3.8 -> 5.4.24 Upgrading php5-sqlite3: 5.3.8 -> 5.4.24 Upgrading php5-pdo: 5.3.8 -> 5.4.24 Upgrading php5-iconv: 5.3.8 -> 5.4.24 Upgrading php5-phar: 5.3.8 -> 5.4.24 Upgrading php5-session: 5.3.8 -> 5.4.24 Upgrading php5-xmlreader: 5.3.8 -> 5.4.24 Upgrading php5-pdo_sqlite: 5.3.8 -> 5.4.24 Upgrading php5-extensions: 1.6 -> 1.7 The installation will require 3 MB more space ---- For example, the php5-gd package isn't included in the above list even though it is depended on by php5-extenions: # pkg info -d php5-extensions | grep gd php5-gd-5.3.8 and it depends on php5: # pkg info -r php5 | grep gd php5-gd-5.3.8 My question is: what is the correct way to upgrade (in this case) all of the php5-* packages? Running "pkg install `pkg info -q | grep php`" doesn't work because it tries to install packages by including the full version number, and those old packages are neither what I want nor available, and I can't find an argument to "pkg info" which only shows the base package names without the extensions. Further, it looks like "pkg upgrade" doesn't accept package names, which seems odd.