You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It sticks around "Compiling Test.Main" for about 30 minutes (I have stopped it by myself). At that moment purs.bin was consuming about 40 gb of virtual memory. It looks in Activity monitor this way:
Also, I have tried to update purescript to 0.14, but there are conflicting packages. I'm on MacOS 11.2.3.
Yes. One thing we discovered the hard way was that no one has previously thrown such big codebases at the purescript compiler.
It turns out that in the stock purescript compiler some compiler passes are exponential. We fixed them and our custom purescript compiler now works fine.
Our relevant patch was already upstreamed - purescript/purescript@b7a8616 but it will be released only in 0.15
It sticks around "Compiling Test.Main" for about 30 minutes (I have stopped it by myself). At that moment
purs.bin
was consuming about 40 gb of virtual memory. It looks in Activity monitor this way:Also, I have tried to update purescript to 0.14, but there are conflicting packages. I'm on MacOS 11.2.3.
Complete log
$ spago build --purs-args "+RTS -I5 -w -A128M --"
Compiling Record.Unsafe
Compiling Type.Data.Row
Compiling Type.Data.RowList
Compiling Global.Unsafe
Compiling Unsafe.Coerce
Compiling Type.Equality
Compiling Data.Symbol
Compiling Math
Compiling Data.Traversable.Accum
Compiling Unicode
Compiling Data.String.Unsafe
Compiling Data.NaturalTransformation
Compiling Data.Int.Bits
Compiling Partial
Compiling Data.Exists
Compiling Data.Boolean
Compiling Data.ArrayBuffer.Types
Compiling Control.Semigroupoid
Compiling Type.Row
Compiling Partial.Unsafe
Compiling Data.Show
Compiling Control.Category
Compiling Data.Bifunctor
Compiling Data.Unit
Compiling Data.Void
Compiling Data.HeytingAlgebra
Compiling Data.Semiring
Compiling Data.Typelevel.Undefined
Compiling Data.Function.Uncurried
Compiling Data.Semigroup
Compiling Control.Lazy
Compiling Data.Typelevel.Bool
Compiling Data.Typelevel.Num.Reps
Compiling Record.Unsafe.Union
Compiling Data.Typelevel.Num.Aliases
Compiling Data.Ring
Compiling Data.Eq
Compiling Data.BooleanAlgebra
Compiling Data.CommutativeRing
Compiling Data.EuclideanRing
Compiling Data.Ordering
Compiling Data.Ord
Compiling Data.Ord.Unsafe
Compiling Data.DivisionRing
Compiling Data.Field
Compiling Data.Monoid
Compiling Data.Function
Compiling Data.Bounded
Compiling Data.Functor
Compiling Control.Biapply
Compiling Control.Alt
Compiling Control.Apply
Compiling Control.Extend
Compiling Control.Plus
Compiling Control.Biapplicative
Compiling Control.Comonad
Compiling Control.Comonad.Trans.Class
Compiling Control.Applicative
Compiling Control.Alternative
Compiling Control.Bind
Compiling Control.Monad
Compiling Control.MonadZero
Compiling Prelude
Compiling Data.Monoid.Multiplicative
Compiling Data.Monoid.Endo
Compiling Control.Monad.Trans.Class
Compiling Data.Monoid.Conj
Compiling Data.Ratio
Compiling Data.Traversable.Accum.Internal
Compiling Data.Monoid.Disj
Compiling Data.Monoid.Additive
Compiling Data.Number.Approximate
Compiling Data.Functor.Contravariant
Compiling Data.Monoid.Dual
Compiling Data.TextEncoder
Compiling Data.Number.Format
Compiling Type.Proxy
Compiling Effect
Compiling Control.Monad.Reader.Class
Compiling Data.Bifunctor.Product
Compiling Control.Monad.Gen.Class
Compiling Node.Encoding
Compiling Node.Buffer.Types
Compiling Record.Builder
Compiling Data.Semigroup.Last
Compiling Debug.Trace
Compiling Data.Semigroup.First
Compiling Control.MonadPlus
Compiling Data.Yoneda
Compiling Record
Compiling Control.Monad.Cont.Class
Compiling Data.Functor.Invariant
Compiling Effect.Class
Compiling Effect.Unsafe
Compiling Effect.Ref
Compiling Effect.Console
Compiling Effect.Uncurried
Compiling Data.Newtype
Compiling PSCI.Support
Compiling Effect.Class.Console
Compiling Data.Maybe
Compiling Data.ArrayBuffer.ArrayBuffer
Compiling Data.Typelevel.Num.Sets
Compiling Type.Data.Boolean
Compiling Type.Data.Ordering
Compiling Type.Data.Symbol
Compiling Type.RowList
Compiling Data.Ord.Max
Compiling Data.Bifunctor.Clown
Compiling Data.Bifunctor.Wrap
Compiling Data.Comparison
Compiling Data.Profunctor
Compiling Data.Ord.Min
Compiling Data.Bifunctor.Joker
Compiling Data.Bifunctor.Join
Compiling Data.String.Pattern
Compiling Data.Bifunctor.Flip
Compiling Control.Comonad.Traced.Trans
Compiling Data.Ord.Down
Compiling Data.Time.Duration
Compiling Data.Op
Compiling Data.Predicate
Compiling Data.Monoid.Alternate
Compiling Node.Buffer.Immutable
Compiling Data.Base58
Compiling Data.Maybe.First
Compiling Data.Generic.Rep
Compiling Data.Nullable
Compiling Type.Row.Homogeneous
Compiling Global
Compiling Data.Maybe.Last
Compiling Data.Profunctor.Cowrap
Compiling Data.Lens.Internal.Exchange
Compiling Data.Profunctor.Split
Compiling Type.Prelude
Compiling Data.Equivalence
Compiling Data.Profunctor.Closed
Compiling Data.Profunctor.Join
Compiling Data.Profunctor.Clown
Compiling Data.Profunctor.Wrap
Compiling Data.String.Common
Compiling Data.String.CodeUnits
Compiling Data.Float32
Compiling Data.Generic.Rep.Bounded
Compiling Data.Generic.Rep.Ord
Compiling Data.Generic.Rep.Semigroup
Compiling Data.Generic.Rep.Ring
Compiling Data.Generic.Rep.Semiring
Compiling Data.Generic.Rep.Eq
Compiling Data.Generic.Rep.HeytingAlgebra
Compiling Data.Generic.Rep.Monoid
Compiling Node.Buffer.Internal
Compiling Data.Lens.Internal.Grating
Compiling Data.Lens.Internal.Zipping
Compiling Data.Number
Compiling Data.Int
Compiling Node.Buffer.Class
Compiling Data.Foldable
Compiling Data.FunctorWithIndex
Compiling Data.Float32.Gen
Compiling Node.Buffer
Compiling Data.Rational
Compiling Effect.Random
Compiling Random.LCG
Compiling Data.FoldableWithIndex
Compiling Data.Bifoldable
Compiling Data.Traversable
Compiling Data.Generic.Rep.Show
Compiling Data.Semigroup.Foldable
Compiling Data.Semigroup.Traversable
Compiling Data.Bitraversable
Compiling Data.TraversableWithIndex
Compiling Data.Either
Compiling Data.Functor.App
Compiling Data.Const
Compiling Data.Lazy
Compiling Data.Identity
Compiling Data.Distributive
Compiling Data.Coyoneda
Compiling Data.Tuple
Compiling Data.Profunctor.Choice
Compiling Data.Functor.Coproduct
Compiling Data.Profunctor.Cochoice
Compiling Effect.Exception
Compiling Control.Monad.Rec.Class
Compiling Data.Either.Inject
Compiling Data.Either.Nested
Compiling Effect.AVar
Compiling Data.TextDecoder
Compiling Effect.Exception.Unsafe
Compiling Control.Monad.Error.Class
Compiling Data.Lens.Internal.Market
Compiling Data.Profunctor.Joker
Compiling Test.Spec.Assertions
Compiling Control.Monad.ST.Internal
Compiling Control.Monad.ST.Ref
Compiling Control.Monad.ST
Compiling Data.Array.ST
Compiling Node.Buffer.ST
Compiling Control.Monad.ST.Global
Compiling Foreign.Object.ST
Compiling Record.ST
Compiling Control.Monad.ST.Class
Compiling Data.Functor.Coproduct.Inject
Compiling Data.Functor.Coproduct.Nested
Compiling Data.Profunctor.Costrong
Compiling Data.Divide
Compiling Control.Comonad.Store.Trans
Compiling Control.Comonad.Traced.Class
Compiling Control.Monad.Writer.Class
Compiling Data.Functor.Product
Compiling Data.Functor.Compose
Compiling Data.Typelevel.Num.Ops
Compiling Data.Unfoldable1
Compiling Data.Profunctor.Strong
Compiling Data.Tuple.Nested
Compiling Control.Monad.State.Class
Compiling Control.Comonad.Env.Trans
Compiling Data.Lens.Internal.Focusing
Compiling Data.Lens.Internal.Tagged
Compiling Data.Lens.Internal.Shop
Compiling Control.Comonad.Traced
Compiling Data.Array.ST.Iterator
Compiling Data.Profunctor.Star
Compiling Data.Array.ST.Partial
Compiling Data.Decide
Compiling Data.Divisible
Compiling Control.Monad.Writer.Trans
Compiling Control.Monad.RWS.Trans
Compiling Data.Lens.Internal.Re
Compiling Data.Array.NonEmpty.Internal
Compiling Control.Monad.Except.Trans
Compiling Data.Profunctor.Costar
Compiling Control.Monad.State.Trans
Compiling Data.Unfoldable
Compiling Control.Monad.Reader.Trans
Compiling Control.Monad.Cont.Trans
Compiling Control.Monad.Maybe.Trans
Compiling Control.Comonad.Env.Class
Compiling Control.Comonad.Store.Class
Compiling Data.Decidable
Compiling Data.Enum
Compiling Control.Monad.List.Trans
Compiling Data.Array
Compiling Data.Functor.Product.Nested
Compiling Control.Monad.Gen
Compiling Data.Lens.Internal.Wander
Compiling Data.NonEmpty
Compiling Control.Comonad.Env
Compiling Control.Monad.Writer
Compiling Control.Comonad.Store
Compiling Control.Monad.Cont
Compiling Data.Lens.Internal.Bazaar
Compiling Control.Monad.Reader
Compiling Data.Lens.Internal.Forget
Compiling Data.Lens.Internal.Indexed
Compiling Control.Monad.RWS
Compiling Control.Monad.Except
Compiling Control.Parallel.Class
Compiling Test.Spec.Console
Compiling Control.Monad.State
Compiling Data.Time.Duration.Gen
Compiling Data.Lens.Types
Compiling Data.Typelevel.Num
Compiling Data.Lens.Prism
Compiling Data.Lens.Iso
Compiling Data.Lens.Getter
Compiling Data.Lens.Zoom
Compiling Data.Lens.Grate
Compiling Data.Lens.Lens
Compiling Data.Lens.Setter
Compiling Data.List.Types
Compiling Control.Monad.Gen.Common
Compiling Data.List.Lazy.Types
Compiling Data.Date.Component
Compiling Data.Char.Gen
Compiling Data.Enum.Gen
Compiling Data.Time.Component
Compiling Data.Generic.Rep.Enum
Compiling Data.Lens.Lens.Void
Compiling Data.Lens.Prism.Maybe
Compiling Data.Lens.Lens.Unit
Compiling Data.Char
Compiling Data.Lens.Lens.Tuple
Compiling Control.Parallel
Compiling Data.Lens.Prism.Either
Compiling Data.Lens.Iso.Newtype
Compiling Data.String.Gen
Compiling Data.Lens.Common
Compiling Data.Lens.Prism.Coproduct
Compiling Data.Lens.Lens.Product
Compiling Data.Lens.Indexed
Compiling Effect.Aff
Compiling Data.Lens.Traversal
Compiling Data.Time.Component.Gen
Compiling Data.Time
Compiling Data.Array.Partial
Compiling Foreign.Object
Compiling Data.String.CodePoints
Compiling Data.Array.NonEmpty
Compiling Data.Date.Component.Gen
Compiling Data.Date
Compiling Data.Time.Gen
Compiling Effect.Aff.Compat
Compiling Effect.Aff.AVar
Compiling Effect.Aff.Class
Compiling Control.Monad.Fork.Class
Compiling Data.List
Compiling Data.String
Compiling Data.String.CaseInsensitive
Compiling Data.String.Regex.Flags
Compiling Test.Spec.Assertions.String
Compiling Data.String.Base64.Internal
Compiling Data.String.NonEmpty.Internal
Compiling Data.String.Base64
Compiling Data.List.Lazy
Compiling Foreign.Object.Unsafe
Compiling Data.Argonaut.Core
Compiling Foreign.Object.ST.Unsafe
Compiling Data.Date.Gen
Compiling Data.DateTime
Compiling Data.Binary.Base64
Compiling Test.Spec.Tree
Compiling Data.String.Regex
Compiling Data.String.Regex.Unsafe
Compiling Data.String.NonEmpty.CodeUnits
Compiling Data.String.NonEmpty.CodePoints
Compiling Data.Argonaut.Parser
Compiling Data.Argonaut.Decode.Error
Compiling Data.Argonaut.Gen
Compiling Data.DateTime.Gen
Compiling Data.DateTime.Instant
Compiling Data.String.NonEmpty
Compiling Data.String.NonEmpty.CaseInsensitive
Compiling Data.BigInt
Compiling Effect.Now
Compiling Data.Argonaut.Decode.Parser
Compiling Erlang.Utils
Compiling Test.Spec
Compiling Data.List.Partial
Compiling Foreign.Object.Gen
Compiling Test.QuickCheck.Gen
Compiling Data.List.NonEmpty
Compiling Data.CatQueue
Compiling Data.Lens.Fold
Compiling Data.List.ZipList
Compiling Data.List.Lazy.NonEmpty
Compiling Data.Map.Internal
Compiling Data.CatList
Compiling Ansi.Codes
Compiling Test.QuickCheck.Arbitrary
Compiling Data.Lens
Compiling Data.Lens.Fold.Partial
Compiling Data.Argonaut.Prisms
Compiling Data.Lens.Record
Compiling Data.Argonaut.Traversals
Compiling Control.Monad.Free
Compiling Test.QuickCheck
Compiling Control.Monad.Free.Class
Compiling Control.Monad.Trampoline
Compiling Control.Comonad.Cofree
Compiling Test.Spec.Style
Compiling Ansi.Output
Compiling Test.Spec.Speed
Compiling Data.UInt
Compiling Control.Comonad.Cofree.Class
Compiling Control.Monad.Morph
Compiling Test.Spec.Result
Compiling Test.Spec.Runner.Event
Compiling Test.Spec.Summary
Compiling Data.ArrayBuffer.ValueMapping
Compiling Data.UInt.Gen
Compiling Data.ArrayBuffer.DataView
Compiling Data.ArrayBuffer.Typed
Compiling Pipes.Internal
Compiling Data.ArrayBuffer.Typed.Gen
Compiling Data.Set
Compiling Data.ArrayBuffer.Typed.Unsafe
Compiling Data.ArrayBuffer.ArrayBuffer.Gen
Compiling Data.ArrayBuffer.DataView.Gen
Compiling Pipes.Core
Compiling Data.Map
Compiling Data.Set.NonEmpty
Compiling Data.Interval.Duration
Compiling Data.Argonaut.Encode.Encoders
Compiling Data.Argonaut.Decode.Decoders
Compiling Data.Map.Gen
Compiling Data.Lens.Index
Compiling Erlang.Type
Compiling Data.Interval
Compiling Data.Interval.Duration.Iso
Compiling Data.Argonaut.Encode.Class
Compiling Data.Lens.At
Compiling Pipes
Compiling Data.Argonaut.Encode.Combinators
Compiling Data.Argonaut.Encode
Compiling Pipes.ListT
Compiling Pipes.Prelude
Compiling Data.Argonaut.Decode.Class
Compiling Test.Spec.Runner
Compiling Data.Argonaut.Decode.Combinators
Compiling Data.Argonaut.Decode
Compiling Data.Argonaut.JCursor
Compiling Test.Spec.Reporter.Base
Compiling Erlang.Invoke
Compiling Erlang.Exception
Compiling Erlang.Binary
Compiling Eblake2
Compiling Erlang.Helpers
Compiling Enacl
Compiling Os
Compiling Aeso.Scan
Compiling Data.Argonaut
Compiling Data.Argonaut.JCursor.Gen
Compiling Data.Vec
Compiling Test.Spec.Reporter.Dot
Compiling Test.Spec.Reporter.Console
Compiling Test.Spec.Reporter.Spec
Compiling Test.Spec.Reporter.Tap
Compiling Test.Spec.Reporter
Compiling Erlang.Builtins
Compiling Maps
Compiling Aeb.Primops
Compiling Io.Lib
Compiling Aeso.Scan.Tests
Compiling Aeb.Fate.Encoding
Compiling Base64
Compiling Jsx.Consult
Compiling Erl.Eval
Compiling Erl.Internal
Compiling Aeso.Ast.Infer.Types
Compiling Io.Lib.Format
Compiling Aeb.Fate.Asm.Scan
Compiling Aeso.Syntax
Compiling Aeso.Vm.Decode
Compiling Otp.Internal
Compiling Ordsets
Compiling Aeb.Fate.Code
Compiling Aeso.Fcode.To.Fate
Compiling Aeb.Fate.Asm
Compiling Gb.Sets
Compiling Aeb.Fate.Generate.Ops
Compiling Gb.Trees
Compiling Aeser.Id
Compiling Epp
Compiling Io.Lib.Pretty
Compiling Aefateasm
Compiling Aeser.Api.Encoder
Compiling Queue
Compiling Aeb.Fate.Ops
Compiling Erl.Parse
Compiling Aeso.Calldata.Tests
Compiling String
Compiling Aeso.Compiler
Compiling Aeso.Test.Utils
Compiling Aeso.Utils
Compiling Aeso.Scan.Lib
Compiling Aeso.Aci.Tests
Compiling Aeb.Heap
Compiling Sets
Compiling Lists
Compiling Aeb.Fate.Pp
Compiling Digraph.Utils
Compiling Aeso.Icode
Compiling Aeser.Rlp
Compiling Aeso.Builtins
Compiling Aeso.Ast.To.Icode
Compiling Sofs
Compiling Aeso.Eunit.SUITE
Compiling Aeso.Ast.To.Fcode
Compiling Erlang.Unicode
Compiling Prettypr
Compiling Aeso.Parse.Lib
Compiling File
Compiling Rand
Compiling Aeso.Aci
Compiling Ets
Compiling Aeb.Disassemble
Compiling Aeb.Asm.Scan
Compiling Aeser.Contract.Code
Compiling Aeso.Errors
Compiling Jsx.To.Term
Compiling Base58
Compiling Aeso.Icode.To.Asm
Compiling Proplists
Compiling Aeb.Aevm.Data
Compiling Aeb.Memory
Compiling Aeso.Parser.Tests
Compiling Array
Compiling Aeso.Parser
Compiling Aeb.Fate.Maps
Compiling Erl.Bits
Compiling Aeb.Fate.Abi
Compiling Erl.Lint
Compiling Aeso.Compiler.Tests
Compiling Jsx.Parser
Compiling Jsx.Decoder
Compiling Aeser.Chain.Objects
Compiling Jsx.Encoder
Compiling Jsx.Config
Compiling Getopt
Compiling Aeso.Stdlib
Compiling Aeb.Asm
Compiling Crypto
Compiling Digraph
Compiling Erl.Posix.Msg
Compiling Erl.Pp
Compiling Aeso.Syntax.Utils
Compiling Aeso.Code.Errors
Compiling Unicode.Util
Compiling Jsx.To.Json
Compiling Erlang.TestUtil
Compiling Erl.Scan
Compiling Aeserialization
Compiling Aeb.Fate.Opcodes
Compiling Dict
Compiling Aeso.Ast
Compiling Erl.Anno
Compiling Orddict
Compiling Aeb.Aevm.Abi
Compiling Jsx.Verify
Compiling Jsx
Compiling Aeb.Opcodes
Compiling Aeb.Fate.Data
Compiling Aeso.Pretty
Compiling Erlang.Io
Compiling Erlang.Ioserver
Compiling Filename
Compiling Test.Main
The text was updated successfully, but these errors were encountered: