Commit Graph

6280 Commits

Author SHA1 Message Date
Simon Michael
08f8be3cb4 make older ghcs mostly work with new base-compat (#794)
Using the same base-compat version across all ghc versions is kind of
the point of base-compat; now we can rely on whatever base-compat
0.10.1 provides.

hledger-api has been commented with ghc 7.10, way too much hassle.
2018-06-04 17:32:39 -07:00
Simon Michael
9b801f5746 cabal: consistent indentation 2018-06-04 17:32:39 -07:00
Simon Michael
328b2dabfe require latest base-compat, might as well (#794) 2018-06-04 17:32:32 -07:00
Peter Simons
6db7f800ee hledger-lib: fix doctest suite after recent package updates
The new version of our package set apparently contains both base-compat and
base-compat-batteries in its transitive closure. This breaks the doctest suite,
which just imports everything into scope when the tests are run, thereby making
module names like Prelude.Compat ambiguous.
2018-06-04 21:41:15 +02:00
Peter Simons
7876d3a4ef stack.yaml: update nightly to latest snapshot
- We need base-compat 0.10.x.
 - The new snapshot includes the servant packages we require.
2018-06-04 21:00:57 +02:00
Peter Simons
8c0c168cd6 Fix the build of hledger-lib with ghc 8.0.x and base-compat 0.10.x.
We don't need to import Data.Monoid because Prelude.Compat exports "<>"
already. In fact, importing that module causes build failures:

    Hledger/Read/Common.hs:725:62: error:
        Ambiguous occurrence ‘<>’
        It could refer to either ‘Sem.<>’,
                                 imported from ‘Prelude.Compat’ at Hledger/Read/Common.hs:97:1-39
                                 (and originally defined in ‘Data.Semigroup’)
                              or ‘Data.Monoid.<>’,
                                 imported from ‘Data.Monoid’ at Hledger/Read/Common.hs:110:1-18

Fixes https://github.com/simonmichael/hledger/issues/794.
2018-06-04 20:58:58 +02:00
Léo Gaspard
0808307af1 travis: use STACK variable 2018-06-03 17:14:37 -07:00
Aerex
5808e289e6 feat(hledger-ui): added neovim as a supported editor
when neovim is set as EDITOR hleger will jump to the correct line number of the transaction; before
hledger will open journal at top of the file
2018-06-03 17:11:43 -07:00
Simon Michael
65f2dd6013 tools: make incr-buildtest*: like buildtest* but dont rebuild all
[ci skip]
2018-06-03 17:04:02 -07:00
Simon Michael
f68caf529c tools: make buildtest-all: include latest stack.yaml also
[ci skip]
2018-06-03 12:31:52 -07:00
Simon Michael
66fbdc5d61 lib: enable doctests on mac again, note workaround, fix link
[ci skip]
2018-06-01 07:18:12 -07:00
Simon Michael
0d989a8b48 site: download: windows: mention #791
[ci skip]
2018-05-30 14:31:31 -07:00
Simon Michael
3e470a999f appveyor: belay that happy fix attempt; check stack version 2018-05-30 12:51:12 -07:00
Simon Michael
93e61ec0c3 windows: note issue url (#791) 2018-05-30 11:52:10 -07:00
Simon Michael
e75b2b539e appveyor: add stack local bin dir to PATH, try to get happy seen 2018-05-30 11:39:43 -07:00
Simon Michael
10ae56aea8 appveyor: expand network issue note 2018-05-30 11:10:33 -07:00
Simon Michael
840a404b16 appveyor: always install happy, avoiding today's haskell tooling fail 2018-05-30 11:10:33 -07:00
Simon Michael
d257d136e1 appveyor: don't invalidate whole C:\SR from a stack yaml change 2018-05-30 11:10:33 -07:00
Simon Michael
6d5bd27fe3 windows: use latest directory with stack-ghc8.0.yaml also 2018-05-30 11:10:33 -07:00
Simon Michael
3e2fefd494 stack: try latest directory for a startup hang with windows symlinks 2018-05-30 10:33:25 -07:00
Alex Chen
1116261f5a lib: simplify fromRawNumber 2018-05-27 07:50:26 -07:00
Alex Chen
c3f5659d75 lib: add some strictness annotations to the parser
This was done to reverse minor performance regressions introduced in the
previous commits
2018-05-27 07:50:26 -07:00
Alex Chen
d79e707485 lib: remove redundant check in accountnamep 2018-05-27 07:50:26 -07:00
Alex Chen
43aa3d479e lib: fix up runJournalParser 2018-05-27 07:50:26 -07:00
Alex Chen
d56fca1ba2 lib: superficial parser cleanups 2018-05-27 07:50:26 -07:00
Alex Chen
2a492696a9 lib: prevent the parsing of prices of prices 2018-05-27 07:50:26 -07:00
Alex Chen
edf9cc2366 lib: move handling of exponentials into fromRawNumber [API]
- Rationale:
  - The information necessary for applying exponents to a number is more
    explicitly represented in the inputs to `fromRawNumber` than in the outputs
  - This way, `exponentp` may simply return an `Int`
2018-05-27 07:50:26 -07:00
Alex Chen
f7fd6e6525 lib: refactor the raw number parser [API]
- Purpose: to reduce the verbosity of the previous implementation
- Split off `AmbiguousNumber` into its own type
- Introduce a function `AmbiguousNumber -> RawNumber` explicitly capturing the
  disambiguation logic
- Reduce the number of remaining constructors in `RawNumber` to just two,
  `WithSeparator` and `NoSeparator`
  - The choice to distinguish by the presence of digit separators is motivated
    by the need for this information later on when disallowing exponents on
    numbers with digit separators
2018-05-27 07:50:26 -07:00
Alex Chen
6ffa9cb3cd lib: rename pdigitgroup to digitgroupp for consistency 2018-05-27 07:50:26 -07:00
Alex Chen
cf9b2001e7 lib: refactor sign parser
- Extracts the handling of signs out of `fromRawNumber` and into `signp` itself
- Rationale: The sign can be applied independently from the logic in
  `fromRawNumber`
2018-05-27 07:50:26 -07:00
Simon Michael
d28862d10d site: download: fix with stack link
[ci skip]
2018-05-25 07:20:57 -07:00
Simon Michael
55bea458ff install: hledger-irr updated, use latest hledger-lib again (#787)
[ci skip]
2018-05-25 07:04:20 -07:00
Simon Michael
4ed3780fbc install: hledger-irr can't build with latest hledger-lib yet (#787) 2018-05-24 22:19:00 -07:00
Alex Chen
84c7e2c403 lib: superficial changes to parsers 2018-05-24 09:35:27 -07:00
Alex Chen
121ba92ade lib: refactor the raw number parser [API change] 2018-05-24 09:35:27 -07:00
Alex Chen
93fbac99d3 lib: refactor date parser 2018-05-24 09:35:27 -07:00
Alex Chen
12e8d0e282 lib: change some parsers to use takeWhileP 2018-05-22 12:16:46 -07:00
Alex Chen
558c11596f lib: refactor the account name parser 2018-05-22 12:16:46 -07:00
Alex Chen
b245ec7b3d lib: remove the megaparsec compatability module 2018-05-22 12:16:46 -07:00
Alex Chen
c4ba7542d7 lib: use megaparsec 6 for all supported ghc versions 2018-05-22 12:16:46 -07:00
Everett Hildenbrandt
615ca04813 Shake.hs: use system-wide install of pandoc instead of stack exec pandoc 2018-05-21 08:35:49 -07:00
Everett Hildenbrandt
35a1f96501 stack-ghc8.2.yaml: remove now unneeded extra-deps 2018-05-21 08:35:49 -07:00
Everett Hildenbrandt
16200908e8 Shake, tools/pandoc-site.{hs => lua}: switch to building site with Lua filter 2018-05-21 08:35:49 -07:00
Everett Hildenbrandt
f3d81631e9 tools/pandoc-site: avoid calling HTML writer directly 2018-05-21 08:35:49 -07:00
Everett Hildenbrandt
1c561c2270 tools/pandoc-site: switch to using Pandoc builtin function hierarchicalize 2018-05-21 08:35:49 -07:00
Everett Hildenbrandt
78e10f7663 tools/pandoc-site: remove unused datastructure TOCAlignment and function ignoreTOC 2018-05-21 08:35:49 -07:00
Everett Hildenbrandt
946fa1d498 tools/pandoc-{site,drop-toc}, Shake, site/, doc/: switch from bulletlist to metainline toc marker
Files `site/doc/{1.0,1.1}/hledger-ui.md` had to be treated specially because
thay had some other elements inside the same `BulletList` that the `toc` lived
inside. Because only the first element of the `BulletList` is compared, these
extra HTML elements were either dropped or replaced with a TOC at compile time.
By switching to the meta-inline `\$toc\$`, they started to persist into the
resulting HTML. The fix was to drop them from the source markdown.
2018-05-21 08:35:49 -07:00
Everett Hildenbrandt
ae987b236b tools/pandoc-site: pass in generated toc from top-level filter 2018-05-21 08:35:49 -07:00
Everett Hildenbrandt
e2a322283a tools/pandoc-site: remove attribution 2018-05-21 08:35:49 -07:00
Everett Hildenbrandt
045df0e528 .ci: track generated md files as well 2018-05-21 08:35:49 -07:00