Skip to content

sapling: fix on macOS#202754

Merged
thoughtpolice merged 1 commit intoNixOS:masterfrom
lf-:sapling-macos
Dec 1, 2022
Merged

sapling: fix on macOS#202754
thoughtpolice merged 1 commit intoNixOS:masterfrom
lf-:sapling-macos

Conversation

@lf-
Copy link
Member

@lf- lf- commented Nov 25, 2022

Description of changes

Fixed compilation of Sapling on Darwin. One small problem is that it doesn't actually work at all: when I run sl clone https://github.com/nixos/nixpkgs it completes instantly (it shouldn't be that fast) and has no working tree or history. However, I think that this is a useful starting point for people to debug further, so I'm posting this as-is.

Fixes #202703

Here's what it does:

~/dev » ~/dev/nixpkgs/result/bin/sl clone https://github.com/lf-/dotfiles 
~/dev » cd dotfiles
dev/dotfiles » ls
dev/dotfiles » tree .sl
.sl
├── 00changelog.i
├── config
├── reponame
├── requires
├── store
│   ├── metalog
│   │   ├── blobs
│   │   │   ├── index2-id
│   │   │   ├── log
│   │   │   ├── meta
│   │   │   └── rlock
│   │   └── roots
│   │       ├── index2-reverse
│   │       ├── log
│   │       ├── meta
│   │       └── rlock
│   └── requires
└── treestate

