Project

General

Profile

  • svn:executable: *

# Date Author Comment
12872 03/22/2014 06:20 AM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: DON'T do `shopt -s lastpipe` because this causes a segfault on Linux in stderr_matches(). (it also isn't supported on Mac.) use @PIPESTATUS instead. note that we do not currently need lastpipe, since we use @PIPESTATUS (which actually provides more functionality for our purposes).

12871 03/22/2014 06:02 AM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: echo_func(): file/line #: display with regular color because the lighter color actually draws attention to rather than away from the faded text

12870 03/22/2014 05:59 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: added plain()

12861 03/22/2014 04:07 AM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: fade(): use medium gray instead of light gray because it fades on white and black backgrounds

12860 03/22/2014 03:54 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: echo_func(): fade the file/line # to avoid distracting from the function call in the default log output

12859 03/22/2014 03:51 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: added fade()

12858 03/22/2014 03:37 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: highlight_msg(): renamed to highlight_log_msg() to clarify that this contains log++-specific functionality

12857 03/22/2014 03:35 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: moved terminal formatting commands to own section

12856 03/22/2014 03:34 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: highlight_msg(): moved formatting code into separate format() function

12855 03/22/2014 03:21 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: dp(): renamed to ps() to corresponding with pv/pf

12853 03/22/2014 03:16 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: echo_func(): put file/line # after function call instead of before so the function name is listed first

12852 03/22/2014 03:13 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: echo_func(): usage: removed no longer used/implemented minor=1 switch. use log++ instead.

12848 03/22/2014 02:19 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: ignore_err_msg(): usage: added $ignore_e param from stderr_matches()

12845 03/22/2014 01:08 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: log_hint(): renamed to log_err_hint() for clarity, because this applies only to hints for errors

12844 03/22/2014 01:06 AM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: log_hint!(): use log_err instead of log_info because hints as used here are attached to (possibly benign) errors. for other uses, use mk_hint().

12843 03/22/2014 01:00 AM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: highlight_msg(): don't ' '-pad already-formatted text

12842 03/22/2014 12:57 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: manual terminal escape sequences: use highlight_msg() instead

12841 03/22/2014 12:53 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: highlight_msg(): auto-add padding around text if there is a background

12840 03/22/2014 12:51 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: highlight_msg(): use $format itself as the $highlight boolean

12839 03/22/2014 12:48 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: highlight_msg(): split apart the testing of $format and can_highlight_msg

12838 03/22/2014 12:39 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: added has_bg()

12837 03/22/2014 12:28 AM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: highlight_msg(): need to reset any existing formatting before applying new formatting

12836 03/22/2014 12:25 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: added mk_hint() and use it in log_hint!()

12835 03/22/2014 12:16 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: bg_cmd(): also log the command being run

12834 03/22/2014 12:07 AM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: need `function` before functions that have an alias with the same name

12833 03/22/2014 12:04 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: log!(): use new log:()

12832 03/22/2014 12:00 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: added log:(), which sets an explicit log_level. this also simplifies log+().

12831 03/21/2014 11:55 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: log+(): set log_level before PS4 so that the PS4 expr doesn't also need to add to log_level

12830 03/21/2014 11:51 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: removed no longer needed log+ alias (which had been renamed from clog+)

12829 03/21/2014 11:48 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: clog*: renamed to log* for clarity (possible now that log* is no longer used for function-local log_level setting)

12828 03/21/2014 11:44 PM Aaron Marcuse-Kubitza

: local setting of log_level: use log_local instead of relying on the log aliases, so that these aliases can instead be used for wrapping commands (the more common use case)

12827 03/21/2014 11:40 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: verbosity_compat alias: need to use `declare verbosity="$verbosity"` instead of `declare verbosity`, which would just clear $verbosity

12826 03/21/2014 11:38 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: verbosity_min alias: need to use `declare verbosity="$verbosity"` instead of log_local now that verbosity is not one of the vars changed by log++

12825 03/21/2014 11:30 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: log+(): use easier-to-understand log_local instead of prefix-assignments to limit assignments to the invoked command

