Page MenuHomePhabricator

spectral (Kyle Lippincott)
User

Projects

User does not belong to any projects.

User Details

User Since
Jun 29 2017, 4:34 PM (152 w, 4 d)

Recent Activity

Thu, May 7

spectral closed D8464: locking: wait for locks in `hg cp` and `hg mv`.
Thu, May 7, 2:21 PM
spectral committed rHGa9ff0742c8ea: locking: wait for locks in `hg cp` and `hg mv`.
locking: wait for locks in `hg cp` and `hg mv`
Thu, May 7, 2:20 PM

Apr 21 2020

spectral created D8464: locking: wait for locks in `hg cp` and `hg mv`.
Apr 21 2020, 4:50 PM

Apr 7 2020

spectral committed rHG1756f75873bf: hgk: remove a "b" used on a kwargs expansion, the keys are strs.
hgk: remove a "b" used on a kwargs expansion, the keys are strs
Apr 7 2020, 6:25 AM
spectral closed D8385: hgk: remove a "b" used on a kwargs expansion, the keys are strs.
Apr 7 2020, 6:25 AM

Apr 6 2020

spectral created D8385: hgk: remove a "b" used on a kwargs expansion, the keys are strs.
Apr 6 2020, 6:21 PM

Apr 1 2020

spectral closed D8354: histedit: add missing b prefix to a string.
Apr 1 2020, 5:34 PM
spectral committed rHG8fca7e8449a8: histedit: add missing b prefix to a string.
histedit: add missing b prefix to a string
Apr 1 2020, 5:34 PM
spectral created D8354: histedit: add missing b prefix to a string.
Apr 1 2020, 5:26 PM

Mar 25 2020

spectral closed D8321: darwin: use vim, not vi, to avoid data-loss inducing posix behavior.
Mar 25 2020, 12:53 PM
spectral committed rHGc23877cb25a5: darwin: use vim, not vi, to avoid data-loss inducing posix behavior.
darwin: use vim, not vi, to avoid data-loss inducing posix behavior
Mar 25 2020, 12:53 PM

Mar 23 2020

spectral created D8321: darwin: use vim, not vi, to avoid data-loss inducing posix behavior.
Mar 23 2020, 6:13 PM

Mar 20 2020

spectral added a comment to D8281: narrow: escape includepats/excludepats when sending over the wire.
  • Server emits a new capability narrow-exp-1-escaped (in addition to the current narrow-exp-1, this is not replacing the existing capability)

nit: I *think* the "1" in the name was supposed to be a version number, so the new capability's name would be narrow-exp-2.

Mar 20 2020, 10:26 PM
spectral added a comment to D8281: narrow: escape includepats/excludepats when sending over the wire.

Since narrow is still experimental, I don't think we should try too hard for backward compatibility. We could introduce a new end-point for a new encoding and drop the old one in a couple of version.

+0, honestly. I won't require it, but I'd really rather we shaved this yak _now_ rather than when narrow has even more users.

Mar 20 2020, 7:09 PM

Mar 17 2020

spectral updated the diff for D8281: narrow: escape includepats/excludepats when sending over the wire.
Mar 17 2020, 5:59 PM
spectral updated the diff for D8281: narrow: escape includepats/excludepats when sending over the wire.
Mar 17 2020, 5:50 PM
spectral closed D8296: chistedit: support histedit.summary-template in curses histedit plan.
Mar 17 2020, 5:28 PM
spectral committed rHGad5a10f49dfa: chistedit: support histedit.summary-template in curses histedit plan.
chistedit: support histedit.summary-template in curses histedit plan
Mar 17 2020, 5:28 PM
spectral committed rHG77d48738b8e0: vfs: fix typo in comment (remove extra "l").
vfs: fix typo in comment (remove extra "l")
Mar 17 2020, 5:28 PM
spectral closed D8297: vfs: fix typo in comment (remove extra "l").
Mar 17 2020, 5:28 PM
spectral retitled D8281: narrow: escape includepats/excludepats when sending over the wire from narrow: escape includepats/excludepats when sending over the wire (BC) to narrow: escape includepats/excludepats when sending over the wire.
Mar 17 2020, 5:25 PM
spectral created D8297: vfs: fix typo in comment (remove extra "l").
Mar 17 2020, 4:16 PM
spectral created D8296: chistedit: support histedit.summary-template in curses histedit plan.
Mar 17 2020, 4:08 PM

Mar 16 2020

