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

39 Коммитов

Автор SHA1 Сообщение Дата
Oleksii Kononenko 53ff9ba1c9 Merged PR 799153: Remove net7 qualifier
Remove net7 qualifier
2024-08-09 00:15:26 +00:00
Oleksii Kononenko fe5a6759ec Merged PR 786241: Revive Net7 support
CaSaaS is currently on Net7 and it might need updated bxl bits while it's moving to Net8. This PR re-adds net7 qualifier. It's essentially a revert of `0a4d5b272900cfb6ad2c13795650e269500f9d17` and `5380d614bb98bfebb5a63900bb617ff51e93e56e`.

7.0.18 has a vulnerability, so this PR also includes a change that updates net7 bits to 7.0.19 to make the CG happy.

note: MsBuild is back to net7 (net7->net8 for msbuild was a part of net7 removal)
2024-05-22 19:35:13 +00:00
Oleksii Kononenko 5380d614bb Merged PR 784655: Revert "Merged PR 784360: Revert "Merged PR 784187: Remove net7 qualifier
Reapply the original Net7 removal commit `4c5cc753`. The issue that we initially saw after it was merged was not caused by the commit. The commit forced a cache miss for a couple of pip and it uncovered the issue with vctip/lib.exe.

Must be merged after !784653

Related work items: #2174274
2024-05-14 00:20:53 +00:00
Oleksii Kononenko cea42e3df4 Merged PR 784360: Revert "Merged PR 784187: Remove net7 qualifier
After net7 removal the minimal build fails in CB with 'child process survived' error.

Revert "Merged PR 784187: Remove net7 qualifier

Remove net7 qualifier and move msbuild to net8.

Related work items: #2174274"

Reverted commit `4c5cc753`.

Related work items: #2174274
2024-05-11 00:15:11 +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
Oleksii Kononenko 4c5cc753e9 Merged PR 784187: Remove net7 qualifier
Remove net7 qualifier and move msbuild to net8.

Related work items: #2174274
2024-05-10 20:43:31 +00:00
Marcelo Lynch 🧉 3b54737b0b Merged PR 770069: Disable InBoxSdkSourceResolver for Ninja builds
The inbox sdk source resolver fails for Ninja builds. Disable it explicitly in this case, to not require this configuration explicitly in the resolver settings.

Related work items: #2154307
2024-03-18 23:09:16 +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
Iman Narasamdya 6b28ca2771 Merged PR 727557: MSBuild frontend documentation
Added MSBuild frontend documentation.

Include:
- Added more examples for MSBuild frontends
- Reorganized DScript frontend.
2023-07-12 20:57:54 +00:00
Iman Narasamdya 1f80746940 Merged PR 719094: [Documentation] Core concept & DScript Walkthrough
This PR includes:
- Revamping core concept to more accessible explanation (for new members or for 3rd party).
- Add DScript walkthrough with runnable examples.
2023-05-23 17:47:05 +00:00
Serge Mera e4a27667e4 Merged PR 712621: Fix MSBuildHelloWorldExample
Be explicit about out and intermediate dirs in the msbuild project example (so thep predictors get that right).  Update the platform toolset as well so it works with VS2022

Related work items: #2047654
2023-04-12 22:32:25 +00:00
Ankur A Sharma 9665064490 Merged PR 684623: Update references to BuildXL master branch to use main
Related work items: #2001791
2022-10-20 17:30:20 +00:00
Marcelo Lynch 🧉 799c07fc2e Merged PR 684203: Add NinjaHelloWorld example 2022-10-18 22:08:02 +00:00
Marcelo Lynch 🧉 f9331ffb7c Merged PR 684192: Correct CMake invocation command line
Spaces are making it trip
2022-10-18 18:38:02 +00:00
Kristijan Simic aae27ab8f0 Merged PR 641917: [macOS] Modernize extension, xpc, and endpoint security code
[macOS] Modernized extension, xpc, and endpoint security code.
2021-12-16 15:56:08 +00:00
Pasindu Gunasekara a8410ec4f4 Merged PR 611691: Guardian - Add documentation + sample project
- Create initial onboarding documentation for Guardian
- Create a sample project that incorporates the Guardian SDK.

