From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([69.77.167.62] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1K5o6B-0006tQ-11 for garchives@archives.gentoo.org; Mon, 09 Jun 2008 20:36:15 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C5140E052B; Mon, 9 Jun 2008 20:36:13 +0000 (UTC) Received: from wr-out-0506.google.com (wr-out-0506.google.com [64.233.184.235]) by pigeon.gentoo.org (Postfix) with ESMTP id 97D75E052B for ; Mon, 9 Jun 2008 20:36:13 +0000 (UTC) Received: by wr-out-0506.google.com with SMTP id c48so1364395wra.1 for ; Mon, 09 Jun 2008 13:36:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:subject:from:to:content-type :date:message-id:mime-version:x-mailer:content-transfer-encoding; bh=nKoGqSkUsU4hW5wEFcJaLpvtJFvrmHzzP9UEyKEvCZY=; b=RMrdUds8lFQVJri2hxEkGwtNPVVJsJMGFio98fIkDhHtaiLDMU9rT2NcUWAEcm1Lmh iN+El/3pARWG7wLhEWKZ9Ge2vLmESeOljfwDX+RXoqBiJifW3duv4BTz15cyB7w1++wD thD0kTlCaIAhZYjWOegUOa5/4xVe6WFsFcTMA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=subject:from:to:content-type:date:message-id:mime-version:x-mailer :content-transfer-encoding; b=F/6sd282gZTvN/Uxrnq3HSAAPnPzZjLT9WPA1IuF9kCUNeDUhcKwIPSkDH2i/JQaj8 GzgSr6t1LHD043L9JkOXjXmY+dYLU62n9C3rVpbnI9VZZW4YKYS8aHk/n9PwX/QNcuUf JOnMdqd/ry9VsB85rc0KkIqwcuV7eR/3yMVI0= Received: by 10.90.92.14 with SMTP id p14mr4116302agb.28.1213043773215; Mon, 09 Jun 2008 13:36:13 -0700 (PDT) Received: from ?192.168.0.5? ( [201.53.183.155]) by mx.google.com with ESMTPS id 23sm7831151hsd.10.2008.06.09.13.36.10 (version=SSLv3 cipher=RC4-MD5); Mon, 09 Jun 2008 13:36:11 -0700 (PDT) Subject: [gentoo-portage-dev] Portage persistence structures :: information about ports tree From: =?ISO-8859-1?Q?Jo=E3o_Maca=EDba?= To: gentoo-portage-dev@lists.gentoo.org Content-Type: text/plain; charset=ISO-8859-1 Date: Mon, 09 Jun 2008 17:36:14 -0300 Message-Id: <1213043774.31291.85.camel@cons> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-portage-dev@lists.gentoo.org Reply-to: gentoo-portage-dev@lists.gentoo.org Mime-Version: 1.0 X-Mailer: Evolution 2.12.1 Content-Transfer-Encoding: quoted-printable X-Archives-Salt: da47c532-05c0-4807-a77c-1a0f8007039b X-Archives-Hash: 3a6b9dd7e235ffb3d4a28dfc2e9723fb Hi. I'm reading portage docs and sources at /usr/lib/portage trying to understand how portage persists information on 'available ports'. So, I'm reading /usr/lib/portage/bin/emerge: --- snip --- portdb =3D trees["porttree"].dbapi --- snip --- Where 'trees' is a parameter to 'search's object construction.=20 But who really uses 'search class' is 'action_search' as we can see below: --- snip --- def action_search(settings, trees, myopts, myfiles, spinner): [...] searchinstance =3D search(settings, trees, spinner, "--searchdesc" in myopts, "--quiet" not in myopts, "--usepkg" in myopts, "--usepkgonly" in myopts) [...] --- snip --- Later in 'emerge' file we have=20 --- snip --- action_search(settings, trees[settings["ROOT"]], --- snip --- ... and so on ... I'm trying to track the calls, instantiations, etc to figure out how portage persists ports info. May someone give me some help on this ? How does portage do the searchs ? Walk into the ports tree and build some structure or store this info on some embedded database like berkeley db or sqlite ? Thanks in advance. --=20 Jo=E3o Maca=EDba --=20 gentoo-portage-dev@lists.gentoo.org mailing list