Import LGTM config to disable some stuff

- ignore mitogen/compat/**
- switch off unreachable code check
- switch off try/finally vs. with
- switch off mixed import/import-from
pull/618/head
David Wilson 5 years ago
parent 3b63da670f
commit 6af337c3d3

@ -0,0 +1,416 @@
# ##########################################################################################
# # Customize file classifications. #
# # Results from files under any classifier will be excluded from LGTM #
# # statistics. #
# ##########################################################################################
#
# ##########################################################################################
# # Use the `path_classifiers` block to define changes to the default classification of #
# # files. #
# ##########################################################################################
#
path_classifiers:
# docs:
# # Identify the top-level file called `generate_javadoc.py` as documentation-related.
# - generate_javadoc.py
# test:
# # Override LGTMs default classification of test files by excluding all files.
# - exclude: /
# # Classify all files in the top-level directories test/ and testsuites/ as test code.
# - test
# - testsuites
# # Classify all files with suffix `.test` as test code.
# # Note: use only forward slash / as a path separator.
# # Use ** to indicate an arbitrary parent path.
# # Use * to indicate any sequence of characters excluding /.
# # Always enclose the expression in double quotes if it includes *.
# - "**/*.test"
# # Refine the classifications above by excluding files in test/util/.
# - exclude: test/util
# # The default behavior is to tag all files created during the
# # build as `generated`. Results are hidden for generated code. You can tag
# # further files as being generated by adding them to the `generated` section.
# generated:
# # Exclude all `*.c` files under the `ui/` directory from classification as
# # generated code.
# # By default, all files not checked into the repository are considered to be
# # 'generated'.
# - exclude: ui/**.c
# # The default behavior is to tag library code as `library`. Results are hidden
# # for library code. You can tag further files as being library code by adding them
# # to the `library` section.
library:
- "mitogen/compat"
# # The default behavior is to tag template files as `template`. Results are hidden
# # for template files. You can tag further files as being template files by adding
# # them to the `template` section.
# template:
# # Define your own category, for example: 'some_custom_category'.
# some_custom_category:
# # Classify all files in the top-level directory tools/ (or the top-level file
# # called tools).
# - tools
#
# #########################################################################################
# # Use the `queries` block to change the default display of query results. #
# #########################################################################################
#
queries:
# Mitogen 2.4 compatibility trips this query everywhere, so just disable it
- exclude: py/unreachable-statement
- exclude: py/should-use-with
# mitogen.core.b() trips this query everywhere, so just disable it
- exclude: py/import-and-import-from
# # Specifically hide the results of two queries.
# - exclude: cpp/use-of-goto
# - exclude: java/equals-on-unrelated-types
# # Hide the results of all queries.
# - exclude: "*"
# # Refine by including the `java/command-line-injection` query.
# - include: java/command-line-injection
# # Include all queries tagged security and correctness', and with a severity of
# # error.
# - include:
# tags:
# - "security"
# - "correctness"
# severity: "error"
#
# #########################################################################################
# # Define changes to the default code extraction process. #
# # Each block configures the extraction of a single language, and modifies actions in a #
# # named step. Every named step includes automatic default actions, #
# # except for the prepare step. The steps are performed in the following sequence: #
# # prepare #
# # after_prepare #
# # configure (C/C++ only) #
# # python_setup (Python only) #
# # before_index #
# # index #
###########################################################################################
#
# #########################################################################################
# # Environment variables available to the steps: #
# #########################################################################################
#
# # LGTM_SRC
# # The root of the source tree.
# # LGTM_WORKSPACE
# # An existing (initially empty) folder outside the source tree.
# # Used for temporary download and setup commands.
#
# #########################################################################################
# # Use the extraction block to define changes to the default code extraction process #
# # for one or more languages. The settings for each language are defined in a child #
# # block, with one or more steps. #
# #########################################################################################
#
# extraction:
# # Define settings for C/C++ analysis
# #####################################
# cpp:
# # The `prepare` step exists for customization on LGTM.com only.
# prepare:
# # The `packages` section is valid for LGTM.com only. It names Ubuntu packages to
# # be installed.
# packages:
# - libxml2-dev
# - libxslt1-dev
# # Add an `after-prepare` step if you need to run commands after the prepare step.
# # Each command should be listed on a separate line.
# # This step is useful for C/C++ analysis where you want to prepare the environment
# # for the `configure` step without changing the default behavior for that step.
# after_prepare:
# - mkdir -p $LGTM_WORKSPACE/latest-gcc-symlinks
# - ln -s /usr/bin/g++-6 $LGTM_WORKSPACE/latest-gcc-symlinks/g++
# - ln -s /usr/bin/gcc-6 $LGTM_WORKSPACE/latest-gcc-symlinks/gcc
# - export PATH=$LGTM_WORKSPACE/latest-gcc-symlinks:$PATH
# - export GNU_MAKE=make
# - export GIT=true
# # The `configure` step generates build configuration files which the `index` step
# # then uses to build the codebase.
# configure:
# command:
# - ./prepare_deps
# # Optional step. You should add a `before_index` step if you need to run commands
# # before the `index` step.
# before_index:
# - export BOOST_DIR=$LGTM_SRC/boost
# - export GTEST_DIR=$LGTM_SRC/googletest
# - export HUNSPELL_DIR=$LGTM_SRC/hunspell
# - export CRYPTOPP_DIR=$LGTM_SRC/cryptopp
# # The `index` step builds the code and extracts information during the build
# # process.
# index:
# # Override the autobuild process by specifying a list of custom build commands
# # to use instead.
# build_command:
# - $GNU_MAKE -j2 -s
# # Specify that all project or solution files should be used for extraction.
# # Default: false.
# all_solutions: true
# # Specify a list of one or more project or solution files for extraction.
# # Default: LGTM chooses the file closest to the root of the repository (this may
# # fail if there are multiple candidates).
# solution:
# - myProject.sln
# # Specify MSBuild settings
# msbuild:
# # Specify a list of additional arguments to MSBuild. Default: empty.
# arguments: /p:Platform=x64 /p:Configuration=Release
# # Specify the MSBuild configuration to use, for example, debug or release.
# # Default: read from the solution file or files.
# configuration:
# # Specify the platform to target, for example: x86, x64, or Any CPU.
# # Default: read from the solution file or files.
# platform:
# # Specify the MSBuild target. Default: rebuild.
# target:
# # Specify whether or not to perform a NuGet restore for extraction. Default: true.
# nuget_restore: false
# # Specify a version of Microsoft Visual Studio to use for MSBuild or any custom
# # build commands (build_command). For example:
# # 10 for Visual Studio 2010
# # 12 for Visual Studio 2012
# # 14 for Visual Studio 2015
# # 15 for Visual Studio 2017
# # Default: read from project files.
# vstools_version: 10
#
# # Define settings for C# analysis
# ##################################
# csharp:
# # The `prepare` step exists for customization on LGTM.com only.
# prepare:
# # Add an `after-prepare` step if you need to run commands after the `prepare` step.
# # Each command should be listed on a separate line.
# after_prepare:
# - export PATH=$LGTM_WORKSPACE/tools:$PATH
# # The `index` step builds the code and extracts information during the build
# # process.
# index:
# # Specify that all project or solution files should be used for extraction.
# # Default: false.
# all_solutions: true
# # Specify a list of one or more project or solution files for extraction.
# # Default: LGTM chooses the file closest to the root of the repository (this may
# # fail if there are multiple candidates).
# solution:
# - myProject.sln
# # Override the autobuild process by specifying a list of custom build commands
# # to use instead.
# build_command:
# # By default, LGTM analyzes the code by building it. You can override this,
# # and tell LGTM not to build the code. Beware that this can lead
# # to less accurate results.
# buildless: true
# # Specify .NET Core settings.
# dotnet:
# # Specify additional arguments to `dotnet build`.
# # Default: empty.
# arguments:
# # Specify the version of .NET Core SDK to use.
# # Default: The version installed on the build machine.
# version: 2.1
# # Specify MSBuild settings.
# msbuild:
# # Specify a list of additional arguments to MSBuild. Default: empty.
# arguments: /P:WarningLevel=2
# # Specify the MSBuild configuration to use, for example, debug or release.
# # Default: read from the solution file or files.
# configuration: release
# # Specify the platform to target, for example: x86, x64, or Any CPU.
# # Default: read from the solution file or files.
# platform: x86
# # Specify the MSBuild target. Default: rebuild.
# target: notest
# # Specify whether or not to perform a NuGet restore for extraction. Default: true.
# nuget_restore: false
# # Specify a version of Microsoft Visual Studio to use for MSBuild or any custom
# # build commands (build_command). For example:
# # 10 for Visual Studio 2010
# # 12 for Visual Studio 2012
# # 14 for Visual Studio 2015
# # 15 for Visual Studio 2017
# # Default: read from project files
# vstools_version: 10
# # Specify additional options for the extractor,
# # for example --fast to perform a faster extraction that produces a smaller
# # database.
# extractor:
#
# # Define settings for COBOL analysis
# #####################################
# cobol:
# # The `prepare` step exists for customization on LGTM.com only.
# prepare:
# # Add an `after-prepare` step if you need to run commands after the prepare step.
# # Each command should be listed on a separate line.
# after_prepare:
# - export PATH=$LGTM_WORKSPACE/tools:$PATH
# index:
# # Specify the source file format: fixed, free, or variable.
# # Default: fixed.
# format: "variable"
# # Specify the number of spaces in a tab. Default: 4.
# tab_length: 2
# # Specify whether preprocessing is applied before extraction or not.
# # Default: true (preprocessing on).
# preprocessing: false
# # Specify file extensions that LGTM will identify as belonging to source files.
# # Default: files with a .CBL, .cbl, .COB or .cob extension are considered
# # source files.
# source_globs:
# - "**.cbl"
# - "**.CBL"
# - "**.cob"
# - "**.cobol"
# - "**.COB"
# # Specify file extensions that LGTM will identify as belonging to library files.
# # Default: files with a .CPY, .cpy, .COPY or .copy extension.
# library_globs:
# - "**.CPY"
# - "**.COPY"
#
# # Define settings for Java analysis
# ####################################
# java:
# # The `prepare` step exists for customization on LGTM.com only.
# prepare:
# # Add an `after-prepare` step if you need to run commands after the prepare step.
# # Each command should be listed on a separate line.
# after_prepare:
# - export PATH=$LGTM_WORKSPACE/tools:$PATH
# # The `index` step extracts information from the files in the codebase.
# index:
# # Specify Gradle settings.
# gradle:
# # Specify the required Gradle version.
# # Default: determined automatically.
# version: 4.4
# # Override the autobuild process by specifying a list of custom build commands
# # to use instead.
# build_command: ./compile-all.sh
# # Specify the Java version required to build the project.
# java_version: 11
# # Specify Maven settings.
# maven:
# # Specify the path (absolute or relative) of a Maven settings file to use.
# # Default: Maven uses a settings file in the default location, if it exists.
# settings_file: /opt/share/settings.xml
# # Specify the path of a Maven toolchains file.
# # Default: Maven uses a toolchains file in the default location, if it exists.
# toolchains_file: /opt/share/toolchains.xml
# # Specify the required Maven version.
# # Default: the Maven version is determined automatically, where feasible.
# version: 3.5.2
# # Specify how XML files should be extracted:
# # ALL = extract all XML files.
# # DEFAULT = only extract XML files named `AndroidManifest.xml`.
# # DISABLED = do not extract any XML files.
# xml_mode: ALL
#
# # Define settings for JavaScript analysis
# ##########################################
# javascript:
# # The `prepare` step exists for customization on LGTM.com only.
# prepare:
# # Add an `after-prepare` step if you need to run commands after the prepare step.
# # Each command should be listed on a separate line.
# after_prepare:
# - export PATH=$LGTM_WORKSPACE/tools:$PATH
# # The `index` step extracts information from the files in the codebase.
# index:
# # Specify a list of files and folders to extract.
# # Default: The project root directory.
# include:
# - src/js
# # Specify a list of files and folders to exclude from extraction.
# exclude:
# - thirdparty/lib
# - node_modules
# # You can add additional file types for LGTM to extract, by mapping file
# # extensions (including the leading dot) to file types. The usual
# # include/exclude patterns apply, so, for example, `.jsm` files under
# # `thirdparty/lib` and `node_modules` will not be extracted.
# filetypes:
# ".jsm": "js"
# ".tmpl": "html"
# # Specify a list of glob patterns to include/exclude files from extraction; this
# # is applied on top of the include/exclude paths from above; patterns are
# # processed in the same way as for path classifiers above.
# # Default: include all files with known extensions (such as .js, .ts and .html),
# # but exclude files ending in `-min.js` or `.min.js`.
# filters:
# # exclude any node_modules folders anywhere.
# - exclude: "**/node_modules/*"
# # exclude any *.ts files anywhere.
# - exclude: "**/*.ts"
# # but include *.ts files under src/js/typescript.
# - include: "src/js/typescript/**/*.ts"
# # Specify the type of project: module or script.
# # Default: type is automatically detected.
# source_type: module
# # Specify how TypeScript files should be extracted:
# # none = exclude all TypeScript files.
# # basic = extract syntactic information from TypeScript files.
# # full = extract syntactic and type information from TypeScript files.
# # Default: full.
# typescript: basic
# # By default, LGTM doesn't extract any XML files. You can override this by
# # using the `xml_mode` property and setting it to `all`.
# xml_mode: all
#
# # Define settings for Python analysis
# ######################################
# python:
# # The `prepare` step exists for customization on LGTM.com only.
# prepare:
# # The `packages` section is valid for LGTM.com only. It names packages to
# # be installed.
# packages: libpng-dev
# # This step is useful for Python analysis where you want to prepare the
# # environment for the `python_setup` step without changing the default behavior
# # for that step.
# after_prepare:
# - export PATH=$LGTM_WORKSPACE/tools:$PATH
# # This sets up the Python interpreter and virtual environment, ready for the
# # `index` step to extract the codebase.
# python_setup:
# # Specify packages that should NOT be installed despite being mentioned in the
# # requirements.txt file.
# # Default: no package marked for exclusion.
# exclude_requirements:
# - pywin32
# # Specify a list of pip packages to install.
# # If any of these packages cannot be installed, the extraction will fail.
# requirements:
# - Pillow
# # Specify a list of requirements text files to use to set up the environment,
# # or false for none. Default: any requirements.txt, test-requirements.txt,
# # and similarly named files identified in the codebase are used.
# requirements_files:
# - required-packages.txt
# # Specify a setup.py file to use to set up the environment, or false for none.
# # Default: any setup.py files identified in the codebase are used in preference
# # to any requirements text files.
# setup_py: new-setup.py
# # Override the version of the Python interpreter used for setup and extraction
# # Default: Python 3 if no version is explicitly specified, and if there are no
# # commits to the repository before January 1, 2017. Otherwise Python 2.
# version: 3
# # Optional step. You should add a `before_index` step if you need to run commands
# # before the `index` step.
# before_index:
# - antlr4 -Dlanguage=Python3 Grammar.g4
# # The `index` step extracts information from the files in the codebase.
# index:
# # Specify a list of files and folders to exclude from extraction.
# # Default: Git submodules and Subversion externals.
# exclude:
# - legacy-implementation
# - thirdparty/libs
# filters:
# - exclude: "**/documentation/examples/snippets/*.py"
# - include: "**/documentation/examples/test_application/*"
# include:
Loading…
Cancel
Save