Граф коммитов

329 Коммитов

Автор SHA1 Сообщение Дата
Michael Pysson bdb37a641d Merged PR 804034: Revamp performance tuning documentation
Revamp performance tuning documentation
2024-09-17 21:43:20 +00:00
Serge Mera 6899b8a4c3 Merged PR 803759: Updated Release-Notes.md
Updated Release-Notes.md
2024-09-05 20:45:25 +00:00
Qi Wang 3d83b30126 Merged PR 802558: Updated Release-Notes.md
Updated Release-Notes.md
2024-08-29 20:23:24 +00:00
Serge Mera 6ee1bca473 Merged PR 801607: Let users specify the total build timeout using a CLI arg
Let users specify the total build timeout using `/buildTimeoutMins`. Before this PR the only way was via an engine env var (the CB runner uses this).

Deprecate /BuildWaitTimeout CLI. This flag (unrelated to the functionality being added here) is not being used and it has a confusing name given the new flag being added.
2024-08-23 22:02:34 +00:00
Michael Pysson f3dbf81a0a Merged PR 801293: Update release notes for 20240816.4
Update release notes for 20240816.4
2024-08-23 17:03:51 +00:00
Marcelo Lynch 🧉 a3a9711ccb Merged PR 799321: User-configurable observed input type reclassifications
Allow users to specify reclassifications on operations resolved by the observed input processor. Users can configure rules in their specification that individual pips can opt into, where some observation types are reclassified after being processed by the observed input processor.

The rule matching happens both after execution and when processing pathsets for the pip on cache lookup. Future optimizations might avoid some of the processings on cache lookup.

Note that any changes in these rules results in a weak fingerprint change for the pips, as there is no way to know if observations for the pip have to be reclassified with the new rules.

