Commit Graph

128 Commits

Author SHA1 Message Date
Dave Yarwood
e32e6dc85e 2.0.3: Include REPL servers in alda ps output 2021-08-01 17:25:36 -04:00
Dave Yarwood
0cbd70334c alda doctor: test for the presence/absence of REPL server state file 2021-08-01 17:08:42 -04:00
Dave Yarwood
6989003547 alda doctor: verify that players clean up their state files when they exit 2021-08-01 16:10:07 -04:00
Dave Yarwood
c023e838ad Show an error message if you forget the -f in alda play -f some-file.alda 2021-06-30 21:09:05 -04:00
Dave Yarwood
ecb5aae370 Hack to work around aurora not supporting NO_COLOR 2021-06-28 11:04:48 -04:00
Dave Yarwood
c6f8949571 alda stop prints "Stopping playback." for visible feedback 2021-06-27 22:29:18 -04:00
David Lu
9f550c6641 Merge pull request #355 from alda-lang/interop/musicxml-2
Refactored importer and added handling for various tags
2021-05-15 23:16:42 -04:00
David Lu
7fcd5047c1 Refactored MusicXML importer and added support for importing barlines, chords, ties, voices, slurs, dotted notes, and parts 2021-05-15 23:14:42 -04:00
Dave Yarwood
6b77a5affc Add -m, --message flag to alda repl to enable sending arbitrary messages to the server 2021-05-15 16:02:59 -04:00
David Lu
6795bc6bf0 Set up preliminary musicxml importer 2021-05-01 20:01:46 -04:00
Dave Yarwood
ee7a94b59d alda update: check for new versions 2021-04-06 11:18:17 -04:00
Dave Yarwood
2d191ff6d9 Improvements to handling situations where alda-player isn't installed or is the wrong version
In either of these scenarios, `alda doctor` will now offer to install the
correct alda-player version.

