mirror of
https://github.com/github/semantic.git
synced 2024-12-19 12:51:52 +03:00
Merge branch 'master' into operating-docs-updates
This commit is contained in:
commit
24f4161ae9
@ -293,7 +293,7 @@ library
|
||||
, StrictData
|
||||
, TypeApplications
|
||||
if flag(release)
|
||||
ghc-options: -Wall -Werror -Wmissing-export-lists -Wcompat -Wincomplete-record-updates -Wincomplete-uni-patterns -Wredundant-constraints -fno-warn-name-shadowing -O1 -j
|
||||
ghc-options: -Wall -Werror -Wmissing-export-lists -Wcompat -Wincomplete-record-updates -Wincomplete-uni-patterns -Wredundant-constraints -fno-warn-name-shadowing -O1 -j -DCOMPUTE_GIT_SHA
|
||||
else
|
||||
ghc-options: -Wall -Wmissing-export-lists -Wcompat -Wincomplete-record-updates -Wincomplete-uni-patterns -Wredundant-constraints -fno-warn-name-shadowing -O0 -j +RTS -A128m -n2m -RTS
|
||||
ghc-prof-options: -fprof-auto
|
||||
@ -302,7 +302,7 @@ executable semantic
|
||||
hs-source-dirs: app
|
||||
main-is: Main.hs
|
||||
if flag(release)
|
||||
ghc-options: -threaded -rtsopts "-with-rtsopts=-N -A4m -n2m" -static -j -O1 -j
|
||||
ghc-options: -threaded -rtsopts "-with-rtsopts=-N -A4m -n2m" -static -j -O1 -j -DCOMPUTE_GIT_SHA
|
||||
else
|
||||
ghc-options: -threaded -rtsopts "-with-rtsopts=-N -A4m -n2m" -static -j -O0 -j
|
||||
cc-options: -DU_STATIC_IMPLEMENTATION=1
|
||||
|
@ -46,7 +46,8 @@ optionsParser = do
|
||||
(long "log-level" <> value (Just Log.Warning) <> help "Log messages at or above this level, or disable logging entirely.")
|
||||
requestId <- optional (strOption $ long "request-id" <> help "A string to use as the request identifier for any logged messages." <> metavar "id")
|
||||
failOnWarning <- switch (long "fail-on-warning" <> help "Fail on assignment warnings.")
|
||||
pure $ Options logLevel requestId failOnWarning
|
||||
failOnParseError <- switch (long "fail-on-parse-error" <> help "Fail on tree-sitter parse errors.")
|
||||
pure $ Options logLevel requestId failOnWarning failOnParseError
|
||||
|
||||
argumentsParser :: Parser (Task.TaskEff ())
|
||||
argumentsParser = do
|
||||
|
@ -50,16 +50,17 @@ data Config
|
||||
-- Options configurable via command line arguments.
|
||||
data Options
|
||||
= Options
|
||||
{ optionsLogLevel :: Maybe Level -- ^ What level of messages to log. 'Nothing' disabled logging.
|
||||
, optionsRequestID :: Maybe String -- ^ Optional request id for tracing across systems.
|
||||
, optionsFailOnWarning :: Bool -- ^ Should semantic fail fast on assignment warnings (for testing)
|
||||
{ optionsLogLevel :: Maybe Level -- ^ What level of messages to log. 'Nothing' disables logging.
|
||||
, optionsRequestID :: Maybe String -- ^ Optional request id for tracing across systems.
|
||||
, optionsFailOnWarning :: Bool -- ^ Should semantic fail fast on assignment warnings (for testing)
|
||||
, optionsFailOnParseError :: Bool -- ^ Should semantic fail fast on tree-sitter parser errors (for testing)
|
||||
}
|
||||
|
||||
defaultOptions :: Options
|
||||
defaultOptions = Options (Just Warning) Nothing False
|
||||
defaultOptions = Options (Just Warning) Nothing False False
|
||||
|
||||
debugOptions :: Options
|
||||
debugOptions = Options (Just Debug) Nothing False
|
||||
debugOptions = Options (Just Debug) Nothing False False
|
||||
|
||||
defaultConfig :: Options -> IO Config
|
||||
defaultConfig options@Options{..} = do
|
||||
|
@ -269,6 +269,7 @@ runParser blob@Blob{..} parser = case parser of
|
||||
Just "ParseError" -> do
|
||||
writeStat (increment "parse.parse_errors" languageTag)
|
||||
logError config Warning blob err (("task", "parse") : blobFields)
|
||||
when (optionsFailOnParseError (configOptions config)) $ throwError (toException err)
|
||||
_ -> do
|
||||
writeStat (increment "parse.assign_warnings" languageTag)
|
||||
logError config Warning blob err (("task", "assign") : blobFields)
|
||||
|
@ -1,17 +1,27 @@
|
||||
{-# LANGUAGE CPP #-}
|
||||
#ifdef COMPUTE_GIT_SHA
|
||||
{-# OPTIONS_GHC -fforce-recomp #-} -- So that gitHash is correct.
|
||||
{-# LANGUAGE TemplateHaskell #-}
|
||||
#endif
|
||||
module Semantic.Version
|
||||
( buildSHA
|
||||
, buildVersion
|
||||
) where
|
||||
|
||||
import Data.Version (showVersion)
|
||||
#ifdef COMPUTE_GIT_SHA
|
||||
import Development.GitRev
|
||||
#endif
|
||||
import Paths_semantic (version)
|
||||
|
||||
-- The SHA1 hash of this build of semantic.
|
||||
-- If compiled as a development build, this will be @<development>@.
|
||||
buildSHA :: String
|
||||
#ifdef COMPUTE_GIT_SHA
|
||||
buildSHA = $(gitHash)
|
||||
#else
|
||||
buildSHA = "<development>"
|
||||
#endif
|
||||
|
||||
-- The version string of this build of semantic.
|
||||
buildVersion :: String
|
||||
|
Loading…
Reference in New Issue
Block a user