Commit Graph

728 Commits

Author SHA1 Message Date
Simon Michael
c94cee6aae make: showversions; more cleanup
[ci skip]
2019-02-03 17:19:23 -08:00
Simon Michael
384c555f99 make, shake: refer to each other's help
[ci skip]
2019-02-03 17:01:57 -08:00
Simon Michael
1eb9562204 make: site-liverender; add contrib guide to tags
[ci skip]
2019-02-03 16:56:54 -08:00
Simon Michael
11ce2aff59 doc: update version number notes, move to contrib guide
[ci skip]
2019-02-03 16:51:27 -08:00
Simon Michael
1ff2516a84 make: clean out old stuff
[ci skip]
2019-02-03 16:09:42 -08:00
Simon Michael
47f3ebf25a api: remove some hard-coded version numbers 2019-02-03 15:19:42 -08:00
Simon Michael
579fba0a4f make: updateembeddeddocs
[ci skip]
2019-02-01 17:23:21 -08:00
Simon Michael
89bb4816c6 shake: move changelog scripts to Shake, enhance
New shake targets:
./Shake changelogs
./Shake CHANGES.md
./Shake CHANGES.md-dry
./Shake PKG/CHANGES.md
./Shake PKG/CHANGES.md-dry

Enhancements:
- removes the changelog's previous top heading
- ignores commits like "changelog", "doc: update changelogs"..
- does not write temporary files
- dry run mode

[ci skip]
2019-02-01 10:36:49 -08:00
Simon Michael
29c41dc84b make: avoid sed-related error message, mostly
[ci skip]
2019-01-31 15:55:28 -08:00
Simon Michael
c8246e7323 cli: command help: reduce width, line wrapping
cmdargs wraps any lines longer than 78 characters.  To (mostly) avoid
this, we now display verbatim blocks unindented, and some of
register's examples have been altered to make them fit.
2019-01-30 17:58:13 -08:00
Simon Michael
c8b0c9accd make: ghci-shake
[ci skip]
2019-01-30 09:09:52 -08:00
Simon Michael
a37c18e5c7 make: include Shake.hs in tags 2019-01-26 16:33:51 -08:00
Simon Michael
0362377960 make: exclude func. test commits from project changelog
[ci skip]
2019-01-26 11:29:49 -08:00
Simon Michael
11dbe61e90 make: cleanup
[ci skip]
2019-01-26 07:36:40 -08:00
Simon Michael
5aafc186b6 make: prefixes no longer removed
[ci skip]
2019-01-26 07:32:29 -08:00
Simon Michael
ed709d68ca make: new changelog update process
"make changelogs" updates the project-wide and package changelogs,
inserting new commits at the top, formatted as changelog entries.

New commits means commits touching that directory, since the tag
version or commit hash which is the first word in the changelog's
previous top-most heading.