Related work items: #1829804
2021-05-05 19:57:09 +00:00
Marcelo Lynch e97cf24f14 Merged PR 605503: Explicitly disable InBoxSdkSourceResolver in the CMake example
Explicitly disable InBoxSdkSourceResolver in the CMake example. Should be changed back once we fix the bug.

Related work items: #1830391
2021-03-29 19:38:55 +00:00
Marcelo Lynch 26a97746e9 Merged PR 603201: Fixes in the CMake frontend and related example
Related work items: #1826658
2021-03-16 19:13:12 +00:00
Aleksandar Milicevic cfede029f0 Merged PR 594607: Untrack `$HOME/Library` for bash processes in the "example" build
Untrack `$HOME/Library` for bash processes in the "example" build
2021-01-26 00:57:42 +00:00
Marcelo Lynch 6786c21501 Merged PR 592835: Fix MsBuildGraphBuilder conflictive assembly loading of System.Collections.Immutable
The MsBuildGraphBuilder tool was loading `System.Collections.Immutable.dll` from the tool deployment folder. In newer versions of MSBuild a different version of the library is being referenced: loading this newer MSBuild and the old DLL caused a runtime error, (e.g. our example MsBuild project failed to build with the latest MsBuild with a `MissingMethodException`).

Related work items: #1807610
2021-01-13 19:45:24 +00:00
Serge Mera 69e6aca98b Merged PR 558490: Remove implicit project reference semantics field on module configuration files
It's been the default for a long time
2020-06-15 18:46:10 +00:00
Aleksandar Milicevic 880891e7f2 Merged PR 529793: Revamp the build-with-casaas.sh script for building the Example build CASaaS on
Revamp the build-with-casaas.sh script for building the Example build CASaaS on Mac
2020-01-18 05:07:56 +00:00
Aleksandar Milicevic 6ffb10d24f Merged PR 523637: Lazy shared opaque output deletion
This PR implements the common case when deletion of shared opaque outputs can be postponed until right before the pip is executed.

The condition for postponing deletion of shared opaque outputs is:
  - a sideband file exists for every process pip that produces at least one shared opaque directory and is not filtered out by the current filter
  - the sideband is not corrupt (i.e., its `FileEnvelope` checksum matches)
  - the pip's static fingerprint hasn't changed since the sideband file was recorded

When this condition is met
1. before the build:
    - `EngineSchedule` skips over the step where shared opaque outputs are deleted
    - any extraneous sideband files (i.e., sideband files found on disk whose corresponding pips are not present in the current pip graph) are deleted at this point, as well as all the files recorded in those sideband files
    - all the other forms of scrubbing are still performed in `EngineSchedule` at this point
2. during the build:
    - right before a pip is executed, its shared opaque outputs are read from its sideband file and deleted
    - if any of those operations fail (i.e., reading the sideband file, deleting an output recorded in it, etc.) the pip is failed