To learn more about the motivations for this change, refer to [this document](https://microsoft.sharepoint.com/:w:/t/1ES2/EXOegdiLQkRNt5bE7nhFic8BJBYKcETrqcY-gI2_jTN9zw?e=UEIxAg)

Related work items: #2185890
2024-08-15 20:54:26 +00:00
Oleksii Kononenko e74fc97ff0 Merged PR 800299: Update release notes
Update release notes
2024-08-14 21:36:03 +00:00
Pasindu Gunasekara 🍣 1e7e63d688 Merged PR 799544: Updated Release-Notes.md
Updated Release-Notes.md
2024-08-09 21:51:05 +00:00
Michael Pysson c36d01883c Merged PR 799133: Remove command line flag associated with spotlight indexing check
This arg controls whether buildxl warns about spotlight (macOS's file indexer) potentially acting on build directories. Removing the arg and functionality for simplification.
2024-08-08 19:12:35 +00:00
Michael Pysson 0988189e50 Merged PR 798919: Make Flags.md allign with command line
There are a bunch of other discrepancies between BuildXL's command line and the names given to consts in strings.resx, which is what is used to generate Flags.md.

The script that generates Flags.md works directly off of strings.resx. I doubt a pass was ever down when that script was created to ensure strings.resx actually matched up with the command line. This change would be better if it included some guardrails to prevent the two from skewing again in the future, but I don't think the cost/benefit is there so I'm just doing a one-time cleanup pass.
2024-08-07 19:10:26 +00:00
Michael Pysson 48ef4b7143 Merged PR 798862: Fix PipDefaultTimeout documentation
Flags.md documentation had the wrong argument name
2024-08-06 20:49:33 +00:00
Marcelo Lynch 🧉 3a719232bd Merged PR 796893: Update release notes
Update release notes
2024-07-24 21:52:34 +00:00
Semih Okur a22c4c2218 Merged PR 795858: Updated Release-Notes.md
Updated Release-Notes.md
2024-07-18 16:48:57 +00:00
Iman Narasamdya 30a60001ab Merged PR 794568: Release notes for 0.1.0-20240705.2.2
Release notes for 0.1.0-20240705.2.2
2024-07-10 20:09:43 +00:00
Qi Wang 9faca185cb Merged PR 792409: Update Release note for 0.1.0-20240622.1
Update Release note for 0.1.0-20240622.1
2024-07-01 22:11:06 +00:00
Michael Pysson 0c99477c88 Merged PR 791646: Spellcheck various docs
Spellcheck various docs
2024-06-26 21:52:30 +00:00
Michael Pysson 2ed67742a8 Merged PR 791428: Update release notes for 20240614.2
Update release notes for 20240614.2
2024-06-20 20:47:22 +00:00
Oleksii Kononenko 881c7e71fe Merged PR 789955: Update release notes
Update release notes
2024-06-14 02:26:54 +00:00
Marcelo Lynch 🧉 d77a182a95 Merged PR 788862: Release notes for 20240531.3.1
[skip ci]
2024-06-07 00:11:13 +00:00
Pasindu Gunasekara 🍣 47938a03a9 Merged PR 787606: Updated Release-Notes.md
Updated Release-Notes.md
2024-05-30 17:44:11 +00:00
Semih Okur 81a63d29e6 Merged PR 786691: Updated Release-Notes.md 2024-05-24 17:58:37 +00:00
Marcelo Lynch 🧉 58b367a6e8 Merged PR 781723: Remove macOS sandbox (managed) code and logic
Remove macOS sandbox / kernel extension code and examples. Trying to only remove dead code here, some refactoring is still possible to improve code structure but I will leave it for future PRs.
2024-05-10 21:44:15 +00:00
Michael Pysson 8b2dfb5d51 Merged PR 782663: Release note catch up
Release note catch up
2024-05-02 22:59:28 +00:00
Sahiti Chandramouli daba9a9c41 Merged PR 782102: Disallow the use of phase:Evaluate for the users.
Disallow the use of phase:Evaluate for the users by throwing a command line argument error.
Customers are suggested to use the Schedule phase instead.

![Screenshot (20).png](https://dev.azure.com/mseng/9ed2c125-1cd5-4a17-886b-9d267f3a5fab/_apis/git/repositories/50d331c7-ea65-45eb-833f-0303c6c2387e/pullRequests/782102/attachments/Screenshot%20%2820%29.png)

Related work items: #2166157
2024-04-29 20:09:57 +00:00
Serge Mera ca49e9c958 Merged PR 781846: Add support for rush-build-graph-plugin
Add support for rush-build-graph-plugin

Related work items: #2160055
2024-04-26 23:11:13 +00:00
Sahiti Chandramouli d974ba0413 Merged PR 781201: Make ToolPath non-mandatory in Allowlist.
Remove the condition where customers need to pass this parameter in the AllowList entries.
Reused two unit tests which test this feature.
Had to define a comparer for comparing SerializableRegex objects since it was becoming an issue when using the MultiValueDictionary to extract elements.

Related work items: #2139864
2024-04-26 22:16:52 +00:00
Iman Narasamdya 4d94c6f77f Merged PR 781712: Release notes for 0.1.0-20240419.10
Release notes for 0.1.0-20240419.10
2024-04-25 22:37:07 +00:00
Serge Mera 51ea0c743e Merged PR 780164: Updated Release-Notes.md
Updated Release-Notes.md
2024-04-17 20:57:07 +00:00
Serge Mera 50513ef76a Merged PR 779665: Remove external npm package
The step to publish the external npm package has been removed already. This PR removes the external package from our sources (the publish step was pointing to it).

Related work items: #2168692
2024-04-15 23:01:01 +00:00
Oleksii Kononenko da67e1d298 Merged PR 774575: Make Net8 default qualifier
Make Net8 default qualifier

Related work items: #2156466
2024-03-21 22:06:06 +00:00
Michael Pysson 42d12f52d1 Merged PR 773642: Minor cleanup for /fingerprintsalt
* Add ability to use '*' like the environment variable
* Add delimiter when multiple salts set
* update help text
2024-03-20 00:18:51 +00:00
Marcelo Lynch 🧉 1629fb5cc1 Merged PR 773918: Allow specifying a prefix for the runtime cache miss analysis keys in ADO mode
Allow specifying a prefix for the runtime cache miss analysis keys in ADO mode
2024-03-19 19:47:06 +00:00
Serge Mera a4d61e0f92 Merged PR 773979: Add doc for blob cache authentication & dev cache
Add doc for blob cache authentication & dev cache
2024-03-19 16:54:23 +00:00
Michael Pysson 40e5a7b3eb Merged PR 773337: Hook up command line fingerprint salt that accumulates
We need this for servicing due to an office incident where the existing salt can only be set once. Instead of doing something one-off, I elected to wire up this long forgotten parameter with the semantics needed for the incident. It can be documented in help text now too.
2024-03-14 23:07:32 +00:00
Marcelo Lynch 🧉 7eca77950e Merged PR 771442: Small documentation fixes
Automerged a PR by accident before pushing these :(
2024-03-06 23:53:51 +00:00
Marcelo Lynch 🧉 64c8665d32 Merged PR 770093: Add minimal documentation for the CMake/Ninja front-end and update examples
Add minimal but self-contained documentation for using BuildXL with CMake and Ninja projects. Update the examples to reflect the recommended way to run CMake projects using Ninja generation, and marking the CMake resolver example as experimental and unsupported

Related work items: #2125879
2024-03-06 21:04:27 +00:00
Semih Okur 883c752fda Merged PR 770010: Updated Release-Notes.md
Updated Release-Notes.md
2024-02-28 22:31:57 +00:00
Marcelo Lynch 🧉 778a251af0 Merged PR 767977: Remove GitHashes cache miss analysis mode
This is in favor of the AzureDevOps mode which is simpler and effective
2024-02-22 21:17:31 +00:00
Iman Narasamdya d35982b220 Merged PR 768631: Release notes for 0.1.0-20240216.4
Release notes for 0.1.0-20240216.4
2024-02-22 00:35:49 +00:00
Oleksii Kononenko 643dd222d1 Merged PR 766173: Update release notes
Update release notes
2024-02-07 23:14:34 +00:00
Pasindu Gunasekara 🍣 b542074324 Merged PR 765015: Updated Release-Notes.md
Updated Release-Notes.md
2024-02-01 21:31:37 +00:00
Oleksii Kononenko b0621456a9 Merged PR 761147: Enable net7 by default
Enable net7 by default

Related work items: #2119665
2024-01-31 19:49:05 +00:00
Michael Pysson 7af95f3d7a Merged PR 763933: Remove dead code related to viewer
Remove dead code related to viewer
2024-01-29 23:51:09 +00:00
Iman Narasamdya cf8690b00b Merged PR 763662: Document support for file streams
Document support for file streams

Related work items: #2136782
2024-01-26 01:00:19 +00:00
Marcelo Lynch 🧉 7f632b7531 Merged PR 763371: Update release notes
[skip ci]
2024-01-25 02:12:40 +00:00
Iman Narasamdya 282d378d8f Merged PR 759495: Updated Release-Notes.md for release 0.1.0-20231229.2 (and ++)
Updated Release-Notes.md for release 0.1.0-20231229.2.

Include:
- Add missing release notes for several releases.
2024-01-04 00:11:07 +00:00
Michael Pysson 03bc84fdb7 Merged PR 758421: Add PipProperties to help text. Rename PipFingerprintingSalt to PipFingerprintSalt
- PipProperties made it into the flags.md file but not into buildxl's actual help text. Add it to help text
- Rename PipFingerprintingSalt to drop the "ing" which better aligns with related terminology in BuildXL
- Add platform agnostic support for newlines in help text and generated markdown documentation

Related work items: #2131602
2023-12-21 18:50:35 +00:00
Serge Mera 89256ff724 Merged PR 755895: Updated Release-Notes.md
Updated Release-Notes.md
2023-12-06 22:25:56 +00:00
Marcelo Lynch 🧉 ed86825bc1 Merged PR 748857: Add a cache miss analysis mode that uses latest git commit hashes as fingerprint store key candidates
BuildXL looks up cache miss data based on a priority list of keys configured by the user. In practice, the best general setup is to use a chain of git parent commits. This gets replicated in logic that invokes bxl.exe today for some of our customers. This PR provides this as a default experience without the end user needing to manually perform it.

The approach is heuristic, trying to pick candidate keys that might have been used to publish a fingerprint store for a build as "close" as the one running.

For this, the candidates are picked by

1. Get latest 5 commits from the current HEAD. We should get a match if this branch was built before, for example for a PR we expect one build per 'iteration'. Because an iteration can have multiple commits, we should not use a very small number (like, say, this commit and the one before), but let's not go overboard either (hence 5).
2. For any additional additional branches (indicated by the user in the argument), the assumption is that they run build against every commit (this should typically be the `main` branch, or the target branch for a PR).
  a) We retrieve the merge-base from HEAD and that branch. We use as keys the hashes for the 3 commits immediately previous to the merge-base.
  b) Finally, as a last resort, we use the latest 3 hashes from that branch as a last resort, assuming again that it was built recently

An example: for a PR (that has branched from `h5` and committed a number of times) merging against main, with this topology:

```
                                 .--b5--b4--b3--b2--b1-- b0    [PR branch]
                               /
             h8 -- h7 --h6--- h5 -- h4 -- h3 -- h2 -- h1 -- h0     [main]
```

The hashes for the keys would be (as described above)
1)`b0, b1, b2, b3, b4, b5`
2a) `h5, h6, h7`
2b) `h0, h1, h2`

Duplicates are removed, so something like this:

```
                                 .--b1-- b0    [PR branch]
                               /
             h8 -- h7 --h6--- h5 -- h1 -- h0     [main]
```

would result in the cadidates being `b0, b1, h5, h6, h7, h0, h1`.

Related work items: #2116194
2023-12-06 21:18:38 +00:00
Sahiti Chandramouli 619fc36364 Merged PR 755136: Description about fingerprinting Salt
``*`` used in the document to mention about a special use case has been parsed as a formatting symbol. Hence corrected the representation of it.

Related work items: #2104560
2023-12-05 00:55:58 +00:00