Summary:
This diff includes the following key changes:
- Added `generate_changeset_for_tag` method in the `GitUploader` contract for creating changesets for annotated tags pointing to commits
- Handled `BookmarkCategory` of tags and branches when creating the Mononoke bookmark for git branches or tags
- Introduced the `TagMetadata` type that captures relevant data from a git tag
- Implemented `generate_changeset_for_tag` for `DirectUploader` in `gitimport`
- Modified integration test to validate annotated tag handling during `gitimport`
Differential Revision: D45534203
fbshipit-source-id: 15d00b16831fab601226a85f86bd2c2b65968ae3
Summary: Add tracking so we can measure how long people see the getting started opt out tooltip
Reviewed By: quark-zju
Differential Revision: D45712056
fbshipit-source-id: 80e7d355ce805369d5f43059e6761d4d91a55adb
Summary:
Add a way to add a tooltip below the bug button and show a platform-specific message there.
This is useful to explain how to file bugs or opt out.
Reviewed By: quark-zju
Differential Revision: D45712057
fbshipit-source-id: d980b5c8aef49f1ff45a4133217ab9b21e1a443c
Summary:
Ensures that the doctor check for Windows version, done by running `cmd.exe /c ver`,
can handle non-utf-8 output and report it as a problem instead of terminating
with an unhandled exception.
Reviewed By: xavierd
Differential Revision: D45620254
fbshipit-source-id: c97642b3e48a76a2ff46ebc74d5257ad4c1fec18
Summary: VirtualInode included several things it never used. Remove them.
Reviewed By: genevievehelsel
Differential Revision: D45629434
fbshipit-source-id: db937ddba1886c0fa2461ec9f1e5842462275be9
Summary:
I need to use `std::optional<ObjectId>::operator==`, which uses
`ObjectId::operator==`.
I tried to make it hard to accidentally compare ObjectId, but that's
fighting a losing battle, so bring it back.
Reviewed By: genevievehelsel
Differential Revision: D45629405
fbshipit-source-id: 83c88afff0fb2954e40dd59204d0cfc76155fa70
Summary: Add `copytrace.max_rename_candidates` to limit the number of candidate files to check.
Reviewed By: quark-zju
Differential Revision: D45670741
fbshipit-source-id: 7512f91d31dfe6b58eab7b4fa777578791e3e422
Summary: Added config object to RenameFinder, so we can use config to control the number of candidate files to check; and also use config to control content similarity threshold.
Reviewed By: quark-zju
Differential Revision: D45606906
fbshipit-source-id: 67d580fdac517a9a2713378c1c53f9c334ba63ae
Summary: We were on 1.0.0, the latest few versions bring some slight visual changes, most notably buttons have a very small 2px border radius which makes them look more friendly instead of the super sharp buttons they had before.
Reviewed By: quark-zju
Differential Revision: D45703943
fbshipit-source-id: 87e5416304a963bd2a5f350aed719aa40fbc4fa1
Summary:
Version bump and changelog entry for new OSS vscode extension release
Notably, this release also includes reviewer autocomplete, but this is internal only for now. Once we support a reviewer field for github, this infra will support it too. But no use mentioning it now.
Reviewed By: quark-zju
Differential Revision: D45679713
fbshipit-source-id: df0c658d95cde8f7dee5e968a7607a634b5b3d1c
Summary: This include is no longer necessary, so we can remove it.
Reviewed By: genevievehelsel
Differential Revision: D45620895
fbshipit-source-id: d8d9ae00cc38ad1331f8f6fb1f1c55b9d4276095
Summary:
Skip certificate loading if the auth proxy is enabled. We don't use the certs in this case, so there is no point in loading them.
Also, when using an auth proxy (e.g. x2pagentd) the certs may not be present on disk, and we don't want to error out assuming they will be present.
Reviewed By: quark-zju
Differential Revision: D45486476
fbshipit-source-id: 3638299f72e7e5769eba48425be47aa90f96914e
Summary:
One of the main objective of the LocalStoreCachedBackingStore is the ability of
configuring its policy depending on the underlying backing store. For instance,
while some backing store want to cache everything in the LocalStore, others may
only want to cache BlobMetadata. Configuring the policy per-backingstore allows
the removal and special case inside the RocksDbLocalStore of blob caching: this
is now done entirely inside the LocalStoreCachedBackingStore.
Reviewed By: chadaustin
Differential Revision: D45550480
fbshipit-source-id: 386e384f0148e38fad8d4008b4e312f360edb676
Summary: The tunable is already flipped to true. We don't need the rollout gating anymore.
Reviewed By: Croohand
Differential Revision: D45405145
fbshipit-source-id: 4ae2314dc29eb650efc39fded5213c057fc0c562
Summary:
this will be needed for pycopytrace for converting Python object to
Rust dyn object
Reviewed By: quark-zju
Differential Revision: D45657741
fbshipit-source-id: 9ce9b720bc47a3513c561ced59bb7eb2f34f413d
Summary:
reduce buffer size for cbor stream from 1 MB to 8 KB by default
Currently, we don’t attempt to deserialise any data less than 1 MB on cbor
stream. The value is too high for most of our requests meaning the deserialization will be
performed at the end. Since the value was chosen arbitrarily in
https://www.internalfb.com/diff/D22370164, let's adjust it to 8K. This is more
reasonable default. For example, this is the frame size BufReader is using, and so
our zstd stream.
We will still move to 1MB buffers and large once we hit resize logic if we encounter an item that doesn't fit the smaller buffer. This may happen for files endpoint.
The current implememtation doesn't allow, for example, properly track number of incoming commits coming from commit graph stream since the entries
are very small and we are blocked for long on filling the buffer.
Reviewed By: quark-zju
Differential Revision: D45619933
fbshipit-source-id: b1e9d6e97aaa67aeaa718e3127baedcd615c82f7
Summary: The `git_extra_headers` field in a changeset contains the headers associated with the corresponding git commit which was translated into a Mononoke changeset. The `git_extra_headers` is a mapping of arbitrary bytes to bytes which might not necessarily be valid strings. When used in `scsc`, particularly for `scsc info`, we just want to display headers that make sense to a human (i.e. strings instead of bytes). This was already the case for the default output mode but when outputting in `json`, we use `serde` serialization which doesn't accept non-string keys when serializing `BTreeMaps`. A user [faced an error](https://fb.workplace.com/groups/2071217289839797/permalink/6054134597969443/) when trying to get the info for such a commit. This diff excludes non-string headers for the purpose of displaying output to the user.
Reviewed By: YousefSalama
Differential Revision: D45689738
fbshipit-source-id: 7be727650ad7637213ae59dc36e8a73464406f1a
Summary: This diff deletes `derived_root_unode` from our code base, then we're going to remove the blobs as the next step.
Reviewed By: RajivTS
Differential Revision: D45606240
fbshipit-source-id: 028309c66c55a33ba0f73cee9082d414d3d69b4c
Summary: Right click a commit then choose "view changes" to open comparison view. This is actually really useful in my testing!
Reviewed By: quark-zju
Differential Revision: D45677198
fbshipit-source-id: 29e5fb2773e7f90c89febd2e71322f75d21da276
Summary:
The old ISL showed diff badges next to commit titles, inline, with wrapping in responsive widths. This was a little annoying because things wrapped individually, and so it was scan visually since each commit was probably differently placed than the others.
We currently have been showing commit's diff information always in a second line below the commit. This makes it very consistent to find information, at the cost of vertical space. This makes ISL generally less information dense, which is not great.
Especially if you have a wide screen, this feels unnecessary.
The new approach in this diff is a sort of hybrid approach. Small screen widths will have ALL commits wrap their diff badge information onto a second line. This allows the title to wrap along side the buttons, which means buttons are in a much more consistent place on the right side, without jumping down.
On larger screens (800px), we don't wrap the diff badges, and everything is in one line. For extremely long titles, we also then allow text wrapping, but the buttons stay in place instead of wrapping.
After some testing, I actually think this system is a lot more natural feeling. Things generally stay in the place you expect them to be, and all diffs are consistent. The wrapping point at 800px is something we could adjust, but it feels about right in my testing.
One question: we could make this configurable with the old behavior, so we allow you to choose if you want to "always wrap" or "fill horizontal space".
But I think this new way is much nicer in general, so I don't think we need a config for it.
Also note that instead of using total screen width (e.g. with a CSS media query or a simple document.body.clientWidth), we actually watch the main content area and take its width instead. This allows us to be responsive respecting the commit info sidebar opening/closing,.
Reviewed By: quark-zju
Differential Revision: D45671035
fbshipit-source-id: 423b96c28b7e3fcd7faa5301d15f45b34a1ce2be
Summary:
Outside of the HTTP endpoint specifically (which uses JSON), Scribe doesn't *actually* require the use of UTF-8 strings in its payloads.
To enable use cases that want to be able to offer non-UTF-8 messages into Scribe, the `ScribeClient` API has been changed to accept a more generic `&[u8]` instead of a strict `&str`.
Existing callsites that expected to only log UTF-8 strings now must enforce that at runtime or at their own API boundaries, which shouldn't be a problem in the scope of this codemod as that was (until now) enforced by the compiler.
Reviewed By: kuecks
Differential Revision: D45657053
fbshipit-source-id: bb08b02d3129e2cee895847c634fe9e809995f72
Summary:
The typeahead gives poor results when you only type one character, and those queries are much slower than two+ character queries.
Let's just limit our fetch to only happen for 2+ characters typed.
Some typeaheads even limit to 3+, but I think we can handle 2+.
Reviewed By: quark-zju
Differential Revision: D45665010
fbshipit-source-id: e4743550ee33352fd3a0cbe6f1df974513d1ec40
Summary: The suggestion typeahead was reimplementing the tooltip styles slightly, but didn't have the tooltip arrow. Might as well just use the tooltip styles directly instead by adding those classnames. It's not so complicated so I don't mind just re-adding the classnames.
Reviewed By: quark-zju
Differential Revision: D45664874
fbshipit-source-id: 5bfb1a98c0aa30dd3989911015493fe28fe273cf
Summary:
Small fix to make certain types of typeahead easier to read: if the "label" and "value" are the same, don't render the value as a `<Subtle>`.
Also, add a min-width so short tags in this format don't make the typeahead look really small
Reviewed By: quark-zju
Differential Revision: D45630154
fbshipit-source-id: 9bb24e9a678140cc574f9d46a7150c5d2c1f9fb6
Summary: An oversight in how we extract tokens means that you couldn't type spaces in fields with typeahead.
Reviewed By: quark-zju
Differential Revision: D45629080
fbshipit-source-id: 17be7b635af96b096fdf9c214118b731892feb76
Summary:
My initial rendering didn't handle long names well, it would shrink the image and also overflow outside the typeahead box.
You see this especially with weird reviewer groups for "bad" searches.
Reviewed By: quark-zju
Differential Revision: D45627730
fbshipit-source-id: f18c77005b61d7e51a158318f9ee7b9e71b91cba
Summary:
Simple logic that throws out data fetches if we've already shown a newer one. This greatly reduces jumpiness in my testing.
A common situation is that in typing "evan", each keystroke is firing a query, and the "e" query obviously returns a lot more results, and thus takes a lot longer. the "ev" or even "eva" queries may come back faster due to having fewer results to return.
But if we've already gotten "eva" results, there's no use showing "e" results, they're always worse.
Reviewed By: quark-zju
Differential Revision: D45627732
fbshipit-source-id: 36f3251c2ecc134eefac906fa52908bdea3256eb
Summary:
Simple way to ensure the typeahead field is not lingering and instead shows relevant info.
Note: onMouseDown comes before blur comes before onClick, so we need to use onMouseDown in order to register the click before the typeahead is hidden due to this new CSS.
Reviewed By: quark-zju
Differential Revision: D45627736
fbshipit-source-id: 4e97f295fc3fffae15b32253f6a95ad8dd12ac73
Summary: Easy, just need to delete the given token
Reviewed By: quark-zju
Differential Revision: D45627743
fbshipit-source-id: b8456458d8d1021babb1de51df5eb33d8ffda1e8