public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Zac Medico" <zmedico@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/portage:master commit in: pym/_emerge/
Date: Sat, 16 Jul 2011 23:30:21 +0000 (UTC)	[thread overview]
Message-ID: <785fe0b42a66b1d137955a4b816b3c254a1b785d.zmedico@gentoo> (raw)

commit:     785fe0b42a66b1d137955a4b816b3c254a1b785d
Author:     Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 16 23:30:14 2011 +0000
Commit:     Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Sat Jul 16 23:30:14 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=785fe0b4

EbuildBuild: skip the fetch queue when possible

Since commit f07f8386e945b48358c11c121960e4833c539752, it was possible
for EbuildBuild to wait on the fetch queue even in cases in which all
required files had been previously fetched. Now this case is optimized
to skip the fetch queue, as discribed in bug #375331, comment #2.

---
 pym/_emerge/EbuildBuild.py   |   25 ++++++++-
 pym/_emerge/EbuildFetcher.py |  120 ++++++++++++++++++++++++++++++++++++-----
 2 files changed, 129 insertions(+), 16 deletions(-)

diff --git a/pym/_emerge/EbuildBuild.py b/pym/_emerge/EbuildBuild.py
index b6beb49..1776d1e 100644
--- a/pym/_emerge/EbuildBuild.py
+++ b/pym/_emerge/EbuildBuild.py
@@ -166,12 +166,34 @@ class EbuildBuild(CompositeTask):
 		portage.prepare_build_dirs(self.pkg.root, self.settings, 1)
 
 		fetcher = EbuildFetcher(config_pool=self.config_pool,
+			ebuild_path=self._ebuild_path,
 			fetchall=self.opts.fetch_all_uri,
 			fetchonly=self.opts.fetchonly,
 			background=self.background,
 			logfile=self.settings.get('PORTAGE_LOG_FILE'),
 			pkg=self.pkg, scheduler=self.scheduler)
 
+		try:
+			already_fetched = fetcher.already_fetched(self.settings)
+		except portage.exception.InvalidDependString as e:
+			msg_lines = []
+			msg = "Fetch failed for '%s' due to invalid SRC_URI: %s" % \
+				(self.pkg.cpv, e)
+			msg_lines.append(msg)
+			fetcher._eerror(msg_lines)
+			portage.elog.elog_process(self.pkg.cpv, self.settings)
+			self.returncode = 1
+			self._current_task = None
+			self._unlock_builddir()
+			self.wait()
+			return
+
+		if already_fetched:
+			# This case is optimized to skip the fetch queue.
+			fetcher = None
+			self._fetch_exit(fetcher)
+			return
+
 		# Allow the Scheduler's fetch queue to control the
 		# number of concurrent fetchers.
 		fetcher.addExitListener(self._fetch_exit)
@@ -180,7 +202,8 @@ class EbuildBuild(CompositeTask):
 
 	def _fetch_exit(self, fetcher):
 
-		if self._default_exit(fetcher) != os.EX_OK:
+		if fetcher is not None and \
+			self._default_exit(fetcher) != os.EX_OK:
 			self._fetch_failed()
 			return
 

diff --git a/pym/_emerge/EbuildFetcher.py b/pym/_emerge/EbuildFetcher.py
index c076288..0666787 100644
--- a/pym/_emerge/EbuildFetcher.py
+++ b/pym/_emerge/EbuildFetcher.py
@@ -14,24 +14,97 @@ from portage import _encodings
 from portage import _unicode_encode
 from portage import _unicode_decode
 from portage.elog.messages import eerror
-from portage.package.ebuild.fetch import fetch
+from portage.package.ebuild.fetch import _check_distfile, fetch
 from portage.util._pty import _create_pty_or_pipe
 
 class EbuildFetcher(SpawnProcess):
 
-	__slots__ = ("config_pool", "fetchonly", "fetchall", "pkg", "prefetch") + \
+	__slots__ = ("config_pool", "ebuild_path", "fetchonly", "fetchall",
+		"pkg", "prefetch") + \
 		("_digests", "_settings", "_uri_map")
 
+	def already_fetched(self, settings):
+		"""
+		Returns True if all files are already exist locally and have correct
+		digests, otherwise return False. When returning True, appropriate
+		digest checking messages are produced for display and/or logging.
+		When returning False, no messages are produced, since we assume
+		that a fetcher process will later be executed in order to produce
+		such messages. This will raise InvalidDependString if SRC_URI is
+		invalid.
+		"""
+
+		uri_map = self._get_uri_map()
+		if not uri_map:
+			return True
+
+		digests = self._get_digests()
+		distdir = settings["DISTDIR"]
+		allow_missing = "allow-missing-manifests" in settings.features
+
+		for filename in uri_map:
+			# Use stat rather than lstat since fetch() creates
+			# symlinks when PORTAGE_RO_DISTDIRS is used.
+			try:
+				st = os.stat(os.path.join(distdir, filename))
+			except OSError:
+				return False
+			if st.st_size == 0:
+				return False
+			expected_size = digests.get(filename, {}).get('size')
+			if expected_size is None:
+				continue
+			if st.st_size != expected_size:
+				return False
+
+		stdout_orig = sys.stdout
+		stderr_orig = sys.stderr
+		global_havecolor = portage.output.havecolor
+		out = io.StringIO()
+		eout = portage.output.EOutput()
+		eout.quiet = settings.get("PORTAGE_QUIET") == "1"
+		success = True
+		try:
+			sys.stdout = out
+			sys.stderr = out
+			if portage.output.havecolor:
+				portage.output.havecolor = not self.background
+
+			for filename in uri_map:
+				mydigests = digests.get(filename)
+				if mydigests is None:
+					if not allow_missing:
+						success = False
+						break
+					continue
+				ok, st = _check_distfile(os.path.join(distdir, filename),
+					mydigests, eout, show_errors=False)
+				if not ok:
+					success = False
+					break
+		finally:
+			sys.stdout = stdout_orig
+			sys.stderr = stderr_orig
+			portage.output.havecolor = global_havecolor
+
+		if success:
+			# When returning uncessessfully, no messages are produced, since
+			# we assume that a fetcher process will later be executed in order
+			# to produce such messages.
+			msg = out.getvalue()
+			if msg:
+				self.scheduler.output(msg, log_path=self.logfile)
+
+		return success
+
 	def _start(self):
 
 		root_config = self.pkg.root_config
 		portdb = root_config.trees["porttree"].dbapi
