From 8bda0eedcb1ad798c6ffe82c9d733ef506ff2757 Mon Sep 17 00:00:00 2001 From: iko Date: Wed, 23 Mar 2022 11:30:04 +0300 Subject: [PATCH] Flush buffer after writing --- src/Spin/Functions.hs | 2 ++ stack.yaml | 67 +++++++++++++++++++++++++++++++++++++++++++ stack.yaml.lock | 13 +++++++++ 3 files changed, 82 insertions(+) create mode 100644 stack.yaml create mode 100644 stack.yaml.lock diff --git a/src/Spin/Functions.hs b/src/Spin/Functions.hs index 3dcdef6..6c1c640 100644 --- a/src/Spin/Functions.hs +++ b/src/Spin/Functions.hs @@ -12,6 +12,7 @@ import Data.Maybe import System.Console.ANSI import Spin.Types +import System.IO defaultConfig :: Config defaultConfig = Config @@ -53,6 +54,7 @@ tick :: Spec -> IORef Config -> Int -> IO () tick spec@Spec{..} configIORef i = do config <- readIORef configIORef putStr $ renderTick spec i config + hFlush stdout threadDelay $ usInMs * specInterval resetLine tick spec configIORef $ i + 1 diff --git a/stack.yaml b/stack.yaml new file mode 100644 index 0000000..678cc85 --- /dev/null +++ b/stack.yaml @@ -0,0 +1,67 @@ +# This file was automatically generated by 'stack init' +# +# Some commonly used options have been documented as comments in this file. +# For advanced use and comprehensive documentation of the format, please see: +# https://docs.haskellstack.org/en/stable/yaml_configuration/ + +# Resolver to choose a 'specific' stackage snapshot or a compiler version. +# A snapshot resolver dictates the compiler version and the set of packages +# to be used for project dependencies. For example: +# +# resolver: lts-3.5 +# resolver: nightly-2015-09-21 +# resolver: ghc-7.10.2 +# +# The location of a snapshot can be provided as a file or url. Stack assumes +# a snapshot provided as a file might change, whereas a url resource does not. +# +# resolver: ./custom-snapshot.yaml +# resolver: https://example.com/snapshots/2018-01-01.yaml +resolver: + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/19/0.yaml + +# User packages to be built. +# Various formats can be used as shown in the example below. +# +# packages: +# - some-directory +# - https://example.com/foo/bar/baz-0.0.2.tar.gz +# subdirs: +# - auto-update +# - wai +packages: +- . +# Dependency packages to be pulled from upstream that are not in the resolver. +# These entries can reference officially published versions as well as +# forks / in-progress versions pinned to a git hash. For example: +# +# extra-deps: +# - acme-missiles-0.3 +# - git: https://github.com/commercialhaskell/stack.git +# commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a +# +# extra-deps: [] + +# Override default flag values for local packages and extra-deps +# flags: {} + +# Extra package databases containing global packages +# extra-package-dbs: [] + +# Control whether we use the GHC we find on the path +# system-ghc: true +# +# Require a specific version of stack, using version ranges +# require-stack-version: -any # Default +# require-stack-version: ">=2.7" +# +# Override the architecture used by stack, especially useful on Windows +# arch: i386 +# arch: x86_64 +# +# Extra directories used by stack for building +# extra-include-dirs: [/path/to/dir] +# extra-lib-dirs: [/path/to/dir] +# +# Allow a newer minor version of GHC than the snapshot specifies +# compiler-check: newer-minor diff --git a/stack.yaml.lock b/stack.yaml.lock new file mode 100644 index 0000000..fe8610b --- /dev/null +++ b/stack.yaml.lock @@ -0,0 +1,13 @@ +# This file was autogenerated by Stack. +# You should not edit this file by hand. +# For more information, please see the documentation at: +# https://docs.haskellstack.org/en/stable/lock_files + +packages: [] +snapshots: +- completed: + size: 616897 + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/19/0.yaml + sha256: bbf2be02f17940bac1f87cb462d4fb0c3355de6dcfc53d84f4f9ad3ee2164f65 + original: + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/19/0.yaml