Commit Graph

84328 Commits

Author SHA1 Message Date
Open Source Bot
d4db970a59 Updating submodules
Summary:
GitHub commits:

bf358ab059
41649f3a58
0259947c6d
a20a501448
035bb2c574
26c0a5ab16
6d33d4ccb6
b77a6b5de0
90c87d1310

Reviewed By: jurajh-fb

fbshipit-source-id: b6deac6f190b12397d4a117ef0e094a191e5c14a
2023-09-04 10:30:30 -07:00
Rajiv Sharma
610e357c0d Replace MPath with NonRootMPath
Summary:
`MPath` was created as a type in Mononoke for representing the paths of files and directories. Some of the earliest bonsai use cases of this involved `BonsaiChangesets` where the path was required to be non-root. 5 years ago we made the decision to bake-in this non-root check in the `MPath` type. Even though the type signature doesn't indicate this, `MPath` in its current form represents non-root paths, i.e. anything except just the base directory (`/`). This worked fine for cases which actually needed non-root paths but `MPath` in general have been used much more extensively throughout Mononoke codebase in the past five years. In cases where the path can also be root, we use `Option<MPath>` where the `None` variant represents the root path. In cases where such a path can be optional, we use `Option<Option<MPath>>` and it gets very ugly very quickly from there.

