Summary: We don't care about flat manifest anymore, and it would be work to update this test to use modern repo format.
Reviewed By: quark-zju
Differential Revision: D42748901
fbshipit-source-id: fd67adf9992b45264a100b5838866ea35d6ad7ff
Summary:
This test had a real failure where the new status wasn't respecting HGPLAIN to force root-relative paths in the output. It is safer to keep that behavior since we presume some automation would break if we changed to show cwd-relative paths unconditionally.
To use the native status I had to change this test to use modern repo format. That broke some use of revision numbers, so I tweaked tweakdefaults to respect the devel.default-date option to get stable commit hashes (so I could use those instead of revision numbers).
Reviewed By: quark-zju
Differential Revision: D42748900
fbshipit-source-id: 3358c659d5c67e781723720fcb2f760518d7d46f
Summary: This allows RUST_BACKTRACE=1 to work for "make local" builds. I believe buck uses nightly which should get backtrace enabled by default.
Reviewed By: quark-zju
Differential Revision: D42748902
fbshipit-source-id: fdd9473f1c0250a117c83b9637a6e23e0df26da4
Summary: This way the user can see the original byte values.
Differential Revision: D42889478
fbshipit-source-id: 7876787180136cdd86839913eba77cad44115ce3
Summary: Makes level_ancestor and lowest_common_ancestor private and creates separate public methods for the skip tree and the p1 linear tree. Also refactors ChangesetFrontier into a struct to allow adding new methods to it.
Reviewed By: RajivTS
Differential Revision: D42805759
fbshipit-source-id: 18e821ee99dbb84dbe8ea02208b5e61646294d13
Summary:
Adds ancestors-difference subcommand that returns all commits that are ancestors of a set of commits (heads) excluding ancestors of another set of commits (common).
Might be useful but primarily will be used to investigate the new commit graph performance.
Reviewed By: RajivTS
Differential Revision: D42778384
fbshipit-source-id: 43676d853b1792331fb7412f6bb2865ea931a80f
Summary: This allows using other schemes directly instead of having to do a conversion first.
Reviewed By: RajivTS
Differential Revision: D42776315
fbshipit-source-id: 9b29ff2f3c7b2307029ed2fb1ecf51778842d7af
Summary: Use the caching layer to speed up backfilling
Reviewed By: Croohand
Differential Revision: D42778273
fbshipit-source-id: 05f45e0fc79b7cb6b2b96ccbe0a040a0129a7a31
Summary: This allows removing auto_impl(Arc) for CommitGraphStorage and is more consistent with the rest of the code.
Reviewed By: RajivTS
Differential Revision: D42775167
fbshipit-source-id: c90a88070487ea2ab846bc7073caeb8a7aa54a8b
Summary: Make sure we only pass valid utf-8 strings to Rust's text styling.
Reviewed By: quark-zju
Differential Revision: D42886530
fbshipit-source-id: 2dc7f1ade57d3324997aa9c9a111016cfef51e07
Summary: This adds logging for two optional params that we dind't log before.
Differential Revision: D42843210
fbshipit-source-id: 2a724484100d5025cbd465492da21b873b4f30de
Summary: Switch to modern repo config to resolve "hg status" errors. Somehow missed this one (I probably assumed it was a test using git instead of an hg test importing git diff format).
Reviewed By: sggutier
Differential Revision: D42863480
fbshipit-source-id: 9d595954fb7f7c9693b6d91ef9485acdc37ddc2d
Summary:
Bumps [ua-parser-js](https://github.com/faisalman/ua-parser-js) from 0.7.31 to 0.7.33.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/faisalman/ua-parser-js/blob/master/changelog.md">ua-parser-js's changelog</a>.</em></p>
<blockquote>
<h2>Version 0.7.31 / 1.0.2</h2>
<ul>
<li>Fix OPPO Reno A5 incorrect detection</li>
<li>Fix TypeError Bug</li>
<li>Use AST to extract regexes and verify them with safe-regex</li>
</ul>
<h2>Version 0.7.32 / 1.0.32</h2>
<ul>
<li>Add new browser : DuckDuckGo, Huawei Browser, LinkedIn</li>
<li>Add new OS : HarmonyOS</li>
<li>Add some Huawei models</li>
<li>Add Sharp Aquos TV</li>
<li>Improve detection Xiaomi Mi CC9</li>
<li>Fix Sony Xperia 1 III misidentified as Acer tablet</li>
<li>Fix Detect Sony BRAVIA as SmartTV</li>
<li>Fix Detect Xiaomi Mi TV as SmartTV</li>
<li>Fix Detect Galaxy Tab S8 as tablet</li>
<li>Fix WeGame mistakenly identified as WeChat</li>
<li>Fix included commas in Safari / Mobile Safari version</li>
<li>Increase UA_MAX_LENGTH to 350</li>
</ul>
<h2>Version 0.7.33 / 1.0.33</h2>
<ul>
<li>Add new browser : Cobalt</li>
<li>Identify Macintosh as an Apple device</li>
<li>Fix ReDoS vulnerability</li>
</ul>
<h1>Version 0.8</h1>
<p>Version 0.8 was created by accident. This version is now deprecated and no longer maintained, please update to version 0.7 / 1.0.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="f2d0db001d"><code>f2d0db0</code></a> Bump version 0.7.33</li>
<li><a href="a6140a17dd"><code>a6140a1</code></a> Remove unsafe regex in trim() function</li>
<li><a href="a886604935"><code>a886604</code></a> Fix <a href="https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/605">#605</a> - Identify Macintosh as Apple device</li>
<li><a href="b814bcd791"><code>b814bcd</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/606">#606</a> from rileyjshaw/patch-1</li>
<li><a href="7f71024161"><code>7f71024</code></a> Fix documentation</li>
<li><a href="c239ac5167"><code>c239ac5</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/604">#604</a> from obecerra3/master</li>
<li><a href="8d3c2d327c"><code>8d3c2d3</code></a> Add new browser: Cobalt</li>
<li><a href="d11fc47dc9"><code>d11fc47</code></a> Bump version 0.7.32</li>
<li><a href="b490110109"><code>b490110</code></a> Merge branch 'develop' of github.com:faisalman/ua-parser-js</li>
<li><a href="cb5da5ea4b"><code>cb5da5e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/600">#600</a> from moekm/develop</li>
<li>Additional commits viewable in <a href="https://github.com/faisalman/ua-parser-js/compare/0.7.31...0.7.33">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ua-parser-js&package-manager=npm_and_yarn&previous-version=0.7.31&new-version=0.7.33)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/facebook/sapling/network/alerts).
</details>
Pull Request resolved: https://github.com/facebook/sapling/pull/498
Reviewed By: quark-zju
Differential Revision: D42786303
Pulled By: sggutier
fbshipit-source-id: 99c98ed79f1703b267d21369e95f42bc1e8994c1
Summary:
Bumps [ua-parser-js](https://github.com/faisalman/ua-parser-js) from 0.7.31 to 0.7.33.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/faisalman/ua-parser-js/blob/master/changelog.md">ua-parser-js's changelog</a>.</em></p>
<blockquote>
<h2>Version 0.7.31 / 1.0.2</h2>
<ul>
<li>Fix OPPO Reno A5 incorrect detection</li>
<li>Fix TypeError Bug</li>
<li>Use AST to extract regexes and verify them with safe-regex</li>
</ul>
<h2>Version 0.7.32 / 1.0.32</h2>
<ul>
<li>Add new browser : DuckDuckGo, Huawei Browser, LinkedIn</li>
<li>Add new OS : HarmonyOS</li>
<li>Add some Huawei models</li>
<li>Add Sharp Aquos TV</li>
<li>Improve detection Xiaomi Mi CC9</li>
<li>Fix Sony Xperia 1 III misidentified as Acer tablet</li>
<li>Fix Detect Sony BRAVIA as SmartTV</li>
<li>Fix Detect Xiaomi Mi TV as SmartTV</li>
<li>Fix Detect Galaxy Tab S8 as tablet</li>
<li>Fix WeGame mistakenly identified as WeChat</li>
<li>Fix included commas in Safari / Mobile Safari version</li>
<li>Increase UA_MAX_LENGTH to 350</li>
</ul>
<h2>Version 0.7.33 / 1.0.33</h2>
<ul>
<li>Add new browser : Cobalt</li>
<li>Identify Macintosh as an Apple device</li>
<li>Fix ReDoS vulnerability</li>
</ul>
<h1>Version 0.8</h1>
<p>Version 0.8 was created by accident. This version is now deprecated and no longer maintained, please update to version 0.7 / 1.0.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="f2d0db001d"><code>f2d0db0</code></a> Bump version 0.7.33</li>
<li><a href="a6140a17dd"><code>a6140a1</code></a> Remove unsafe regex in trim() function</li>
<li><a href="a886604935"><code>a886604</code></a> Fix <a href="https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/605">#605</a> - Identify Macintosh as Apple device</li>
<li><a href="b814bcd791"><code>b814bcd</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/606">#606</a> from rileyjshaw/patch-1</li>
<li><a href="7f71024161"><code>7f71024</code></a> Fix documentation</li>
<li><a href="c239ac5167"><code>c239ac5</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/604">#604</a> from obecerra3/master</li>
<li><a href="8d3c2d327c"><code>8d3c2d3</code></a> Add new browser: Cobalt</li>
<li><a href="d11fc47dc9"><code>d11fc47</code></a> Bump version 0.7.32</li>
<li><a href="b490110109"><code>b490110</code></a> Merge branch 'develop' of github.com:faisalman/ua-parser-js</li>
<li><a href="cb5da5ea4b"><code>cb5da5e</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/faisalman/ua-parser-js/issues/600">#600</a> from moekm/develop</li>
<li>Additional commits viewable in <a href="https://github.com/faisalman/ua-parser-js/compare/0.7.31...0.7.33">compare view</a></li>
</ul>
</details>
<br />
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ua-parser-js&package-manager=npm_and_yarn&previous-version=0.7.31&new-version=0.7.33)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/facebook/sapling/network/alerts).
</details>
Pull Request resolved: https://github.com/facebook/sapling/pull/499
Reviewed By: bolinfest
Differential Revision: D42789132
Pulled By: sggutier
fbshipit-source-id: 6cf1157fe1705a0131c91582d6aabc7a7d4fe94d
Summary: `hg status` fails when a checkout is currently in progress. Instead of surfacing this error to the user, we should just silently log it and wait for the checkout to finish. After the checkout finishes, `hg status` is reran automatically and should succeed.
Reviewed By: evangrayk
Differential Revision: D42866406
fbshipit-source-id: fc0a61a20348ec29bfd88acf1853ec6c43e2ab47
Summary:
Currently our CI is failing due to various issues related to the `verify-addons-folder.py` script.
This was related to `eslint` marking some code as unused, which this diff fixes.
Reviewed By: evangrayk
Differential Revision: D42819731
fbshipit-source-id: 24f16af311684bfab9d5b13738b0399f9339999c
Summary:
Currently our CI is failing due to various issues related to the `verify-addons-folder.py` script.
This commit fixes an issue related to having an oudated list of browsers when running `yarn build` by updating `caniuse-lite` to 1.0.30001449.
Pull Request resolved: https://github.com/facebook/sapling/pull/504
Test Plan:
## Before
Ran `./verify-addons-folder.py`, and failed with
```
[stderr]
Browserslist: caniuse-lite is outdated.
```
## After
Ran `./verify-addons-folder.py`, and now failed with
```
[eslint]
src/analytics/index.ts
Line 10:8: 'serverAPI' is defined but never used typescript-eslint/no-unused-vars
Line 20:3: 'data' is defined but never used. Allowed unused args must match /^_/u typescript-eslint/no-unused-vars
```
Reviewed By: bolinfest
Differential Revision: D42819312
Pulled By: sggutier
fbshipit-source-id: 0725c8b3d071f31e83067d0f159e38e6a4181f87
Summary:
Currently our CI is failing due to various issues related to the `verify-addons-folder.py` script.
This commit fixes a linter issue related to `yarn build` that made the aforementioned script fail.
Pull Request resolved: https://github.com/facebook/sapling/pull/503
Test Plan:
## Before
Ran `./verify-addons-folder.py`, and failed with
```
[eslint]
src/analytics/index.ts
Line 10:8: 'serverAPI' is defined but never used typescript-eslint/no-unused-vars
Line 20:3: 'data' is defined but never used. Allowed unused args must match /^_/u typescript-eslint/no-unused-vars
```
## After
Ran `./verify-addons-folder.py`, but this time failed with a `Browserslist: caniuse-lite is outdated` instead
Reviewed By: muirdm
Differential Revision: D42818973
Pulled By: sggutier
fbshipit-source-id: ab127e8f986986a942fc7daca33853ed7fffc88d
Summary:
Currently our CI is failing due to various issues related to the `verify-addons-folder.py` script.
This commit fixes a linter issue related to `prettier-check` that made the aforementioned script fail.
Pull Request resolved: https://github.com/facebook/sapling/pull/501
Test Plan:
## Before
Ran `./verify-addons-folder.py`, and failed with
```
RuntimeError: command failed: yarn run prettier-check
```
Also ran `yarn run prettier-check`, and failed with:
```
yarn run v1.22.19
$ prettier --check .
Checking formatting...
[warn] isl/src/analytics/index.ts
[warn] Code style issues found in the above file. Forgot to run Prettier?
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this comm
```
## After
Ran `./verify-addons-folder.py`, and now failed with `RuntimeError: command failed: yarn codegen` instead.
Also, `yarn run prettier-check` worked without issues.
Reviewed By: muirdm
Differential Revision: D42818837
Pulled By: sggutier
fbshipit-source-id: 5478356ad20766c5af7634da19763410236b3059
Summary: This diff fixes the clickable area in the changed file list area.
Reviewed By: evangrayk
Differential Revision: D42864628
fbshipit-source-id: 800aea5106a707fb36db6f00e7cadaf53b15d2aa
Summary:
`checkserverbookmark` was added by D15450801 (865b8b3a46) for early Mononoke migration.
It is no longer relevant.
Reviewed By: zzl0
Differential Revision: D42823312
fbshipit-source-id: f120255c4c33b919718e46052967d28e7ab772a4
Summary:
Previously, `conch_parser` was built as a separate Python module (`.so`)
so it is not distributed with the main executable, for portability and
binary size considerations.
However, it's annoying to maintain a separate Python module, for example,
buck macOS build would have issues importing it. The binary size concern also
seems minor: stripped Linux binary increases from 43174872 to 43537624 bytes,
+363KB, less than 1%.
Therefore, let's just embed `conch_parser` directly for better macOS support.
`conch_parser` is kept in case someone wants to build a standalone Python extension.
Reviewed By: zzl0
Differential Revision: D42822105
fbshipit-source-id: 287f25aa1860836a3c7df913233b9cb92d6fd0e3
Summary:
Teach `debugchangelog --migrate lazytext` to fetch commit hashes and migrate
the repo to not using lazy commit hashes, which supports
`devel.segmented-changelog-rev-compat` for compatibility with legacy tests.
Reviewed By: muirdm
Differential Revision: D42788588
fbshipit-source-id: b95045bba48f4fbc5c10d94780656163f1335587
Summary:
In the case where an engineers has removed all of their mounts, `eden du`
should be able to help them cleanup their orphaned redirections. Due to this,
not having mounts shouldn't be an error.
Reviewed By: fanzeyi
Differential Revision: D42824046
fbshipit-source-id: aee6ae5f145e4d189be7267bd8ea1ca1cb53b41a
Summary: The PR revset is hard to discover as it is. This adds some hints about its existence on the Sapling website.
Reviewed By: muirdm
Differential Revision: D42760527
fbshipit-source-id: 91177196c4e9dfd42e82ddde49e20684485b0711
Summary:
Currently, the `BonsaiChangeset` is capable of representing Mononoke and HG commits. However, Git objects have certain other properties which don't exactly fit in the current `BonsaiChangeset` structure. This prevents round-trippable conversion (or two way conversion) between Git repos and their Mononoke mirrors.
This diff introduces changes as per Simon's [initial plan](https://docs.google.com/document/d/1kyix9hlSoIWXHaYt-808MNoRL8snF4h4ko7mxYfwfJc/edit?usp=sharing) that parly solve the problem. In particular, to make commits roundtrippable between Git and Mononoke we need:
- Extra git header support in BonsaiChangeset
- Tag object support in Mononoke
- Means to represent refs or tags that point to Trees
This diff achieves the second point from the above list. 1 and 3 were already added in previous diff.
Differential Revision: D42743098
fbshipit-source-id: 6e75be5cb450586a2935fde8d9d70bdcc52a9aad
Summary:
Currently, the `BonsaiChangeset` is capable of representing Mononoke and HG commits. However, Git objects have certain other properties which don't exactly fit in the current `BonsaiChangeset` structure. This prevents round-trippable conversion (or two way conversion) between Git repos and their Mononoke mirrors.
This diff introduces changes as per Simon's [initial plan](https://docs.google.com/document/d/1kyix9hlSoIWXHaYt-808MNoRL8snF4h4ko7mxYfwfJc/edit?usp=sharing) that parly solve the problem. In particular, to make commits roundtrippable between Git and Mononoke we need:
- Extra git header support in BonsaiChangeset
- Tag object support in Mononoke
- Means to represent refs or tags that point to Trees
This diff achieves 1 and 3. Support for 2 will be added in a follow-up diff.
Differential Revision: D42709492
fbshipit-source-id: 438def9612ce41d6a259532bf3b085e8b40e274e