From: "Brian Dolbec" <brian.dolbec@gmail.com>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/layman:master commit in: layman/
Date: Wed, 27 Apr 2011 10:58:43 +0000 (UTC) [thread overview]
Message-ID: <50833d06b407b6028d6b6ec66e938bc26cc23141.dol-sen@gentoo> (raw)
commit: 50833d06b407b6028d6b6ec66e938bc26cc23141
Author: Brian Dolbec <brian.dolbec <AT> gmail <DOT> com>
AuthorDate: Fri Mar 18 04:17:23 2011 +0000
Commit: Brian Dolbec <brian.dolbec <AT> gmail <DOT> com>
CommitDate: Sun Mar 27 02:39:13 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/layman.git;a=commit;h=50833d06
remove no longer used action.py
---
layman/action.py | 570 ------------------------------------------------------
1 files changed, 0 insertions(+), 570 deletions(-)
diff --git a/layman/action.py b/layman/action.py
deleted file mode 100644
index 7199054..0000000
--- a/layman/action.py
+++ /dev/null
@@ -1,570 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-#################################################################################
-# LAYMAN ACTIONS
-#################################################################################
-# File: action.py
-#
-# Handles layman actions.
-#
-# Copyright:
-# (c) 2005 - 2008 Gunnar Wrobel
-# Distributed under the terms of the GNU General Public License v2
-#
-# Author(s):
-# Gunnar Wrobel <wrobel@gentoo.org>
-#
-''' Provides the different actions that can be performed by layman.'''
-
-__version__ = "$Id: action.py 312 2007-04-09 19:45:49Z wrobel $"
-
-#===============================================================================
-#
-# Dependencies
-#
-#-------------------------------------------------------------------------------
-
-import os, sys
-
-from layman.dbbase import UnknownOverlayException
-from layman.db import DB, RemoteDB
-from layman.utils import path, delete_empty_directory
-from layman.debug import OUT
-
-#===============================================================================
-#
-# Class Fetch
-#
-#-------------------------------------------------------------------------------
-
-class Fetch:
- ''' Fetches the overlay listing.
-
- >>> import os
- >>> here = os.path.dirname(os.path.realpath(__file__))
- >>> cache = os.tmpnam()
- >>> config = {'overlays' :
- ... 'file://' + here + '/tests/testfiles/global-overlays.xml',
- ... 'cache' : cache,
- ... 'nocheck' : True,
- ... 'proxy' : None,
- ... 'quietness':3,
- ... 'svn_command':'/usr/bin/svn',
- ... 'rsync_command':'/usr/bin/rsync'}
- >>> a = Fetch(config)
- >>> a.run()
- 0
- >>> b = open(a.db.path(config['overlays']))
- >>> b.readlines()[24]
- ' A collection of ebuilds from Gunnar Wrobel [wrobel@gentoo.org].\\n'
-
- >>> b.close()
- >>> os.unlink(a.db.path(config['overlays']))
-
- >>> a.db.overlays.keys()
- [u'wrobel', u'wrobel-stable']
- '''
-
- def __init__(self, config):
- self.db = RemoteDB(config, ignore_init_read_errors=True)
-
- def run(self):
- '''Fetch the overlay listing.'''
- try:
- self.db.cache()
- except Exception, error:
- OUT.die('Failed to fetch overlay list!\nError was: '
- + str(error))
-
- return 0
-
-#===============================================================================
-#
-# Class Sync
-#
-#-------------------------------------------------------------------------------
-
-class Sync:
- ''' Syncs the selected overlays.'''
-
- def __init__(self, config):
-
- self.db = DB(config)
-
- self.rdb = RemoteDB(config)
-
- self.quiet = int(config['quietness']) < 3
-
- self.selection = config['sync']
-
- if config['sync_all'] or 'ALL' in self.selection:
- self.selection = self.db.overlays.keys()
-
- enc = sys.getfilesystemencoding()
- if enc:
- self.selection = [i.decode(enc) for i in self.selection]
-
- def run(self):
- '''Synchronize the overlays.'''
-
- OUT.debug('Updating selected overlays', 6)
-
- fatals = []
- warnings = []
- success = []
- for i in self.selection:
- try:
- odb = self.db.select(i)
- except UnknownOverlayException, error:
- fatals.append(str(error))
- continue
-
- try:
- ordb = self.rdb.select(i)
- except UnknownOverlayException:
- warnings.append(\
- 'Overlay "%s" could not be found in the remote lists.\n'
- 'Please check if it has been renamed and re-add if necessary.' % i)
- else:
- current_src = odb.sources[0].src
- available_srcs = set(e.src for e in ordb.sources)
- if ordb and odb and not current_src in available_srcs:
- if len(available_srcs) == 1:
- plural = ''
- candidates = ' %s' % tuple(available_srcs)[0]
- else:
- plural = 's'
- candidates = '\n'.join((' %d. %s' % (i + 1, v)) for i, v in enumerate(available_srcs))
-
- warnings.append(
- 'The source of the overlay "%(repo_name)s" seems to have changed.\n'
- 'You currently sync from\n'
- '\n'
- ' %(current_src)s\n'
- '\n'
- 'while the remote lists report\n'
- '\n'
- '%(candidates)s\n'
- '\n'
- 'as correct location%(plural)s.\n'
- 'Please consider removing and re-adding the overlay.' % {
- 'repo_name':i,
- 'current_src':current_src,
- 'candidates':candidates,
- 'plural':plural,
- })
-
- try:
- self.db.sync(i, self.quiet)
- success.append('Successfully synchronized overlay "' + i + '".')
- except Exception, error:
- fatals.append(
- 'Failed to sync overlay "' + i + '".\nError was: '
- + str(error))
-
- if success:
- OUT.info('\nSuccess:\n------\n', 3)
- for i in success:
- OUT.info(i, 3)
-
- if warnings:
- OUT.warn('\nWarnings:\n------\n', 2)
- for i in warnings:
- OUT.warn(i + '\n', 2)
-
- if fatals:
- OUT.error('\nErrors:\n------\n')
- for i in fatals:
- OUT.error(i + '\n')
- return 1
-
- return 0
-
-#===============================================================================
-#
-# Class Add
-#
-#-------------------------------------------------------------------------------
-
-class Add:
- ''' Adds the selected overlays.'''
-
- def __init__(self, config):
-
- self.config = config
-
- self.db = DB(config)
-
- self.rdb = RemoteDB(config)
-
- self.quiet = int(config['quietness']) < 3
-
- self.selection = config['add']
-
- enc = sys.getfilesystemencoding()
- if enc:
- self.selection = [i.decode(enc) for i in self.selection]
-
- if 'ALL' in self.selection:
- self.selection = self.rdb.overlays.keys()
-
- def run(self):
- '''Add the overlay.'''
-
- OUT.debug('Adding selected overlays', 6)
-
- result = 0
-
- for i in self.selection:
- try:
- overlay = self.rdb.select(i)
- except UnknownOverlayException, error:
- OUT.warn(str(error), 2)
- result = 1
- else:
- OUT.debug('Selected overlay', 7)
- try:
- self.db.add(overlay, self.quiet)
- OUT.info('Successfully added overlay "' + i + '".', 2)
- except Exception, error:
- OUT.warn('Failed to add overlay "' + i + '".\nError was: '
- + str(error), 2)
- result = 1
-
- return result
-
-#===============================================================================
-#
-# Class Delete
-#
-#-------------------------------------------------------------------------------
-
-class Delete:
- ''' Deletes the selected overlays.'''
-
- def __init__(self, config):
-
- self.db = DB(config)
-
- self.selection = config['delete']
-
- enc = sys.getfilesystemencoding()
- if enc:
- self.selection = [i.decode(enc) for i in self.selection]
-
- if 'ALL' in self.selection:
- self.selection = self.db.overlays.keys()
-
- def run(self):
- '''Delete the overlay.'''
-
- OUT.debug('Deleting selected overlays', 6)
-
- result = 0
-
- for i in self.selection:
- try:
- overlay = self.db.select(i)
- except UnknownOverlayException, error:
- OUT.warn(str(error), 2)
-
- mdir = path([self.db.config['storage'], i])
- delete_empty_directory(mdir)
-
- result = 1
- else:
- OUT.debug('Selected overlay', 7)
- try:
- self.db.delete(overlay)
- OUT.info('Successfully deleted overlay "' + i + '".', 2)
- except Exception, error:
- OUT.warn('Failed to delete overlay "' + i + '".\nError was: '
- + str(error), 2)
- result = 1
-
- return result
-
-#===============================================================================
-#
-# Class Info
-#
-#-------------------------------------------------------------------------------
-
-class Info:
- ''' Print information about the specified overlays.
-
- >>> import os
- >>> here = os.path.dirname(os.path.realpath(__file__))
- >>> cache = os.tmpnam()
- >>> config = {'overlays' :
- ... 'file://' + here + '/tests/testfiles/global-overlays.xml',
- ... 'cache' : cache,
- ... 'proxy' : None,
- ... 'info' : ['wrobel'],
- ... 'nocheck' : False,
- ... 'verbose': False,
- ... 'quietness':3,
- ... 'svn_command':'/usr/bin/svn',
- ... 'rsync_command':'/usr/bin/rsync'}
- >>> a = Info(config)
- >>> a.rdb.cache()
- >>> OUT.color_off()
- >>> a.run()
- * wrobel
- * ~~~~~~
- * Source : https://overlays.gentoo.org/svn/dev/wrobel
- * Contact : nobody@gentoo.org
- * Type : Subversion; Priority: 10
- * Quality : experimental
- *
- * Description:
- * Test
- *
- 0
- '''
-
- def __init__(self, config):
-
- OUT.debug('Creating RemoteDB handler', 6)
-
- self.rdb = RemoteDB(config)
- self.config = config
-
- self.selection = config['info']
-
- enc = sys.getfilesystemencoding()
- if enc:
- self.selection = [i.decode(enc) for i in self.selection]
-
- if 'ALL' in self.selection:
- self.selection = self.rdb.overlays.keys()
-
- def run(self):
- ''' Print information about the selected overlays.'''
-
- result = 0
-
- for i in self.selection:
- try:
- overlay = self.rdb.select(i)
- except UnknownOverlayException, error:
- OUT.warn(str(error), 2)
- result = 1
- else:
- # Is the overlay supported?
- OUT.info(overlay.__str__(), 1)
- if not overlay.is_official():
- OUT.warn('*** This is no official gentoo overlay ***\n', 1)
- if not overlay.is_supported():
- OUT.error('*** You are lacking the necessary tools to install t'
- 'his overlay ***\n')
-
- return result
-
-#===============================================================================
-#
-# Class List
-#
-#-------------------------------------------------------------------------------
-
-class List(object):
- def __init__(self, config, db):
- self.config = config
- self.db = db
-
- def _run(self, complain):
- for summary, supported, official \
- in self.db.list(None, self.config['verbose'], self.config['width']):
- # Is the overlay supported?
- if supported:
- # Is this an official overlay?
- if official:
- OUT.info(summary, 1)
- # Unofficial overlays will only be listed if we are not
- # checking or listing verbose
- elif complain:
- # Give a reason why this is marked yellow if it is a verbose
- # listing
- if self.config['verbose']:
- OUT.warn('*** This is no official gentoo overlay ***\n', 1)
- OUT.warn(summary, 1)
- # Unsupported overlays will only be listed if we are not checking
- # or listing verbose
- elif complain:
- # Give a reason why this is marked red if it is a verbose
- # listing
- if self.config['verbose']:
- OUT.error('*** You are lacking the necessary tools '
- 'to install this overlay ***\n')
- OUT.error(summary)
-
-
-#===============================================================================
-#
-# Class ListRemote
-#
-#-------------------------------------------------------------------------------
-
-class ListRemote(List):
- ''' Lists the available overlays.
-
- >>> import os
- >>> here = os.path.dirname(os.path.realpath(__file__))
- >>> cache = os.tmpnam()
- >>> config = {'overlays' :
- ... 'file://' + here + '/tests/testfiles/global-overlays.xml',
- ... 'cache' : cache,
- ... 'proxy' : None,
- ... 'nocheck' : False,
- ... 'verbose': False,
- ... 'quietness':3,
- ... 'width':80,
- ... 'svn_command':'/usr/bin/svn',
- ... 'rsync_command':'/usr/bin/rsync'}
- >>> a = ListRemote(config)
- >>> a.db.cache()
- >>> OUT.color_off()
- >>> a.run()
- * wrobel [Subversion] (https://o.g.o/svn/dev/wrobel )
- 0
- >>> a.config['verbose'] = True
- >>> a.run()
- * wrobel
- * ~~~~~~
- * Source : https://overlays.gentoo.org/svn/dev/wrobel
- * Contact : nobody@gentoo.org
- * Type : Subversion; Priority: 10
- * Quality : experimental
- *
- * Description:
- * Test
- *
- * *** This is no official gentoo overlay ***
- *
- * wrobel-stable
- * ~~~~~~~~~~~~~
- * Source : rsync://gunnarwrobel.de/wrobel-stable
- * Contact : nobody@gentoo.org
- * Type : Rsync; Priority: 50
- * Quality : experimental
- *
- * Description:
- * A collection of ebuilds from Gunnar Wrobel [wrobel@gentoo.org].
- *
- 0
- '''
-
- def __init__(self, config):
- OUT.debug('Creating RemoteDB handler', 6)
- super(ListRemote, self).__init__(config, RemoteDB(config))
-
- def run(self):
- ''' List the available overlays.'''
-
- OUT.debug('Printing remote overlays.', 8)
-
- _complain = self.config['nocheck'] or self.config['verbose']
- self._run(complain=_complain)
-
- return 0
-
-#===============================================================================
-#
-# Class ListLocal
-#
-#-------------------------------------------------------------------------------
-
-class ListLocal(List):
- ''' Lists the local overlays.'''
-
- def __init__(self, config):
- OUT.debug('Creating DB handler', 6)
- super(ListLocal, self).__init__(config, DB(config))
-
- def run(self):
- '''List the overlays.'''
-
- OUT.debug('Printing local overlays.', 8)
-
- self._run(complain=True)
-
- return 0
-
-#===============================================================================
-#
-# MAIN
-#
-#-------------------------------------------------------------------------------
-
-def main(config):
- '''Dispatches to the actions the user selected. '''
-
- # Given in order of precedence
- actions = [('fetch', Fetch),
- ('add', Add),
- ('sync', Sync),
- ('info', Info),
- ('sync_all', Sync),
- ('delete', Delete),
- ('list', ListRemote),
- ('list_local', ListLocal),]
-
- if True: # A hack to save diff with indentation changes only
-
- # Make fetching the overlay list a default action
- if not 'nofetch' in config.keys():
- # Actions that implicitely call the fetch operation before
- fetch_actions = ['sync', 'sync_all', 'list']
- for i in fetch_actions:
- if i in config.keys():
- # Implicitely call fetch, break loop
- Fetch(config).run()
- break
-
- result = 0
-
- # Set the umask
- umask = config['umask']
- try:
- new_umask = int(umask, 8)
- old_umask = os.umask(new_umask)
- except Exception, error:
- OUT.die('Failed setting to umask "' + umask + '"!\nError was: '
- + str(error))
-
- for i in actions:
-
- OUT.debug('Checking for action', 7)
-
- if i[0] in config.keys():
- try:
- result += i[1](config).run()
- except Exception, error:
- OUT.error(str(error))
- result = -1 # So it cannot remain 0, i.e. success
- break
-
- # Reset umask
- os.umask(old_umask)
-
- if not result:
- sys.exit(0)
- else:
- sys.exit(1)
-
-#===============================================================================
-#
-# Testing
-#
-#-------------------------------------------------------------------------------
-
-if __name__ == '__main__':
- import doctest
-
- # Ignore warnings here. We are just testing
- from warnings import filterwarnings, resetwarnings
- filterwarnings('ignore')
-
- doctest.testmod(sys.modules[__name__])
-
- resetwarnings()
next reply other threads:[~2011-04-27 11:00 UTC|newest]
Thread overview: 246+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-27 10:58 Brian Dolbec [this message]
-- strict thread matches above, loose matches on Subject: below --
2020-04-24 20:59 [gentoo-commits] proj/layman:master commit in: layman/ Brian Dolbec
2020-04-24 20:59 Brian Dolbec
2017-03-22 6:36 Brian Dolbec
2017-02-02 17:12 Brian Dolbec
2017-02-02 1:12 Devan Franchini
2017-02-02 1:12 Devan Franchini
2016-11-10 2:59 Devan Franchini
2016-05-10 22:13 Brian Dolbec
2016-05-02 3:30 Devan Franchini
2016-03-10 0:00 Devan Franchini
2016-03-09 23:37 Devan Franchini
2016-02-29 6:21 Devan Franchini
2016-01-29 10:21 Brian Dolbec
2015-12-31 1:03 Devan Franchini
2015-12-26 23:24 Brian Dolbec
2015-11-29 3:26 Devan Franchini
2015-11-29 3:12 Devan Franchini
2015-10-17 3:20 Devan Franchini
2015-10-16 18:49 Devan Franchini
2015-10-16 18:49 Devan Franchini
2015-09-23 15:25 Devan Franchini
2015-09-05 6:03 Devan Franchini
2015-08-28 1:48 Devan Franchini
2015-08-28 1:48 Devan Franchini
2015-08-28 1:48 Devan Franchini
2015-08-04 1:05 Devan Franchini
2015-07-19 3:53 Devan Franchini
2015-07-17 17:05 Devan Franchini
2015-07-17 17:05 Devan Franchini
2015-07-17 17:05 Devan Franchini
2015-07-15 16:15 Devan Franchini
2015-07-15 15:53 Devan Franchini
2015-07-13 23:05 Devan Franchini
2015-07-13 13:26 Devan Franchini
2015-07-09 17:23 Devan Franchini
2015-07-09 16:18 Devan Franchini
2015-06-16 3:45 Devan Franchini
2015-06-14 4:12 Devan Franchini
2015-06-13 4:53 Devan Franchini
2015-06-13 2:38 Devan Franchini
2015-06-13 2:31 Devan Franchini
2015-05-13 21:32 Devan Franchini
2015-05-13 21:27 Devan Franchini
2015-05-13 20:38 Devan Franchini
2015-05-13 20:05 Devan Franchini
2015-05-13 19:58 Devan Franchini
2015-04-22 17:40 Devan Franchini
2015-04-20 17:15 Devan Franchini
2015-03-27 23:42 Devan Franchini
2015-03-26 22:50 Devan Franchini
2015-03-26 22:06 Devan Franchini
2015-03-24 23:08 Devan Franchini
2015-03-24 22:56 Devan Franchini
2015-03-24 22:20 Devan Franchini
2015-03-24 16:08 Devan Franchini
2015-03-07 22:40 Devan Franchini
2015-03-07 22:40 Devan Franchini
2015-03-07 22:10 Devan Franchini
2015-03-07 22:02 Devan Franchini
2015-02-21 18:41 Devan Franchini
2015-02-17 5:07 Brian Dolbec
2015-02-09 18:25 Devan Franchini
2015-02-08 4:20 Brian Dolbec
2015-02-08 4:20 Brian Dolbec
2015-02-08 2:58 Devan Franchini
2015-02-08 1:57 Brian Dolbec
2015-02-08 0:33 Devan Franchini
2015-02-05 2:56 Devan Franchini
2015-02-05 2:31 Devan Franchini
2015-02-05 2:20 Devan Franchini
2015-02-03 2:43 Devan Franchini
2014-12-08 4:15 Devan Franchini
2014-12-04 20:46 Devan Franchini
2014-11-13 19:03 Brian Dolbec
2014-11-13 18:43 Brian Dolbec
2014-11-13 18:43 Brian Dolbec
2014-11-13 18:08 Brian Dolbec
2014-11-13 18:08 Brian Dolbec
2014-11-13 18:08 Brian Dolbec
2014-11-13 18:08 Brian Dolbec
2014-11-02 21:14 Devan Franchini
2014-09-28 22:42 Devan Franchini
2014-09-20 17:47 Devan Franchini
2014-09-19 18:13 Devan Franchini
2014-09-19 18:13 Devan Franchini
2014-08-28 22:54 Brian Dolbec
2014-08-28 22:01 Devan Franchini
2014-08-28 22:01 Devan Franchini
2014-08-19 1:49 Devan Franchini
2014-08-19 1:49 Devan Franchini
2014-08-17 4:01 ` Devan Franchini
2014-08-19 1:49 Devan Franchini
2014-08-15 22:33 ` Devan Franchini
2014-08-19 1:49 Devan Franchini
2014-08-19 1:49 Devan Franchini
2014-08-15 23:27 ` Devan Franchini
2014-08-19 1:49 Devan Franchini
2014-08-15 23:16 ` Devan Franchini
2014-08-19 1:49 Devan Franchini
2014-08-16 22:46 ` Devan Franchini
2014-08-17 20:55 Devan Franchini
2014-08-19 1:49 ` Devan Franchini
2014-08-17 14:15 Brian Dolbec
2014-08-16 18:06 Brian Dolbec
2014-08-15 23:59 Devan Franchini
2014-08-19 1:49 ` Devan Franchini
2014-06-16 3:40 Brian Dolbec
2014-06-16 3:40 Brian Dolbec
2014-06-16 3:40 Brian Dolbec
2014-06-16 3:37 [gentoo-commits] proj/layman:gsoc2014 " Brian Dolbec
2014-06-16 3:40 ` [gentoo-commits] proj/layman:master " Brian Dolbec
2014-06-16 3:37 [gentoo-commits] proj/layman:gsoc2014 " Brian Dolbec
2014-06-16 3:40 ` [gentoo-commits] proj/layman:master " Brian Dolbec
2014-06-16 3:37 [gentoo-commits] proj/layman:gsoc2014 " Brian Dolbec
2014-06-16 3:40 ` [gentoo-commits] proj/layman:master " Brian Dolbec
2014-06-16 3:37 [gentoo-commits] proj/layman:gsoc2014 " Brian Dolbec
2014-06-16 3:40 ` [gentoo-commits] proj/layman:master " Brian Dolbec
2014-05-07 22:18 Devan Franchini
2014-03-10 3:18 Brian Dolbec
2013-12-29 2:30 Brian Dolbec
2013-08-18 14:48 Brian Dolbec
2013-07-29 1:46 Brian Dolbec
2013-01-11 18:29 Brian Dolbec
2012-12-16 18:13 Brian Dolbec
2012-11-28 4:14 Brian Dolbec
2012-11-28 4:02 Brian Dolbec
2012-11-28 4:02 Brian Dolbec
2012-11-18 22:15 Brian Dolbec
2012-11-18 22:15 Brian Dolbec
2012-11-18 22:15 Brian Dolbec
2012-11-01 4:00 Brian Dolbec
2012-10-30 8:30 Brian Dolbec
2012-10-17 6:21 Brian Dolbec
2012-10-17 6:21 Brian Dolbec
2012-10-13 22:20 Brian Dolbec
2012-10-13 22:20 Brian Dolbec
2012-10-08 5:37 Brian Dolbec
2012-10-07 23:40 Brian Dolbec
2012-10-07 23:40 Brian Dolbec
2012-06-07 4:49 Brian Dolbec
2012-06-07 4:49 Brian Dolbec
2012-06-07 4:49 Brian Dolbec
2012-04-14 2:14 Brian Dolbec
2012-04-09 19:47 Brian Dolbec
2012-04-01 21:54 Brian Dolbec
2012-03-26 3:43 Brian Dolbec
2012-03-04 15:36 Brian Dolbec
2011-12-27 2:20 Brian Dolbec
2011-10-27 4:42 Brian Dolbec
2011-10-26 23:19 Brian Dolbec
2011-10-14 3:14 Brian Dolbec
2011-09-24 6:07 Brian Dolbec
2011-08-25 3:33 Brian Dolbec
2011-08-21 7:53 Brian Dolbec
2011-08-21 7:53 Brian Dolbec
2011-08-21 7:53 Brian Dolbec
2011-08-20 17:06 Brian Dolbec
2011-08-20 17:06 Brian Dolbec
2011-08-11 3:24 Brian Dolbec
2011-08-11 3:24 Brian Dolbec
2011-08-11 3:24 Brian Dolbec
2011-08-11 3:24 Brian Dolbec
2011-08-09 2:46 Brian Dolbec
2011-08-07 21:21 Brian Dolbec
2011-08-07 7:12 Brian Dolbec
2011-08-07 7:12 Brian Dolbec
2011-08-07 7:12 Brian Dolbec
2011-08-07 6:00 Brian Dolbec
2011-08-07 2:29 Brian Dolbec
2011-08-06 20:30 Brian Dolbec
2011-08-06 18:29 Brian Dolbec
2011-08-06 18:29 Brian Dolbec
2011-07-28 21:33 Brian Dolbec
2011-07-23 6:45 Brian Dolbec
2011-07-20 18:34 Brian Dolbec
2011-07-12 20:01 Brian Dolbec
2011-07-12 19:57 Brian Dolbec
2011-07-12 19:57 Brian Dolbec
2011-07-12 19:02 Brian Dolbec
2011-07-12 19:02 Brian Dolbec
2011-05-18 5:19 Brian Dolbec
2011-05-18 5:13 Brian Dolbec
2011-05-14 13:06 Brian Dolbec
2011-05-05 9:44 Brian Dolbec
2011-05-02 5:25 Brian Dolbec
2011-05-01 2:18 Brian Dolbec
2011-05-01 0:53 Brian Dolbec
2011-05-01 0:26 Brian Dolbec
2011-04-30 22:37 Brian Dolbec
2011-04-30 22:37 Brian Dolbec
2011-04-30 6:37 Brian Dolbec
2011-04-30 6:37 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-04-27 10:58 Brian Dolbec
2011-02-19 11:01 Brian Dolbec
2011-02-19 11:01 Brian Dolbec
2011-02-19 11:01 Brian Dolbec
2011-02-19 11:01 Brian Dolbec
2011-02-19 4:49 Brian Dolbec
2011-02-19 4:47 Brian Dolbec
2011-02-19 4:10 Brian Dolbec
2011-02-19 4:07 Brian Dolbec
2011-02-17 21:53 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 6:00 Brian Dolbec
2011-02-14 0:54 [gentoo-commits] proj/layman:overlord_merge " Brian Dolbec
2011-02-14 6:00 ` [gentoo-commits] proj/layman:master " Brian Dolbec
2011-02-14 0:54 [gentoo-commits] proj/layman:overlord_merge " Brian Dolbec
2011-02-14 6:00 ` [gentoo-commits] proj/layman:master " Brian Dolbec
2011-02-14 0:54 [gentoo-commits] proj/layman:overlord_merge " Brian Dolbec
2011-02-14 6:00 ` [gentoo-commits] proj/layman:master " Brian Dolbec
2011-02-14 0:54 [gentoo-commits] proj/layman:overlord_merge " Brian Dolbec
2011-02-14 6:00 ` [gentoo-commits] proj/layman:master " Brian Dolbec
2011-02-14 0:54 [gentoo-commits] proj/layman:overlord_merge " Brian Dolbec
2011-02-14 6:00 ` [gentoo-commits] proj/layman:master " Brian Dolbec
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=50833d06b407b6028d6b6ec66e938bc26cc23141.dol-sen@gentoo \
--to=brian.dolbec@gmail.com \
--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