spectral committed rHG0af56d3ee24c: tests: make test-doctest.t automatically find files to run tests on.
tests: make test-doctest.t automatically find files to run tests on
Mar 16 2020, 11:22 PM
spectral closed D8294: tests: make test-doctest.t automatically find files to run tests on.
Mar 16 2020, 11:22 PM
spectral committed rHG529cb23155bc: tests: make test-doctest.t module list match reality.
tests: make test-doctest.t module list match reality
Mar 16 2020, 11:22 PM
spectral closed D8280: tests: make test-doctest.t module list match reality.
Mar 16 2020, 11:22 PM
spectral closed D8279: tests: remove doctest in narrowspec, it is broken.
Mar 16 2020, 11:22 PM
spectral committed rHG1922694d638f: tests: remove doctest in narrowspec, it is broken.
tests: remove doctest in narrowspec, it is broken
Mar 16 2020, 11:22 PM

Mar 13 2020

spectral added a comment to D8280: tests: make test-doctest.t module list match reality.

Should we try to move to some automatic detection of file with doctest? That would be more reliable.

Mar 13 2020, 10:32 PM
spectral updated the diff for D8281: narrow: escape includepats/excludepats when sending over the wire.
Mar 13 2020, 10:30 PM
spectral created D8294: tests: make test-doctest.t automatically find files to run tests on.
Mar 13 2020, 10:29 PM
spectral added a comment to D8281: narrow: escape includepats/excludepats when sending over the wire.

The Windows path changes seem like a good idea.
Would quoting paths with commas eliminate the need for custom escaping? I don't feel strongly about it, but custom escaping always feels weird to me. (I fact, a coworker did some homebrew escaping for CSV files a few days ago, but I forget how it ultimately ended up.)

Mar 13 2020, 1:29 AM
spectral updated the diff for D8281: narrow: escape includepats/excludepats when sending over the wire.
Mar 13 2020, 1:21 AM
spectral updated the diff for D8280: tests: make test-doctest.t module list match reality.
Mar 13 2020, 1:21 AM
spectral created D8281: narrow: escape includepats/excludepats when sending over the wire.
Mar 13 2020, 12:12 AM
spectral created D8280: tests: make test-doctest.t module list match reality.
Mar 13 2020, 12:12 AM
spectral created D8279: tests: remove doctest in narrowspec, it is broken.
Mar 13 2020, 12:12 AM

Feb 22 2020

spectral closed D8140: shelve: fix ordering of merge labels.
Feb 22 2020, 3:50 AM
spectral committed rHG69b091cdc506: shelve: fix ordering of merge labels.
shelve: fix ordering of merge labels
Feb 22 2020, 3:50 AM
spectral closed D8139: shelve: add test clearly demonstrating that the conflict labels are backwards.
Feb 22 2020, 3:50 AM
spectral committed rHG2527c10a2569: shelve: add test clearly demonstrating that the conflict labels are backwards.
shelve: add test clearly demonstrating that the conflict labels are backwards
Feb 22 2020, 3:50 AM

Feb 21 2020

spectral updated the diff for D8140: shelve: fix ordering of merge labels.
Feb 21 2020, 3:45 PM
spectral closed D8141: darwin: add another preemptive gui() call when using chg.
Feb 21 2020, 4:55 AM
spectral committed rHG6392bd7c26a8: darwin: add another preemptive gui() call when using chg.
darwin: add another preemptive gui() call when using chg
Feb 21 2020, 4:55 AM

Feb 20 2020

spectral created D8141: darwin: add another preemptive gui() call when using chg.
Feb 20 2020, 9:05 PM
spectral created D8140: shelve: fix ordering of merge labels.
Feb 20 2020, 8:13 PM
spectral created D8139: shelve: add test clearly demonstrating that the conflict labels are backwards.
Feb 20 2020, 8:13 PM

Feb 10 2020

spectral abandoned D8022: chg: pass copies of some envvars so we can detect py37+ modifications.
Feb 10 2020, 2:29 PM
spectral added a comment to D8023: chg: read CHGORIG_ values from env and handle these appropriately.

We decided to use a different method to resolve this issue.

Feb 10 2020, 2:29 PM

Feb 7 2020

spectral closed D8091: py3: fully fix bundlepart.__repr__ to return str not bytes.
Feb 7 2020, 3:41 PM
spectral committed rHG74172a234dd3: py3: fully fix bundlepart.__repr__ to return str not bytes.
py3: fully fix bundlepart.__repr__ to return str not bytes
Feb 7 2020, 3:40 PM

Feb 6 2020