12824 03/21/2014 11:30 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: log+(): use easier-to-understand log_local instead of prefix-assignments to limit assignments to the invoked command

12823 03/21/2014 10:57 PM Aaron Marcuse-Kubitza

: use clog instead of "log*"

12822 03/21/2014 10:45 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: log+(): removed spurious ; between setting of PS4 and log_level, which was causing erratic mismatches between PS4 and log_level. (the ; caused $PS4 to be set in the caller when invoked via one of the clog* aliases, rather than being passed as a command-specific env var.)

12821 03/21/2014 10:30 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: $verbosity: stay constant at what the user set it to instead of changing in tandem with $log_level, to facilitate debugging verbosity/log_level-related issues

12820 03/21/2014 10:11 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: log+(): usage: use aliases instead of ""-ed function names

12818 03/21/2014 06:50 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: log_err(): use red background for better visibility of errors, in the same way that lib/exc.py print_ex() does for column-based import

12817 03/21/2014 06:44 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: removed echo_func in functions used by log++, to avoid spurious highlighted output

12816 03/21/2014 06:40 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added missing clog+ alias

12815 03/21/2014 06:35 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: log_hint(): use the standard log_fd and log_info() format, not err_fd and log_err() format, for hint messages

12814 03/21/2014 06:27 PM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: log_msg!(): indent each line, not just the first

12813 03/21/2014 06:26 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added split_lines()

12812 03/21/2014 06:05 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: log(): factored out helper function log_msg!()

12811 03/21/2014 06:00 PM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: highlight_msg(): bold instead of underlining because the underlining interferes with the readability of the commands

12810 03/21/2014 05:57 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: highlight_msg(): allow turning off formatting w/ empty $format

12809 03/21/2014 05:53 PM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: log_err() calls: removed manual highlighting

12808 03/21/2014 05:51 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: log_err(): highlight all error messages using highlight_msg()'s new $format

12807 03/21/2014 05:45 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: highlight_msg(): support custom format

12805 03/21/2014 05:25 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: log(): highlight log_level 1 messages to stand out against other output, for easier debugging

12803 03/21/2014 04:12 PM Aaron Marcuse-Kubitza

bugfix: catch(): also need to support $1='' because this is a now a use case of ignore_e()

12802 03/21/2014 04:02 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: ignore_err_msg(): also need to ignore false exit status on no match

12801 03/21/2014 03:49 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr_matches(): moved prep_try/rethrow into the function itself so that callers don't have to wrap this function in a complex sequence of prep_try/rethrow statements

12799 03/21/2014 03:42 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr_matches(): moved prep_try/rethrow into the function itself so that callers don't have to wrap this function in a complex sequence of prep_try/rethrow statements

12798 03/21/2014 03:25 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added rethrow_exit alias

12772 03/20/2014 07:09 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: rethrow*: only `return` if $e is actually nonzero, because rethrow is now being used as a catch-all in situations where there might not be an error

12771 03/20/2014 07:06 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: prep_try: initialize $e to 0 to simplify error-handling coding

12770 03/20/2014 06:56 PM Aaron Marcuse-Kubitza

stderr_matches(): wrapper caller usage: added alternative usage when using `||`

12769 03/20/2014 06:50 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr_matches(): wrapper caller usage: documented usage for a negated condition (ie. prefixed w/ !)

12768 03/20/2014 06:48 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr_matches(): usage: split into wrapper usage and wrapper caller usage for clarity

12765 03/20/2014 06:43 PM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: stderr_matches(): usage: `rethrow` must be called right after stderr_matches(), to avoid calling running other commands if there is an error

12764 03/20/2014 06:40 PM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: stderr_matches(): when using $ignore_e, also set benign_error=1 to suppress the highlighting of the error

12762 03/20/2014 06:34 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr_matches(): supporting ignoring any benign error exit status associated with the error message being tested for

12761 03/20/2014 06:18 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr_matches(): usage: documented where any ignore_e statement would go

12760 03/20/2014 05:37 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: stderr_matches(): can't use `try` because this clears the exit status, which is needed for @PIPESTATUS to work. to support this, also need to avoid errexiting since @PIPESTATUS will be used instead.