This diff aims to replace the `MPath` type name with `NonRootMPath` to make it more explicit what the type represents. Once landed, I will make `MPath` as a type that can represent any type of path and in particular the root would be represented as an empty vec. Finally, I will replace all occurrences of `Option<NonRootMPath>` with `MPath` wherever its safe to do so (e.g. if `Option<NonRootMPath>` is persisted in storage somewhere in a serialized form, it won't be safe to change the type)

Reviewed By: YousefSalama

Differential Revision: D48950003

fbshipit-source-id: 384e9202987dbbc608e9df378dd56d9d938c4728
2023-09-04 08:02:17 -07:00
Open Source Bot
1f2e63e6c2 Updating submodules
Summary:
GitHub commits:

966cef17e5
bd47b2b0de

Reviewed By: bigfootjon

fbshipit-source-id: 25eb04644adcdf55532b65e70498fad7176bc60e
2023-09-04 04:52:41 -07:00
Pierre Chevalier
c7393e388b Fix compiler warning
Summary:
Fixes:
```
warning: use of deprecated associated function `chrono::DateTime::<Tz>::from_utc`: Use TimeZone::from_utc_datetime() or DateTime::from_naive_utc_and_offset instead
   --> fbcode/eden/mononoke/mononoke_types/src/datetime.rs:236:54
    |
236 |         DateTime::new(ChronoDateTime::<FixedOffset>::from_utc(
    |                                                      ^^^^^^^^
    |
    = note: `#[warn(deprecated)]` on by default
```

Reviewed By: clara-9

Differential Revision: D48945573

fbshipit-source-id: 3385452f7a49f74a106246ed78f2a230a2a70b20
2023-09-04 02:49:34 -07:00
Clara Rull
11ebcc441c Remove disable_http_service_edenapi tunable
Summary: This code was added when EdenAPI was being created. I can't think of any reason why we would want to killswitch all of EdenAPI on all tiers but keep the jobs running, which is the only way we could use this tunable. Let's remove this

Reviewed By: YousefSalama

Differential Revision: D48865059

fbshipit-source-id: c078843eac602d4f252a162ac660d15c195901b6
2023-09-04 02:49:00 -07:00
Mark Juggurnauth-Thomas
e216e473d8 phabstatus: switch to new graphql fields
Summary: Phabricator now provides "commit_hash_best_effort" fields which obviate the need to rummage around in local commit properties.   Use it.

Reviewed By: tjfryan

Differential Revision: D48683771

fbshipit-source-id: 5eb1a4a8a40215ed1c268c62ed1dbcd6a828bc3b
2023-09-04 02:40:39 -07:00
Mark Juggurnauth-Thomas
8a3ba8103f remove workaround for submit's old metaedit
Summary:
Long ago, `jf submit` on a commit which didn't have a diff already associated with it, would submit the diff, obtain the diff number, and then metaedit the commit to add the diff number to the commit message.

This led to an odd situation: the commit hash stored in the local commits data in Phabricator did not match the commit the user had checked out.  This would trigger the `(local changes)` annotation in `hg ssl`, even though there were none.

This workaround was added to prevent this.  It would use mutation data to detect the initial metaedit, and ignore it when deciding to display `(local chnages)`.

Some time later, `jf submit` was changed to obtain the diff number first, metaedit the commit, and then submit the edited version.  This means Phabricator now has the correct commit hash.  However the workaround remained, which means the first mutation (amend/rebase/metaedit/...) after a user's initial submit does not show as `(local changes)`.

Fix this by removing the workaround.  It is no longer needed.

Reviewed By: zzl0

Differential Revision: D48681255

fbshipit-source-id: 2183f5400eb6eb37cf12a562176c1c169d9d3a28
2023-09-04 02:40:39 -07:00
Open Source Bot
d6670e9448 Updating submodules
Summary:
GitHub commits:

aaa0b608b7
76330fa2ef

Reviewed By: bigfootjon

fbshipit-source-id: 7389efe547a36efa195c005d09ea8388d3da81a7
2023-09-04 00:26:35 -07:00
Open Source Bot
bdb17316e1 Updating submodules
Summary:
GitHub commits:

1fa48cb5cb

Reviewed By: bigfootjon

fbshipit-source-id: 20ef94fb380255f0da8ca7f68c3d503df885fe89
2023-09-03 18:37:47 -07:00
Open Source Bot
fd65deebe0 Updating submodules
Summary:
GitHub commits:

70eb82f721
f76fa47c3d

Reviewed By: bigfootjon

fbshipit-source-id: 67cf40bd01e9b9efdca99d3dbdea108ed0daf9fd
2023-09-02 21:28:38 -07:00
Open Source Bot
e7a01e7ffc Updating submodules
Summary:
GitHub commits:

5a26ffc5a6
f14512b183

Reviewed By: bigfootjon

fbshipit-source-id: 80cc075ef7e40b28de67a2cec5ca8894e2062852
2023-09-02 17:16:28 -07:00
Open Source Bot
42918191bf Updating submodules
Summary:
GitHub commits:

85e197b11b
64a6492b6d

Reviewed By: bigfootjon

fbshipit-source-id: cb325fba4567138f9d1300040a1d0831e2cc7532
2023-09-02 10:16:53 -07:00
Open Source Bot
309c54f3f2 Updating submodules
Summary:
GitHub commits:

9dbbb2eff1
ce332ff676

Reviewed By: bigfootjon

fbshipit-source-id: 073e95f84625a8082f653efe6d55bb2a4b6e05f9
2023-09-01 16:09:49 -07:00
Zhaolong Zhu
d44fe0801a merge: log the manual merged file paths
Summary: it's slow to generate the conflicted file via source, dest and base commits, let's just log them

Reviewed By: sggutier

Differential Revision: D48915787

fbshipit-source-id: fd1e153cb1603513cebf6354cbbb81a924db508b
2023-09-01 15:03:40 -07:00
Open Source Bot
0cabcfceb0 Updating submodules
Summary:
GitHub commits:

afb927d703
b260cf048f
7f802cdc6e
aa50b5f41c

Reviewed By: bigfootjon

fbshipit-source-id: 9158c964a84872f0d3f788c75b33d5e661e36a25
2023-09-01 15:01:48 -07:00
Open Source Bot
49f9b82d0f Updating submodules
Summary:
GitHub commits:

29186e8fd9
b1000890c1
2ffc141e51
30ca00973d
6efc64a566
0b0c955e17
9bd1a6fa29
f7ebab034b

Reviewed By: bigfootjon

fbshipit-source-id: 74b79e336c9e71c64241c98e85a73d5560e1bd2e
2023-09-01 13:57:06 -07:00
Jun Wu
0f31ea5948 phrevset: normalize diffreponame with slashes
Summary:
Normalize "a/b" reponame to "b" as "remotefilelog.reponame" does not include
slashes. Normalize them for comparison to reduce confusing errors like:

  abort: D123 is for repo 'foo/bar.git', not this repo ('bar.git')

Reviewed By: zzl0

Differential Revision: D48908797

fbshipit-source-id: b1022eef4d10d0ba6a81fca08bba0e4dc7f6f31c
2023-09-01 11:49:23 -07:00
Liubov Dmitrieva
6cc353fbce client side memcache clean up from storage layer
Summary:
client side memcache clean up from storage layer

the client side memcache is not used anymore (S351219), we are now ready to remove it from the codebase.

Reviewed By: muirdm

Differential Revision: D48904567

fbshipit-source-id: 822e5eb0cdf1401585a2891a1c3a79527f8db284
2023-09-01 11:14:00 -07:00
Open Source Bot
b5eabcb026 Updating submodules
Summary:
GitHub commits:

2fbc222a82
a4407dc3fe
2e5ef12d8b
0c90946707

Reviewed By: bigfootjon

fbshipit-source-id: 92d841ed155c6a716d88d7b1ef4fc10c9b54f1b7
2023-09-01 09:54:23 -07:00
Zhaolong Zhu
a8eeba081f automerge: extract a separate function for generating merge data
Summary:
extract get_merge_ctxs_from_repo() for generating merge data from repo, we will
add another function for generating data from a file

Reviewed By: muirdm

Differential Revision: D48876697

fbshipit-source-id: a322858d7687c30c900a4d7337dda898630bd9f6
2023-09-01 09:14:14 -07:00
Zhaolong Zhu
688bf1fb4b merge: consider the file merged when using :merge-{local,other}
Summary:
Written by Martin von Zweigbergk at https://phab.mercurial-scm.org/D11999

I did minor compatibility changes.

Original commit message:

Returning None from simplemerge() means that the caller interprets
it as "no merge was necessary (because two sides matched)". See
6217040b2780 and issue2680 for some background. However,
simplemerge() shouldn't even get called in such scenarios, and
returning None means that the file is not considered merged, even
though the contents actually were. See the affected test cases.

Reviewed By: muirdm

Differential Revision: D48866240

fbshipit-source-id: 175755e7b2fd5ecddea3878c954c4672d5d91b71
2023-09-01 09:14:14 -07:00
Open Source Bot
1799aaff9b Updating submodules
Summary:
GitHub commits:

468fb419f4
0bca8cc31e

Reviewed By: bigfootjon

fbshipit-source-id: c5539f7878449306321ee85a901c897256b23cd8
2023-09-01 08:53:39 -07:00
Open Source Bot
b2ab9ff0a1 Updating submodules
Summary:
GitHub commits:

a9b2f47ecd
d41eac91f4
f3485ec544

Reviewed By: bigfootjon

fbshipit-source-id: fcb605a5204a7471751ccbc4f3339f70da3671fb
2023-09-01 06:38:57 -07:00
Gustavo Galvao Avena
b0032d2c5a Extract commit_id into utils library
Summary: Extracting this to a separate library, so I can extract the graph printing code from newadmin into a separate library in the next diff (D48897709).

Differential Revision: D48896898

fbshipit-source-id: 00874680997ceebd3a3795d5be2e1be0a86ab1e7
2023-09-01 06:22:45 -07:00
Open Source Bot
837b94b3f5 Updating submodules
Summary:
GitHub commits:

306a010304
90d4c7c429
57b850945f
46525797ff
ec6f5279bb
7944078144
46e4f94c6f
6a5c8f7954
5a59d02654
1856e1c98f
9e793b664e
c25278016c

Reviewed By: bigfootjon

fbshipit-source-id: 7125a8897f32eda674943c9c29d90abec6c778ee
2023-09-01 02:26:20 -07:00
Open Source Bot
1a01d61d42 Updating submodules
Summary:
GitHub commits:

feb5dfef44
b73392aa8f
ea325e5dcb
a8b9e203e4
39d41bf564
89056c3975
6046ffbdee
5b6100d52c
34cb5ac636
80813b2ca4
e0bb836752
f327fe1897

Reviewed By: bigfootjon

fbshipit-source-id: 818765143538b1402fe450a1f075c1d7181f6075
2023-09-01 00:45:07 -07:00
Manav Avlani
3ec88ae191 Copy over the build scripts from airstore
Summary:
This diff copies just over the build scripts from the airstore build setup and makes some minor changes to the naming / README in the existing build files.

Now the build built wheels will be WS_Airstore rather than Airstore.

Adding bypass as this doesnt have anything to with OSS github repos

bypass-github-export-checks

Reviewed By: DevidXu

Differential Revision: D48868175

fbshipit-source-id: fbf5cf8e86bd2a310a4c9698158189f9b53adf5c
2023-08-31 22:31:52 -07:00
Open Source Bot
832320ccb5 Updating submodules
Summary:
GitHub commits:

8833e22cea
e85f942b12

Reviewed By: bigfootjon

fbshipit-source-id: 4a05b051b75503c7ae370ebd5428ad11c7125d3a
2023-08-31 21:41:33 -07:00
Open Source Bot
40ed7437e9 Updating submodules
Summary:
GitHub commits:

68ba1a1646
9cf89e03ac

Reviewed By: bigfootjon

fbshipit-source-id: 5fc86d4aa4d3ddc10a495eb8313630a6b5f42c18
2023-08-31 20:31:21 -07:00
Muir Manders
725936d8a1 pathmatcher: expand globs on Windows
Summary:
Similar to Python, the Rust pathmather machinery now expands globs within relpath patterns on Windows. This emulates typical shell expansion.

For example, `sl status *.rs` will now work on Windows in that "*.rs" will be expanded to a list of files by us (even though it isn't a glob pattern).

This only impacts the "status" command since it is the only native Rust command that uses the matcher. This behavior change is effectively behind the experimental.rustmatcher flag, which is only enabled in tests.

Reviewed By: zzl0

Differential Revision: D48807328

fbshipit-source-id: ec4f881b53687a2d16236196ed09757175a48a4f
2023-08-31 19:09:26 -07:00
Open Source Bot
4a08a36626 Updating submodules
Summary:
GitHub commits:

84d2bcbbc4
53c3a26210

Reviewed By: bigfootjon

fbshipit-source-id: ea223b8f4aea3b643a1c82e4eb6f78ceb8245da9
2023-08-31 18:27:25 -07:00
Open Source Bot
7e02a11439 Updating submodules
Summary:
GitHub commits:

7f54c55b3a
aa00328c5b
47be3ffffb
7ad17071be

Reviewed By: bigfootjon

fbshipit-source-id: a020e69e1fae32cbb4e1538230eb483a4e9a3d5d
2023-08-31 17:22:48 -07:00
Evan Krause
686fad278a Truncate list of uncommitted changes
Summary:
We had no limit to the number of uncommitted changes we show.

We should instead truncate the list after 25 files.

At the same time, let's make long lists of files scrollable, with a little fade at the bottom to hint that it's scrollable.

I experimented with having the server only return a subset of uncommitted changes, but the semantics get weird with optimistic state and selecting/deselecting files.

Instead, I think we should be ok with lots of changed files. If the number of changes is extreme (1000+), maybe we should show a top-level error. I don't do that in this diff.

We should also add a button to load more files, or even all files. Since it's scrollable now, I think this is not so bad, and we have already fetched them so it's not even async / there's no loading time.

Reviewed By: quark-zju

Differential Revision: D48812465

fbshipit-source-id: 9cf649d43d54cc4ad8bf9ee241763cb9ce35304e
2023-08-31 16:32:16 -07:00
Evan Krause
ab82dde308 Show warning if some files are hidden from commit changed files list
Summary:
We only send the first 25 files down to the client, so if a commit has more, we don't show them in the UI. We should show a banner explaining that this is happening.

We actually need to do this in a few other places too, this diff starts with just the changed files list.

Reviewed By: quark-zju

Differential Revision: D48812467

fbshipit-source-id: 97fedd25b379124a6547dc24439fd9384cb74b3e
2023-08-31 16:32:16 -07:00
Evan Krause
ac9dbcd08a Add banner colors
Summary: Add a couple of extra colors for banners, useful to draw more attention to something when necessary

Reviewed By: sggutier

Differential Revision: D48812466

fbshipit-source-id: 88e0b71426dbf89cfbf242218452b7e88fb882be
2023-08-31 16:32:16 -07:00
Open Source Bot
a3dc31466e Updating submodules
Summary:
GitHub commits:

2df227d29d
bb2a55c392
c796feb258
dc89f614e3
53409d35b2

Reviewed By: bigfootjon

fbshipit-source-id: cedffbb4af3acabb15eb860d748d075fc98177c5
2023-08-31 16:19:55 -07:00
Open Source Bot
8c6b556777 Updating submodules
Summary:
GitHub commits:

055cbcfe92
e49a159c4d
ed35f583b1
e7d395f4e9
42e7cc9416
6f0abb0502

Reviewed By: bigfootjon

fbshipit-source-id: d830c1e895afec61d90b39f50b1d085bd283d31e
2023-08-31 15:13:58 -07:00
Zhaolong Zhu
2372033cf3 simplemerge: change _minimize() to minimize a single conflict
Summary:
Written by Martin von Zweigbergk at https://phab.mercurial-scm.org/D11981

Original commit message:

_minimize() is weird in that it changes a_lines and b_lines but
leaves base_lines unchanged, which means they'll be
inconsistent. That was fine because the caller never used
base_lines. With the recent refactorings of this code, we can now
make this function cleaner by having it minimize a single conflict and
not care about base_lines.

This also makes the code simpler and makes the code for each
render_*() function more similar.

Reviewed By: quark-zju

Differential Revision: D48866235

fbshipit-source-id: ae3348fd4ea8a3155baa5460f2ade6c28724aa33
2023-08-31 14:26:57 -07:00
Zhaolong Zhu
c6a729266b simplemerge: make minimize() a free function
Summary:
Written by Martin von Zweigbergk at https://phab.mercurial-scm.org/D11980

Original commit message:

IMO, Merge3Text should be about merging text without knowing about
conflict markers. "Conflict minimization" is about making conflict
markers smaller, so it should be moved out. This patch does that. I'll
refactor it next.

Reviewed By: quark-zju

Differential Revision: D48866238

fbshipit-source-id: 232c9f2e4cdcd519446672e4c0f9805d40a807d4
2023-08-31 14:26:57 -07:00
Zhaolong Zhu
50f0e3cd0d simplemerge: simplify and rename render_markers()
Summary:
Written by Martin von Zweigbergk at https://phab.mercurial-scm.org/D11979

I did minor compatibility changes.

Original commit message:

render_markers() now always renders minimized 2-way markers, so
let's simplify and rename it accordingly.

Reviewed By: quark-zju

Differential Revision: D48866237

fbshipit-source-id: 79ca3f4016e0cb3a55f78b10d183b10e90c4bf0e
2023-08-31 14:26:57 -07:00
Open Source Bot
cc4e3c1ccd Updating submodules
Summary:
GitHub commits:

b4dd219c11
073bde64a4
d54147f640
77badd5d43
0da4234ad0

Reviewed By: bigfootjon

fbshipit-source-id: 8be86e3a0de783e166a19ff3e258a4fc005347fa
2023-08-31 13:27:29 -07:00
Zhaolong Zhu
e146abcca5 automerge: fix basediff() and rename it to render_mergediff2()
Summary: since we move the automerge logic into `merge_groups()` function, now we can use `basediff` in smerge_benchmark.py. This diff fix the `basediff` and rename it to `render_mergediff2()` (two difffs) since it's similar to `render_mergediff()` (one diff)

Reviewed By: quark-zju

Differential Revision: D48866236

fbshipit-source-id: fdb31428830c7074a07248c62a0faa404bd5859a
2023-08-31 12:52:34 -07:00
Zhaolong Zhu
f8bc9d775a simplemerge: split out function for rendering :merge3 conflict markers
Summary:
Written by Martin von Zweigbergk at https://phab.mercurial-scm.org/D11978

I did minor compatibility changes.

Original commit message:

The results in some duplicate, but the code is very straight-forward
and I think it's worth it to have each conflict marker style in a
separate function.

Reviewed By: quark-zju

Differential Revision: D48866239

fbshipit-source-id: 7495e646b865a163338206eabd7a43053eda4083
2023-08-31 12:52:34 -07:00
Zhaolong Zhu
667c59bd7f simplemerge: unify the interface of automerge algorithms
Summary:
This diff we unify the interface of automerge algorithms (trywordmerge,
merge_adjacent_changes):

```
def automerge_algo(base_lines, a_lines, b_lines) -> Optional[List[bytes]]:
    pass
```

Reviewed By: quark-zju

Differential Revision: D48845460

fbshipit-source-id: e018d1e6d6eb468d0a6eefed9905facb774055d6
2023-08-31 12:52:34 -07:00
Zhaolong Zhu
812d0b2e6d simplemerge: move the automerge logic to merge_groups()
Summary:
move the automerge logic to merge_groups(), so `mergediff` mode can
benefit from the automerge as well. Besides that, it also make the render_XXX
functions just focusing on conflict rendering.

Reviewed By: quark-zju

Differential Revision: D48845462

fbshipit-source-id: 57e26e200775629fd11e1950228aea9d0e2cc9cd
2023-08-31 12:52:34 -07:00
Zhaolong Zhu
1218207ea6 simplemerge: move default labels to simplemerge extension
Summary:
Written by Martin von Zweigbergk at https://phab.mercurial-scm.org/D11977

I did minor compatibility changes.

Original commit message:

I want to remove knowledge of paths from the simplemerge core
module.

Reviewed By: quark-zju

Differential Revision: D48839969

fbshipit-source-id: 3ff6683b1e890552a40f7ab07017028a376c64d0
2023-08-31 12:52:34 -07:00
Zhaolong Zhu
1b5de53647 simplemerge: use same newline detection for :mergediff as for :merge[3]
Summary:
Written by Martin von Zweigbergk at https://phab.mercurial-scm.org/D11976

I did minor compatibility changes.

Original commit message:

The :merge and :merge3 markers used the newline style detected
from the base input. The :mergediff style always used LF as newline
character. This patch teaches :mergediff to use the same detection
as the others did.

Reviewed By: quark-zju

Differential Revision: D48803482

fbshipit-source-id: d381cf6fca8be5336df0fd611e55b07147181ee5
2023-08-31 12:52:34 -07:00
Zhaolong Zhu
8398c1eac3 simplemerge: clarify names of functions that render conflict markers
Summary:
Written by Martin von Zweigbergk at https://phab.mercurial-scm.org/D11975

I did compatibility changes. The auto-merge logic is still in the
render_markers() function, will extract that out in the following diffs.

Reviewed By: quark-zju

Differential Revision: D48801200

fbshipit-source-id: 1d8b7d42b5f14d3fa8380bc3ddd3ab4cbff126a7
2023-08-31 12:52:34 -07:00
Zhaolong Zhu
93540d1a17 simplemerge: make merge_lines() a free function
Summary:
Written by Martin von Zweigbergk at https://phab.mercurial-scm.org/D11974

I did compatibility changes

Original commit message:

IMO, the rendering of a conflict as text with merge markers should be
separate from the code for resolving conflicts. The latter is what
Merge3Text is mostly about already.

Reviewed By: quark-zju

Differential Revision: D48801201

fbshipit-source-id: e6fee2cb20c677ff2c175f2d8382fc757aa0267b
2023-08-31 12:52:34 -07:00
Ruslan Sayfutdinov
87457628e7 update chrono to 0.4.28
Summary:
Chrono 0.4.27 deprecated `DateTime::from_utc` and we want to keep internal and OSS versions in sync.

https://github.com/chronotope/chrono/releases/tag/v0.4.27

Reviewed By: zertosh

Differential Revision: D48863870

fbshipit-source-id: 490e938758c3f92a67b798d84040098cebb87980
2023-08-31 11:47:32 -07:00