I've updated the relevant user-facing error messages to recommend running `alda
doctor` to remedy the situation.

This incidentally also improves the way that we've been spawning player
processes. I realized that for _each_ of the player processes that we spawn (and
it can be up to 3 at once, I think?), we first invoke `alda-player info` to
check the `alda-player` version against the `alda` version, but we really only
need to do this once.
2021-03-25 21:59:28 -04:00
Dave Yarwood
1839e93bb7 Implement a (hopefully!) robust alda update mechanism
I haven't yet implemented the part where use the Alda API to check for versions
newer than the one installed. This commit is just the actual update mechanism.
`alda update` takes a flag that lets you specify which version you want to
install. That works, as of this commit, and hopefully I've done it in a way that
will work on Windows, macOS, and Linux. CI will tell me whether or not this is
the case when I push this commit.
2021-03-06 15:36:11 -05:00
Dave Yarwood
bacfc64b44 Ensure that the HTTP response body is closed 2021-02-25 21:38:11 -05:00
Dave Yarwood
8d4e3f18f6 Disable telemetry when running CI builds 2021-02-22 21:49:43 -05:00
Dave Yarwood
b6520f2be5 alda update: command skeleton and CI step for cross-platform testing 2021-02-20 21:39:43 -05:00
Dave Yarwood
6a79510d70 Further adjust the Cobra usage text template 2021-02-20 21:37:20 -05:00
Dave Yarwood
29b1cb2d86 Add missing final "---" in telemetry help text, for consistency 2021-02-20 21:36:52 -05:00
Dave Yarwood
68a577d21a Bugfix: Don't leave player processes hanging around after one-off alda export 2021-02-20 14:43:21 -05:00
Dave Yarwood
07932d6960 Improve error message when running alda parse or alda export without providing input 2021-02-20 14:17:44 -05:00
Dave Yarwood
8d872222b0 Refactor to DRY up (almost) identical alda play/parse/export help text examples 2021-02-20 14:06:27 -05:00
Dave Yarwood
5b7e0a0ffc Send telemetry: OS, arch, version, command run 2021-02-10 20:34:51 -05:00
Dave Yarwood
8d95f5d651 fancier telemetry notice in a box 2021-02-05 20:54:18 -05:00
Dave Yarwood
b89aefaa29 incorporate the notice about telemetry into the new PersistentPreRunE / custom UsageFunc regime
So that the verbosity level is set correctly.
2021-02-04 22:04:58 -05:00
Dave Yarwood
c64511c21e make verbosity validation error message more informative 2021-02-04 09:05:31 -05:00
Dave Yarwood
c4a083d3a7 refactor: remove unneeded verbosity level argument (the value is global) 2021-02-04 09:05:13 -05:00
Dave Yarwood
012ee0f50a handle verbosity in a less hacky way 2021-02-04 08:57:20 -05:00
Dave Yarwood
610f023e0f Fill player pool as part of PersistentPreRunE and custom UsageFunc 2021-02-04 08:13:59 -05:00
Dave Yarwood
ad72304417 ensure that we await background activities at the very end 2021-02-04 08:09:01 -05:00
Dave Yarwood
8fca3143b5 generalize background player filling routine into a little "background activities" system 2021-02-03 20:18:49 -05:00
Dave Yarwood
b1f4342824 add alda doctor to the comment explaining exceptions to automatic player spawning 2021-01-31 21:38:07 -05:00
Dave Yarwood
ae631d785f inform users of telemetry on first run 2021-01-30 21:01:17 -05:00
Dave Yarwood
3e1d7d587d use bright yellow instead of yellow 2021-01-28 22:38:31 -05:00
Dave Yarwood
51922ad830 improve a few more user-facing error messages 2021-01-28 22:12:56 -05:00
Dave Yarwood
32674a18d0 aesthetic tweaks 2021-01-19 21:29:09 -05:00
Dave Yarwood
4c3a701740 only handle errors by exiting at the top level (Run => RunE; remove help.ExitOnError) 2021-01-19 21:13:03 -05:00
Dave Yarwood
5c03af50fb keep line lengths <= 80 characters 2021-01-19 21:00:48 -05:00
Dave Yarwood
8a88454a3d improve error messages about failure to start player processes 2021-01-19 12:50:25 -05:00
Dave Yarwood
5261729900 preserve existing message format for CLI usage errors, e.g. the ones generated by Cobra 2021-01-19 12:05:30 -05:00
Dave Yarwood
39a72c126e don't spawn processes at the beginning of alda doctor
It seems to me like the results are more accurate this way. Although it's
totally arbitrary, since the user could have run other commands like `alda`,
`alda --help` or `alda play ...` first, which would have spawned player
processes anyway.
2021-01-16 21:40:56 -05:00
Dave Yarwood
1a888366e1 include website, github, and slack links in top-level help text 2021-01-16 20:30:20 -05:00
Dave Yarwood
9fe7f961fc present errors with source context as-is when running alda play 2021-01-16 15:32:59 -05:00
Dave Yarwood
b3956dde60 scaffolding for better user-facing error messages 2021-01-16 15:27:22 -05:00
Dave Yarwood
0de3f4e99a increase the timeout period for MIDI export 2021-01-09 21:08:06 -05:00
Dave Yarwood
0a1b2475da add incremental progress to alda export output 2021-01-09 21:07:45 -05:00
Dave Yarwood
4b10ac6ce2 avoid index out of range error in the case of alda -v with no value 2021-01-08 20:34:55 -05:00
Dave Yarwood
0d07580bd5 include website URL in top-level help text 2021-01-07 21:10:24 -05:00
Dave Yarwood
d80d48b55d add stderr output to alda play to provide the user with intermediate feedback 2020-12-27 20:41:38 -05:00
Dave Yarwood
eb28ebf200 use logging in alda ps output if there is an error
this way, it is easier to distinguish these types of errors from the rest of
the text, and it looks less accidental
2020-12-27 20:40:57 -05:00
Dave Yarwood
673a6ce851 use an environment variable (ALDA_DISABLE_SPAWNING) to explicitly disable spawning in CI builds 2020-11-27 14:02:17 -05:00