spectral added inline comments to D8089: py3: __repr__ needs to return str, not bytes.
Feb 6 2020, 6:56 PM
spectral created D8091: py3: fully fix bundlepart.__repr__ to return str not bytes.
Feb 6 2020, 6:56 PM
spectral closed D8089: py3: __repr__ needs to return str, not bytes.
Feb 6 2020, 5:21 PM
spectral committed rHGc443b9ba6f63: py3: __repr__ needs to return str, not bytes.
py3: __repr__ needs to return str, not bytes
Feb 6 2020, 5:20 PM
spectral created D8089: py3: __repr__ needs to return str, not bytes.
Feb 6 2020, 1:25 PM
spectral closed D8039: chg: force-set LC_CTYPE on server start to actual value from the environment.
Feb 6 2020, 9:32 AM
spectral committed rHG04a3ae7aba14: chg: force-set LC_CTYPE on server start to actual value from the environment.
chg: force-set LC_CTYPE on server start to actual value from the environment
Feb 6 2020, 9:31 AM

Feb 4 2020

spectral abandoned D8021: chg: switch to using global `environ` instead of envp from main.
Feb 4 2020, 4:57 PM
spectral updated the diff for D8039: chg: force-set LC_CTYPE on server start to actual value from the environment.
Feb 4 2020, 4:57 PM
spectral updated the diff for D8023: chg: read CHGORIG_ values from env and handle these appropriately.
Feb 4 2020, 4:55 PM
spectral updated the diff for D8022: chg: pass copies of some envvars so we can detect py37+ modifications.
Feb 4 2020, 4:55 PM
spectral added a comment to D8039: chg: force-set LC_CTYPE on server start to actual value from the environment.
In D8039#118719, @yuja wrote:
What do you think about this approach:
1. The server detects that LC_TYPE is coerced.
2. When handling the "validate" command, the server sends back "invalidate this server, and fallback to original hg" response.
This makes chg/non-chg behave consistently with some startup overhead in mis-configured environment. The chg client can potentially print a warning to remind the user to fix their environment.

That could be, but if we do want to make chg/hg behavior consistent, maybe we
can adjust the hash computation logic?

  1. client sends CHG_ORIG_LC_CTYPE or CHG_UNSET_LC_CTYPE when spawning server
  2. they're kept in environ dict, but override LC_CTYPE while computing hash, and excluded from the hash
  3. client does not send these variables over setenv command, but passes the validation because {CHG_ORIG_LC_CTYPE: x, LC_CTYPE: y} == {LC_CTYPE: x}.
Feb 4 2020, 4:48 PM

Jan 29 2020

spectral closed D8024: profiling: flush stdout before writing profile to stderr.
Jan 29 2020, 6:18 PM
spectral committed rHGd6d4170882cd: profiling: flush stdout before writing profile to stderr.
profiling: flush stdout before writing profile to stderr
Jan 29 2020, 6:18 PM
spectral added a comment to D8022: chg: pass copies of some envvars so we can detect py37+ modifications.

I'll see how easy that is to implement and send a separate review request once I have it working.

Jan 29 2020, 5:24 PM
spectral created D8039: chg: force-set LC_CTYPE on server start to actual value from the environment.
Jan 29 2020, 5:24 PM
spectral added a comment to D8022: chg: pass copies of some envvars so we can detect py37+ modifications.
In D8022#118428, @yuja wrote:
This would cause a difference in behavior between hg and chg. I don't know how big of an issue that would be.
hg: starts up, python coerces LC_CTYPE, hg spawns a non-python subprocess, LC_CTYPE is set to the coerced value
chg: starts up, python coerces LC_CTYPE, chg fixes it, hg spawns a non-python subprocess, LC_CTYPE is set to the original value (or unset).

I think a minor behavior difference is acceptable. I see this is the problem
of Python 3 design "the world is unicode", and IMHO we want to work around
the problem with minimal changes.

Jan 29 2020, 2:52 PM

Jan 28 2020

spectral updated the diff for D8021: chg: switch to using global `environ` instead of envp from main.
Jan 28 2020, 1:58 PM
spectral added a comment to D8021: chg: switch to using global `environ` instead of envp from main.

I prefer passing in (const char**)environ to hgc_setenv().

Jan 28 2020, 1:57 PM
spectral updated the diff for D8021: chg: switch to using global `environ` instead of envp from main.
Jan 28 2020, 1:57 PM
spectral updated the diff for D8022: chg: pass copies of some envvars so we can detect py37+ modifications.
Jan 28 2020, 1:57 PM
spectral added a comment to D8022: chg: pass copies of some envvars so we can detect py37+ modifications.
In D8022#118325, @yuja wrote:

