Andrew Toskin
5356384d0a
Really spell out the last of the required UNIX utilities.
...
Finishing the job started in Pull Request #4301
<https://github.com/fish-shell/fish-shell/pull/4301 >
Thanks to @faho for filtering and sorting my giant list of detected
possible commands.
<https://github.com/fish-shell/fish-shell/issues/2062#issuecomment-321788080 >
2017-08-14 18:18:10 -07:00
David Adam
88134a2465
Revert "configure: check that errno is threadsafe"
...
This reverts commit ee15f1b9877834f49342a7bd93457e423eeb2cb4.
The test relies on undefined behaviour (checking for errno in the
absence of an error condition) and was broken on OpenBSD.
Closes #4184 .
2017-08-14 18:18:10 -07:00
David Adam
487dc98468
docs: update language in read documentation
2017-08-14 18:18:10 -07:00
Kurtis Rader
42ddab0cb4
make missing_var
a singleton
...
Make the `env_var_t::missing_var()` object a singleton rather than a
dynamically constructed object. This requires some discipline in its use
since C++ doesn't directly support immutable objects. But it is slightly
more efficient and helps identify code that incorrectly mutates `env_var_t`
objects that should not be modified.
2017-08-14 18:18:10 -07:00
Kurtis Rader
58b604c5ba
change order of env_set()
args
...
It's bugged me forever that the scope is the second arg to `env_get()`
but not `env_set()`. And since I'll be introducing some helper functions
that wrap `env_set()` now is a good time to change the order of its
arguments.
2017-08-14 18:18:09 -07:00
Mahmoud Al-Qudsi
fa4cf77aff
Ignore more invalid arguments from parsed man pages
...
Specifically closes #4313 .
Not being as agressive in what we ignore/blacklist, but can be revisited
easily in the future to add more characters to the argument blacklist.
2017-08-14 18:18:09 -07:00
peoro
5ceac038b1
Improved warning message when exiting with jobs still active
...
Fixes #4303
2017-08-14 18:18:09 -07:00
David Adam
7b92217273
docs: improve set -Ux language and example
...
By far the most common problem with universal variables being overridden
by global variables is other values being imported from the environment;
the `set -q; or set -gx` is much more of an edge case.
2017-08-14 18:18:09 -07:00
Kurtis Rader
74f0be2a53
remove more ENV_NULL references
2017-08-14 18:18:09 -07:00
Kurtis Rader
82b5ba1af4
fix bug in env_get()
involving empty vars
...
My previous change to eliminate `class var_entry_t` caused me to notice
that `env_get()` turned a set but empty var into a missing var. Which
is wrong. Fixing that brought to light several other pieces of code that
were wrong as a consequence of the aforementioned bug.
Another step to fixing issue #4200 .
2017-08-14 18:18:09 -07:00
Kurtis Rader
728a4634a1
replace var_entry_t
with env_var_t
...
This is a step to storing fish vars as actual vectors rather than flat
strings.
2017-08-14 18:18:09 -07:00
Fabian Homborg
745a88f2f6
Revert "Fix clearing abandoned line with VTE ( #4243 )"
...
Unfortunately, this breaks the expect tests.
So, until I can figure out how to unbreak them:
This reverts commit 09cb31a172773761a305f7353b44e9bb056a5d98.
2017-08-14 18:17:34 -07:00
Fabian Homborg
cf00162340
Fix clearing abandoned line with VTE ( #4243 )
...
* Fix clearing abandoned line with VTE
With VTE-based terminals, resizing currently causes multi-line prompts
to go weird.
This changes the sequence we use to clear the line to one suggested by
a VTE
developer (https://bugzilla.gnome.org/show_bug.cgi?id=763390#c4 ).
It changes nothing in konsole 17.04.3 and urxvt 9.22, but they already
work.
Note that this does not fix the case where output did not end in a
newline, but that doesn't seem to be up to us. Also, it only affects
those lines.
Fixes #2320 .
* Use terminfo definition instead of hardcoding
Thanks to @ixjlyons.
2017-08-14 18:17:34 -07:00
Kurtis Rader
886fc38d55
fix typo introduced by an earlier revert
2017-08-13 16:15:12 -07:00
Kurtis Rader
ef25d8c76d
Revert "rewrite abbr
function"
...
This reverts commit 17dff8c569a4bbbe88d23c77e043574d15804093.
It was meant for the major branch.
2017-08-13 15:44:31 -07:00
Kurtis Rader
e6fbb93d31
Revert "implement limits on command substitution output"
...
This reverts commit 4197420f3968093ec12075f1eac06ed1570a8e30.
It was meant for the major branch.
2017-08-13 15:39:13 -07:00
Kurtis Rader
10498059e4
Revert "document command substitution data limit"
...
This reverts commit 2bbcc5cbc80966d80576d1c30c14442ef6a6268e.
2017-08-13 15:36:39 -07:00
Kurtis Rader
9cb2554423
Revert "implement set --append
and set --prepend
"
...
This reverts commit 67de733b9b2262d424fa1f656157c952a9168b2b.
It was meant for the major branch.
2017-08-13 15:33:50 -07:00
Kurtis Rader
088b21a15f
Revert "use the new set -a
and set -p
in our scripts"
...
This reverts commit 8b79f4e5c93acf7e643ef5b7b854fa7ad5a39487.
It was meant for the major branch.
2017-08-13 15:32:16 -07:00
Kurtis Rader
296008089c
Revert "stop subclassing env_var_t from wcstring"
...
This reverts commit c36ad2761892a8f7dbb9cffc1ab2c2a470b93bf5.
It was meant for the major branch.
2017-08-13 15:31:56 -07:00
Kurtis Rader
7876bc6ef3
Revert "make tokenize_variable_array()
private"
...
This reverts commit 4fe9d794382b6b81967e6ee88c76403bb8a69541.
It was meant for the major branch.
2017-08-13 15:30:54 -07:00
Kurtis Rader
7dd2cd7de7
Revert "Revert "finish cleanup of signal blocking code""
...
This reverts commit 35ee28ff24c7bca933d477029c7f3386cfbaf9a3.
It was meant for the major branch.
2017-08-13 15:30:34 -07:00
Kurtis Rader
7776a03fb3
Revert "Fixes a race condition in output redirection in job chain"
...
This reverts commit cdb72b70248a67920002396179426e45e271d170.
It was meant for the major branch.
2017-08-13 15:30:17 -07:00
Kurtis Rader
c304ca1a1c
Revert "Explicitly nulling chained_wait_prev after munmap()"
...
This reverts commit 47d8a7e8820382d3957f4bebbac79e5fd24d3d7f.
It was meant for the major branch.
2017-08-13 15:30:09 -07:00
Kurtis Rader
4429518667
Revert "Using SIGSTOP/SIGCONT instead of mmap & sem_t to synchronize jobs"
...
This reverts commit cafd856831507f0599f5ea24231a3ee25f62d174.
It was meant for the major branch.
2017-08-13 15:29:59 -07:00
Kurtis Rader
635365654d
Revert "Fixed cases where first command in chain would stay blocked"
...
This reverts commit fb13b370e26b66fee6f662ac58e06ed04b47fbc9.
It was meant for the major branch.
2017-08-13 15:29:50 -07:00
Kurtis Rader
950c7ef2eb
Revert "fixup! Using SIGSTOP/SIGCONT instead of mmap & sem_t to synchronize jobs"
...
This reverts commit f653fbfaf4bfea2a21e7d9b6dfebc9ceaa9ca58d.
It was meant for the major branch.
2017-08-13 15:29:41 -07:00
Kurtis Rader
e0ccb8c48e
Revert "Improved blocked prcoess comments, clarified job vs command chain"
...
This reverts commit dfac81803b0da9fc1fd1d71f2f01abb1909dfc07.
It was meant for the major branch.
2017-08-13 15:29:33 -07:00
Kurtis Rader
8ebba2066d
Revert "Fixed race condition in new job control synchronization"
...
This reverts commit 87394a9e0b1aba875b2ccb1c03ba0314ba41ff9e.
It was meant for the major branch.
2017-08-13 15:29:22 -07:00
Kurtis Rader
158b946eac
Revert "Don't attempt to unconditionally tcsetpgrp"
...
This reverts commit 0e9177b59090e1f7bab048436b7c625ef3544947.
It was meant for the major branch.
2017-08-13 15:29:09 -07:00
Kurtis Rader
559f8d5511
Revert "Don't indiscriminately unblock previous cmd for internal builtin/functions"
...
This reverts commit c81cf56c0b6355e9d5e50d74e56fc00e1039d40a.
It was meant for the major branch.
2017-08-13 15:28:59 -07:00
Kurtis Rader
9d5990eda7
Revert "Changed how process groups are assigned to child processes"
...
This reverts commit 25afc9b377de5255673276314bf9d26a3b43cbab.
It was meant for the major branch.
2017-08-13 15:28:48 -07:00
Kurtis Rader
8d53b72e46
Revert "Set child process group in case of posix_spawn"
...
This reverts commit 9f2addcf27f5f62b367ab47e3b31ccffa68e5cc6.
It was meant for the major branch.
2017-08-13 15:28:38 -07:00
Kurtis Rader
9af7720f19
Revert "Fixed exec failure regression"
...
This reverts commit 8b8a21dcad2505aec15753f308045ae739eda918.
It was meant for the major branch.
2017-08-13 15:28:28 -07:00
Kurtis Rader
ab4dde6c7f
Revert "Handling EPERM in terminal_give_to_job()"
...
This reverts commit bdcd451030998b3c0081edf523e35d20d8a20f2c.
It was meant for the major branch.
2017-08-13 15:28:18 -07:00
Kurtis Rader
b023bddc88
Revert "Clarified job_continue logging"
...
This reverts commit 8f2ef082be3679a76156f4fdcff459aec45ee435.
It was meant for the major branch.
2017-08-13 15:28:05 -07:00
Kurtis Rader
a8a8d33fe0
Revert "Better set_child_group logic for multi-process jobs"
...
This reverts commit 99c6f65fee8be5476197cb11d9c8f8bec85266b5.
It was meant for the major branch.
2017-08-13 15:27:57 -07:00
Kurtis Rader
8a1af4a38d
Revert "Be more judicious about when SIGSTOP is performed"
...
This reverts commit abf6874a2df910453948a91ac3dc767e64aff6d8.
It was meant for the major branch.
2017-08-13 15:27:48 -07:00
Kurtis Rader
607d9e6aef
Revert "No need to unblock last process since it will no longer be SIGSTOP'd"
...
This reverts commit 30aa8b3663008afb1275ab7c90a30073b4235639.
It was meant for the major branch.
2017-08-13 15:27:40 -07:00
Kurtis Rader
b3f43723dc
Revert "Improved comments"
...
This reverts commit 1ae0272c4edee47390f7bc59d7c02fbcf21f0c37.
It was meant for the major branch.
2017-08-13 15:27:17 -07:00
Kurtis Rader
92628a384b
Revert "Retry setpgid in setup_child_process on EPERM"
...
This reverts commit d6c4e66484957355d4985938ca30bc5d31ddc156.
It was meant for the major branch.
2017-08-13 15:27:08 -07:00
Kurtis Rader
ac4eedb436
Revert "Fixed no-op loop hang"
...
This reverts commit 8537cc982e67d548b08dcc887ff32d338e7ba3e4.
It was meant for the major branch.
2017-08-13 15:27:00 -07:00
Kurtis Rader
4b1bc53f91
Revert "Split child_set_group from setup_child_process"
...
This reverts commit f7b051905e66abf3bbdd8c6f0f2ce75f2d0a73a2.
It was meant for the major branch.
2017-08-13 15:26:52 -07:00
Kurtis Rader
7b443ac1d3
Revert "terminal_give_to_job() was bypassing the cont
branch"
...
This reverts commit b27217e106313fd492be093999bd8c3bd01b7221.
It was meant for the major branch.
2017-08-13 15:26:41 -07:00
Kurtis Rader
bd601019fe
Revert "blocking only if pipes_to_next_command breaks things like read.expect test"
...
This reverts commit c3d756b5df0a2fdbe91cf892325249ee255b57ed.
It was meant for the major branch.
2017-08-13 15:26:30 -07:00
Kurtis Rader
8c86d258e8
Revert "unblock_previous on exec_job finish"
...
This reverts commit 5db8065f151d01e9003c24d5615a083acb6b33f0.
It was meant for the major branch.
2017-08-13 15:26:22 -07:00
Kurtis Rader
376cb99974
Revert "Logging updates"
...
This reverts commit a0efae5f08f6b157a397444a2c60a3088c6f7057.
It was meant for the major branch.
2017-08-13 15:26:13 -07:00
Kurtis Rader
d0ce2b4824
Revert "Minor refactoring"
...
This reverts commit 15da6f02032f8bfa6d2af333cf386250ca76d4f5.
It was meant for the major branch.
2017-08-13 15:26:03 -07:00
Kurtis Rader
a4593d011a
Revert "Added important comment about blocked_pid"
...
This reverts commit 16d2f4faff4d06c26a162c50fb47fc2f1f0f73e0.
It was meant for the major branch.
2017-08-13 15:25:54 -07:00
Kurtis Rader
177256064c
Revert "Removed old/unneeded variants of block_child"
...
This reverts commit 8e63386203dcf6377a9c5a49207249523d66ccd3.
It was meant for the major branch.
2017-08-13 15:25:45 -07:00