12759 03/18/2014 06:18 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added dp(), which debug-prints a message

12735 03/15/2014 06:13 PM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: stdout_contains(): add another pipe_delay because the `grep` statement was sometimes getting printed before its filtered output

12731 03/15/2014 05:28 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: die_error_hidden(): min verbosity to display error should not be hardcoded

12729 03/15/2014 05:18 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added die_error_hidden()

12727 03/15/2014 05:13 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added log_hint(), whose msg is only displayed if not a benign error

12723 03/15/2014 04:31 PM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: log_err(): don't override verbosity manually, as this will not set log_level or PS4. instead, use new log! , which sets these correctly.

12722 03/15/2014 04:24 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added log! , which force-displays next log message

12721 03/15/2014 03:59 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: save_e: made it idempotent so that it also works if save_e was already called

12720 03/15/2014 03:57 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: save_e: made it idempotent so that it also works if save_e was already called

12719 03/15/2014 03:37 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: rethrow: documented why can't use `(exit "$e")` (bash bug that prevents errexit)

12710 03/14/2014 07:26 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added enter_top_dir and use it in in_top_dir

12709 03/14/2014 07:12 PM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: commands run inside $(...): need to run with log++ so that these aren't normally debug-printed

12708 03/14/2014 06:41 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added pv(), which debug-prints var(s)

12707 03/14/2014 06:40 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added wildcard.()

12706 03/14/2014 06:40 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added wildcard/()

12705 03/14/2014 06:40 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added esc_args()

12693 03/14/2014 03:32 PM Aaron Marcuse-Kubitza

lib/sh/util.sh: added is_callable()

12690 03/14/2014 07:32 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr_matches(): inline the stderr_matches alias to avoid needing to quote stderr_matches as "stderr_matches" in the most common use case (with pattern as a prefix env var)

12689 03/14/2014 07:29 AM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: stderr_matches(): when passing `pattern=...` as a prefix env var, must be invoked as `"stderr_matches"` to avoid the env var applying to the prep_try portion of the stderr_matches alias

12217 02/14/2014 11:40 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr_matches(): documented that the purpose of not redirecting fd 2 back to fd 2 is to allow log-filtering out an otherwise-confusing benign error

12216 02/14/2014 11:30 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: ignore_err_msg(): documented that unlike `|| true`, this suppresses only errors caused by a particular error message, rather than all error exit statuses

12211 02/14/2014 10:59 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: stdout_contains(): usage: documented that this requires a `{ ... } 41>&1` wrapper

12210 02/14/2014 10:57 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr2stdout(): clarified that fd 2 is not redirected back to fd 2

12209 02/14/2014 10:55 AM Aaron Marcuse-Kubitza

bugfix: lib/sh/util.sh: stderr_matches(): need to avoid redirecting stderr and stdout to the same place, because this prevents redirecting stdout back to the original stdout after stderr has been filtered using |

12208 02/14/2014 10:23 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: local_export_array: renamed to just export_array because this was a replacement for export, not local_export

12207 02/14/2014 10:21 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: local_*array: don't need -a because that it's an array is autodetected by the ()

12206 02/14/2014 10:20 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: stderr_matches(): actually don't need to declare PIPESTATUS_ in a separate command, because local does support arrays

12205 02/14/2014 10:18 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: added local_export_array

12204 02/14/2014 10:17 AM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: local_array: clarified that this is only needed for older versions of bash (the lack of support for arrays has apparently been fixed)

12203 02/14/2014 10:12 AM Aaron Marcuse-Kubitza

lib/sh/util.sh: added local_array

12202 02/14/2014 10:07 AM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: stderr_matches(): usage: documented that now need to manually rethrow any command error, if applicable

12201 02/14/2014 10:04 AM Aaron Marcuse-Kubitza

*{.sh,run}: stderr_matches calls: don't need to wrap the command in `"try"` because stderr_matches now does this

12200 02/14/2014 09:55 AM Aaron Marcuse-Kubitza

fix: lib/sh/util.sh: `shopt -s lastpipe`: suppress error message if not supported