5 directories, 13 files
dev/dotfiles » ~/dev/nixpkgs/result/bin/sl log                                   
Things done
  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 22.11 Release Notes (or backporting 22.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
    • (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes
  • Fits CONTRIBUTING.md.

@ofborg ofborg bot added the 6.topic: darwin Running or building packages on Darwin label Nov 25, 2022
@lf- lf- requested a review from pbar1 November 25, 2022 00:29
@lf-
Copy link
Member Author

lf- commented Nov 25, 2022

@quark-zju: this might be interesting to you. If you're not familiar with Nix, you can build this package by checking out my branch and running nix-build -A sapling. The output will be at the symlink result.

@lf-
Copy link
Member Author

lf- commented Nov 25, 2022

~/dev » sl clone https://github.com/lf-/dotfiles
watchman sockpath is set as /opt/facebook/watchman/var/run/watchman/jade-state/sock
~/dev » cd dotfiles
dev/dotfiles » ls
dev/dotfiles » sl 
watchman sockpath is set as /opt/facebook/watchman/var/run/watchman/jade-state/sock
dev/dotfiles » pgrep watchman
dev/dotfiles » sl --version
Sapling 0.1.20221118-210929-cfbb68aa
dev/dotfiles » ls /opt
homebrew

Maybe this is interesting? I did sl config --user ui.debug true.

@ofborg ofborg bot added 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. labels Nov 25, 2022
@lf-
Copy link
Member Author

lf- commented Nov 25, 2022

I have unified then diffed the file lists from the official distribution and the one from nixpkgs and it doesn't look like we're missing files or anything like that. More investigation required.

@pbar1
Copy link
Contributor

pbar1 commented Nov 25, 2022


~/dev » sl clone https://github.com/lf-/dotfiles

watchman sockpath is set as /opt/facebook/watchman/var/run/watchman/jade-state/sock

~/dev » cd dotfiles

dev/dotfiles » ls

dev/dotfiles » sl 

watchman sockpath is set as /opt/facebook/watchman/var/run/watchman/jade-state/sock

dev/dotfiles » pgrep watchman

dev/dotfiles » sl --version

Sapling 0.1.20221118-210929-cfbb68aa

dev/dotfiles » ls /opt

homebrew

Maybe this is interesting? I did sl config --user ui.debug true.

Hmm, running these commands using the Darwin build always emits a watchman message? AFAIK watchman is an optional dependency, at least on Linux. Is it possible that it's required on macOS?

@lf-
Copy link
Member Author

lf- commented Nov 25, 2022

Maybe? I think it's a red herring then, it seems wrong that it should make it not clone a repo.

@lf-
Copy link
Member Author

lf- commented Nov 25, 2022

it would be worthwhile to try the official binary distribution in that case i think, and see if the debug output says more stuff. maybe another day, I'm done debugging this for the minute.

@pbar1
Copy link
Contributor

pbar1 commented Nov 25, 2022

Yeah and I checked the Homebrew package spec, no mention of Watchman as a dependency either

@thoughtpolice
Copy link
Member

Note that sapling also starts a background daemon when it's first invoked that continues to exist under your login session; this is true of both macOS and Linux (and probably Windows.) I suspect there's some potential interaction here between the two that might be causing the fault. See also: facebook/sapling#261

@thoughtpolice
Copy link
Member

thoughtpolice commented Nov 25, 2022

Also, with my latest commit as of 8d7badd, this branch is slightly out of date, sorry about that. JFYI, you'll need to conditionally make postFixup only happen on Linux (postFixup = lib.optionalString stdenv.isLinux ...), as I'm sure you know

@lf-
Copy link
Member Author

lf- commented Nov 25, 2022

ah YES, I saw that bug now. I bet that's related.

@lf-
Copy link
Member Author

lf- commented Nov 27, 2022

I have tried sl --kill-chg-daemon and recloned to no change in behaviour.

@ofborg ofborg bot requested a review from thoughtpolice November 27, 2022 20:37
@lf-
Copy link
Member Author

lf- commented Nov 27, 2022

Confirmed still happening on tip of main.

@lf-
Copy link
Member Author

lf- commented Nov 27, 2022

Here's the debug logs (finally figured out how to get those with EDENSCM_LOG):

Debug logs
[nix-shell:~/dev/sapling2/eden/scm]$ EDENSCM_LOG=debug ./sl clone https://github.com/lf-/dotfiles
2022-11-27T22:21:23.300672Z DEBUG edenapi::builder: registered eagerepo::api::edenapi_from_config to ed
enapi Builder
2022-11-27T22:21:23.300972Z DEBUG identity: sniffing for repo root start=/Users/jade/dev/sapling2/eden/
scm
2022-11-27T22:21:23.301020Z  INFO configparser::hg: loading config repo_path=<none>
2022-11-27T22:21:23.301028Z DEBUG configparser::config: load  from path 'builtin.rc' (426 bytes)
2022-11-27T22:21:23.301065Z DEBUG configparser::config: load  from path 'merge-tools.rc' (5972 bytes)
2022-11-27T22:21:23.301196Z DEBUG configparser::config: load  from path '' (19077 bytes)
2022-11-27T22:21:23.301788Z DEBUG configparser::config: load /Users/jade/Library/Preferences/sapling/sa
pling.conf from path 'user' (397 bytes)
2022-11-27T22:21:23.301809Z  INFO Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: hgcommands::run: enter
2022-11-27T22:21:23.301826Z  INFO Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: command_info: version="1be0635ed4072091c1c13a2e6660bd185ee889d8"
2022-11-27T22:21:23.301860Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: progress_model::registry: main progress Registry initialized
2022-11-27T22:21:23.302054Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: progress_model::registry: registering IoTimeSeries HTTP
2022-11-27T22:21:23.302097Z DEBUG progress_model::time_series: start collecting samples for HTTP
2022-11-27T22:21:23.302142Z  INFO Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: clidispatch::dispatch: name="log:command-row" command="clone"
2022-11-27T22:21:23.302250Z  INFO Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:import edenscm: hgcommands::hgpython: enter
2022-11-27T22:21:23.302282Z  INFO Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:import edenscm: hgcommands::hgpython: exit
2022-11-27T22:21:23.303644Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: identity: sniffing for repo root start=/Users/jade/dev/sapling2/eden/s
cm
2022-11-27T22:21:23.311384Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: identity: sniffed repo dir id=sl path=/Users/jade/dev/sapling2/eden/sc
m/dotfiles
2022-11-27T22:21:23.311404Z  INFO Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::hg: loading config repo_path=/Users/jade/dev/sapling2/ed
en/scm/dotfiles
2022-11-27T22:21:23.311422Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: identity: sniffed repo dir id=sl path=/Users/jade/dev/sapling2/eden/sc
m/dotfiles
2022-11-27T22:21:23.311429Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load  from path 'builtin.rc' (426 bytes)
2022-11-27T22:21:23.311965Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load  from path 'merge-tools.rc' (5972 bytes)
2022-11-27T22:21:23.312134Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load  from path '' (19077 bytes)
2022-11-27T22:21:23.312637Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load /Users/jade/Library/Preferences/sapling/sap
ling.conf from path 'user' (397 bytes)
2022-11-27T22:21:23.312686Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load /Users/jade/dev/sapling2/eden/scm/dotfiles/
.sl/config from path 'repo' (76 bytes)
2022-11-27T22:21:23.312695Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load builtin:git.rc from path 'repo' (671 bytes)
2022-11-27T22:21:23.312783Z  WARN Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::hg: repo name: no remotefilelog.reponame
2022-11-27T22:21:23.312811Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::hg: repo name: "dotfiles" (from paths.default)
2022-11-27T22:21:23.312908Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::hg: repo name: written to reponame file
2022-11-27T22:21:23.313068Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::open{dir="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/met
alog/roots"}: indexedlog::log::open_options: enter
2022-11-27T22:21:23.313454Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::open{dir="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/met
alog/roots"}:Index::open{path="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/metalog/roots/index
2-reverse"}: indexedlog::index: enter
2022-11-27T22:21:23.313504Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::open{dir="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/met
alog/roots"}:Index::open{path="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/metalog/roots/index
2-reverse"}: indexedlog::index: exit
2022-11-27T22:21:23.313512Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::open{dir="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/met
alog/roots"}: indexedlog::log::open_options: exit
2022-11-27T22:21:23.313553Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::open{dir="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/met
alog/blobs"}: indexedlog::log::open_options: enter
2022-11-27T22:21:23.313840Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::open{dir="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/met
alog/blobs"}:Index::open{path="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/metalog/blobs/index
2-id"}: indexedlog::index: enter
2022-11-27T22:21:23.313882Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::open{dir="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/met
alog/blobs"}:Index::open{path="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/metalog/blobs/index
2-id"}: indexedlog::index: exit
2022-11-27T22:21:23.313888Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::open{dir="/Users/jade/dev/sapling2/eden/scm/dotfiles/.sl/store/met
alog/blobs"}: indexedlog::log::open_options: exit
2022-11-27T22:21:23.313910Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: metalog::metalog: opened with root 29e2dcfbb16f63bb0254df7585a15bb6fb5
e927d
2022-11-27T22:21:23.313971Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: enter
2022-11-27T22:21:23.313976Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: exit
2022-11-27T22:21:23.314043Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::insert{data_len=0 id="da39a3ee5e6b4b0d3255bfef95601890afd80709"
}: zstore::zstore: enter
2022-11-27T22:21:23.314105Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::insert{data_len=0 id="da39a3ee5e6b4b0d3255bfef95601890afd80709"
}: zstore::zstore: exit
2022-11-27T22:21:23.314113Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: enter
2022-11-27T22:21:23.314155Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: exit
2022-11-27T22:21:23.314219Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: enter
2022-11-27T22:21:23.314226Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: exit
2022-11-27T22:21:23.314277Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: enter
2022-11-27T22:21:23.314329Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: exit
2022-11-27T22:21:23.314336Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: enter
2022-11-27T22:21:23.314396Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: exit
2022-11-27T22:21:23.314458Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: enter
2022-11-27T22:21:23.314461Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="da39a3ee5e6b4b0d3255bfef95601890afd80709"}: zstore
::zstore: exit
2022-11-27T22:21:23.314521Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="b44ab5e55e546c80fa8b9cf553f2e989eedb3be6"}: zstore
::zstore: enter
2022-11-27T22:21:23.314584Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="b44ab5e55e546c80fa8b9cf553f2e989eedb3be6"}: zstore
::zstore: exit
2022-11-27T22:21:23.314592Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::insert{data_len=60 id="b44ab5e55e546c80fa8b9cf553f2e989eedb3be6
"}: zstore::zstore: enter
2022-11-27T22:21:23.314677Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::insert{data_len=60 id="b44ab5e55e546c80fa8b9cf553f2e989eedb3be6
"}: zstore::zstore: exit
2022-11-27T22:21:23.314757Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: metalog::metalog: commit (locked, detached = false)
2022-11-27T22:21:23.314819Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="e0c47396402d4bbc0eb4f8672ada4951ebc09dc6"}: zstore
::zstore: enter
2022-11-27T22:21:23.314824Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::contains{id="e0c47396402d4bbc0eb4f8672ada4951ebc09dc6"}: zstore
::zstore: exit
2022-11-27T22:21:23.314847Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::insert{data_len=224 id="e0c47396402d4bbc0eb4f8672ada4951ebc09dc
6"}: zstore::zstore: enter
2022-11-27T22:21:23.314920Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::insert{data_len=224 id="e0c47396402d4bbc0eb4f8672ada4951ebc09dc
6"}: zstore::zstore: exit
2022-11-27T22:21:23.314926Z  INFO Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::flush: zstore::zstore: enter
2022-11-27T22:21:23.314965Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::flush:Log::sync{dirty_bytes=388}: indexedlog::log: enter
2022-11-27T22:21:23.315298Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::flush:Log::sync{dirty_bytes=388}: indexedlog::log: exit
2022-11-27T22:21:23.315308Z  INFO Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Zstore::flush: zstore::zstore: exit
2022-11-27T22:21:23.315329Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::sync{dirty_bytes=26}: indexedlog::log: enter
2022-11-27T22:21:23.315521Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}:Log::sync{dirty_bytes=26}: indexedlog::log: exit
2022-11-27T22:21:23.315551Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: metalog::metalog: committed 29e2dcfbb16f63bb0254df7585a15bb6fb5e927d =
> e0c47396402d4bbc0eb4f8672ada4951ebc09dc6
2022-11-27T22:21:23.315679Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: identity: sniffed repo dir id=sl path=/Users/jade/dev/sapling2/eden/sc
m/dotfiles
2022-11-27T22:21:23.316020Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: config: reloading config: hgrc /Users/jade/dev/sapling2/eden/scm/dotfi
les/.sl/config not in ['/Users/jade/Library/Preferences/sapling/sapling.conf']
2022-11-27T22:21:23.316038Z  INFO Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::hg: loading config repo_path=/Users/jade/dev/sapling2/ed
en/scm/dotfiles
2022-11-27T22:21:23.316049Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: identity: sniffed repo dir id=sl path=/Users/jade/dev/sapling2/eden/sc
m/dotfiles
2022-11-27T22:21:23.316093Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load  from path 'builtin.rc' (426 bytes)
2022-11-27T22:21:23.316124Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load  from path 'merge-tools.rc' (5972 bytes)
2022-11-27T22:21:23.316312Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load  from path '' (19077 bytes)
2022-11-27T22:21:23.316916Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load /Users/jade/Library/Preferences/sapling/sap
ling.conf from path 'user' (397 bytes)
2022-11-27T22:21:23.317014Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load /Users/jade/dev/sapling2/eden/scm/dotfiles/
.sl/config from path 'repo' (76 bytes)
2022-11-27T22:21:23.317025Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::config: load builtin:git.rc from path 'repo' (671 bytes)
2022-11-27T22:21:23.317091Z  WARN Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::hg: repo name: no remotefilelog.reponame
2022-11-27T22:21:23.317103Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: configparser::hg: repo name: "dotfiles" (from paths.default)
2022-11-27T22:21:23.317242Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: identity: sniffed repo dir id=sl path=/Users/jade/dev/sapling2/eden/sc
m/dotfiles
2022-11-27T22:21:23.320101Z  WARN Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: termstyle::effects: unknown style effect effect="ui.debug"
2022-11-27T22:21:23.320117Z  WARN Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: termstyle::effects: couldn't apply style spec spec="ui.debug"
watchman sockpath is set as /opt/facebook/watchman/var/run/watchman/jade-state/sock
2022-11-27T22:21:23.320215Z DEBUG Run Command{pid=47545 uid=501 nice=0 args="[\"/Users/jade/dev/sapling
2/eden/scm/sl\",\"clone\",\"https://github.com/lf-/dotfiles\"]" parent_pids="[91249,1]" parent_names="[
\"/Users/jade/dev/sapling2/eden/scm/sl\",\"/sbin/launchd\"]" version="1be0635ed4072091c1c13a2e6660bd185
ee889d8" exit_code=0 max_rss=0}: edenscm::ext::extlib::watchmanclient: watchman sockpath is set as /opt
/facebook/watchman/var/run/watchman/jade-state/sock

@lf-
Copy link
Member Author

lf- commented Nov 28, 2022

I found that the daemon was implicated, but in a more interesting way: it was masking a segfault. Thanks to upstream help, I found out about CHGDISABLE=1 which disables the daemon, and also reveals the segfault.

@lf- lf- marked this pull request as ready for review November 28, 2022 22:37
@lf-
Copy link
Member Author

lf- commented Nov 28, 2022

I found out that this is a Python 3.10 related bug, so I downgraded this package to use Python 3.8 instead. It now works on macOS.

@lf- lf- changed the title sapling: fix on macOS [WIP dontmerge] sapling: fix on macOS Nov 28, 2022
@pbar1
Copy link
Contributor

pbar1 commented Nov 29, 2022

I found out that this is a Python 3.10 related bug, so I downgraded this package to use Python 3.8 instead. It now works on macOS.

@lf- Curious, what was the source of the incompatibility with 3.10 on macOS?

Copy link
Contributor

@pbar1 pbar1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A couple of minor things

@lf-
Copy link
Member Author

lf- commented Nov 29, 2022

I found out that this is a Python 3.10 related bug, so I downgraded this package to use Python 3.8 instead. It now works on macOS.

@lf- Curious, what was the source of the incompatibility with 3.10 on macOS?

Issue linked above: it's a silent segmentation fault. a fix has been sent for review internally apparently but I'm not sure when it will come out.

@thoughtpolice
Copy link
Member

Sorry for the delay, I've been under the weather a bit the past day and a half. This does look good aside from the one minor libiconv nit.

There were two factors here: our cargo hook was messing up the cargo
config, which broke the build, and also an upstream bug where Sapling
didn't work on Python 3.10.

The upstream issue was filed as facebook/sapling#279

We can get rid of the python 3.8 override as soon as this patch gets
into a released version.
@lf-
Copy link
Member Author

lf- commented Dec 1, 2022

I've made the requested change and added a reminder comment to delete the python 3.8 override on the next update.

@ofborg ofborg bot requested a review from pbar1 December 1, 2022 00:33
@mstone
Copy link
Contributor

mstone commented Dec 1, 2022

I've been testing this commit on aarch64-darwin and it seems to work well so far -- thanks for sharing it!

One tangential piece of feedback in the meantime (which IMO it's totally fine to address via a future PR if you'd rather keep this one narrowly scoped): I've noticed in casually poking around that there are some sl subcommands like sl web that have additional dependencies on things like nodejs and github-cli -- do you think these should be automatically provided to the sapling binaries to use, perhaps via makeWrapper (if not in some other way), so that things "just work" out of the box?

@pbar1
Copy link
Contributor

pbar1 commented Dec 1, 2022

I've been testing this commit on aarch64-darwin and it seems to work well so far -- thanks for sharing it!

One tangential piece of feedback in the meantime (which IMO it's totally fine to address via a future PR if you'd rather keep this one narrowly scoped): I've noticed in casually poking around that there are some sl subcommands like sl web that have additional dependencies on things like nodejs and github-cli -- do you think these should be automatically provided to the sapling binaries to use, perhaps via makeWrapper (if not in some other way), so that things "just work" out of the box?

That's something I'd wrestled with when making the original derivation; these are optional dependencies and not strictly required for core sl functionality. If we make a function fetchSapling (like fetchGit) it would be nice to not be forced to pull in node and gh, so IMO adding these components would be better suited to a NixOS/nix-darwin/home-manager module.

@mstone
Copy link
Contributor

mstone commented Dec 1, 2022

That makes sense at an abstract level, and again, I see no need to block on it here, but fwiw, I do see two wrinkles at a more concrete level, one related to UX and one related to the semantics of the notional fetchSapling.

For the first: IMO, plenty of people who try to use this are going to expect nix shell nixpkgs#sapling or their spelling of the equivalent idea to deliver a fully functional shell. Re this thought: following the idiom for git, perhaps bundling that complexity into a separate attribute in order to make nix shell nixpkgs#saplingFull work that way would be another reasonable approach?

For the second: while this obviously may evolve in the future, for today, issues like facebook/sapling#177 suggest to me that the sapling implementation is presently actually quite tightly coupled to the GitHub graphql API. As a result... do you have a sense of how likely the notional fetchSapling is to wind up requiring some of these extra dependencies [though hopefully still not the node one?] anyway in order to provide the behavior you're hoping for?

@lf-
Copy link
Member Author

lf- commented Dec 1, 2022

i think we're talking about a difference analogous to that between git and gitFull.

for what it's worth, the github coupled functionality is largely just stuff on the periphery such as the submit/pr functionality. the actual fetching of repos and interaction generally just shells out to git.

@pbar1
Copy link
Contributor

pbar1 commented Dec 1, 2022

saplingFull does sound like a good idea to mitigate this

@thoughtpolice thoughtpolice merged commit 6065d76 into NixOS:master Dec 1, 2022
@thoughtpolice
Copy link
Member

thoughtpolice commented Dec 1, 2022

We could do it the other way around too: sapling by default could have a nodejs dep for the webserver (it's probably the best feature by a mile so having it under-specified seems like a bit of a shame) and have a saplingMinimal for just cloning if we ever do a fetchSapling codepath. There's precedent for both, I think; generally Nix packages try to be "maximally useful" and enable most of the features it can, if it isn't a huge burden.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: darwin Running or building packages on Darwin 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Packaging Request: Sapling (on Darwin)

4 participants