Another idea. How about sending the true LC_CTYPE value as a command
argument so the env mangling can be reverted?

  1. spawn hg serve --cmdserver chgunix ... with --daemon-postexec setenv:LC_CTYPE=$LC_CTYPE
  2. runservice() overwrites LC_CTYPE to the specified value (undo coercing)
  3. chgserver hashes the restored environ

Since the "coercing" is 100% useless for Mercurial, restoring LC_CTYPE
should be perfectly fine. And unlike setting PYTHONCOERCECLOCALE=0,
Python subprocesses can still see its own "coercing" results for better
or worse.

Jan 28 2020, 1:57 PM

Jan 27 2020

spectral created D8024: profiling: flush stdout before writing profile to stderr.
Jan 27 2020, 9:44 PM
spectral created D8023: chg: read CHGORIG_ values from env and handle these appropriately.
Jan 27 2020, 7:57 PM
spectral created D8021: chg: switch to using global `environ` instead of envp from main.
Jan 27 2020, 7:57 PM
spectral created D8022: chg: pass copies of some envvars so we can detect py37+ modifications.
Jan 27 2020, 7:57 PM

Jan 23 2020

spectral committed rHGae596fac8ba0: crecord: fix a concatenation of bytes and str on py3.
crecord: fix a concatenation of bytes and str on py3
Jan 23 2020, 11:23 AM
spectral closed D7970: crecord: fix a concatenation of bytes and str on py3.
Jan 23 2020, 7:33 AM
spectral committed rHG43410ec7462b: crecord: fix a concatenation of bytes and str on py3.
crecord: fix a concatenation of bytes and str on py3
Jan 23 2020, 7:33 AM

Jan 22 2020

spectral created D7970: crecord: fix a concatenation of bytes and str on py3.
Jan 22 2020, 1:04 PM
spectral committed rHGf0a4084f82d6: cext: change two more vars to Py_ssize_t in manifest.c.
cext: change two more vars to Py_ssize_t in manifest.c
Jan 22 2020, 11:03 AM

Jan 21 2020

spectral closed D7964: cext: change two more vars to Py_ssize_t in manifest.c.
Jan 21 2020, 5:06 PM
spectral committed rHG0e198f1f276a: cext: change two more vars to Py_ssize_t in manifest.c.
cext: change two more vars to Py_ssize_t in manifest.c
Jan 21 2020, 5:06 PM
spectral created D7964: cext: change two more vars to Py_ssize_t in manifest.c.
Jan 21 2020, 3:25 PM

Jan 17 2020

spectral closed D7913: cext: fix compiler warning about sign changing.
Jan 17 2020, 7:21 AM
spectral committed rHG969527ac7b44: cext: fix compiler warning about sign changing.
cext: fix compiler warning about sign changing
Jan 17 2020, 7:21 AM

Jan 16 2020

spectral closed D7912: py3: fix curses chunkselector fallback (when diffs are too large) on py3.
Jan 16 2020, 4:49 PM
spectral committed rHG19533e4c3450: py3: fix curses chunkselector fallback (when diffs are too large) on py3.
py3: fix curses chunkselector fallback (when diffs are too large) on py3
Jan 16 2020, 4:49 PM
spectral created D7913: cext: fix compiler warning about sign changing.
Jan 16 2020, 3:39 PM
spectral created D7912: py3: fix curses chunkselector fallback (when diffs are too large) on py3.
Jan 16 2020, 3:20 PM

Jan 9 2020

spectral committed rHG98944715a02c: fix: convert clang-format-ignorelist to use wildcards.
fix: convert clang-format-ignorelist to use wildcards
Jan 9 2020, 8:39 AM
spectral closed D7619: fix: convert clang-format-ignorelist to use wildcards.
Jan 9 2020, 8:39 AM

Jan 8 2020

spectral abandoned D7617: fix: make example fix hgrc work in subdirs.
Jan 8 2020, 5:36 PM
spectral added inline comments to D7815: sha1dc: initial implementation of Python extension.
Jan 8 2020, 4:51 PM
spectral committed rHG4e0a6d157910: progress: flush stderr after clearing.
progress: flush stderr after clearing
Jan 8 2020, 2:54 PM
spectral closed D7784: progress: flush stderr after clearing.
Jan 8 2020, 2:54 PM
spectral closed D7811: tests: fix a "naked exception" issue in test-remotefilelog-prefetch.t.
Jan 8 2020, 2:49 PM
spectral committed rHG1e0783b946c8: tests: fix a "naked exception" issue in test-remotefilelog-prefetch.t.
tests: fix a "naked exception" issue in test-remotefilelog-prefetch.t
Jan 8 2020, 2:49 PM