-		ebuild_path = portdb.findname(self.pkg.cpv, myrepo=self.pkg.repo)
-		if ebuild_path is None:
-			raise AssertionError("ebuild not found for '%s'" % self.pkg.cpv)
+		ebuild_path = self._get_ebuild_path()
 
 		try:
-			uri_map = self._get_uri_map(portdb, ebuild_path)
+			uri_map = self._get_uri_map()
 		except portage.exception.InvalidDependString as e:
 			msg_lines = []
 			msg = "Fetch failed for '%s' due to invalid SRC_URI: %s" % \
@@ -48,9 +121,6 @@ class EbuildFetcher(SpawnProcess):
 			self.wait()
 			return
 
-		self._digests = portage.Manifest(
-			os.path.dirname(ebuild_path), None).getTypeDigests("DIST")
-
 		settings = self.config_pool.allocate()
 		settings.setcpv(self.pkg)
 		portage.doebuild_environment(ebuild_path, 'fetch',
@@ -75,7 +145,6 @@ class EbuildFetcher(SpawnProcess):
 			settings["NOCOLOR"] = nocolor
 
 		self._settings = settings
-		self._uri_map = uri_map
 		SpawnProcess._start(self)
 
 		# Free settings now since it's no longer needed in
@@ -110,7 +179,7 @@ class EbuildFetcher(SpawnProcess):
 		allow_missing = 'allow-missing-manifests' in self._settings.features
 		try:
 			if fetch(self._uri_map, self._settings, fetchonly=self.fetchonly,
-				digests=copy.deepcopy(self._digests),
+				digests=copy.deepcopy(self._get_digests()),
 				allow_missing_digests=allow_missing):
 				rval = os.EX_OK
 		except SystemExit:
@@ -122,16 +191,37 @@ class EbuildFetcher(SpawnProcess):
 			# finally blocks from earlier in the call stack. See bug #345289.
 			os._exit(rval)
 
-	def _get_uri_map(self, portdb, ebuild_path):
+	def _get_ebuild_path(self):
+		if self.ebuild_path is not None:
+			return self.ebuild_path
+		portdb = self.pkg.root_config.trees["porttree"].dbapi
+		self.ebuild_path = portdb.findname(self.pkg.cpv, myrepo=self.pkg.repo)
+		if self.ebuild_path is None:
+			raise AssertionError("ebuild not found for '%s'" % self.pkg.cpv)
+		return self.ebuild_path
+
+	def _get_digests(self):
+		if self._digests is not None:
+			return self._digests
+		self._digests = portage.Manifest(os.path.dirname(
+			self._get_ebuild_path()), None).getTypeDigests("DIST")
+		return self._digests
+
+	def _get_uri_map(self):
 		"""
 		This can raise InvalidDependString from portdbapi.getFetchMap().
 		"""
-		pkgdir = os.path.dirname(ebuild_path)
+		if self._uri_map is not None:
+			return self._uri_map
+		pkgdir = os.path.dirname(self._get_ebuild_path())
 		mytree = os.path.dirname(os.path.dirname(pkgdir))
 		use = None
 		if not self.fetchall:
 			use = self.pkg.use.enabled
-		return portdb.getFetchMap(self.pkg.cpv, useflags=use, mytree=mytree)
+		portdb = self.pkg.root_config.trees["porttree"].dbapi
+		self._uri_map = portdb.getFetchMap(self.pkg.cpv,
+			useflags=use, mytree=mytree)
+		return self._uri_map
 
 	def _prefetch_size_ok(self, uri_map, settings, ebuild_path):
 		distdir = settings["DISTDIR"]
@@ -148,7 +238,7 @@ class EbuildFetcher(SpawnProcess):
 				return False
 			sizes[filename] = st.st_size
 
-		digests = self._digests
+		digests = self._get_digests()
 		for filename, actual_size in sizes.items():
 			size = digests.get(filename, {}).get('size')
 			if size is None:



             reply	other threads:[~2011-07-16 23:30 UTC|newest]

Thread overview: 804+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-16 23:30 Zac Medico [this message]
  -- strict thread matches above, loose matches on Subject: below --
2018-06-29  4:29 [gentoo-commits] proj/portage:master commit in: pym/_emerge/ Zac Medico
2018-06-23 22:15 Zac Medico
2018-06-06  4:32 Zac Medico
2018-06-06  3:22 Zac Medico
2018-06-05 20:49 Zac Medico
2018-05-31  8:44 Zac Medico
2018-05-27  4:49 Zac Medico
2018-05-27  4:26 Zac Medico
2018-05-27  4:10 Zac Medico
2018-05-13  5:04 Zac Medico
2018-05-04 17:00 Zac Medico
2018-05-01 16:26 Zac Medico
2018-04-30 19:28 Zac Medico
2018-04-30  6:29 Zac Medico
2018-04-30  6:29 Zac Medico
2018-04-30  6:29 Zac Medico
2018-04-30  6:29 Zac Medico
2018-04-29 22:24 Zac Medico
2018-04-29 22:24 Zac Medico
2018-04-29 21:29 Zac Medico
2018-04-29 21:29 Zac Medico
2018-04-29 21:29 Zac Medico
2018-04-29 21:29 Zac Medico
2018-04-29 21:29 Zac Medico
2018-04-29 21:29 Zac Medico
2018-04-29  4:38 Zac Medico
2018-04-29  4:02 Zac Medico
2018-04-29  3:55 Zac Medico
2018-04-29  3:47 Zac Medico
2018-04-29  2:11 Zac Medico
2018-04-29  0:49 Zac Medico
2018-04-29  0:26 Zac Medico
2018-04-28 23:52 Zac Medico
2018-04-28 23:41 Zac Medico
2018-04-28 22:26 Zac Medico
2018-04-28 20:19 Zac Medico
2018-04-27 20:56 Ulrich Müller
2018-04-26  8:46 Zac Medico
2018-04-26  8:06 Zac Medico
2018-04-26  8:06 Zac Medico
2018-04-26  7:12 Zac Medico
2018-04-26  6:20 Zac Medico
2018-04-24 19:43 Zac Medico
2018-04-24  7:42 Zac Medico
2018-04-24  6:57 Zac Medico
2018-04-23 19:48 Zac Medico
2018-04-23 19:48 Zac Medico
2018-04-23 18:58 Zac Medico
2018-04-23 18:52 Zac Medico
2018-04-23 18:52 Zac Medico
2018-04-23 18:52 Zac Medico
2018-04-23 18:52 Zac Medico
2018-04-23  2:41 Zac Medico
2018-04-22 21:52 Zac Medico
2018-04-22 21:52 Zac Medico
2018-04-22 21:52 Zac Medico
2018-04-22 21:52 Zac Medico
2018-04-22 21:52 Zac Medico
2018-04-22 18:26 Zac Medico
2018-04-22  0:56 Zac Medico
2018-04-21 20:17 Zac Medico
2018-04-21 18:43 Zac Medico
2018-04-20 16:18 Zac Medico
2018-04-20 16:18 Zac Medico
2018-04-20 16:18 Zac Medico
2018-04-20 16:18 Zac Medico
2018-04-20 16:18 Zac Medico
2018-04-20 15:45 Zac Medico
2018-03-30  3:50 Zac Medico
2018-03-28 15:24 Zac Medico
2018-03-28  9:25 Zac Medico
2018-03-21 19:25 Zac Medico
2018-03-21 19:08 Zac Medico
2018-03-21 19:05 Zac Medico
2018-02-19 19:20 Zac Medico
2018-01-26 14:59 Michał Górny
2018-01-07 11:56 Zac Medico
2018-01-05 20:36 Zac Medico
2017-12-10  8:42 Zac Medico
2017-10-04  7:09 Zac Medico
2017-10-04  1:34 Zac Medico
2017-09-29 17:24 Zac Medico
2017-09-25  2:57 Zac Medico
2017-09-25  2:04 Zac Medico
2017-07-09 17:20 Zac Medico
2017-05-30  7:22 Zac Medico
2017-04-20 19:39 Zac Medico
2017-04-20 19:39 Zac Medico
2017-04-12 16:46 Zac Medico
2017-04-04  3:20 Zac Medico
2017-03-31 20:24 Zac Medico
2017-03-27 21:41 Zac Medico
2017-03-23 21:43 Zac Medico
2017-03-16 23:25 Zac Medico
2017-02-21  1:33 Zac Medico
2017-01-26  4:19 Mike Gilbert
2017-01-18 23:05 Zac Medico
2016-12-29  9:13 Zac Medico
2016-12-05  5:14 Brian Dolbec
2016-12-05  5:10 Zac Medico
2016-08-22 16:09 Zac Medico
2016-05-18 16:33 Zac Medico
2016-03-29  8:39 Alexander Berntsen
2016-02-02  1:40 Zac Medico
2016-02-02  1:33 Zac Medico
2016-01-29 23:04 Brian Dolbec
2016-01-28 11:54 Alexander Berntsen
2016-01-29 11:17 ` Alexander Berntsen
2016-01-22 16:04 Zac Medico
2015-12-16 17:09 Zac Medico
2015-12-13 23:39 Zac Medico
2015-12-09 16:51 Zac Medico
2015-12-08 22:37 Arfrever Frehtes Taifersar Arahesis
2015-11-25 12:43 Arfrever Frehtes Taifersar Arahesis
2015-11-23 16:31 Zac Medico
2015-11-23 16:28 Zac Medico
2015-11-13 21:53 Arfrever Frehtes Taifersar Arahesis
2015-10-13 16:14 Zac Medico
2015-10-08  0:01 Brian Dolbec
2015-10-08  0:01 Brian Dolbec
2015-09-03 18:03 Mike Frysinger
2015-08-06  6:31 Zac Medico
2015-08-02  0:42 Zac Medico
2015-07-15 19:28 Zac Medico
2015-07-14 18:06 Zac Medico
2015-07-07 18:38 Zac Medico
2015-06-17  6:55 Zac Medico
2015-05-13  1:22 Zac Medico
2015-04-28 23:52 Zac Medico
2015-03-03 21:28 git@oystercatcher mirror+tproxy
2015-03-03 21:28 Zac Medico
2015-02-26 18:25 Mike Frysinger
2015-02-25  8:34 Zac Medico
2015-02-14 19:14 Zac Medico
2015-02-13 18:43 Alexander Berntsen
2015-02-13 18:43 Alexander Berntsen
2015-02-01 15:35 Michał Górny
2015-01-18 18:49 Zac Medico
2015-01-05 19:55 Zac Medico
2015-01-05 19:36 Zac Medico
2014-12-21 23:11 Arfrever Frehtes Taifersar Arahesis
2014-12-15 16:28 Arfrever Frehtes Taifersar Arahesis
2014-12-15  3:37 Zac Medico
2014-12-13 14:51 Arfrever Frehtes Taifersar Arahesis
2014-12-13  7:04 Arfrever Frehtes Taifersar Arahesis
2014-12-11  8:42 Zac Medico
2014-12-07 23:14 Zac Medico
2014-12-07 23:14 Zac Medico
2014-11-30 19:49 Arfrever Frehtes Taifersar Arahesis
2014-11-29 18:48 Zac Medico
2014-11-29 18:06 Zac Medico
2014-11-29 17:55 Zac Medico
2014-11-24  8:13 Zac Medico
2014-11-24  8:13 Zac Medico
2014-09-24 22:36 Brian Dolbec
2014-09-24 16:20 Zac Medico
2014-09-15  5:00 Brian Dolbec
2014-09-15  5:00 Brian Dolbec
2014-09-13  5:55 Brian Dolbec
2014-09-01 17:03 Zac Medico
2014-08-19  7:01 Michał Górny
2014-08-19  7:01 Michał Górny
2014-08-19  7:01 Michał Górny
2014-08-19  7:01 Michał Górny
2014-08-12 18:27 Michał Górny
2014-08-19  7:01 ` Michał Górny
2014-08-11 20:26 Alexander Berntsen
2014-08-10  0:10 Brian Dolbec
2014-08-04  1:55 Brian Dolbec
2014-08-03 15:24 [gentoo-commits] proj/portage:v2.2.11 " Brian Dolbec
2014-08-03 15:22 ` [gentoo-commits] proj/portage:master " Brian Dolbec
2014-06-14 20:58 Alexander Berntsen
2014-06-14  2:58 Zac Medico
2014-06-08 11:06 Sebastian Luther
2014-05-18  8:02 Arfrever Frehtes Taifersar Arahesis
2014-04-19  5:44 Brian Dolbec
2014-04-18 19:50 Zac Medico
2014-04-05 13:05 Alexander Berntsen
2014-04-04 23:01 Brian Dolbec
2014-04-04 23:01 Brian Dolbec
2014-03-24 18:28 Sebastian Luther
2014-03-24 18:28 Sebastian Luther
2014-03-23 16:31 Alexander Berntsen
2014-03-02  3:15 Brian Dolbec
2014-03-02  3:15 Brian Dolbec
2014-02-17 20:35 Sebastian Luther
2014-02-05 19:42 Sebastian Luther
2014-02-05 19:42 Sebastian Luther
2014-02-05 19:42 Sebastian Luther
2014-01-27  0:14 Brian Dolbec
2014-01-26  7:31 Arfrever Frehtes Taifersar Arahesis
2013-12-05 15:38 Brian Dolbec
2013-12-02  1:23 Brian Dolbec
2013-12-01 10:19 Brian Dolbec
2013-11-29 23:24 Mike Frysinger
2013-11-28  9:20 Arfrever Frehtes Taifersar Arahesis
2013-11-28  3:06 Arfrever Frehtes Taifersar Arahesis
2013-11-27  3:24 Mike Frysinger
2013-11-26 13:50 Brian Dolbec
2013-11-26 13:50 Brian Dolbec
2013-09-18 18:29 Zac Medico
2013-09-09 16:57 Zac Medico
2013-09-09 16:53 Zac Medico
2013-09-04 19:00 Zac Medico
2013-09-02 19:49 Zac Medico
2013-09-02  0:27 Zac Medico
2013-08-24 16:17 Zac Medico
2013-08-24 16:12 Zac Medico
2013-08-24 16:10 Zac Medico
2013-08-24 16:07 Zac Medico
2013-08-22  3:30 Zac Medico
2013-08-19  9:38 Zac Medico
2013-08-04 20:21 Zac Medico
2013-08-02  9:49 Zac Medico
2013-08-02  8:54 Zac Medico
2013-07-30  5:41 Zac Medico
2013-07-28 23:04 Zac Medico
2013-07-23 20:16 Zac Medico
2013-07-23 19:44 Zac Medico
2013-07-23 19:14 Zac Medico
2013-07-09 21:20 Zac Medico
2013-07-09 20:52 Zac Medico
2013-07-09 19:22 Zac Medico
2013-07-06 21:52 Zac Medico
2013-07-05  5:34 Zac Medico
2013-06-19 21:07 Zac Medico
2013-06-19 20:05 Zac Medico
2013-06-18 15:48 Zac Medico
2013-06-18 14:59 Zac Medico
2013-06-17  5:59 Zac Medico
2013-06-16  1:22 Zac Medico
2013-06-15 23:33 Zac Medico
2013-06-15  0:12 Zac Medico
2013-06-13 18:54 Zac Medico
2013-06-10  4:01 Zac Medico
2013-06-10  3:50 Zac Medico
2013-06-09  1:17 Zac Medico
2013-06-08 20:48 Zac Medico
2013-06-08 11:47 Zac Medico
2013-05-31 23:52 Zac Medico
2013-05-31 23:24 Zac Medico
2013-05-31 22:43 Zac Medico
2013-05-24 18:12 Zac Medico
2013-05-19 17:25 Zac Medico
2013-05-18 18:18 Zac Medico
2013-05-18 12:29 Zac Medico
2013-05-18 12:20 Zac Medico
2013-04-22 16:35 Zac Medico
2013-04-11 23:14 Zac Medico
2013-04-02 19:29 Zac Medico
2013-03-27  5:51 Zac Medico
2013-03-27  5:19 Zac Medico
2013-03-23 23:00 Zac Medico
2013-03-23 22:03 Zac Medico
2013-03-19 21:38 Zac Medico
2013-03-19 20:22 Zac Medico
2013-03-19 18:47 Zac Medico
2013-03-19 18:37 Zac Medico
2013-03-18 10:21 Zac Medico
2013-03-13 15:19 Zac Medico
2013-03-13 15:10 Zac Medico
2013-03-13  5:10 Zac Medico
2013-03-05  1:39 Zac Medico
2013-03-05  1:21 Zac Medico
2013-03-05  1:07 Zac Medico
2013-03-02  2:55 Zac Medico
2013-03-02  0:58 Zac Medico
2013-02-21 14:29 Zac Medico
2013-02-18  4:50 Mike Frysinger
2013-02-14  3:40 Zac Medico
2013-02-14  0:46 Zac Medico
2013-02-13  4:44 Zac Medico
2013-02-12  3:25 Zac Medico
2013-02-11 23:57 Zac Medico
2013-02-11  2:25 Zac Medico
2013-02-09 18:00 Zac Medico
2013-02-08 16:29 Zac Medico
2013-01-24  1:32 Zac Medico
2013-01-24  0:44 Zac Medico
2013-01-15 22:42 Mike Frysinger
2013-01-15 14:46 Zac Medico
2013-01-15 14:25 Zac Medico
2013-01-10 11:11 Zac Medico
2013-01-09  1:29 Zac Medico
2013-01-09  1:06 Zac Medico
2013-01-08  2:10 Zac Medico
2013-01-06  9:14 Zac Medico
2013-01-06  8:44 Zac Medico
2013-01-04  6:30 Zac Medico
2013-01-04  0:02 Zac Medico
2013-01-03  2:54 Zac Medico
2013-01-02 10:48 Zac Medico
2013-01-02  7:32 Zac Medico
2013-01-02  7:29 Zac Medico
2013-01-02  6:04 Zac Medico
2013-01-02  4:48 Zac Medico
2013-01-02  2:54 Zac Medico
2013-01-01 22:39 Zac Medico
2013-01-01 11:09 Zac Medico
2012-12-31 23:52 Zac Medico
2012-12-31 22:24 Zac Medico
2012-12-31 22:12 Zac Medico
2012-12-31  1:05 Zac Medico
2012-12-24 22:13 Zac Medico
2012-12-18  7:10 Zac Medico
2012-12-18  7:04 Zac Medico
2012-12-10  2:07 Zac Medico
2012-12-10  0:56 Zac Medico
2012-12-08  1:49 Zac Medico
2012-12-04  6:01 Zac Medico
2012-12-02 22:17 Zac Medico
2012-11-30  9:12 Zac Medico
2012-11-30  6:24 Zac Medico
2012-11-27  6:02 Zac Medico
2012-11-27  3:45 Zac Medico
2012-11-24 22:08 Zac Medico
2012-11-24 21:14 Zac Medico
2012-11-22 22:16 Arfrever Frehtes Taifersar Arahesis
2012-11-16  4:47 Arfrever Frehtes Taifersar Arahesis
2012-11-11 17:58 Zac Medico
2012-10-26 17:46 Zac Medico
2012-10-26 17:13 Zac Medico
2012-10-19  1:28 Zac Medico
2012-10-18  2:35 Zac Medico
2012-10-18  2:11 Zac Medico
2012-10-18  0:11 Zac Medico
2012-10-17  3:37 Zac Medico
2012-10-16 23:16 Zac Medico
2012-10-16 22:16 Zac Medico
2012-10-16 15:55 Zac Medico
2012-10-16  8:34 Zac Medico
2012-10-15 15:42 Zac Medico
2012-10-15 15:02 Zac Medico
2012-10-15  2:59 Zac Medico
2012-10-13 20:06 Zac Medico
2012-10-10 21:13 Zac Medico
2012-10-07 16:59 Zac Medico
2012-10-06 22:01 Zac Medico
2012-10-06  4:00 Zac Medico
2012-10-03  2:43 Zac Medico
2012-09-26  3:31 Zac Medico
2012-09-16 20:02 Zac Medico
2012-09-12  6:48 Zac Medico
2012-09-10 16:41 Zac Medico
2012-09-09  1:07 Zac Medico
2012-09-09  0:54 Zac Medico
2012-09-04  3:28 Zac Medico
2012-09-04  3:07 Zac Medico
2012-08-28  3:20 Zac Medico
2012-08-22 21:12 Zac Medico
2012-08-21  3:29 Zac Medico
2012-08-20 20:38 Zac Medico
2012-07-18 17:19 Zac Medico
2012-07-10 22:50 Zac Medico
2012-07-03 21:52 Zac Medico
2012-06-24  8:18 Zac Medico
2012-06-23 20:03 Zac Medico
2012-06-23  6:38 Zac Medico
2012-06-23  5:10 Zac Medico
2012-06-23  3:01 Zac Medico
2012-06-23  2:47 Zac Medico
2012-06-23  2:35 Zac Medico
2012-06-23  1:23 Zac Medico
2012-06-22  7:18 Zac Medico
2012-06-21 22:17 Zac Medico
2012-06-21 21:58 Zac Medico
2012-06-20 23:01 Zac Medico
2012-06-20  4:55 Zac Medico
2012-06-19  0:40 Zac Medico
2012-06-17 19:48 Zac Medico
2012-06-17 19:45 Zac Medico
2012-06-17 17:52 Zac Medico
2012-06-17 16:16 Zac Medico
2012-06-17  4:58 Zac Medico
2012-06-17  3:22 Zac Medico
2012-06-17  3:06 Zac Medico
2012-06-16 20:27 Zac Medico
2012-06-16 20:24 Zac Medico
2012-06-04  1:19 Zac Medico
2012-06-04  0:36 Zac Medico
2012-05-30 20:25 Zac Medico
2012-05-14 18:48 Zac Medico
2012-05-14  6:28 Zac Medico
2012-05-13 22:35 Zac Medico
2012-05-13  7:32 Zac Medico
2012-05-09 20:32 Zac Medico
2012-05-09 18:11 Zac Medico
2012-05-03  1:32 Zac Medico
2012-04-21  1:02 Zac Medico
2012-04-16  7:17 Zac Medico
2012-04-13 19:30 Zac Medico
2012-04-05 21:37 Zac Medico
2012-04-05 18:53 Zac Medico
2012-04-05 18:23 Zac Medico
2012-04-05 18:09 Zac Medico
2012-04-03 17:57 Zac Medico
2012-03-27 18:57 Zac Medico
2012-03-27 15:34 Zac Medico
2012-03-26  3:54 Zac Medico
2012-03-26  3:49 Zac Medico
2012-03-25 21:48 Zac Medico
2012-03-21  7:18 Zac Medico
2012-03-19 17:07 Zac Medico
2012-03-19 16:29 Zac Medico
2012-03-09  6:35 Zac Medico
2012-03-09  5:08 Zac Medico
2012-03-09  2:54 Zac Medico
2012-02-29 15:49 Zac Medico
2012-02-26 10:00 Zac Medico
2012-02-24 21:55 Zac Medico
2012-02-20 11:05 Zac Medico
2012-02-20 11:01 Zac Medico
2012-02-17 22:31 Zac Medico
2012-02-17 10:05 Zac Medico
2012-02-16 21:00 Zac Medico
2012-02-16  5:14 Zac Medico
2012-02-16  0:25 Zac Medico
2012-02-15  3:01 Zac Medico
2012-02-15  1:17 Zac Medico
2012-02-14 23:51 Zac Medico
2012-02-14 23:26 Zac Medico
2012-02-13  6:44 Zac Medico
2012-02-12  6:17 Zac Medico
2012-02-12  5:36 Zac Medico
2012-02-12  4:09 Zac Medico
2012-02-12  0:05 Zac Medico
2012-02-11 23:02 Zac Medico
2012-02-11 22:17 Arfrever Frehtes Taifersar Arahesis
2012-02-11 20:05 Zac Medico
2012-02-11 19:48 Zac Medico
2012-02-11  3:19 Zac Medico
2012-02-11  2:10 Zac Medico
2012-02-10 21:58 Zac Medico
2012-02-10 19:48 Zac Medico
2012-02-09  9:13 Zac Medico
2012-02-09  8:21 Zac Medico
2012-02-09  6:23 Zac Medico
2012-02-09  4:04 Zac Medico
2012-02-09  2:10 Zac Medico
2012-02-09  1:58 Zac Medico
2012-02-09  1:50 Zac Medico
2012-02-09  0:33 Zac Medico
2012-02-08 23:44 Zac Medico
2012-02-08 21:20 Zac Medico
2012-02-08 20:24 Zac Medico
2012-02-08  6:09 Zac Medico
2012-02-08  6:09 Zac Medico
2012-02-08  5:17 Zac Medico
2012-02-08  5:17 Zac Medico
2012-02-08  5:17 Zac Medico
2012-02-08  4:35 Zac Medico
2012-02-08  4:25 Zac Medico
2012-02-08  3:59 Zac Medico
2012-02-08  3:34 Zac Medico
2012-02-08  3:34 Zac Medico
2012-02-08  2:14 Zac Medico
2012-02-08  2:14 Zac Medico
2012-02-07 23:24 Zac Medico
2012-02-07 23:04 Zac Medico
2012-02-07 23:04 Zac Medico
2012-02-07 23:04 Zac Medico
2012-02-07 23:04 Zac Medico
2012-01-20 20:29 Zac Medico
2012-01-15 18:00 Zac Medico
2012-01-12 16:59 Zac Medico
2012-01-12 16:33 Zac Medico
2011-12-24 10:23 Zac Medico
2011-12-23 18:07 Zac Medico
2011-12-23 10:15 Zac Medico
2011-12-22  0:44 Zac Medico
2011-12-19  0:13 Zac Medico
2011-12-17 19:33 Zac Medico
2011-12-16 19:56 Zac Medico
2011-12-16 19:32 Zac Medico
2011-12-16 19:18 Zac Medico
2011-12-16 18:58 Zac Medico
2011-12-14  7:31 Zac Medico
2011-12-14  6:30 Zac Medico
2011-12-13 20:01 Zac Medico
2011-12-13 18:35 Zac Medico
2011-12-13 17:27 Zac Medico
2011-12-11  7:49 Zac Medico
2011-12-10 21:37 Zac Medico
2011-12-10 21:13 Zac Medico
2011-12-10  7:08 Zac Medico
2011-12-10  4:00 Zac Medico
2011-12-10  3:55 Zac Medico
2011-12-10  3:31 Zac Medico
2011-12-10  3:03 Zac Medico
2011-12-09  3:21 Zac Medico
2011-12-06 18:53 Zac Medico
2011-12-04 23:56 Zac Medico
2011-12-04 23:43 Zac Medico
2011-12-02 18:30 Zac Medico
2011-12-02  6:14 Zac Medico
2011-12-02  2:34 Zac Medico
2011-12-02  1:44 Zac Medico
2011-12-01 21:22 Zac Medico
2011-12-01 21:05 Zac Medico
2011-11-27 20:53 Zac Medico
2011-11-20 18:54 Zac Medico
2011-11-18 19:40 Zac Medico
2011-11-17 23:10 Zac Medico
2011-11-17 13:39 Zac Medico
2011-11-17  5:15 Zac Medico
2011-11-17  3:43 Zac Medico
2011-11-17  2:09 Zac Medico
2011-11-17  1:39 Zac Medico
2011-11-17  1:25 Zac Medico
2011-11-16 18:44 Zac Medico
2011-11-16 18:26 Zac Medico
2011-11-09 18:13 Zac Medico
2011-11-09  3:23 Zac Medico
2011-11-07 21:15 Arfrever Frehtes Taifersar Arahesis
2011-11-07 20:13 Arfrever Frehtes Taifersar Arahesis
2011-11-07  6:32 Zac Medico
2011-11-07  6:02 Zac Medico
2011-10-30  6:21 Zac Medico
2011-10-29 22:45 Zac Medico
2011-10-29 21:41 Zac Medico
2011-10-29 21:31 Zac Medico
2011-10-29 20:55 Zac Medico
2011-10-29 17:51 Zac Medico
2011-10-29  6:57 Zac Medico
2011-10-29  3:10 Zac Medico
2011-10-27 16:46 Zac Medico
2011-10-25  6:18 Zac Medico
2011-10-23 18:53 Zac Medico
2011-10-20 16:30 Zac Medico
2011-10-16  0:34 Zac Medico
2011-10-15 23:28 Zac Medico
2011-10-15 22:56 Zac Medico
2011-10-15 22:46 Zac Medico
2011-10-15 19:34 Zac Medico
2011-10-10 19:33 Zac Medico
2011-10-10 18:21 Zac Medico
2011-10-10 18:20 Zac Medico
2011-10-10 18:13 Zac Medico
2011-10-10  0:16 Zac Medico
2011-10-10  0:05 Zac Medico
2011-10-02 20:22 Zac Medico
2011-09-30 17:04 Zac Medico
2011-09-29  1:42 Zac Medico
2011-09-29  1:11 Zac Medico
2011-09-28  5:26 Zac Medico
2011-09-23  4:04 Arfrever Frehtes Taifersar Arahesis
2011-09-22 15:45 Zac Medico
2011-09-22  3:06 Zac Medico
2011-09-22  3:06 Zac Medico
2011-09-22  1:59 Zac Medico
2011-09-21 14:11 Zac Medico
2011-09-19 15:54 Zac Medico
2011-09-19 14:37 Zac Medico
2011-09-18 21:57 Zac Medico
2011-09-11 17:31 Zac Medico
2011-09-10 21:51 Zac Medico
2011-09-10 14:31 Zac Medico
2011-09-10  3:22 Zac Medico
2011-09-09 19:58 Zac Medico
2011-09-05  0:59 Zac Medico
2011-09-03 23:33 Zac Medico
2011-09-02  0:24 Zac Medico
2011-08-31  2:32 Zac Medico
2011-08-29  6:49 Zac Medico
2011-08-27 20:17 Arfrever Frehtes Taifersar Arahesis
2011-08-25 22:11 Zac Medico
2011-08-16  5:38 Zac Medico
2011-08-14 23:50 Zac Medico
2011-08-11  3:27 Zac Medico
2011-08-09  6:03 Zac Medico
2011-08-03  5:11 Zac Medico
2011-08-01 22:57 Zac Medico
2011-08-01 11:21 Zac Medico
2011-07-25 20:55 Zac Medico
2011-07-21 16:59 Zac Medico
2011-07-19 20:24 Zac Medico
2011-07-19 19:53 Zac Medico
2011-07-18  8:25 Zac Medico
2011-07-17 18:16 Zac Medico
2011-07-17  4:38 Arfrever Frehtes Taifersar Arahesis
2011-07-17  0:33 Zac Medico
2011-07-17  0:10 Zac Medico
2011-07-17  0:05 Zac Medico
2011-07-16  7:30 Zac Medico
2011-07-16  6:16 Zac Medico
2011-07-12 22:04 Zac Medico
2011-07-12 21:51 Zac Medico
2011-07-12 19:27 Zac Medico
2011-07-12 19:16 Zac Medico
2011-07-11 21:59 Zac Medico
2011-07-11 17:18 Zac Medico
2011-07-11 15:35 Zac Medico
2011-07-11 14:12 Zac Medico
2011-07-10 12:23 Zac Medico
2011-07-10  3:25 Zac Medico
2011-07-09 20:13 Zac Medico
2011-07-08 16:17 Zac Medico
2011-07-08 10:09 Zac Medico
2011-07-03 11:09 Arfrever Frehtes Taifersar Arahesis
2011-06-30 13:11 Zac Medico
2011-06-27 19:34 Arfrever Frehtes Taifersar Arahesis
2011-06-27  6:54 Zac Medico
2011-06-17 22:01 Zac Medico
2011-06-16 15:37 Zac Medico
2011-06-13 21:51 Zac Medico
2011-06-13 13:02 Zac Medico
2011-06-11 19:11 Arfrever Frehtes Taifersar Arahesis
2011-06-11 16:27 Zac Medico
2011-06-11 15:52 Zac Medico
2011-06-11  9:06 Zac Medico
2011-06-11  6:26 Zac Medico
2011-06-11  5:23 Zac Medico
2011-06-11  3:59 Zac Medico
2011-06-11  2:58 Zac Medico
2011-06-11  2:45 Zac Medico
2011-06-11  0:43 Zac Medico
2011-06-10 23:30 Zac Medico
2011-06-09 18:19 Zac Medico
2011-06-09 16:21 Zac Medico
2011-06-09 16:09 Zac Medico
2011-06-09 13:14 Zac Medico
2011-06-09 12:57 Zac Medico
2011-06-08 20:24 Zac Medico
2011-06-08 17:31 Zac Medico
2011-06-08 17:06 Zac Medico
2011-06-06  2:24 Zac Medico
2011-06-05 16:34 Zac Medico
2011-06-05 15:12 Zac Medico
2011-06-04 23:32 Zac Medico
2011-06-04  3:49 Zac Medico
2011-06-04  2:38 Zac Medico
2011-06-04  2:31 Zac Medico
2011-06-04  2:13 Zac Medico
2011-06-03 23:04 Zac Medico
2011-06-03 22:38 Zac Medico
2011-06-03  3:52 Zac Medico
2011-06-03  3:31 Zac Medico
2011-05-27 23:17 Zac Medico
2011-05-27 22:56 Zac Medico
2011-05-27  3:29 Zac Medico
2011-05-27  1:23 Zac Medico
2011-05-27  0:36 Zac Medico
2011-05-26 22:15 Zac Medico
2011-05-26 13:02 Zac Medico
2011-05-26 12:22 Zac Medico
2011-05-26 12:22 Zac Medico
2011-05-26  6:41 Zac Medico
2011-05-26  1:08 Zac Medico
2011-05-26  0:31 Zac Medico
2011-05-25  6:33 Zac Medico
2011-05-25  6:26 Zac Medico
2011-05-25  3:58 Zac Medico
2011-05-25  3:11 Zac Medico
2011-05-25  2:53 Zac Medico
2011-05-25  0:45 Zac Medico
2011-05-25  0:30 Zac Medico
2011-05-24  5:55 Zac Medico
2011-05-23 22:12 Zac Medico
2011-05-23 21:21 Zac Medico
2011-05-22 21:22 Zac Medico
2011-05-22 18:54 Zac Medico
2011-05-22  0:48 Zac Medico
2011-05-21  8:40 Zac Medico
2011-05-20 22:01 Zac Medico
2011-05-20 21:58 Zac Medico
2011-05-20 20:40 Zac Medico
2011-05-20  6:32 Zac Medico
2011-05-20  6:24 Zac Medico
2011-05-20  4:53 Zac Medico
2011-05-18  4:37 Zac Medico
2011-05-18  4:01 Zac Medico
2011-05-18  2:16 Zac Medico
2011-05-18  1:50 Zac Medico
2011-05-18  1:31 Zac Medico
2011-05-18  0:55 Zac Medico
2011-05-17 21:32 Zac Medico
2011-05-17 19:44 Zac Medico
2011-05-17  7:10 Zac Medico
2011-05-17  6:55 Zac Medico
2011-05-17  6:29 Zac Medico
2011-05-17  6:11 Zac Medico
2011-05-16 19:31 Zac Medico
2011-05-16  7:21 Zac Medico
2011-05-16  7:10 Zac Medico
2011-05-16  6:55 Zac Medico
2011-05-16  6:18 Zac Medico
2011-05-15  9:02 Zac Medico
2011-05-15  8:14 Zac Medico
2011-05-15  8:03 Zac Medico
2011-05-15  5:21 Zac Medico
2011-05-14 21:01 Zac Medico
2011-05-11 23:49 Zac Medico
2011-05-11 20:24 Zac Medico
2011-05-11  4:07 Zac Medico
2011-05-10 23:53 Zac Medico
2011-05-10 23:53 Zac Medico
2011-05-10  5:11 Zac Medico
2011-05-10  1:03 Zac Medico
2011-05-09 22:34 Zac Medico
2011-05-09  6:28 Zac Medico
2011-05-09  6:09 Zac Medico
2011-05-08 19:05 Zac Medico
2011-05-08 18:27 Zac Medico
2011-05-08  6:25 Zac Medico
2011-05-08  5:58 Zac Medico
2011-05-08  4:53 Zac Medico
2011-05-07  3:28 Zac Medico
2011-05-05 17:20 Zac Medico
2011-05-05 15:56 Zac Medico
2011-05-04 21:42 Zac Medico
2011-05-04 18:19 Zac Medico
2011-05-04 17:24 Zac Medico
2011-05-02 20:00 Zac Medico
2011-05-02 19:35 Zac Medico
2011-05-02  3:10 Zac Medico
2011-05-02  1:44 Zac Medico
2011-05-01 23:28 Zac Medico
2011-05-01 21:17 Zac Medico
2011-05-01 20:23 Zac Medico
2011-04-30 20:41 Zac Medico
2011-04-29 16:08 Zac Medico
2011-04-29 15:04 Zac Medico
2011-04-28 21:07 Zac Medico
2011-04-28 13:00 Zac Medico
2011-04-27 22:58 Zac Medico
2011-04-27 16:14 Zac Medico
2011-04-27 14:36 Zac Medico
2011-04-27 14:06 Zac Medico
2011-04-26 23:58 Zac Medico
2011-04-26 20:50 Arfrever Frehtes Taifersar Arahesis
2011-04-26 20:27 Zac Medico
2011-04-11 19:01 Zac Medico
2011-04-10 20:06 Zac Medico
2011-04-10 20:04 Zac Medico
2011-03-30 18:38 Zac Medico
2011-03-26 17:25 Zac Medico
2011-03-26 16:13 Zac Medico
2011-03-26  8:53 Zac Medico
2011-03-26  7:06 Zac Medico
2011-03-26  3:38 Zac Medico
2011-03-25 16:53 Zac Medico
2011-03-25 16:00 Zac Medico
2011-03-25  1:17 Zac Medico
2011-03-24  4:09 Zac Medico
2011-03-21  0:16 Zac Medico
2011-03-20 15:58 Zac Medico
2011-03-18 23:45 Zac Medico
2011-03-18 21:38 Zac Medico
2011-03-18 21:11 Zac Medico
2011-03-17 21:40 Zac Medico
2011-03-17 20:08 Zac Medico
2011-03-17  5:36 Zac Medico
2011-03-17  4:57 Zac Medico
2011-03-17  4:51 Zac Medico
2011-03-17  3:47 Zac Medico
2011-03-17  1:43 Zac Medico
2011-03-17  1:19 Zac Medico
2011-03-17  0:36 Zac Medico
2011-03-12 18:39 Zac Medico
2011-03-11  6:02 Zac Medico
2011-03-11  6:02 Zac Medico
2011-03-11  3:30 Zac Medico
2011-03-10  5:55 Zac Medico
2011-03-09  3:29 Zac Medico
2011-03-09  2:54 Arfrever Frehtes Taifersar Arahesis
2011-03-02 16:40 Zac Medico
2011-03-01 21:53 Zac Medico
2011-02-28 18:01 Zac Medico
2011-02-25  6:30 Zac Medico
2011-02-25  6:00 Zac Medico
2011-02-22 17:31 Zac Medico
2011-02-22  3:16 Zac Medico
2011-02-22  3:00 Zac Medico
2011-02-22  2:40 Zac Medico
2011-02-22  2:09 Zac Medico
2011-02-22  0:37 Zac Medico
2011-02-20  9:44 Zac Medico
2011-02-20  9:41 Zac Medico
2011-02-18 16:45 Zac Medico
2011-02-18 16:17 Zac Medico
2011-02-18 16:00 Zac Medico
2011-02-18 15:19 Zac Medico
2011-02-18 12:05 Zac Medico
2011-02-17 10:33 Zac Medico
2011-02-14 17:01 Zac Medico
2011-02-14 16:44 Zac Medico
2011-02-14 16:33 Zac Medico
2011-02-14 15:30 Zac Medico
2011-02-14  7:22 Zac Medico
2011-02-14  7:17 Zac Medico
2011-02-14  6:45 Zac Medico
2011-02-14  6:06 Zac Medico
2011-02-14  5:51 Zac Medico
2011-02-14  5:01 Zac Medico
2011-02-14  3:29 Zac Medico
2011-02-13 11:14 Zac Medico
2011-02-13  9:13 Zac Medico
2011-02-12  6:10 Zac Medico
2011-02-11  8:59 Zac Medico
2011-02-08 19:40 Zac Medico
2011-02-05  7:33 Zac Medico
2011-02-05  3:21 Zac Medico
2011-02-04 17:43 zmedico
2011-02-04 15:46 zmedico

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=785fe0b42a66b1d137955a4b816b3c254a1b785d.zmedico@gentoo \
    --to=zmedico@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox