<commit_before>#######################################################################
# PackageEvaluator
# https://github.com/JuliaCI/PackageEvaluator.jl
# (c) <NAME> 2015
# Licensed under the MIT License
#######################################################################
# This file is a list of constants used in PackageEvaluator, incl.
# - License identification strings
# - Typical names for files where license information can be found
# - A list of packages that need "special treatment" for tests,
#   including whether they need the X virtual framebuffer running
#   and if they can be run at all.

# Regexes to identify the license type
const LICENSES=[("MIT",[
                    r"mit license",
                    r"mit expat license",
                    r"mit \"expat\" license",
                    r"permission is hereby granted, free of charge,"]),
                ("MPL v2",[
                    r"mpl version 2",
                    r"mozilla public license version 2"]),
                ("GPL v2",[
                    r"gpl version 2",
                    r"gpl ?v2",
                    r"gnu general public license\s+version 2",
                    r"gnu general public license, version 2",
                    r"free software foundation; either version 2"]),
                ("GPL v3",[
                    r"gpl version 3",
                    r"gpl ?v3",
                    r"http://www.gnu.org/licenses/gpl-3.0.txt",
                    r"gnu general public license\s+version 3",
                    r"free software foundation, either version 3"]),
                ("LGPL v2.1",[
                    r"lgpl version 2.1",
                    r"gnu lesser general public license\s+version 2\.1"]),
                ("LGPL v3.0",[
                    r"lgpl-3.0"
                    r"version 3 of the gnu lesser"]),
                ("BSD 3-clause",[r"bsd", r"promote products derived from this software"]),
                ("BSD 2-clause",[r"bsd", r"other materials provided with the\s+distribution.\s+this software"]),
                ("GNU Affero",  [r"gnu affero general public license"]),
                ("Apache",      [r"apache"]),
                ("zlib",        [r"zlib", r"the origin of this software must not be misrepresented"]),
                ("ISC",         [r"permission to use, copy, modify, and/or distribute this software"]),
                ("Unlicense",   [r"unlicense"])
                ]

# Possible locations of licenses
const LICFILES=["LICENSE", "LICENSE.md", "License.md", "LICENSE.txt", "LICENSE.rst", "UNLICENSE",
                "LICENCE", "LICENCE.md", "Licence.md", "LICENCE.txt", "LICENCE.rst", "UNLICENCE",
                 "README",  "README.md",                "README.txt",
                "COPYING", "COPYING.md",               "COPYING.txt"]

# Special package treatments
# XVFB   = requires X virtual framebuffer
# BINARY = can't run due to a binary dependency that can't be satisfied
# OSX    = only works on OSX
# PYTHON = requires a Python package that we haven't got installed
# BREAKS = something about the package doesn't play nice
# OPENGL = Needs OpenGL support, which XVFB can't handle
const PKGOPTS = Dict([
    ("ActiveAppearanceModels" , :XVFB),      # GUI via Tk.jl
    ("AppleAccelerate"        , :OSX),
    ("Arduino"                , :BINARY),    # Needs libarduino
    ("AWSCore"                , :BINARY),    # Needs credentials (#119)
    ("AWSEC2"                 , :BINARY),    # Needs credentials (#119)
    ("AWSIAM"                 , :BINARY),    # Needs credentials (#119)
    ("AWSLambda"              , :BINARY),    # Needs credentials (#119)
    ("AWSS3"                  , :BINARY),    # Needs credentials (#119)
    ("AWSSNS"                 , :BINARY),    # Needs credentials (#119)
    ("AWSSQS"                 , :BINARY),    # Needs credentials (#119)
    ("BSplines"               , :XVFB),      # GUI via Tk.jl
    ("CasaCore"               , :BINARY),    # Needs http://casacore.github.io/casacore/
    ("Clang"                  , :BINARY),    # Needs libclang
    ("CommonCrawl"            , :BREAKS),    # Needs AWS auth & downloads a lot
    ("CoreNLP"                , :PYTHON),    # Needs CoreNLP via corenlp-python
    ("CPLEX"                  , :BINARY),    # Commercial software
    ("CLFFT"                  , :BINARY),    # OpenCL
    ("CUBLAS"                 , :BINARY),    # NVIDIA CUDA
    ("CUDA"                   , :BINARY),    # NVIDIA CUDA
    ("CUDAdrv"                , :BINARY),    # NVIDIA CUDA
    ("CUDNN"                  , :BINARY),    # NVIDIA CUDA
    ("CUDArt"                 , :BINARY),    # NVIDIA CUDA
    ("CUFFT"                  , :BINARY),    # NVIDIA CUDA
    ("CURAND"                 , :BINARY),    # NVIDIA CUDA
    ("CUSOLVER"               , :BINARY),    # NVIDIA CUDA
    ("CUSPARSE"               , :BINARY),    # NVIDIA CUDA
    ("Drawing"                , :XVFB),      # GUI via Tk.jl
    ("EEG"                    , :XVFB),      # GUI via Tk.jl
    ("ElasticFDA"             , :XVFB),      # GUI via Tk.jl
    ("Elemental"              , :BINARY),    # Depends on MPI.jl
    ("Expect"                 , :BREAKS),    # causes hangs on julia 0.3
    ("GLAbstraction"          , :OPENGL),
    ("GLFW"                   , :OPENGL),
    ("GLPlot"                 , :OPENGL),
    ("GLText"                 , :OPENGL),
    ("GLWindow"               , :OPENGL),
    ("GLVisualize"            , :OPENGL),
    ("GR"                     , :XVFB),      # Plotting package
    ("Gtk"                    , :XVFB),      # GUI package
    ("GtkBuilderAid"          , :XVFB),      # GUI via Gtk.jl
    ("GtkReactive"            , :XVFB),      # GUI via Gtk.jl
    ("GtkUtilities"           , :XVFB),      # GUI via Gtk.jl
    ("GUITestRunner"          , :XVFB),      # GUI via Tk.jl
    ("Gurobi"                 , :BINARY),    # Commercial software
    ("Homebrew"               , :OSX),
    ("IJulia"                 , :PYTHON),    # Could be interesting to revist
    ("ImageRegistration"      , :XVFB),      # GUI via Tk.jl
    ("ImageView"              , :XVFB),      # GUI via Tk.jl
    ("Immerse"                , :XVFB),      # GUI via Gtk.jl
    ("InspectDR"              , :XVFB),      # Plotting package
    ("Instruments"            , :BINARY),    # Needs NI-VISA
    ("KNITRO"                 , :BINARY),    # Commercial software
    ("LibTrading"             , :BINARY),    # Needs libtrading
    ("Mandrill"               , :BREAKS),    # Needs API Key
    ("Mathematica"            , :BINARY),    # Commercial software
    ("MATLAB"                 , :BINARY),    # Commercial software
    ("MATLABCluster"          , :BINARY),    # Commercial software
    ("MatlabCompat"           , :XVFB),      # GUI via Tk.jl<commit_msg>Update constants.jl -- Gaston.jl requires xvfb (#157)<commit_after>#######################################################################
# PackageEvaluator
# https://github.com/JuliaCI/PackageEvaluator.jl
# (c) <NAME> 2015
# Licensed under the MIT License
#######################################################################
# This file is a list of constants used in PackageEvaluator, incl.
# - License identification strings
# - Typical names for files where license information can be found
# - A list of packages that need "special treatment" for tests,
#   including whether they need the X virtual framebuffer running
#   and if they can be run at all.

# Regexes to identify the license type
const LICENSES=[("MIT",[
                    r"mit license",
                    r"mit expat license",
                    r"mit \"expat\" license",
                    r"permission is hereby granted, free of charge,"]),
                ("MPL v2",[
                    r"mpl version 2",
                    r"mozilla public license version 2"]),
                ("GPL v2",[
                    r"gpl version 2",
                    r"gpl ?v2",
                    r"gnu general public license\s+version 2",
                    r"gnu general public license, version 2",
                    r"free software foundation; either version 2"]),
                ("GPL v3",[
                    r"gpl version 3",
                    r"gpl ?v3",
                    r"http://www.gnu.org/licenses/gpl-3.0.txt",
                    r"gnu general public license\s+version 3",
                    r"free software foundation, either version 3"]),
                ("LGPL v2.1",[
                    r"lgpl version 2.1",
                    r"gnu lesser general public license\s+version 2\.1"]),
                ("LGPL v3.0",[
                    r"lgpl-3.0"
                    r"version 3 of the gnu lesser"]),
                ("BSD 3-clause",[r"bsd", r"promote products derived from this software"]),
                ("BSD 2-clause",[r"bsd", r"other materials provided with the\s+distribution.\s+this software"]),
                ("GNU Affero",  [r"gnu affero general public license"]),
                ("Apache",      [r"apache"]),
                ("zlib",        [r"zlib", r"the origin of this software must not be misrepresented"]),
                ("ISC",         [r"permission to use, copy, modify, and/or distribute this software"]),
                ("Unlicense",   [r"unlicense"])
                ]

# Possible locations of licenses
const LICFILES=["LICENSE", "LICENSE.md", "License.md", "LICENSE.txt", "LICENSE.rst", "UNLICENSE",
                "LICENCE", "LICENCE.md", "Licence.md", "LICENCE.txt", "LICENCE.rst", "UNLICENCE",
                 "README",  "README.md",                "README.txt",
                "COPYING", "COPYING.md",               "COPYING.txt"]

# Special package treatments
# XVFB   = requires X virtual framebuffer
# BINARY = can't run due to a binary dependency that can't be satisfied
# OSX    = only works on OSX
# PYTHON = requires a Python package that we haven't got installed
# BREAKS = something about the package doesn't play nice
# OPENGL = Needs OpenGL support, which XVFB can't handle
const PKGOPTS = Dict([
    ("ActiveAppearanceModels" , :XVFB),      # GUI via Tk.jl
    ("AppleAccelerate"        , :OSX),
    ("Arduino"                , :BINARY),    # Needs libarduino
    ("AWSCore"                , :BINARY),    # Needs credentials (#119)
    ("AWSEC2"                 , :BINARY),    # Needs credentials (#119)
    ("AWSIAM"                 , :BINARY),    # Needs credentials (#119)
    ("AWSLambda"              , :BINARY),    # Needs credentials (#119)
    ("AWSS3"                  , :BINARY),    # Needs credentials (#119)
    ("AWSSNS"                 , :BINARY),    # Needs credentials (#119)
    ("AWSSQS"                 , :BINARY),    # Needs credentials (#119)
    ("BSplines"               , :XVFB),      # GUI via Tk.jl
    ("CasaCore"               , :BINARY),    # Needs http://casacore.github.io/casacore/
    ("Clang"                  , :BINARY),    # Needs libclang
    ("CommonCrawl"            , :BREAKS),    # Needs AWS auth & downloads a lot
    ("CoreNLP"                , :PYTHON),    # Needs CoreNLP via corenlp-python
    ("CPLEX"                  , :BINARY),    # Commercial software
    ("CLFFT"                  , :BINARY),    # OpenCL
    ("CUBLAS"                 , :BINARY),    # NVIDIA CUDA
    ("CUDA"                   , :BINARY),    # NVIDIA CUDA
    ("CUDAdrv"                , :BINARY),    # NVIDIA CUDA
    ("CUDNN"                  , :BINARY),    # NVIDIA CUDA
    ("CUDArt"                 , :BINARY),    # NVIDIA CUDA
    ("CUFFT"                  , :BINARY),    # NVIDIA CUDA
    ("CURAND"                 , :BINARY),    # NVIDIA CUDA
    ("CUSOLVER"               , :BINARY),    # NVIDIA CUDA
    ("CUSPARSE"               , :BINARY),    # NVIDIA CUDA
    ("Drawing"                , :XVFB),      # GUI via Tk.jl
    ("EEG"                    , :XVFB),      # GUI via Tk.jl
    ("ElasticFDA"             , :XVFB),      # GUI via Tk.jl
    ("Elemental"              , :BINARY),    # Depends on MPI.jl
    ("Expect"                 , :BREAKS),    # causes hangs on julia 0.3
    ("GLAbstraction"          , :OPENGL),
    ("GLFW"                   , :OPENGL),
    ("GLPlot"                 , :OPENGL),
    ("GLText"                 , :OPENGL),
    ("GLWindow"               , :OPENGL),
    ("GLVisualize"            , :OPENGL),
    ("GR"                     , :XVFB),      # Plotting package
    ("Gaston"                 , :XVFB),      # Plotting package
    ("Gtk"                    , :XVFB),      # GUI package
    ("GtkBuilderAid"          , :XVFB),      # GUI via Gtk.jl
    ("GtkReactive"            , :XVFB),      # GUI via Gtk.jl
    ("GtkUtilities"           , :XVFB),      # GUI via Gtk.jl
    ("GUITestRunner"          , :XVFB),      # GUI via Tk.jl
    ("Gurobi"                 , :BINARY),    # Commercial software
    ("Homebrew"               , :OSX),
    ("IJulia"                 , :PYTHON),    # Could be interesting to revist
    ("ImageRegistration"      , :XVFB),      # GUI via Tk.jl
    ("ImageView"              , :XVFB),      # GUI via Tk.jl
    ("Immerse"                , :XVFB),      # GUI via Gtk.jl
    ("InspectDR"              , :XVFB),      # Plotting package
    ("Instruments"            , :BINARY),    # Needs NI-VISA
    ("KNITRO"                 , :BINARY),    # Commercial software
    ("LibTrading"             , :BINARY),    # Needs libtrading
    ("Mandrill"               , :BREAKS),    # Needs API Key
    ("Mathematica"            , :BINARY),    # Commercial software
    ("MATLAB"                 , :BINARY),    # Commercial software
    ("MATLABCluster"          , :BINARY),    # Commercial software
    ("MatlabCompat"           , :XVFB),      # GUI via Tk.jl
{'fraction_non_alphanumeric': 0.14679637214745464, 'fraction_numerical': 0.008703920421299005, 'mean_word_length': 1.5245568685376663, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 2, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3464963', 'n_tokens_mistral': 4298, 'n_tokens_neox': 3907, 'n_words': 1072}