Michael Vogt
bef5ee2c3b
improve error on invalid vars file (if its a list instead of a dict)
2013-12-12 09:56:30 +01:00
Jesse Keating
8cef210aea
Make sure ssh pipes are empty before moving on
...
Resolves issue #5082
Code as it was would hit a scenario where one of the FDs was not ready for
reading the first time through -- but p.poll() would show the process as
complete. This would cause ansible to continue on, while leaving some content
left in a pipe.
The other scenario -- the one that causes the unclosed quote, is if we go
through select.select() and we do get stdout in the ready for reading -- we
read from it (9000 bytes), but that's not all that is there. Again we'd get to
the p.poll() check and it would be indeed not none, but we would have left some
of stdout on the FD and thus the json blob would be malformed.
Tested with and without full ssh debugging.
Tested with and without ControlPersist
Tested with and without ControlPersist sockets already created
2013-12-11 21:32:37 -08:00
Michael DeHaan
929f8a5c93
Had to revert commits due to async.
2013-12-10 19:24:08 -05:00
Michael DeHaan
74e4ccb59b
Revert "ssh_alt.py / decrease # of ssh roundtrips"
...
This reverts commit 7f8863f96d
.
2013-12-10 19:23:52 -05:00
jeromew
7f8863f96d
ssh_alt.py / decrease # of ssh roundtrips
2013-12-10 06:00:21 -05:00
jeromew
db182ba498
copy ssh.py to ssh_alt.py
2013-12-09 14:11:29 -05:00
Steve Smith
5b81f88c8f
Cast the retrieved retries
var to an int before incrementing as it may be in string form.
...
For example, the following method of calculating the value will result in a type error:
appstatus_waitfor: 4 # Minutes
appstatus_delay: 5 # seconds
appstatus_retries: "{{ mins * 60 / delay }}"
2013-12-07 10:35:14 +01:00
Wanderlei Antonio Cavassin
6ba93817a9
Avoid UnicodeDecodeError exception when passing module args
2013-12-06 12:59:43 -02:00
James Tanner
bf78d8cf73
Addresses #5090 setup module was using path.is_file instead of path.isfile
2013-12-05 11:36:54 -05:00
cavassin
10f5af82f9
Prevent UnicodeEncodeError
...
Prevents UnicodeEncodeError: 'ascii' codec can't encode character, while printing shell commands output
2013-12-05 13:17:57 -02:00
jctanner
7aa35d64c2
Merge pull request #5091 from EspadaV8/5089_assemble_fix
...
#5089 hack-fix assemble module
2013-12-04 10:13:16 -08:00
Michael DeHaan
801ca96a8b
Merge pull request #5152 from sivel/too-many-ps
...
The word skipped only has 2 p's not 3
2013-12-03 16:21:11 -08:00
Matt Martz
5f0f3566a6
Skipped only has 2 p's not 3
2013-12-03 15:42:34 -06:00
Matt Martz
8873c3675b
Ensure we are looking for the right import to determine if the module_style is new. Fixes #5148
2013-12-03 15:36:33 -06:00
jctanner
2670529671
Merge pull request #5090 from dragon3/hostname_support_amazon_linux
...
hostname module: add support for Amazon Linux
2013-12-03 12:34:55 -08:00
James Tanner
d227614529
Fixes #5109 synchronize module ssh port
...
Added a parameter for dest_port and also check ansible_ssh_port inventory variable.
2013-12-03 14:48:20 -05:00
jctanner
93159cb9cd
Merge pull request #4996 from sivel/rax-module-utils
...
Implement ansible.module_utils.rax
2013-12-02 11:55:59 -08:00
Janez Nemanic
8752ae6909
Fix for issue #4730 - stacktrace when deferenencing a non-existent group
2013-12-02 18:25:43 +01:00
Will Thames
76aca4d547
Make first argument to syslog.openlog be a string
...
syslog.openlog expects its first argument to be a string.
Without this change running under ipython fails.
2013-12-02 19:11:27 +10:00
James Cammarata
9101c2af98
Fix traceback in template error detection code
...
Fixes #5081
2013-11-29 08:47:54 -06:00
Andrew Smith
eed32ea70c
dest_contents isn’t always defined, so don’t pass it around
...
I think this is also a bit of a hack since it should probably be set
before being used, I’m just not sure what it should be set to.
2013-11-28 10:59:51 +10:00
Andrew Smith
e2d03173d2
The file module doesn’t have it’s module_args reset
...
I believe that this should be reset in the same way that the copy module
does
2013-11-28 10:58:14 +10:00
Andrew Smith
7b01c83159
Passing in complex_args throws ‘unsupported parameter for module’ errors
...
When using assemble only params (e.g. remote_src) the copy (and I’m
guessing file) modules throw an error that the param isn’t supported.
Simply removing the complex_args param fixes it for me, but I’m not sure
that’s the correct thing to do
2013-11-28 10:55:35 +10:00
Andrew Smith
da44a7f0cb
I think that resultant is meant to be the contents of the combined file
...
It is used for the transfer and as a diff param but isn’t actually
defined anywhere before it’s used. This seemed like the least bad place
to set it.
2013-11-28 10:53:00 +10:00
Andrew Smith
4503413baa
ReturnData is used throughout but not actually imported
2013-11-28 10:51:04 +10:00
dragon3
d39e6fda92
hostname module: add support for Amazon Linux
2013-11-28 09:31:25 +09:00
Andrew Smith
7d007cac16
Correct the invocation of ‘_assemble_from_fragments’
2013-11-28 09:44:14 +10:00
jctanner
920bc6e75b
Merge pull request #5086 from j2sol/fix-accelerate_inventory
...
Avoid a traceback when using accelerate
2013-11-27 14:46:12 -08:00
James Tanner
b6879ca2bd
Fixes #5030 compare connection user and sudo user and disable sudo if identical
2013-11-27 17:01:53 -05:00
Jesse Keating
5522d489e3
Avoid a traceback when using accelerate
...
This bit of code is attempting to access accelerate_inventory_host,
which may not have been set/created. This will cause a traceback.
Instead use getattr with a fallback to False.
2013-11-27 13:58:11 -08:00
James Tanner
12ed39ef7b
Fixes #5056 Append new hosts to the groups cache
2013-11-27 13:04:31 -05:00
James Cammarata
1f80aa768a
Fix bug in error detection code, where a zero-length string was causing a traceback
...
Fixes #5064
2013-11-27 11:57:15 -06:00
Brian Coca
65885feeeb
fixed typo for assemble function
2013-11-26 08:30:28 -05:00
James Tanner
b8146e3bc7
Fixes #4979 Check for the correct context when inside the inventory_hostnames plugin
2013-11-25 10:57:10 -05:00
James Tanner
903c4cae7b
Fixes #5031 Template the delay value and cast to float for loops
2013-11-25 10:13:55 -05:00
Serge van Ginderachter
2f9470ec1d
synchronize: allow ansible_ssh_host to be templated
...
This is already enabled in the runner also.
2013-11-25 15:33:04 +01:00
Antonio Zanardo
8dbd91b5ad
fix typo in deprecation warning
2013-11-23 19:15:51 -02:00
James Tanner
bca2634d54
Fix missing eval for string search in ssh controlpersist
2013-11-22 12:22:53 -05:00
James Tanner
a16fe923ed
Addresses #5011 check for proper string in smartos ssh error output
2013-11-22 12:13:24 -05:00
jctanner
5c84d7e445
Merge pull request #5002 from ovcharenko/devel
...
Allow to specify ansible_ssh_private_key_file location related to user home directory
2013-11-22 06:39:07 -08:00
James Tanner
512ebdb971
Revert "Merge pull request #5001 from ovcharenko/devel"
...
This reverts commit d6c3103a00
, reversing
changes made to b11f96eaa4
.
2013-11-22 00:09:37 -05:00
Aleksey Ovcharenko
9af44b1b42
Update to 4 space indent
2013-11-22 04:20:14 +02:00
Aleksey Ovcharenko
30678e04ac
Make tests happy
2013-11-22 04:06:10 +02:00
Aleksey Ovcharenko
2222f6df58
Allow to specify ansible_ssh_private_key_file location related to user home directory
2013-11-22 01:47:03 +02:00
Matt Martz
3f2cbb7583
Add ansible.module_utils.rax
2013-11-21 15:46:25 -06:00
James Tanner
9b991b9154
Version bump for 1.5
2013-11-21 16:33:23 -05:00
Jan-Piet Mens
252a51be91
New lookup plugin csvreader
2013-11-21 09:39:52 +01:00
James Tanner
b815a09529
Fix pep8 error in password lookup
2013-11-19 16:36:18 -05:00
James Tanner
e81c976636
Fix pep8 errors in unarchive module
2013-11-19 16:35:06 -05:00
jctanner
68afd9da9f
Merge pull request #4866 from sergevanginderachter/known_hosts_sudo
...
Check real user's known_hosts when sudo ansible...
2013-11-19 12:13:24 -08:00
Brian Coca
34c33f7ea1
now correctly spell symmetric
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-11-19 14:48:11 -05:00
Brian Coca
460bbfaec1
added union filter
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-11-19 14:40:55 -05:00
Brian Coca
afe30a6633
added difference and symetric difference filters
...
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-11-19 00:06:38 -05:00
Michael DeHaan
fc909b453f
Make the legacy template detection system not hit a false positive when
...
replacing a \$ with $.
2013-11-18 17:51:57 -05:00
jctanner
93223510af
Merge pull request #4936 from stoned/group-get_hosts-perf2
...
Improve Group.get_hosts() performance.
2013-11-18 14:13:08 -08:00
Matt Haggard
389602b8dd
Merge pull request #4920 from iffy/ansible
...
Collect all stdout over ssh transport before returning data
2013-11-18 15:09:21 -05:00
Michael DeHaan
f18acee779
Merge pull request #4937 from skyl/synchronize-keyerror
...
KeyError: 'delegate_to' lookup in sync module needs to be checked to see if defined for ad hoc
2013-11-18 11:40:27 -08:00
James Tanner
e8b54dd073
Fixes #4852 properly evaluate log_path writability
2013-11-18 10:40:49 -05:00
Skylar Saveland
7bc64581d7
KeyError: 'delegate_to' no more
2013-11-17 21:26:17 -08:00
Stoned Elipot
b00bf02129
Improve Group.get_hosts() performance.
...
- reduce hosts group list to unique elements faster
- add a cache of already computed hosts group list
2013-11-18 03:48:55 +01:00
jctanner
009fdbf96a
Merge pull request #4896 from mjschultz/aws-access-keys
...
Check for AWS keys using boto names
2013-11-14 12:59:07 -08:00
jctanner
04847191b4
Merge pull request #4879 from bcoca/unique_intersect
...
added unique and intersect filters for dealing with lists
2013-11-14 12:46:50 -08:00
jctanner
0f0a89b34e
Merge pull request #4758 from alanfairless/group-host-var-dirs
...
Support organizing group and host variables across multiple files in a directory
2013-11-14 11:57:11 -08:00
jctanner
77affdefbc
Merge pull request #4585 from mscherer/connec_func
...
connection plugin to reuse the func/certmaster interface instead of ssh
2013-11-14 08:15:17 -08:00
jctanner
be67a6f815
Merge pull request #4625 from pileofrogs/devel
...
unarchive module & action plugin
2013-11-14 07:57:57 -08:00
jctanner
e4494be8c6
Merge pull request #4803 from dragon3/devel
...
Don't fail if ec2_access_key/ec2_secret_key not specified to use IAM rol...
2013-11-14 05:55:48 -08:00
Michael J. Schultz
5f9485499c
Check for AWS keys using boto names
...
- see https://github.com/boto/boto#getting-started-with-boto
2013-11-13 16:01:39 -06:00
James Tanner
33242cacf3
Merge pull request #4375 from pfalcon/ansible
...
copy: Implement recursive copying if src is a directory.
2013-11-13 15:52:40 -05:00
jctanner
9a7765daf7
Merge pull request #4351 from 2m/leading-range-fix
...
Allow leading ranges in the inventory host entries.
2013-11-13 10:48:57 -08:00
jctanner
6dd81f25d9
Merge pull request #4856 from akuznecov/devel
...
Resolves #4855 issue with synchronize module failing on multiple items
2013-11-12 15:37:26 -08:00
James Tanner
f31cb7c6e8
Merge pull request #4664 from jpmens/ansible
...
Lookup plugin for etcd
with support for configurable etcd URL in ansible.cfg (and environment)
2013-11-12 15:29:05 -05:00
James Tanner
dc41bb8085
Merge pull request #4207 from ashorin/ansible
...
Fail playbook when serial is set and hadlers fail on set.
2013-11-12 14:37:07 -05:00
jctanner
2cf335969f
Merge pull request #4738 from bcoca/assemble_action_plugin
...
assemble can now use src from master/origin
2013-11-12 08:23:39 -08:00
Brian Coca
efd87534eb
added unique and intersect filters for dealing with lists
...
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
2013-11-12 10:34:57 -05:00
James Tanner
6e49ee6cfc
Remove commented code block
2013-11-11 14:44:13 -05:00
James Tanner
288c33e286
Merge pull request #4078 from mkaluza/ansible
...
add 'chars' parameter to password plugin to allow custom character set
2013-11-11 14:30:49 -05:00
jctanner
0c29807ba3
Merge pull request #3993 from stoned/inventory-script-all-group-fix
...
Avoid duplicates of the 'all' group when using inventory script.
2013-11-11 10:42:00 -08:00
Marcus Cobden
8d98a55df1
Fix setup.py to work with 'pip install -e .'
2013-11-11 14:00:38 +00:00
Serge van Ginderachter
80fd22dce6
Check real user's known_hosts when sudo ansible...
...
closes #4834
2013-11-09 13:29:39 +01:00
James Tanner
74e7eba528
Fixes #4506 test length of context before checking invalid indexes
2013-11-08 13:17:02 -05:00
Alexander Kuznecov
9d2f9bf93c
resolves #4855
2013-11-09 00:14:55 +07:00
jctanner
8e8c8efc8f
Merge pull request #4769 from alanfairless/more-password-entropy-revised
...
Revised patch for more password entropy
2013-11-07 13:39:05 -08:00
jctanner
f51b8ffde9
Merge pull request #4836 from dekked/devel
...
Bug fix: support running handlers parametrized by name
2013-11-07 13:18:33 -08:00
James Tanner
898de833b0
Merge pull request #4413 from jerm/ansible
...
Add capability to pass in a PATH prefix to run_command and allow pip module
to utilize that to make virtualenv bin/ available in pip installs
2013-11-07 15:51:27 -05:00
Alan Descoins
bb6f02d0e8
Support running handler parametrized by name.
2013-11-07 16:54:06 -02:00
jctanner
8d9b53b445
Merge pull request #4733 from sivel/4323-sudo-pass
...
Add ansible_sudo_pass hostvar support. Fixes #4323
2013-11-05 15:01:19 -08:00
James Tanner
d93780bc8a
Addresses #4635 add list instead of join
2013-11-05 14:44:27 -05:00
James Tanner
2b5005687a
Fixes #4635 pass role conditionals to dependent roles
2013-11-05 14:38:21 -05:00
James Tanner
91aa7b51df
Remove invalid ipv6 parameter from setup execution
2013-11-04 17:23:32 -05:00
James Tanner
c1ed47933b
Fixes #4485 add an ipv6 parameter to accelerate so that the daemon will bind to an ipv6 port instead of ipv4
2013-11-04 17:20:03 -05:00
dragon3
ff5bd7fe06
Don't fail if ec2_access_key/ec2_secret_key not specified to use IAM role.
2013-11-04 23:41:44 +09:00
willthames
76c810afe3
AWS_ACCESS_KEY misspelt in shared EC2 connection library
2013-11-04 15:24:53 +10:00
Michael DeHaan
eab6737209
Clarify a warning message.
2013-11-03 12:47:07 -05:00
Michael DeHaan
70c9028e1e
include_vars plugin should look in vars/ path for a role.
2013-11-02 09:34:44 -04:00
Michael DeHaan
99687749a3
Merge pull request #4775 from steverweber/fix-4640
...
dont sudo if sudo_user is the same as the connection user
2013-11-01 15:27:55 -07:00
Steve Weber
5bd52796ec
dont sudo if sudo_user is the same as the active user
2013-11-01 14:19:33 -04:00
James Tanner
afa5988391
Fixes #4540 Use shared module snippet to evaluate ec2 credentials
2013-11-01 11:59:24 -04:00
Alan Fairless
0824f004d9
Revised patch for more password entropy
2013-11-01 09:51:35 -05:00
James Tanner
dc4d589ce0
Fixes #4767 detect hard links and set state in add_file_info
2013-11-01 09:41:22 -04:00
Michael DeHaan
b1b5280075
Reapply pep8 changes from previous revert.
2013-10-31 19:47:44 -04:00
Michael DeHaan
51fbc6d20a
Further simplify the debug: var=foo action plugin code.
2013-10-31 19:39:32 -04:00
Michael DeHaan
bbf212a268
Simplify the way the debug: var=varname plugin works.
2013-10-31 19:35:50 -04:00
Michael DeHaan
7f125567cb
Some simplification of include_vars and renamed include_files to include_vars.
2013-10-31 19:24:35 -04:00
Michael DeHaan
b69ab89eb1
Merge branch 'include_files' of git://github.com/bennojoy/ansible into devel
2013-10-31 19:14:27 -04:00
Michael DeHaan
465f3b1c91
This allows type=dict in a module to allow passing in a real dict or JSON.
2013-10-31 18:46:13 -04:00
Michael DeHaan
8b2cd6413b
When inside an apt or yum task account for multiple conditionals. Fixes 4745.
2013-10-31 17:19:58 -04:00
Michael DeHaan
d34a26e307
Undo an inadvertant revert from template changes so we still allow pythonic imports in module land.
2013-10-31 16:53:05 -04:00
Alan Fairless
65e5331079
Allow organizing host/group vars in a directory
...
So instead of having:
group_vars/production.yml
A user could chose to reorganize to:
group_vars/production/staff.yml
group_vars/production/networks.yml
group_vars/production/dns.yml
(Backwards compatible.)
2013-10-31 12:22:46 -05:00
Alan Fairless
babde9a84c
refactor to catch edge cases, remove repeated code
...
- Move all the supported YAML file extensions into a constant
- Use helper functions to avoid duplicate code for group/host vars
- Catch and disallow some confusing situations, such as the presence of
multiple group/host vars files for the same group/host, but with
different extensions. For example having both group_vars/all.yml and
group_vars/all.yaml.
- Catch and report file system permission issues, symlink errors,
unexpected file system objects
- Trivial performance improvement from making fewer stat system calls
- Restructuring that makes it easy for a following patch to support
directory recursion
2013-10-31 12:18:17 -05:00
Brian Coca
ac40d15120
now assemble module is also action plugin and can use local source for
...
files
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-10-30 21:40:42 -04:00
Michael DeHaan
7b331ef6ed
Fix code typo. I'll blame jet lag for now :)
2013-10-30 21:28:47 -04:00
Michael DeHaan
90cce35919
This allows variable references in playbooks in a different way.
2013-10-30 21:26:16 -04:00
Michael DeHaan
b5c9d5a59b
Inventory directory should always be absolute. Fixes #4535 .
2013-10-30 20:48:53 -04:00
Michael DeHaan
7201a6ffad
Evaluate the conditional for each item for modules that normally try to group with_items results
...
like yum and apt.
2013-10-30 20:35:33 -04:00
James Tanner
078aaa95a2
Revert 1f6edf7d76
and re-enable passing lists to yum and apt
2013-10-30 20:17:17 -04:00
Matt Martz
ea2ec6237a
Add ansible_sudo_pass hostvar support
2013-10-30 13:18:35 -05:00
James Tanner
d154bf8781
Revert templating enhancements from 73dbab70
e6c28658
d409352c
9858b1f2
4587528b
9b1fe455
214b0b05
8d3db803
7f9504d1
5031104c
35cb9dc2
2bd8cb57
1e85c754
2013-10-30 10:50:16 -04:00
James Tanner
0faecdf7d1
Fixes #4653 Set dest on results for copy module even if using file module
2013-10-28 22:50:55 -04:00
James Tanner
9249cf578d
Fixes #4572 Run until loop if until is set, ignoring result failures
2013-10-28 12:56:46 -04:00
Michael DeHaan
73dbab702f
Don't run lookup plugins while trying to simplify the input datastructure.
2013-10-28 09:08:53 -04:00
Michael DeHaan
6d0da41a55
No need to template modules with Jinja2 as this can confuse some docstring comments.
2013-10-28 08:18:24 -04:00
bennojoy
b53e7353f9
include files
2013-10-28 17:40:09 +05:30
Michael DeHaan
603db60828
Merge pull request #4288 from sivel/3725-regex
...
Add regex (search, match, regex) jinja2 filters. Fixes #3725
2013-10-27 08:48:12 -07:00
Michael DeHaan
4587528b99
Fix typo in comment.
2013-10-26 19:32:07 -04:00
Michael DeHaan
d409352c85
Remove some interior imports in the code. Not really needed but nice to have them gone.
2013-10-26 19:26:43 -04:00
Michael DeHaan
e6c28658b4
Add in some code to pre-template datastructures prior to template usage. This prevents a certain class of error
...
where filter evaluations can happen too early due to the template engine recursion being a bit limited.
Addresses #4662
2013-10-26 19:11:13 -04:00
Michael DeHaan
f05a3a81f9
Add missing file.
2013-10-26 11:39:22 -04:00
Michael DeHaan
54c902f102
Identation + misc PEP8 fixes.
2013-10-26 11:18:11 -04:00
Michael DeHaan
bbb359870e
Add package file.
2013-10-26 11:10:54 -04:00
Michael DeHaan
9858b1f2f3
Enable imports to work on a snippet based system, allowing for instance a library of common EC2 functions
...
to be reused between modules. See library/system/service and library/system/ping for initial examples. Can
work the old way to just import 'basic', or can import the new way to import multiple pieces of code from
module_utils/.
2013-10-26 11:09:30 -04:00
jctanner
43f48a2e02
Merge pull request #4167 from tima/rsync3
...
synchronization module take 3
2013-10-25 14:43:08 -07:00
James Tanner
40886c42b5
Fixes #4561 Compare task name without role prefix for start-at-task
2013-10-25 16:09:43 -04:00
James Tanner
1f6edf7d76
Fixes #4665 and #4666 If task is conditional do not flatten items list for packaging modules
2013-10-25 13:46:41 -04:00
James Tanner
9b1fe455c6
Fixes #4549 Do not call lookup plugins when templating a task's name
2013-10-25 10:27:38 -04:00
Serge van Ginderachter
6277e770a1
include basedir as 'playbook_dir' variable
...
closes #4246
2013-10-25 07:53:52 +02:00
Jan-Piet Mens
bd5cd8e652
Lookup plugin for etcd
...
with support for configurable etcd URL in ansible.cfg (and environment)
2013-10-24 21:28:48 +02:00
James Tanner
b803aac6ec
Fixes #4500 change ec2 module params to type=bool
...
Revert 4833c2fdf0
2013-10-24 09:19:25 -04:00
James Cammarata
b9dd514713
Minor fix for putting 0-length files over accelerated connections
...
Fixes #4652
2013-10-23 13:09:25 -07:00
James Tanner
4833c2fdf0
Fixes #4500 python bools return uppercase True and False, so allow those for BOOLEANS in module common
2013-10-23 15:54:36 -04:00
James Tanner
214b0b052c
Fixes #4608 add lookup to template globals to make plugins work again
2013-10-22 12:00:54 -04:00
Dylan Martin
2c28e1daea
unarchive module & action_plugin added
2013-10-21 15:22:42 -05:00
James Tanner
4f13967386
Fixes #4536 Get the remote_user from multiple sources in a preferred order
2013-10-21 12:07:51 -04:00
Timothy Appnel
cbae9c913e
synchronize module src and dest handles template markers.
2013-10-19 22:39:25 -04:00
Michael DeHaan
60944b81f0
Provide warning about "with_items: '{{ loop }}'" being redundant only when {{ starts the expression value. Fixes #4582 .
2013-10-19 14:24:12 -04:00
Michael DeHaan
2bd8cb5790
Make the deprecation detector in templates more accurate. Fixes #4514 .
2013-10-19 14:14:16 -04:00
Michael DeHaan
4125b05bf3
Allow a defaults file to solely define a role. Some typo fixes.
2013-10-19 14:01:20 -04:00
Michael DeHaan
64bbeb9d24
Suggest fixing unbalanced quotes in a bit less cases. Fixes #4501
2013-10-19 13:57:28 -04:00
Michael DeHaan
7f9504d14d
Fix a typo.
2013-10-19 13:52:48 -04:00
Michael DeHaan
8d3db80370
Some misc cleanup and removal of unused imports.
2013-10-19 13:50:14 -04:00
Michael DeHaan
21d4400c96
Misc pep8 fixes
2013-10-19 13:03:15 -04:00