on master help sign in
Don't expose Elm.Compiler.Version
a950bc5jmite
elm-compiler.cabal+1−1
@@ -42,7 +42,6 @@ Library
42 Elm.Compiler,
42 Elm.Compiler,
43 Elm.Compiler.Module,
43 Elm.Compiler.Module,
44 Elm.Compiler.Type,
44 Elm.Compiler.Type,
45− Elm.Compiler.Version,
46 Elm.Docs,
45 Elm.Docs,
47 Elm.Package,
46 Elm.Package,
48 Elm.Utils
47 Elm.Utils
@@ -75,6 +74,7 @@ Library
75 Docs.Check,
74 Docs.Check,
76 Elm.Compiler.Imports,
75 Elm.Compiler.Imports,
77 Elm.Compiler.Type.Extract,
76 Elm.Compiler.Type.Extract,
77+ Elm.Compiler.Version,
78 Generate.JavaScript,
78 Generate.JavaScript,
79 Generate.JavaScript.Crash,
79 Generate.JavaScript.Crash,
80 Generate.JavaScript.Helpers,
80 Generate.JavaScript.Helpers,
src/AST/Module.hs+2−1
@@ -21,6 +21,7 @@ import qualified AST.Expression.Optimized as Optimized
21import qualified AST.Type as Type
21import qualified AST.Type as Type
22import qualified AST.Variable as Var
22import qualified AST.Variable as Var
23import qualified Docs.AST as Docs
23import qualified Docs.AST as Docs
24+import qualified Elm.Package as Package
24import qualified Elm.Compiler.Version as Compiler
25import qualified Elm.Compiler.Version as Compiler
25import qualified Reporting.Annotation as A
26import qualified Reporting.Annotation as A
26
27
@@ -142,7 +143,7 @@ toInterface :: CanonicalModule -> Interface
142toInterface modul =
143toInterface modul =
143 let body' = body modul in
144 let body' = body modul in
144 Interface
145 Interface
145− { iVersion = Compiler.version
146+ { iVersion = Package.versionToString Compiler.version
146 , iExports = exports modul
147 , iExports = exports modul
147 , iTypes = types body'
148 , iTypes = types body'
148 , iImports = imports modul
149 , iImports = imports modul
src/CommandLineRouter.hs+2−2
@@ -7,7 +7,7 @@ import System.IO (hPutStrLn, stderr, stdin, stdout)
7import qualified System.Process as Proc
7import qualified System.Process as Proc
8
8
9import qualified Elm.Compiler.Version as Compiler
9import qualified Elm.Compiler.Version as Compiler
10−
10+import qualified Elm.Package as Pkg
11
11
12main :: IO ()
12main :: IO ()
13main =
13main =
@@ -47,7 +47,7 @@ attemptToRun command args =
47
47
48usageMessage :: String
48usageMessage :: String
49usageMessage =
49usageMessage =
50− "Elm Platform " ++ Compiler.version ++ " - a way to run all Elm tools\n\
50+ "Elm Platform " ++ (Pkg.versionToString Compiler.version) ++ " - a way to run all Elm tools\n\
51 \\n\
51 \\n\
52 \Usage: elm <command> [<args>]\n\
52 \Usage: elm <command> [<args>]\n\
53 \\n\
53 \\n\
src/Elm/Compiler.hs+10−1
@@ -1,6 +1,7 @@
1{-# OPTIONS_GHC -Wall #-}
1{-# OPTIONS_GHC -Wall #-}
2module Elm.Compiler
2module Elm.Compiler
3+ ( version
3− ( parseDependencies
4+ , parseDependencies
4 , compile, Context(..), Result(..)
5 , compile, Context(..), Result(..)
5 , Dealiaser, dummyDealiaser
6 , Dealiaser, dummyDealiaser
6 , Error, errorToString, errorToJson, printError
7 , Error, errorToString, errorToJson, printError
@@ -13,6 +14,7 @@ import qualified Data.Map as Map
13import qualified AST.Module as Module
14import qualified AST.Module as Module
14import qualified Compile
15import qualified Compile
15import qualified Docs.Check as Docs
16import qualified Docs.Check as Docs
17+import qualified Elm.Compiler.Version
16import qualified Elm.Compiler.Module as PublicModule
18import qualified Elm.Compiler.Module as PublicModule
17import qualified Elm.Docs as Docs
19import qualified Elm.Docs as Docs
18import qualified Elm.Package as Package
20import qualified Elm.Package as Package
@@ -27,6 +29,13 @@ import qualified Reporting.Result as Result
27import qualified Reporting.Warning as Warning
29import qualified Reporting.Warning as Warning
28
30
29
31
32+-- VERSION
33+
34+version :: Package.Version
35+version =
36+ Elm.Compiler.Version.version
37+
38+
30-- DEPENDENCIES
39-- DEPENDENCIES
31
40
32parseDependencies
41parseDependencies
src/Elm/Compiler/Version.hs+3−7
@@ -1,21 +1,17 @@
1{-# OPTIONS_GHC -Wall #-}
1{-# OPTIONS_GHC -Wall #-}
2−module Elm.Compiler.Version (version, elm) where
2+module Elm.Compiler.Version (version) where
3
3
4import qualified Data.Version as Version
4import qualified Data.Version as Version
5import qualified Paths_elm_compiler as This
5import qualified Paths_elm_compiler as This
6import Elm.Package
6import Elm.Package
7
7
8−version :: String
9−version =
10− Version.showVersion This.version
11−
12
8
13rawVersion :: [Int]
9rawVersion :: [Int]
14rawVersion =
10rawVersion =
15 Version.versionBranch This.version
11 Version.versionBranch This.version
16
12
17−elm :: Version
13+version :: Version
18−elm =
14+version =
19 case rawVersion of
15 case rawVersion of
20 major : minor : patch : _ ->
16 major : minor : patch : _ ->
21 Version major minor patch
17 Version major minor patch
src/Elm/Docs.hs+2−1
@@ -14,6 +14,7 @@ import qualified Docs.AST as Docs
14import qualified Elm.Compiler.Module as Module
14import qualified Elm.Compiler.Module as Module
15import qualified Elm.Compiler.Type as Type
15import qualified Elm.Compiler.Type as Type
16import qualified Elm.Compiler.Version as Version
16import qualified Elm.Compiler.Version as Version
17+import qualified Elm.Package as Pkg
17import qualified Reporting.Annotation as A
18import qualified Reporting.Annotation as A
18
19
19
20
@@ -75,7 +76,7 @@ fromCheckedDocs name (Docs.Docs comment aliases unions values) =
75 (map toAlias (Map.toList aliases))
76 (map toAlias (Map.toList aliases))
76 (map toUnion (Map.toList unions))
77 (map toUnion (Map.toList unions))
77 (map toValue (Map.toList values))
78 (map toValue (Map.toList values))
78− (Version Version.version)
79+ (Version $ (Pkg.versionToString Version.version))
79
80
80
81
81-- PRETTY JSON
82-- PRETTY JSON
src/Elm/Utils.hs+4−3
@@ -20,6 +20,7 @@ import System.Process (readProcessWithExitCode)
20import qualified AST.Expression.Source as Source
20import qualified AST.Expression.Source as Source
21import qualified AST.Pattern as Pattern
21import qualified AST.Pattern as Pattern
22import qualified Elm.Compiler.Version as Version
22import qualified Elm.Compiler.Version as Version
23+import qualified Elm.Package as Pkg
23import qualified Parse.Helpers as Parse
24import qualified Parse.Helpers as Parse
24import qualified Parse.Expression as Parse
25import qualified Parse.Expression as Parse
25import qualified Reporting.Annotation as A
26import qualified Reporting.Annotation as A
@@ -127,8 +128,8 @@ errorNotFound name =
127 , ""
128 , ""
128 , " * On Mac it is /usr/local/share/elm"
129 , " * On Mac it is /usr/local/share/elm"
129 , " * On Windows it is one of the following:"
130 , " * On Windows it is one of the following:"
130− , " C:/Program Files/Elm Platform/" ++ Version.version ++ "/share"
131+ , " C:/Program Files/Elm Platform/" ++ (Pkg.versionToString Version.version) ++ "/share"
131− , " C:/Program Files (x86)/Elm Platform/" ++ Version.version ++ "/share"
132+ , " C:/Program Files (x86)/Elm Platform/" ++ (Pkg.versionToString Version.version) ++ "/share"
132 , ""
133 , ""
133 , "If you installed using npm, you have to set ELM_HOME to a certain directory"
134 , "If you installed using npm, you have to set ELM_HOME to a certain directory"
134 , "of the form .../node_modules/elm/share"
135 , "of the form .../node_modules/elm/share"
@@ -147,4 +148,4 @@ isDeclaration string =
147 Just (List.intercalate "$" (Pattern.boundVarList pattern))
148 Just (List.intercalate "$" (Pattern.boundVarList pattern))
148
149
149 _ ->
150 _ ->
150− Nothing
151+ Nothing