[ci skip]
2019-01-26 07:15:29 -08:00
Simon Michael
cb3f202922 make: comments
[ci skip]
2019-01-25 18:41:46 -08:00
Simon Michael
8d03adc5ad make: include doc files and hpack/cabal files in tags again
[ci skip]
2019-01-25 12:45:21 -08:00
Simon Michael
2f2b68f1cd make: site-livereload, make it show up in make help 2019-01-22 13:36:27 -08:00
Simon Michael
3267b640a2 make: update home page rule with new wiki page name 2019-01-19 16:50:11 -08:00
Simon Michael
adf8d8cddb make: fix help typo 2018-12-10 10:56:33 +00:00
Simon Michael
66549a526a make: gencabal: no need for old ghc now presumably
[ci skip]
2018-12-03 15:52:03 -08:00
Simon Michael
2f8aa8d536 make: changes-*: add markdown line breaks after first lines
[ci skip]
2018-12-03 09:27:19 -08:00
Simon Michael
5cfe5456d6 make: note IDEA ^M issue
[ci skip]
2018-12-03 09:26:51 -08:00
Simon Michael
45b8d4c0de make: clarify comment 2018-12-01 16:29:31 -08:00
Simon Michael
7114da4baf make: new changes-* rules 2018-11-25 21:05:55 -08:00
Simon Michael
5945c3c44f tools: make: reorder build test rules 2018-10-24 10:35:12 -07:00
Simon Michael
944a49d359 tools: make: drop hunittest rule
[ci skip]
2018-09-09 08:35:03 -07:00
Simon Michael
73d39d02c7 tools: make: clarify doctest/haddocktest help (#866)
[ci skip]
2018-09-09 08:33:06 -07:00
Simon Michael
f80f463439 tools: make help-*: just grep make rules, case insensitively 2018-08-18 19:22:15 +01:00
Simon Michael
7e1ccd4540 tools: fix make ghci-api 2018-08-18 13:40:01 +01:00
Simon Michael
e79c58882a tools: make ghcid-test-TESTPATTERN: run only some tests via ghcid 2018-08-17 09:37:09 +01:00
Simon Michael
77ad384fcd tools: make: tweak quotes for easier copy/paste 2018-08-15 11:24:52 +01:00
Simon Michael
ebe2d52965 tools: make functest: build hledger and test that, without installing 2018-08-14 16:05:06 +01:00
Simon Michael
8a4fb59aaa tools: make ghci-doctest: fix rule help 2018-08-03 19:05:14 +01:00
Simon Michael
0135f8c863 tools: make doctest: use default snapshot/ghc 8.4, mention mac workaround 2018-08-03 19:05:11 +01:00
Simon Michael
39aed387e9 tools: make functest: exclude test files/dirs beginning with _
[ci skip]
2018-07-24 14:05:23 +01:00
Simon Michael
21503717cf tools: make installtest, runs hledger-install.sh from ~
[ci skip]
2018-07-02 07:49:20 +01:00
Jakub Zárybnický
483283ec43 web: Add capabilities guards and conditional widget rendering 2018-06-24 16:25:22 +02:00
Simon Michael
312bf2fcb5 tools: make ghcid-test: ghcid plus the test command
[ci skip]
2018-06-08 06:01:36 -07:00
Simon Michael
ee68fed951 tools: make: rename rules to ghci[d]-doctest
[ci skip]
2018-06-07 18:20:14 -07:00
Simon Michael
bcbf0489c7 tools: make buildplantest* to check install plans without building
[ci skip]
2018-06-05 06:21:52 -07:00
Léo Gaspard
0808307af1 travis: use STACK variable 2018-06-03 17:14:37 -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
55790008d7 make buildtest: build the test and benchmark suites too
[ci skip]
2018-05-17 20:42:14 -07:00
Simon Michael
fc5d18a63a make: buildtest, buildtest-stackX.yaml, buildtest-all, watch-X
Useful new rules for 1. thorough build checking with all supported ghc
versions, and 2. re-running any make rule when a committed file
changes.

[ci skip]
2018-05-17 19:39:45 -07:00
Simon Michael
9cb07e148c make: move some things around
[ci skip]
2018-05-17 19:39:19 -07:00
Simon Michael
7442b2887c make: fixes 2018-05-17 19:10:12 -07:00
Simon Michael
d1b9d9dfe6 make: TESTING cleanup, more thorough and fine-grained test rules
new:
warningstest
hunittest
doctest
easytest
watch-RULE

renamed:
allsnapshotstest -> allghcstest

[ci skip]
2018-05-17 18:12:48 -07:00
Simon Michael
38e7e378bd make deploy: also do a push if we updated wiki links, to allow pulls 2018-05-16 11:58:08 -07:00
Simon Michael
bed168b5cd make: fix allsnapshotstest
[ci skip]
2018-05-16 11:44:26 -07:00
Simon Michael
84fd779ad3 make: stacktest -> allsnapshotstest, add 8.2 2018-05-16 10:33:32 -07:00
Simon Michael
f125825d97 make: changelog note
[ci skip]
2018-05-15 12:22:52 -07:00
Simon Michael
4c259ff273 site: home: avoid a make failure with no change 2018-05-14 20:42:49 -07:00
Simon Michael
e1230d9929 site: home: also commit when updating wiki links
[ci skip]
2018-05-14 18:07:53 -07:00
Simon Michael
e4a26aa0cf make: fix ghci-lib-doctest rule
[ci skip]
2018-05-09 10:22:15 -07:00
Simon Michael
6fa5c4d570 make: update home page from wiki sidebar properly 2018-04-28 13:46:44 -07:00
Simon Michael
bd21219dda make ghcid-shake: drop pandoc dep 2018-04-25 17:52:35 -07:00
Simon Michael
039a1fa778 make: drop old manual rules 2018-04-25 17:45:22 -07:00
Simon Michael
30186e35ea cabal: update tested-with 2018-04-20 05:24:09 -07:00
Simon Michael
ce3a1b64d0 make: drop obsolete easytest rules
[ci skip]
2018-04-12 11:03:13 -07:00
Simon Michael
554edb165f make: comment out localism, don't require a special hpack
[ci skip]
2018-04-12 07:14:57 -07:00
Simon Michael
4d214b28c3 site: wiki subdirectory isn't needed in links
[ci skip]
2018-04-10 07:18:16 -07:00
Simon Michael
48c8e153c1 site: update wiki sidebar mirroring
[ci skip]
2018-04-10 07:14:24 -07:00
Simon Michael
f46e2f5de3 site: update wiki sidebar mirroring
[ci skip]
2018-04-10 06:35:00 -07:00
Simon Michael
4c4f53c3ad make gencabal: use ghc 8.2 to include hledger-ui 2018-04-04 17:55:26 +01:00
Simon Michael
7565687fcb tools: always generate cabal files with hpack 0.20 to avoid warnings
Not great, requires makefile users to have a "hpack-0.20" in $PATH.
2018-04-04 17:47:36 +01:00
Simon Michael
3e81019b88 tools: make ghci[d]-lib-doctest 2018-04-04 17:47:01 +01:00
Simon Michael
addd9b5385 tools: make build-check-warnings, notes 2018-03-25 13:17:00 +01:00
Simon Michael
6b1445fa96 site: docs: make site/docs.md mirrors wiki sidebar there 2018-03-09 23:31:26 +00:00
Simon Michael
9fb3a6d986 tools: note site-preview losing styles issue
[ci skip]
2018-03-09 04:18:32 +00:00
Simon Michael
b31c3d7678 tools: make easytest[-watch]
[ci skip]
2018-03-04 12:33:58 -08:00
Simon Michael
46d7893446 updated generated manuals 2018-01-18 11:01:15 -08:00
Simon Michael
b19e885e82 tools: make functest: stop building addons, low value & too slow
[ci skip]
2018-01-13 16:27:11 -08:00
Simon Michael
756296c440 tools: make: version bumping tweaks 2018-01-04 10:25:10 -08:00
Simon Michael
ae3dca28e2 tools: make: update version/date setting rules 2017-12-31 10:21:31 -08:00
Simon Michael
e83b375959 tools: make: changelog-related notes 2017-12-30 18:20:30 -08:00
Simon Michael
2dc47673b7 tools: more reliable cabal file regeneration using stack
Uses stack's hpack, making hpack version warnings less likely.
Regenerates all local stack packages' cabal files, even if they're missing.
2017-12-30 08:58:39 -08:00
Simon Michael
128efd96c2 tools: make ghcid-shake 2017-12-14 16:49:55 -08:00
Simon Michael
b425e50ad1 change paths in code, scripts, readme 2017-12-06 18:16:35 -08:00
Simon Michael
79965c5186 tools: make bench: just run hledger in $PATH by default 2017-12-05 14:32:28 -08:00
Simon Michael
30e4d26534 tools: add bench.hs with notes; make quickbench -> make bench 2017-11-29 07:41:53 -08:00
Simon Michael
9ee1ce9e08 tools: make: changelog comment, make help system optional 2017-09-26 15:32:30 -10:00
Simon Michael
4a5d10eb2d tools: make: tweak commit messages 2017-09-22 16:15:11 -10:00
Simon Michael
88fdb1f465 tools: make: drop "dev" version suffix 2017-09-14 05:51:38 -07:00
Simon Michael
406acac48e cli: include new Commands directory in make rules 2017-09-12 18:06:20 -07:00
Simon Michael
a5d3f82054 tools: make travistest: stack clean before this also 2017-09-12 10:05:11 -07:00
Simon Michael
0bfe590fd7 tools: make stackagetest: also check for haddock errors 2017-09-11 18:37:05 -07:00
Simon Michael
89a627b0c2 tools: make: document ghci rules, add ghcid rules 2017-09-11 16:53:13 -07:00
Simon Michael
6f44987c42 stack: more robust make stacktest, does a clean first
[ci skip]
2017-09-08 12:17:26 -07:00
Simon Michael
9ef6abb3b6 tools: make stacktest: really build all packages 2017-09-08 11:54:29 -07:00
Simon Michael
aac739a248 tools: make stacktest: install ghc when needed 2017-09-08 11:41:01 -07:00
Simon Michael
cf9654797d stack: make stacktest consistent naming, help
[ci skip]
2017-09-08 10:37:28 -07:00
Simon Michael
025a2375bd stack: more thorough make test-stackage (test and bench) 2017-09-08 10:26:40 -07:00
Simon Michael
1f2b00ee3b stack: update stackage configs for 3 ghcs, switch to 8.2.1 as default
Building with same GHC as stackage nightly is a good idea for noticing
problems keeping us out of stackage. make test-stackage is a start at
checking for stackage problems with the last three GHC versions.
2017-09-08 07:57:07 -07:00
Simon Michael
ed256f1dd8 tools: simplify changelog process, make changes-show in each package
[ci skip]
2017-08-25 12:01:31 -07:00
Simon Michael
ffbb71c4ef tools: improve change notes process, make help system, make speed
Draft change notes are now kept in CHANGENOTES.org in the top
directory for easiest access.

The changenotes-* rules for maintaining this have been renamed and
improved.

"make SECTION-help" has been added, as it's sometimes easier to type
than "make help-SECTION". Eg if you append "-help" to any "make RULE"
command you will likely see its help (and neighbouring RULEs' help.
Specifically, it shows the "make help" output from the first match
of the SECTION regexp to the next section end.)

Makefile variables are now all of the dynamic/recursive type. This
might mean shell commands are run redundantly when a variable is used
multiple times, but it avoids running those shell commands at all when
the variable is not used, which means most make rules should now feel
more snappy.

showreleaseauthors looks bitrotted and has been commented out.

[ci skip]
2017-08-16 15:50:48 -07:00
Simon Michael
0a0e6d18ec tools: make help-SECTION 2017-08-16 06:19:32 -07:00
Simon Michael
f99d4eefa6 tools: make help headings tweak 2017-08-16 06:05:43 -07:00
Simon Michael
058791631d tools: make setversion: more thorough replacing of bounds (==, >= only) 2017-08-01 10:10:35 -07:00
Simon Michael
69a272178a tools: make: update RELEASING rules; misc cleanups 2017-07-31 16:12:59 -07:00
Simon Michael
f16052b992 tools: setversion: keep (and require) upper bound in hledger deps 2017-07-30 15:00:44 -07:00
Simon Michael
d4268b4c2e tools: make draft-changelog-start, draft-changelog-update
[ci skip]
2017-07-05 08:17:01 +01:00
Simon Michael
f40c19165d tools: make showreleaseauthors 2017-07-01 18:39:18 +01:00
Simon Michael
6c38f3dc1f tools: make: refactor 2017-06-30 21:14:21 +01:00
Simon Michael
8a847c982b tools: make changelog-draft: show the commits since last tag as org nodes 2017-06-22 09:56:59 -07:00
Simon Michael
2b4e7cdbf7 tools: make tag: add a .ctags file, more detailed tagging of non-haskell files 2017-06-22 07:28:00 -07:00
Simon Michael
f633f2bbb1 tools: make addons (& make functest) compiles the add-ons
bin/compile.sh remains in place for discoverability.

Let's see if this causes a Travis meltdown.
2017-06-13 09:39:34 -07:00
Simon Michael
06140ea610 tools: make test: less stack progress output; skip redundant builtin tests 2017-06-07 07:20:25 -07:00
Simon Michael
54915bba61 tools: hide successes in make functest 2017-06-07 07:15:45 -07:00
Simon Michael
573b08bb90 tools: make setversion: also update hledger-api package version 2017-06-06 09:20:55 -07:00
Simon Michael
13c4643a09 tools: make ghci-prof starts GHCI in profiling mode, can use traceStack 2017-05-30 13:57:52 -07:00
Simon Michael
2f5d950f0e tools: note that shelltest should be a released version 2017-05-24 15:51:33 -07:00
Simon Michael
93f637c766 tools: make ghci-web creates required symlinks
These are needed to run hledger-web from the top directory.
2017-04-29 14:45:38 -07:00
Simon Michael
7bcce9e787 tools: site: note hakyll preview issues, add easy auto-reloading rule 2017-04-27 10:00:26 -07:00
Simon Michael
2f5c9df0de tools: make tagrelease move tags when needed 2017-03-31 18:29:41 -07:00
Simon Michael
2c1ec12d2e tools: update make hackageupload 2017-03-31 18:16:04 -07:00
Simon Michael
ed93026f48 tools: make travistest 2017-03-31 17:57:12 -07:00
Simon Michael
98ca2e965c tools: make: set exit code when various tests fail 2017-03-28 22:10:46 -07:00
Simon Michael
6eb211aa6c tools: revert problematic "make functest" PATH change 2017-03-28 18:43:13 -07:00
Simon Michael
71b7103e00 tools: fix path for make tag 2017-03-28 04:47:36 -07:00
Simon Michael
49973afe2d tools: shelltest tweaks: explicit path, show successes 2017-03-22 08:13:04 +00:00
Simon Michael
fc51940c78 tools: avoid excessive rebuilding with make [func]test 2017-03-21 09:17:10 +00:00
Simon Michael
3ae8712bbc rename data/ to examples/ 2017-01-08 07:26:13 -08:00
Simon Michael
eaadc927a7 tools: fix ugly warnings after using multiple cabal versions 2016-12-30 14:36:28 -08:00
Simon Michael
eaf8853a9f tools: hakyll isn't in lts 7, use nightly for hakyll-std
Also compile it when run interpreted.
2016-12-29 11:33:34 -08:00
Simon Michael
2b310029bf file list fixes 2016-11-12 13:53:55 -08:00
Simon Michael
7d4a1f2399 tools: make/shake cleanups 2016-10-28 11:15:10 -07:00
Simon Michael
ae794be55d makefile: add hledger-api package 2016-10-26 13:39:48 -07:00
Simon Michael
843c417079 tools: simplebench is now quickbench 2016-10-21 11:46:50 -07:00
Simon Michael
146ba133c6 update recommended snapshots, make GHC8/lts-7 the default 2016-10-20 16:56:29 -07:00
Simon Michael
458a8735d7 makefile, doc tweaks 2016-09-21 09:35:11 -07:00
Simon Michael
25a2fe100c tools: make stack command configurable, for ghc 8 testing 2016-05-27 08:12:48 -07:00
Simon Michael
9a95b142b7 tools: fix for running ghci with extra packages 2016-05-24 19:20:30 -07:00
Simon Michael
99b6c11db5 tools: make a million-txn sample journal 2016-05-24 19:19:27 -07:00
Simon Michael
6454659a22 tools: revive "make quickbench" 2016-05-24 19:17:42 -07:00
Simon Michael
259e7bfbe3 lib: add a doctest suite 2016-04-28 13:34:57 -07:00
Simon Michael
e2126fe480 make: re-enable multi-package ghci prompts 2016-04-21 08:45:29 -07:00
Simon Michael
b0f40bd7c8 tools: fix make functest in a fresh copy 2016-04-21 08:37:37 -07:00
Simon Michael
57d7d931ae retire broken make ghci rules, prefer stack ghci 2016-04-18 15:41:35 -07:00
Simon Michael
588f36d662 rename timelog format to timeclock 2016-04-12 21:13:19 -07:00
Simon Michael
3e53cf7ef9 tools: fix outdated yaml paths in tags 2016-04-12 21:12:39 -07:00
Simon Michael
8fe2cd7ece whitespace 2016-02-21 02:34:36 -08:00
Simon Michael
e1c9e51775 tools: new build system for man/web docs
Goal:

Generate man pages and web docs from one source.

Current plan:

The master docs for each package are now the pandoc-style
manpage-markdown files in the package directories -
hledger/hledger.1.md, hledger-lib/hledger_journal.5.md, etc.

Parts of these will be marked as web-only, and parts as man-only, using
divs recognisable by custom pandoc filters.

When generating man pages we strip the web-only parts, and all html
blocks, inline html and hyperlinks.

When generating web docs we strip the man-only parts and apply any other
tweaks needed for easy presentation, perhaps combining them into a
single web page similar to the old user manual.

Shake:

This was hard to do with GNU Make, and so I've introduced Shake, which
is working very well. Both coexist for now but it's probably time to
switch.
2016-02-21 02:21:41 -08:00
Simon Michael
92d5b0ab3d tools: try making web manual from man pages, WIP 2016-02-19 22:39:13 -08:00
Simon Michael
8677d01024 tools: exclude some js files from LOC count 2016-02-19 22:05:41 -08:00
Simon Michael
06b54bf05e lib: timedot format, convenient for time logging
Timedot is a plain text format for logging dated, categorised
quantities (eg time), supported by hledger.  It is convenient for
approximate and retroactive time logging, eg when the real-time
clock-in/out required with a timeclock file is too precise or too
interruptive.  It can be formatted like a bar chart, making clear at a
glance where time was spent.
2016-02-19 17:55:57 -08:00
Simon Michael
b744033a28 tools: make ghci-api 2016-02-19 17:52:40 -08:00
Simon Michael
c8347b00cf tools: improve emacs tags, include js/docs etc. 2016-01-25 08:21:29 -08:00