diff options
author | Adam J. Stewart <ajstewart426@gmail.com> | 2017-04-25 13:01:25 -0500 |
---|---|---|
committer | Todd Gamblin <tgamblin@llnl.gov> | 2017-04-25 11:01:25 -0700 |
commit | 58f2a947db98bdecb061133a7b6780fa405fbd33 (patch) | |
tree | 21061413e68f4563b54276088f613ed3dd85bac2 /var/spack/repos/builtin.mock/packages/flake8/package.py | |
parent | 827ebe280db235ce5d11ee19b822c04ea239621c (diff) | |
download | spack-58f2a947db98bdecb061133a7b6780fa405fbd33.tar.gz spack-58f2a947db98bdecb061133a7b6780fa405fbd33.tar.bz2 spack-58f2a947db98bdecb061133a7b6780fa405fbd33.tar.xz spack-58f2a947db98bdecb061133a7b6780fa405fbd33.zip |
Properly ignore flake8 F811 redefinition errors (#3932)
* Properly ignore flake8 F811 redefinition errors
* Add unit tests for flake8 command
* Allow spack flake8 to work on systems with older git
* Skip flake8 unit tests for Python 2.6 and 3.3
Diffstat (limited to 'var/spack/repos/builtin.mock/packages/flake8/package.py')
-rw-r--r-- | var/spack/repos/builtin.mock/packages/flake8/package.py | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/var/spack/repos/builtin.mock/packages/flake8/package.py b/var/spack/repos/builtin.mock/packages/flake8/package.py new file mode 100644 index 0000000000..bd062d71bc --- /dev/null +++ b/var/spack/repos/builtin.mock/packages/flake8/package.py @@ -0,0 +1,79 @@ +############################################################################## +# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC. +# Produced at the Lawrence Livermore National Laboratory. +# +# This file is part of Spack. +# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved. +# LLNL-CODE-647188 +# +# For details, see https://github.com/llnl/spack +# Please also see the LICENSE file for our notice and the LGPL. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License (as +# published by the Free Software Foundation) version 2.1, February 1999. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and +# conditions of the GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +############################################################################## +from spack import * + + +class Flake8(Package): + """Package containing as many PEP 8 violations as possible. + All of these violations are exceptions that we allow in + package.py files.""" + + # Used to tell whether or not the package has been modified + state = 'unmodified' + + # Make sure pre-existing noqa is not interfered with + blatant_violation = 'line-that-has-absolutely-no-execuse-for-being-over-79-characters' # noqa + blatant_violation = 'line-that-has-absolutely-no-execuse-for-being-over-79-characters' # noqa: E501 + + # Keywords exempt from line-length checks + homepage = '#####################################################################' + url = '#####################################################################' + git = '#####################################################################' + svn = '#####################################################################' + hg = '#####################################################################' + list_url = '#####################################################################' + + # URL strings exempt from line-length checks + # http://######################################################################## + # https://####################################################################### + # ftp://######################################################################### + # file://######################################################################## + + # Directives exempt from line-length checks + version('2.0', '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef') + version('1.0', '0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef') + + variant('super-awesome-feature', default=True, description='Enable super awesome feature') + variant('somewhat-awesome-feature', default=False, description='Enable somewhat awesome feature') + + provides('lapack', when='@2.0+super-awesome-feature+somewhat-awesome-feature') + + extends('python', ignore='bin/(why|does|every|package|that|depends|on|numpy|need|to|copy|f2py3?)') + + depends_on('boost+atomic+chrono+date_time~debug+filesystem~graph~icu+iostreams+locale+log+math~mpi+multithreaded+program_options~python+random+regex+serialization+shared+signals~singlethreaded+system~taggedlayout+test+thread+timer+wave') + + conflicts('+super-awesome-feature', when='%intel@16:17+somewhat-awesome-feature') + + resource(name='Deez-Nuts', destination='White-House', placement='President', when='@2020', url='www.elect-deez-nuts.com') + + patch('hyper-specific-patch-that-fixes-some-random-bug-that-probably-only-affects-one-user.patch', when='%gcc@3.2.2:3.2.3') + + def install(self, spec, prefix): + pass + + # '@when' decorated functions are exempt from redefinition errors + @when('@2.0') + def install(self, spec, prefix): + pass |