Commit Graph

84328 Commits

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

97d6ffb048
78d5bf0a90
7902b1cd2f
a6aaef1054
ec1232870c
03cb5395db
0060dc58bc
62d93ed799
82f2fafc15
f4cd2d29e5
67ccef9e4e
abff7869fa
522dedf6ac

Reviewed By: jurajh-fb

fbshipit-source-id: a5b1d2f86025c63dbceaf28b543215aa35eac39e
2023-09-07 14:30:59 -07:00
Open Source Bot
10586faf0a Updating submodules
Summary:
GitHub commits:

59053da2cf
ad70769053
afb2afa2dd
f77d4f00e4
475358ca87
6e9dee5d74
256cafdb96
999b943d4f
5572a7e046
431d21ae65
84e93301cb
1b958fbba4
dabfd2591b

Reviewed By: jurajh-fb

fbshipit-source-id: 2db3d792da3b5c746a3de008f8d3bd242b2c2503
2023-09-07 13:04:16 -07:00
Sergey Anpilov
638716e59f adding deprecated_default_enum_min_i32: multi-liners [3/n]
Reviewed By: zertosh

Differential Revision: D49064137

fbshipit-source-id: d6738790c967d41410fb5cbec79e0af52f6fbf96
2023-09-07 12:53:33 -07:00
Luca Niccolini
c06ae71a0d Always build HTTP/3 components for proxygen opensource (#6473)
Summary: Pull Request resolved: https://github.com/facebookincubator/velox/pull/6473

Reviewed By: kvtsoy

Differential Revision: D49063181

fbshipit-source-id: fd4eb25db4a03688599dba1ede92096041a568c6
2023-09-07 12:11:33 -07:00
Genevieve (Genna) Helsel
8c2f13d835 TempFileManager should only be created with prefix "eden_test"
Summary: A common naming scheme is to help facilitate finding test directories on machines

Reviewed By: xavierd

Differential Revision: D49040490

fbshipit-source-id: 206e6cb90a65921a38199a04732122ed2952218d
2023-09-07 11:55:37 -07:00
Jun Wu
1c03a0c6db StackEditModal: update maximum height for commits and files tabs
Summary:
The old value `70vh` does not work well with small windows.
Use something like `calc(100vh - 300px)` for a better maxHeight.

Reviewed By: evangrayk

Differential Revision: D49044804

fbshipit-source-id: caecca7e60d851395abf2e04bbb75250fcf56d57
2023-09-07 11:46:34 -07:00
Jun Wu
46d13ab395 FileStackEditor: move line movement buttons to outside text
Summary:
Sometimes the "🡆" button overlap with text and is hard to see.
Move the buttons to the line gutters so they won't overlap with text.

Reviewed By: evangrayk

Differential Revision: D49044582

fbshipit-source-id: 2763534a760facb41aa65e06040b94b2fc7b863a
2023-09-07 11:46:34 -07:00
Jun Wu
8a1a02b0d3 StackEditSubTree: update visual styles
Summary:
Update visual to avoid "too many buttons":
- Moved the split button to the right side, and only show up on hover.
  The split button switches tab so it is a bit different from other buttons.
- Simplified elements since we no longer render in the main subtree view.
- Use <CommitTitle /> to render tooltip for full commit message.

Reviewed By: evangrayk

Differential Revision: D49043654

fbshipit-source-id: 655fa293c6e962087bcb82453e0d12e951466a88
2023-09-07 11:46:34 -07:00
Jun Wu
cbf5e76d6a FileStackEditPanel: update visual styles
Summary: This matches the split panel better (borderless main ScrollX editors).

Reviewed By: evangrayk

Differential Revision: D49043653

fbshipit-source-id: b0d60431793649bbb6d10ebaa3b25200ffca6811
2023-09-07 11:46:34 -07:00
Jun Wu
c4b72daa23 SplitStackEditPanel: initial interactive split UI
Summary:
Features:
- Range split: support splitting a range of commits.
- Text editing: similar to the "Files" tab, the unified diff editors
  support text editing.
- Title generation: generate "Split of ..." title by default.
- Title editing: single-line commit title can be edited.
- Single state: state is synced to other stack editing tabs.
  For example, you can switch to the "commits" tab, and "fold" commits
  while splitting.

Unimplemented considerations:
- Multi-line commit message editing is not allowed.
  Message syncing (to internal code review system) can be tricky.
- Side-by-side diff or unified stack modes are disabled.
  See the comments in "EditModeSelector" for blockers.

Reviewed By: evangrayk

Differential Revision: D48970674

fbshipit-source-id: 460ed8b66e3d401fbf3ce2814eee1187973dea5a
2023-09-07 11:46:34 -07:00
Youssef Ibrahim
a105b6e031 metadata_diff: fix off by one error in added_lines_count for newly added files
Summary:
For files that end in newline, the number of newlines is equal to the number of lines.
For files that don't end in new line, the number of newlines plus one for the last line, is equal to the number of lines.

Reviewed By: RajivTS

Differential Revision: D49054968

fbshipit-source-id: 202ab964db39e6bd896582c2b3dde4026ebd2546
2023-09-07 10:55:28 -07:00
Open Source Bot
3d14fc8248 Updating submodules
Summary:
GitHub commits:

1feabb1ca5
1e35ea89d8
a8cd55b44d
b9d197fbd7
720f4aa49d
79daf3007c
d3fe19983e

Reviewed By: jurajh-fb

fbshipit-source-id: bd63530b9f4a354b1f817dae3142de4d5aae5b5f
2023-09-07 10:37:28 -07:00
Genevieve (Genna) Helsel
21f44359be Back out "disable all integration tests on Sandcastle macOS for S362020"
Summary:
Original commit changeset: 9a4d9bd3cd65

Original Phabricator Diff: D48796972

D48805908 is the long term fix, revert this to get our test back and to get signal on if D48805908 works

Reviewed By: MichaelCuevas

Differential Revision: D48853050

fbshipit-source-id: eb07498b89e4844db93a839ee991c1ca70fdca44
2023-09-07 09:36:02 -07:00
Rajiv Sharma
15e2b10bc4 Make GitDeltaManifest derivable
Summary: This diff includes all the boilerplate code that goes into making a type derivable. Since `GitDeltaManifest` is a `Manifest` type, I have followed the pattern of having a `Root` type (that points to the actual manifest) as the derivable type instead of the core manifest type itself. In this case, the root type is `RootGitDeltaManifestId` which contains the id of the `GitDeltaManifest` for a given commit. The actual logic for deriving `GitDeltaManifest` would be added in the next diff.

Reviewed By: markbt

Differential Revision: D48756522

fbshipit-source-id: 847780f7f51a78bc644c4b6f7791765e3877dd57
2023-09-07 04:24:06 -07:00
Rajiv Sharma
b8d70571ca Introduce GitDeltaManifest type
Summary: With all the dependencies taken care of, its time to introduce the `GitDeltaManifest` type as a `ShardedMap` type. Most of the code in this diff is `Blobstore` and `Thrift` boilerplate so that we can use `GitDeltaManifest` as a `ShardedMap` type addressed by `GitDeltaManifestId`. The `GitDeltaManifest` blobs would be stored with key `repoxxx.gdm.blake2.{BLAKE2_HASH_OF_COMMIT}`

Reviewed By: markbt

Differential Revision: D48736892

fbshipit-source-id: c364f1e998518650af6f27911748f7f7c192b402
2023-09-07 04:24:06 -07:00
Rajiv Sharma
af8f69801d Introduce the constituent types for GitDeltaManifest
Summary: With the work done so far, we can start introducing the `GitDeltaManifest` type. However, since that type is sharded, this diff just introduces the consistuent types for `GitDeltaManifest` along with their thrift conversions. The types are based on the [design doc](https://docs.google.com/document/d/1mjHNiq1gI-ZwV4ABPBbu6UWIteRvo9SAXxSpq0bINgo/edit?usp=sharing) shared earlier.

Reviewed By: markbt

Differential Revision: D48718190

fbshipit-source-id: fb83383f4ab6b7b09db71550b5f4d6eade9bc5c4
2023-09-07 04:24:06 -07:00
Rajiv Sharma
7eee8348cf Use MPath instead of Option<NonRootMPath>
Summary: The third diff in the series of replacing `Option<NonRootMPath>` usages with `MPath`. This is much bigger than the previous diffs because I have updated all manifest type ops and derivation code to use `MPaths` and since pretty much everything in Mononoke uses these types, I had to make a lot of associated changes.  After this, I will be updating the `MononokePath` implementation to basically be an alias for `MPath` and making similar changes in `RepoPath`. However, this diff completes the pre-req for doing Git work so further progress might not be immediate.

Reviewed By: markbt

Differential Revision: D49014566

fbshipit-source-id: 0f1d902a6663a73e7fd353a248a91acd06d73bd7
2023-09-07 04:24:06 -07:00
Rajiv Sharma
29e7429e37 Use MPath instead of Option<NonRootMPath>
Summary: This is the second diff in the series which replaces usages of `Option<NonRootMPath>` with `MPath`. This diff focuses primarily on `mutable_renames` and `history_traversal`

Differential Revision: D48969972

fbshipit-source-id: c776356822f3d770626dd776a0d4476a8965670a
2023-09-07 04:24:06 -07:00
Rajiv Sharma
fc29bcde9d Use MPath instead of Option<NonRootMPath>
Summary: This is the first in the series of diffs which replaces the occurences of `Option<NonRootMPath>` with `MPath` wherever appropriate. I aim to restrict these transformations to one component (or related set of components) at a time so its easier to review

Differential Revision: D48966078

fbshipit-source-id: b020c7d22a5dac7d4d7579cf5360e52803aeab56
2023-09-07 04:24:06 -07:00
Rajiv Sharma
f9478fce6c Create new MPath type
Summary: The origin `MPath` type was renamed to `NonRootMPath` in the previous diff. This diff introduces the new `MPath` type which can represent both root and non-root paths. It also defines `NonRootMPath` in terms of  the new `MPath` so that we can reuse the logic. Note that the same set of methods are implemented for both path types with separate implementations. This is to ensure that the existing use-cases don't break and we can slowly migrate them from `Option<NonRootMPath>` to `MPath` over time

Differential Revision: D48964914

fbshipit-source-id: 75c298f5a52652507ddac52d5b72679572b763de
2023-09-07 04:24:06 -07:00
Open Source Bot
7c756946b3 Updating submodules
Summary:
GitHub commits:

462efbe6d9
5e8d707999
fc8194dcce

Reviewed By: jurajh-fb

fbshipit-source-id: c54569dd0b87c196538dbc29fc3e84c94f6dc3d9
2023-09-07 01:08:33 -07:00
Open Source Bot
c9641c5cb6 Updating submodules
Summary:
GitHub commits:

5968c147d8
9d10e46f73

Reviewed By: jurajh-fb

fbshipit-source-id: 6cb86d004d8eea835ee981ed3b3279769f1f9a0d
2023-09-06 22:59:33 -07:00
John Elliott
8701d96f9a Refactor ProcessNameCache to include ProcessSimpleName and ppid.
Summary:
When doing a hack-a-month task I punted on cleaning up some new code to retrieve a simple, human-readable process name - https://www.internalfb.com/diff/D47276991?dst_version_fbid=795860982081651&transaction_fbid=584703497175444.

This change moves the fetching of a simple process name into the process name cache. My first cut at this kept ProcessName and ProcessSimpleName entirely separated in the cache, but the async processing fetched the two together. This felt pretty klunky, so this cut now bundles up ProcessName and ProcessSimpleName along with the pid and ppid (parent pid) into a new struct, ProcessInfo and changes to cache that instead.

In some areas this is more ergonomic and otthers it slightly less ergonomic. The fact we obtain both names and parent pid is overkill in some cases, but what is needed for others. Given that these are used for logging and diagnostics this seemed OK to me.

Note: ProcessSimpleName is only implemented (validly) for macOS today. Adding other platofms should not be difficult, but there is no use case at this time.

Reviewed By: kmancini

Differential Revision: D48923253

fbshipit-source-id: abcbc604e7a319bf1c249cf94948e4ff4b2504c9
2023-09-06 22:12:38 -07:00
John Elliott
3052018e9f Move ProcessSimpleName support to ProcessInfo.*
Summary: In preparation for merging ProcessSimpleName and ProcessName functionality into ProcessNameCache moving some helper functions to ProcessInfo.

Reviewed By: genevievehelsel

Differential Revision: D48923254

fbshipit-source-id: 9223d45c3b36924750292a302f091fac924ed4cf
2023-09-06 22:12:38 -07:00
John Elliott
5664b37971 Rename ProcessName* to ProcessInfo*
Summary: In preparation for merging ProcessSimpleName and ProcessName functionality into ProcessNameCache renaming now The new cache will cache ProcessInfo object which will include both names, and the parent pid.

Reviewed By: genevievehelsel

Differential Revision: D48855222

fbshipit-source-id: 4cb10df7b6cc32efc0d655771d01d58e7ba57dd5
2023-09-06 22:12:38 -07:00
Amandeep Chhabra
38f35935f8 Back out "update platform010 & platform010-aarch64 symlinks"
Summary:
S363809
To fix prod build failure

Differential Revision: D49041975

fbshipit-source-id: fe0204b32df7118ba7c120a3b4226c2c14b59d32
2023-09-06 19:04:25 -07:00
Open Source Bot
ec97e3ae65 Updating submodules
Summary:
GitHub commits:

209d15a269
0680ba7420
ca67293528
7ef596b914
195f35c08b

Reviewed By: jurajh-fb

fbshipit-source-id: 3bafb8b96f1ce773cb7872ae66d39ff6312837b3
2023-09-06 16:43:06 -07:00
Zhaolong Zhu
d8a006c5e9 pullcreatemarkers: test if an abandoned commit is hidable
Summary:
the visibilit.remove() function only hides commits if they don't have
any visible descendents. In order to have a more accurate count, let's
check that by checking if visibility.heads() contains the commit.

Reviewed By: quark-zju

Differential Revision: D49013280

fbshipit-source-id: f517ec62354bcda797113ff8c0665f519f584c74
2023-09-06 16:34:16 -07:00
Open Source Bot
d5bd1b7b44 Updating submodules
Summary:
GitHub commits:

8dffc4ae23
2a41202db5
d0706750c3
63a0de8374
ce0cf9be5f
ce5701fcc6
a695e775a1

Reviewed By: jurajh-fb

fbshipit-source-id: c0abae728bad378561799b8e50fa6b0ccfee4016
2023-09-06 15:42:58 -07:00
Muir Manders
ec41de0858 dirstate: drop support for legacy dirstatemap
Summary: There has been an "abort if not treestate" in localrepo.dirstate() for a long time, so I think we can kill all non-treestate code paths at this point.

Reviewed By: quark-zju

Differential Revision: D48988900

fbshipit-source-id: b6df9dd3e5ef7a77671099717dd190083542084b
2023-09-06 14:29:42 -07:00
Evan Krause
03a1231e6d Add tests for shelve list
Summary: Add a set of tests for features for the shelved changes list

Reviewed By: quark-zju

Differential Revision: D49018146

fbshipit-source-id: 82ddf739d9893d0d609decce48603080c5e7c33b
2023-09-06 13:10:12 -07:00
Evan Krause
41c3dcf0d8 Add info hover for shelved changes list
Summary: Explain what shelves are. If you've never used them, you might open this dropdown out of curiousity, but find it empty. This tooltip will tell you what they are for and how to add one.

Reviewed By: quark-zju

Differential Revision: D49017220

fbshipit-source-id: e9a5cfc08a3e4412137f372177d7768fe638f6be
2023-09-06 13:10:12 -07:00
Open Source Bot
844d9cfb6a Updating submodules
Summary:
GitHub commits:

f57084b7d6
323364cb7c
6d60accf20
dcab60b4de
851266f546
2aa6b9358d

Reviewed By: jurajh-fb

fbshipit-source-id: ca1dc979d1e838278fab94c2d88f226b87bb24ea
2023-09-06 13:00:25 -07:00
Open Source Bot
6d7fa88530 Updating submodules
Summary:
GitHub commits:

97845e76c4
0d868499e6
49d9b0dc9b
f8cc094dcd
00c313c4f9
199761f061
57886c6a67
f16c3dd929
dd5b4e497e
1034ed73d2
50f831390e

Reviewed By: jurajh-fb

fbshipit-source-id: 899f87de8c0005e39c2822006e7da1a4228c1340
2023-09-06 12:12:00 -07:00
Muir Manders
b20b4a1376 help: tabulate current cache settings
Summary: Now the "cache" help topic also includes information about the current cache config.

Reviewed By: sggutier

Differential Revision: D48925373

fbshipit-source-id: e7a00ae303fa978d1955a9040b83e5c2609f7eed
2023-09-06 11:29:55 -07:00
Muir Manders
06e4546c51 help: add basic info about the cache
Summary: This has been a hot area recently due to memcache deprecation. Let's try to document how things are configured and how the cache works, briefly.

Reviewed By: sggutier

Differential Revision: D48924185

fbshipit-source-id: c3be77a5553b38c687a7ea5398296508dcdc90fb
2023-09-06 11:29:55 -07:00
Open Source Bot
7883daa136 Updating submodules
Summary:
GitHub commits:

f06abe38cf
ebe3c2ae81
b904abb693
34e775f0fa

Reviewed By: jurajh-fb

fbshipit-source-id: 5ef817e613e254e6a14d4cc35fda42ac0c338264
2023-09-06 10:48:30 -07:00
Sergey Anpilov
cedc76d502 adding deprecated_default_enum_min_i32: one-liners [2/n]
Reviewed By: zertosh

Differential Revision: D48983471

fbshipit-source-id: 11a45aa1b6e6359bc353c0b87ac4e78a3604d319
2023-09-06 10:12:37 -07:00
Evan Krause
680ea80100 use promise for fetching shelved state
Summary: Instead of using an atom to track state for shelved changes, use a promise, which we refresh each time you load the shelved changes list. This way, we fetch a new list of changes each time. It's still possible for the list of shelves to change while the dropdown is open, but I think that's not very common. Perhaps we should refetch periodically while it's open...in the future.

Reviewed By: quark-zju

Differential Revision: D48992198

fbshipit-source-id: abc6f26752948aa7aa68e3c2dade90fe7c24da61
2023-09-06 10:11:51 -07:00
Evan Krause
0ba34c69c8 sort shelved changes by date ascending
Summary: I noticed the list of shelved changes were ordered by date descending. Let's sort the other way, so if you make a new shelve, it's at the top of the list

Reviewed By: quark-zju

Differential Revision: D48983005

fbshipit-source-id: fad0a7d26b21f02cd53c24f64f8cc3be19b28d60
2023-09-06 10:11:51 -07:00
Evan Krause
8f5bde3053 Add unshelve operation
Summary:
Add operation to run unshelve. The optimistic applier needs to add the same file changes to the list of uncommitted changes, and de-dupe with existing uncommitted changes.

Sort of like uncommit, but slightly simpler because we don't have to change any commits optimistically.

Also use OperationDisabledButton to get a spinner when the operation is running.

I think there's still more work to do on the UI when running unshelve, since we should be hiding the shelve once you've unshelved it.

Reviewed By: quark-zju

Differential Revision: D48982813

fbshipit-source-id: c00646f3fb77a09afa72fca50d2b7e945f921d36
2023-09-06 10:11:51 -07:00
Evan Krause
878cbd5a5a Add files to shelved changes list
Summary:
Add more functionality to shelved changes list:
- list out changed files in each shelve
- shrink height of scrollable changed files list to just 2.5 files
- add "view changes" button to open comparison view
- add button on hover to unshelve (not implemented yet)

Reviewed By: quark-zju

Differential Revision: D48982811

fbshipit-source-id: a0e9c28dd7ea3741beb207b0f94e3a2003437912
2023-09-06 10:11:51 -07:00
Evan Krause
acf340bd69 Run shelve with --unknown to support untracked files
Summary: I noticed when trying to shelve untracked files that it didn't let me by default. We just need to pass `--unknown` to suppor this.

Reviewed By: quark-zju

Differential Revision: D48982807

fbshipit-source-id: b32d271c6b6f4ef8d102081263aac18d4b0a7591
2023-09-06 10:11:51 -07:00
Evan Krause
97902b7843 Render shelved changes list
Summary:
Send messages to fetch the shelved changes list and render it in the dropdown.

This is the most basic rendering of the shelved changes, we'll need to add buttons to apply the change and view comparison etc.

Reviewed By: quark-zju

Differential Revision: D48982810

fbshipit-source-id: e18267cb1194a9b20c9f94b4d14fbb0d18b4c0a7
2023-09-06 10:11:51 -07:00
Evan Krause
ed399f7f51 Add a way to fetch shelved changes
Summary:
Add api to fetch shelved changes, and call to `sl log` that can fetch the info for shelves. This needs to use a different template than the one we use for `CommitInfo`s. We need to fetch additional fields like `{shelvename}`, and we don't need all the fields from `CommitInfo`, like `predecessors`.

I duplicated the way we define the fields for this. There may be a way to consolidate these into a util or something so we don't need any duplication, but I'll put that off until we have yet another format of commit template we need to fetch.

The fetch works because shelves are just commits, and we can use the `shelved()` revset to find them all.

Reviewed By: quark-zju

Differential Revision: D48982809

fbshipit-source-id: 9e2e9fdf946794bace01dc7d95958032acfc37ef
2023-09-06 10:11:51 -07:00
Evan Krause
ad1babcad2 Add shelved change menu
Summary:
Add menu to top bar to show shelved changes.

Debatable whether this is worth a top bar button, since it ONLY shows shelved changes and nothing else. Perhaps in the future we could hide this if you have no shelved changes...?

We can't put it into the uncommitted changes list because you may want to unshelve when you have no changed files (hence the list of uncommitted changes + actions wouldn't appear)

Reviewed By: quark-zju

Differential Revision: D48982808

fbshipit-source-id: 2d3fbbca3f9e924acb35b04b59464300254b1835
2023-09-06 10:11:51 -07:00
Evan Krause
ad7cc4f1eb Add shelve button
Summary:
Add a button to shelve your changes. `sl shelve` removes your uncommitted changes but saves them to a temporary place that you can recover later.

We'll need to also add an unshelve button/list to match, but this diff focuses on the shelve button first. I think the unshelve button will be some top-level thing, since you may not have the uncommitted changes list visible when you'd like to unshelve.

Eventually, we should also add some keyboard shortcuts to shelve/unshelve. That would be so cool!

Several behaviors are packed in here:
- if you've written a title in the quick commit form, it'll use that as your shelved changes' name. This helps when unshelving later, if you have multiple shelved changes.
- if you have a partial selection, it should only use your selected files
- we don't support per-line selections (this would require changes to debugimportstack)
- we use optimistic state to to hide selected file changes while shelve runs
- we disable the shelve button if you don't have anything selected, or if it's a partial selection
- untracked files are shelvable (we get this for free)

Reviewed By: quark-zju

Differential Revision: D48851127

fbshipit-source-id: 7560060be8106fff7a819ae0455c6800dd8ffc66
2023-09-06 10:11:51 -07:00
Jan Mazur
34fd0f2dc7 fix clippy lints: immediate unwrap on Some type
Summary: Let's fix this

Reviewed By: YousefSalama

Differential Revision: D49014872

fbshipit-source-id: 60f51b6cefe537a367ae5dd668c314a5268bddbd
2023-09-06 09:49:11 -07:00
Jan Mazur
a6f524a06e fix clippy lints
Summary:
rust-clippy output: {P821184100}

I'm fixing unnecessary hashes around literal strings, unnecessary .into_iter and unnecessary vec!

Remaining are `immediate unwraps on Some`, `&-masking with zero`, `incorrect implementation of clone on a Copy type`, `private item shadows public glob re-export`.

`&-masking with zero` comes from third-party macro expansion, same as one `unnecessary vec!`.

Reviewed By: YousefSalama

Differential Revision: D49014408

fbshipit-source-id: 410c8b831b87eea92a15e012656ed4c1d061fb75
2023-09-06 09:49:11 -07:00
Open Source Bot
b2bd9ff221 Updating submodules
Summary:
GitHub commits:

f62dca2944
3b8a750bb8

Reviewed By: jurajh-fb

fbshipit-source-id: 848327d9719bab1975c77c3aa68f397ff9f6e039
2023-09-06 08:45:52 -07:00