Commit Graph

187 Commits

Author SHA1 Message Date
Simon Michael
c8982355b0 ui: allow latest text-zipper, vty 2016-10-26 12:57:51 -07:00
Simon Michael
b322ba995c don't symlink stack.yaml, I think windows doesn't like it 2016-10-21 17:58:17 -07:00
Simon Michael
5aa4c91332 stack/cabal cleanups; drop GHC 7.6, 7.8 support
A (disabled) stack build plan for GHC 7.8 is included; supporting it
would need small code changes and a maintainer.
2016-10-21 14:47:22 -07:00
Simon Michael
146ba133c6 update recommended snapshots, make GHC8/lts-7 the default 2016-10-20 16:56:29 -07:00
Simon Michael
f23438ce80 stack: use latest snapshots 2016-09-21 08:51:19 -07:00
Simon Michael
a263d50275 stack: update suggested developer snapshots 2016-08-09 18:39:55 -07:00
Moritz Kiefer
4141067428 Replace Parsec with Megaparsec (see #289) (#366)
* Replace Parsec with Megaparsec (see #289)

This builds upon PR #289 by @rasendubi

* Revert renaming of parseWithState to parseWithCtx

* Fix doctests

* Update for Megaparsec 5

* Specialize parser to improve performance

* Pretty print errors

* Swap StateT and ParsecT

This is necessary to get the correct backtracking behavior, i.e. discard
state changes if the parsing fails.
2016-07-29 08:57:10 -07:00
Simon Michael
9b0cadc179 ui: support/require brick 0.7+ #379 2016-07-24 18:06:49 -07:00
Simon Michael
5355447e04 stack: update ghc 7 & 8 stack configs 2016-07-22 18:08:34 -07:00
Simon Michael
abf1bcbf36 bump default stackage snapshot to lts-6.0 2016-05-28 12:13:21 -07:00
Simon Michael
4063df0530 stack: add some required newer deps from hackage 2016-05-11 07:13:21 -07:00
Simon Michael
a569bf73c6 web: update wai-handler-launch for better startup (fixes #226) 2016-05-11 06:45:01 -07:00
Simon Michael
29d4f1c03f ui: build faster, latest brick/vty uses microlens 2016-05-11 06:32:32 -07:00
Simon Michael
4d36b04856 stack: bump snapshot to lts-5.16 2016-05-11 06:30:57 -07:00
Simon Michael
2c21ca9bf4 web: update wai-launch-handler location 2016-05-04 11:43:02 -07:00
Simon Michael
1de722a34a update wai-handler-launch git reference for stack 2016-04-29 06:58:49 -07:00
Simon Michael
df1040014e web: exit if an instance is already running (#226)
Also
- pause for 0.1s before opening the browser, to ensure the app is ready
- don't open a browser if the app fails to start
- terminate the server thread more carefully on exit, may resolve some
  lingering background thread issues eg on windows
2016-04-22 11:21:33 -07:00
Simon Michael
a3e975bdb8 doc: use new file-embed to fix ghci cwd dependence
See https://github.com/snoyberg/file-embed/issues/18
2016-04-21 08:45:22 -07:00
Simon Michael
6ffc2b2392 remove confusing comment from stack.yaml #335 2016-04-19 10:31:54 -07:00
Simon Michael
9439d1a611 require stackage nightly, for newer pandoc/swagger
Move to a newer stackage snapshot. This helps ensure a new-enough pandoc
will more be available for doc building without needing extra
compilation. Also we get to use the latest swagger and servant-swagger
for hledger-api, but we have to go to stackage nightly. With luck there
will be a lts 6 before next hledger release.
2016-04-05 16:17:08 -07:00
Simon Michael
96977afef5 bump recommended stack snapshot to lts-4.2 2016-01-21 14:54:12 -08:00
Simon Michael
687d6ec366 api: add servant-swagger extra dep for stack 2016-01-21 14:53:47 -08:00
Simon Michael
921cbe5a9e bump suggested stack snapshot to lts-4.1 2016-01-10 08:40:33 -08:00
Simon Michael
68f56764ab api: begin a web API server with examples (#316) 2016-01-09 07:48:24 -08:00
Simon Michael
6c1f847c90 stack: some versions don't like empty flags (#300)
Apparently. Also, reorder things and update doc link.
2015-11-16 15:14:49 -08:00
Simon Michael
fd9f87d08f recommended the current nightly stackage snapshot 2015-11-05 20:26:14 -08:00
Simon Michael
bb13ca4c56 don't build with rtsopts by default 2015-10-30 13:22:30 -07:00
Simon Michael
1777c0a214 require nightly stackage snapshot for hledger-ui
vty and brick are not yet in the LTS snapshots.
We don't want to list them explicitly as extra-deps since that
can't be conditionalised for windows, which doesn't support them.
So, require a nightly snapshot which does include them.
A downside of this is that most people won't have this
particular snapshot installed. But with luck, stack will
reuse bits from their older snapshots and there won't be too much building.
2015-10-26 06:49:24 -07:00
Simon Michael
f8f2d457b9 lib: memoize toRegex[CI] (#244)
The regex helpers were converting strings to regex-tdfa regular
expressions on the fly every time, but this appears to be quite
expensive. The simplest memoisation lib seems to solve it nicely.
2015-09-26 15:39:21 -10:00
Simon Michael
b0dc4d9f6f ui: depend on brick 0.2 2015-08-24 16:24:12 -07:00
Simon Michael
49e1840a0f ui: rewrite the ui using brick
hledger-ui (formerly hledger-vty) is now built on brick, a new
declarative UI layer built on vty. This brings much new power, and
should make the UI much easier to grow and maintain.

At this point, functionality and performance are similar to the old
version. There's no journal entries screen, but entering the postings
screen jumps to the latest posting, and layout is better (multiple
commodities are rendered on one line).

Requires unreleased brick from github (HEAD or some branch) for now.
2015-08-24 16:24:11 -07:00
Simon Michael
0df43a15a1 tools: stack yaml cleanup 2015-08-23 09:36:42 -07:00
Simon Michael
207ae772d4 ui: revive the curses UI, now named hledger-ui 2015-08-13 11:22:40 -07:00
Simon Michael
9536db384d bump stack resolver to lts-3.0 2015-08-13 08:16:54 -07:00
Simon Michael
5c421a3a70 bump suggested stack snapshot to nightly-2015-07-01 2015-07-12 17:57:40 -07:00
Simon Michael
01db48fcfc cli: a more robust and featureful bench test
The bench script invoked by cabal bench or stack bench now links the
benchmarked code directly, avoiding any dependence on the shell and
$PATH. Also, it reports the journal parse time and the various reports
on the parsed data separately, and runs quicker.

You can get more accurate benchmark times by running with --criterion.
This will usually give much the same numbers and takes much longer.

Benchmarking via simplebench is still available, by running with
--simplebench. In this mode it benchmarks whatever commands are
configured in bench/default.bench. A disadvantage is that it uses the
first "hledger" executable in $PATH, so check which one it reports.
2015-06-25 16:08:27 -07:00
Simon Michael
429d720e8a add a stack.yaml, using today's stackage nightly 2015-06-17 13:57:15 -07:00