Commit graph

124 commits

Author SHA1 Message Date
Casey Rodarmor f73de24fd7
Add log variable to justfile (#621)
Allows logging to be controlled with, for example:

    just log=trace run
2020-03-31 00:00:05 -07:00
Casey Rodarmor 985a6a833d
Release v0.5.10 (#613)
- Bump version: `0.5.9` -> `0.5.10`
- Update changelog
- Update dependencies
- Update man page
- Update config test
- Fix publish and check recipes
2020-03-18 09:03:21 -07:00
Casey Rodarmor 8fea09a3dd
Release v0.5.9 (#612)
- Bump version number: `0.5.8` -> `0.5.9`
- Update changelog
- Update dependencies
- Update config test
- Add `pr` and `push` to justfile
2020-03-18 08:19:43 -07:00
Casey Rodarmor 2da5581d0f
Only build for linux on docs.rs (#611)
The public documentation is minimal and doesn't change between
platforms, so we only build them for linux on docs.rs to save
their build machines some cycles.
2020-03-17 21:03:47 -07:00
Casey Rodarmor aceee3e217
Release v0.5.7 (#591)
- Bump version: v0.5.7 -> v0.5.8
- Update changelog
- Update man page
- Update config test
- Update dependencies
2020-02-06 12:25:09 -08:00
Casey Rodarmor 88f4ee760a
Remove unused dependencies (#587)
- Remove intertools
- Remove assert_matches
2020-01-30 08:20:08 -08:00
Casey Rodarmor 1d084f1d4e
Release v0.5.7 (#584)
- Bump version: 0.5.6 -> 0.5.7
- Update change log
- Update man page
- Update config test
2020-01-28 03:03:07 -08:00
Casey Rodarmor f3d5d124a4
Release v0.5.6 (#582)
- Bump version: 0.5.5 -> 0.5.6
- Update change log
- Update man page
- Update config test
2020-01-28 02:31:38 -08:00
Casey Rodarmor 56496e14bf
Release v0.5.5 (#576)
- Bump version: 0.5.4 -> 0.5.5
- Update changelog
- Update man page
- Update config test
2020-01-15 03:33:49 -08:00
Casey Rodarmor e14447030a
Release v0.5.4 (#570)
- Bump version: 0.5.3 -> 0.5.4
- Update changelog
- Update man page
- Update config test
2019-12-25 07:46:54 -08:00
Casey Rodarmor 320e2027a1
Release v0.5.3 (#563)
- Bump version: v0.5.2 -> v0.5.3
- Update changelog
2019-12-11 17:22:46 -08:00
Casey Rodarmor 20790a0cc7
Release v0.5.2 (#557)
- Bump version: v0.5.1 -> v0.5.2
- Update changelog
- Update dependencies
2019-12-07 04:59:58 -08:00
Casey Rodarmor d2decbfdb8
Resolve functions (#550)
Modifies parsing to return strongly-typed `Thunk`s, which contain both
the function implementation, as well as the correct number of arguments.

This moves unknown function and function argument count mismatch errors
to parse time.
2019-11-21 12:14:10 -06:00
Casey Rodarmor e5232fda89
Release v0.5.1 (#544)
- Bump version: v0.5.0 -> v0.5.1
- Update changelog
2019-11-20 02:08:58 -06:00
Casey Rodarmor c40d16f2a2
Release: v0.5.0 (#530)
- Bump version: v0.4.5 -> v0.5.0
- Update dependencies
- Update changelog
- Appease linter
- Appease clippy
2019-11-12 14:11:53 -08:00
Casey Rodarmor aefdcea7d0
Gargantuan refactor (#522)
- Instead of changing the current directory with `env::set_current_dir`
  to be implicitly inherited by subprocesses, we now use
  `Command::current_dir` to set it explicitly. This feels much better,
  since we aren't dependent on the implicit state of the process's
  current directory.

- Subcommand execution is much improved.

- Added a ton of tests for config parsing, config execution, working
  dir, and search dir.

- Error messages are improved. Many more will be colored.

- The Config is now onwed, instead of borrowing from the arguments and
  the `clap::ArgMatches` object. This is a huge ergonomic improvement,
  especially in tests, and I don't think anyone will notice.

- `--edit` now uses `$VISUAL`, `$EDITOR`, or `vim`, in that order,
  matching git, which I think is what most people will expect.

- Added a cute `tmptree!{}` macro, for creating temporary directories
  populated with directories and files for tests.

- Admitted that grammer is LL(k) and I don't know what `k` is.
2019-11-09 21:43:20 -08:00
Casey Rodarmor 8e084a7042
Note need to publish with nightly cargo (#506)
Until github.com/rust-lang/cargo/pull/7333 makes it into stable rust,
we'll be forced to publish using nightly, due to our unpublished dev
dependency on `test-utilities`.
2019-10-31 20:10:18 -07:00
Casey Rodarmor f3b8030070
Bump version: v0.4.4 -> v0.4.5 (#505) 2019-10-31 19:19:01 -07:00
Casey Rodarmor c26c0e4ecc
Update dependencies (#501)
- dotenv: 0.13 -> 0.15 (picks up the new parser)
- ansi-term: 0.11 -> 0.12
- env_logger: 0.6 -> 0.7
2019-10-22 19:51:50 -07:00
Casey Rodarmor 49ab423592
Refactor lexer tests (#498)
- Refactor the lexer tests to be more readable, abandoning the
  previous string-based summary DSL in favor of a more obvious
  sequence of `TokenKinds` with optional lexemes. The new tests
  also test that token lexemes are correct.

- Move duplicated `unindent` function into a shared crate,
  `test-utilities`. This new versionless dev-dependency will
  prevent publishing to crates.io, at least until rust-lang/cargo/pull/7333
  makes it into stable. If we publish a new version before then,
  test-utilities will need to be published to crates.io, so we can depend
  on it by version.
2019-10-17 20:04:54 -07:00
SOFe 6acabb2562 Add repository attribute to Cargo.toml (#493) 2019-10-13 03:05:09 -07:00
Casey Rodarmor 1d063cce01
Hide summary functionality behind feature flag (#472)
Since summaries are only used by Janus, the Just ecosystem testing tool,
it makes sense to hide it behind a feature flag.
2019-09-21 19:19:56 -07:00
Casey Rodarmor 04a2b6461e
Generate man page with help2man (#463)
The generated man page doesn't look great by default, so this also adds the
help4help2man feature, which makes Just print a help message that produces
a better man page.
2019-07-18 21:58:06 -07:00
Casey Rodarmor 74e45e7c05
Remove dependency on brev (#462)
Just's dependency on brev was the cause of a
fairly deep branch of the transitive dependency
tree. To decrease build time and make the life of
packagers easier, this diff moves the functionality
that Just was using in Brev into Just itself, and
removes the dependency on Brev.

Fortunately, the only functionality that Just was
using was the output function and OutputError
enum, so this was easily done.
2019-07-13 01:55:06 -07:00
Casey Rodarmor 57ac89a7ac
Minimize dependency version requirements (#461)
In order to make the life of downstream packagers easier, we should take care that dependency version requirements in Cargo.toml are as minimal as possible, so that packagers have as much flexibility as possible in packaging Just and its dependencies.

This diff reduces dependency version requirements in Cargo.toml to the minimum possible, i.e. the minimum possible semver compatible version that builds and passes tests.

We continue to require patch versions of ctrlc and log, because I couldn't get just to build with minimal versions after removing their patch requirements.
2019-07-10 22:59:32 -07:00
Niklas Claesson 1958edfacb Bump clap dependency to 2.33.0 (#458) 2019-07-07 18:45:52 -07:00
Niklas Claesson ff91e3d7c6 Use tempfile crate instead of tempdir (#455) 2019-07-06 20:55:46 -07:00
Casey Rodarmor 23443e2472
Bump version: v0.4.3 -> v0.4.4 (#449) 2019-06-02 13:38:16 -07:00
Casey Rodarmor 22e96447b4
Replace colored_diff with pretty_assertions (#440) 2019-05-15 14:38:36 -04:00
Casey Rodarmor ea2afb627b
Bump version: v0.4.2 -> v0.4.3 (#431)
- Bump version from v0.4.2 to v0.4.3
- Update dependencies
- Make change log more readable
2019-05-07 19:37:40 -07:00
Casey Rodarmor 415c84ea39
Refactor and rename test macros (#415) 2019-04-19 02:17:43 -07:00
Casey Rodarmor 85336f09b0
Bump version: v0.4.1 -> v0.4.2 (#407) 2019-04-15 23:39:18 -07:00
Casey Rodarmor 596ea34460
Replace regex-based lexer with character-at-a-time lexer (#406) 2019-04-15 22:40:02 -07:00
Casey Rodarmor e615ea0389
Bump version: v0.4.0 -> v0.4.1 (#405) 2019-04-15 14:45:40 -07:00
Casey Rodarmor c3d1d9049f
Bump version: 0.3.13 -> 0.4.0 (#401) 2019-04-12 00:46:29 -07:00
Casey Rodarmor 12f9428695
Add justfile summaries (#399)
Exposes an interface for producing a summary that captures the important details of the parsed justfile.
2019-04-11 16:35:16 -07:00
Casey Rodarmor 3a287b864a
Housekeeping (#394)
- Upgrade to rust 2018
- Update dependencies
- Use BTree{Map,Set} instead of Map and Set
2019-04-11 15:23:14 -07:00
Casey Rodarmor 849cdcb37f
Bump version: 0.3.12 -> 0.3.13 (#371) 2018-11-06 00:41:33 -08:00
Geoff Shannon 6b0fc174d8 Fuzz test compiler (#362) 2018-10-13 19:12:35 +09:00
Casey Rodarmor b14d1ec97c
Wait for child processes to finish (#345)
Thanks to @bheisler for the feature request and initial implementation.

Fixes #302
2018-08-27 16:03:52 -07:00
Casey Rodarmor 5acc112a97
Bump version: 0.3.11 -> 0.3.12 (#324) 2018-06-19 16:21:32 -04:00
Casey Rodarmor ee7302c0e3
Bump version: 0.3.10 -> 0.3.11 (#318) 2018-05-06 22:20:48 -04:00
Casey Rodarmor 2f8e89228a
Bump dependencies (#316) 2018-05-06 22:15:15 -04:00
Casey Rodarmor ef45b02cc3
Version bump + update deps: 0.3.9 -> 0.3.10 (#311) 2018-03-20 01:25:32 -07:00
Casey Rodarmor 70e96d52eb
Bump version: 0.3.8 -> 0.3.9 (#308) 2018-03-05 13:28:30 -08:00
Casey Rodarmor 70234f6193
Add dotenv integration (#306) 2018-03-05 13:21:35 -08:00
Casey Rodarmor 0e42d1435b
Bump version to 0.3.8 and update dependencies (#304) 2018-02-16 01:24:38 -08:00
Casey Rodarmor 667f81d79d
Bump version: 0.3.6 -> 0.3.7 (#297) 2018-01-23 08:32:37 +01:00
Casey Rodarmor 337f8f882b
Bump version: 0.3.5 -> 0.3.6 (#293) 2018-01-05 11:11:10 +01:00
Casey Rodarmor 26098ba609
Bump version: 0.3.4 -> 0.3.5 (#286) 2017-12-11 21:44:45 +01:00