Related work items: #1608015
2019-12-12 03:08:33 +00:00
Aleksandar Milicevic 2e89c5d2bf
[kext] handle check_vnode_clone (#1065)
- implement a handler for check_vnode_clone
- add a test (to the example build) that ensures that clone operations are properly detected
- add a test (to the example build) that ensure that obscure writes via sourcing csh scripts are detected
- publish and sign a new kext

AB#1607992
2019-10-18 15:19:38 -07:00
Aleksandar Milicevic 106fe44baf
Explicitly set u+w before calling setxattr (#1033) 2019-10-11 13:29:03 -07:00
Aleksandar Milicevic 7e32af8aa6
Use xattrs to mark shared opaque outputs on Mac (#1007)
The implementation for Windows remains the same and continues to use magic timestamps.

On Mac, instead of timestamps extended attributes are used. Concretely, a file is a shared opaque output IFF it has a com.microsoft.buildxl:shared_opaque_output attribute and it's value is equal to 42 (at some point in the future we could insert a more meaningful value here, e.g., PipId)

AB#1607996
2019-10-07 11:49:29 -07:00
Aleksandar Milicevic 0a47ff57ed
Remote telemetry for ContentStoreApp (#503)
New classes:

 - CsvFileLog: an ILog class that writes log messages to a CSV file and formats them according to a given schema
 - KustoUploader: a class responsible for asynchronously receiving CSV files and ingesting them into a Kusto table
2019-06-27 19:24:58 -07:00
Kristijan Šimić 1f753c91d2
Remove old and unused in memory cache config files from .NET Core 2019-05-23 11:54:35 +02:00
Julián Bayardo b2930760dd
Add MsBuildResolver and CMakeResolver examples (#340) 2019-05-21 10:20:55 -07:00
Aleksandar Milicevic 1acc262ee2
[macOS] Compile build tools to native (#285)
Additional tools compiled to native:

 - ResXPreprocessor
 - LogGen
 - TestProcess
 - OpNameGenerator
2019-05-10 14:28:19 -07:00
Aleksandar Milicevic 39d54eff1f
Handle 'rename directory' operation on macOS (#208)
Special handling for directory rename.

Scenario: a pip writes a bunch of files into a directory (e.g., 'out.tmp') and then renames that directory (e.g., to 'out'). Once 'out.tmp' is renamed to 'out', we need to explicitly update all previously reported paths under 'out.tmp'.  Since we cannot change the past and directly mutate previously reported paths, we simply enumerate the content of the renamed directory and report all the files in there as writes. This is exactly how this is done on Windows, except that it's implemented in the Detours layer.

AB#1362637
2019-04-29 09:08:33 -07:00
dannyvv 426339bd4e
Fix casing of LKG feed (#182) 2019-04-22 10:12:00 -07:00
dannyvv bd375d9939
Attempt to fix mac builds with mount errors (#129) 2019-04-11 14:36:31 -07:00
dannyvv 12453eef30
Update Transformer.write to use the new Object style apy (#97) 2019-04-08 18:32:33 -07:00
dannyvv a7b4f9ea92
Update sealDirectory calls to use new object api (#95) 2019-04-08 16:09:12 -07:00
Aleksandar Milicevic cc6732e7b7
Mark all build outputs under shared opaque dirs (#96)
The idea is that all build outputs, no matter which pip produced them, have the special timestamps as long as they are under a shared opaque directory.

Before this change, pips that explicitly declare one or more shared opaque directories, their outputs that are under any of those directories are marked with the special timestamps.

What's possible is that there are some other pips (e.g., CopyFile or WriteFile) that produce additional files into those same shared opaque directories. Those files were not marked with the special timestamps; consequently, if those files become stale, the scrubber will fail to delete them before the build, which can cause problems downstream.

With this PR, all build outputs that end up being under any declared shared opaque output directory will have the special timestamps.

AB#1472511
2019-04-08 13:16:02 -07:00
Kristijan Šimić 7842d94bd2
[macOS] General updates to documentation and build scripts (#50)
* Restore all script exec permissions, update Readme.md with better macOS instructions
* Always run sandboxed when building internal
* Exec permission adjustment for all scripts
2019-03-29 13:20:48 +01:00
Erik Mavrinac a812678e73
Add permission-setting for MacOS pipeline failure (#42)
* Add direct bash execution to avoid permission failures
2019-03-28 16:36:51 -07:00
Microsoft Open Source b5c9f43106 Initial sync
Sync from internal 'Domino' repo at 7ef83bdcd855bd3a837464e44d6de25f19775b5c
2019-03-28 15:35:49 -07:00