Summary:
The cargo config was being unconditionally added, resutling in "duplicate key `crates-io` in table `source`" error
check if snippet is present before writing
Reviewed By: mzr
Differential Revision: D59803494
fbshipit-source-id: 701773d604c91fd6724069b0451b212cf0018251
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/907
I don't sure that I make all in accordance with the your contribution pipeline, so please correct me If there is needed.
So, I've made some changes to support the `pacman` package manager in your `getdeps.py` script. In `manifests` I'm also duplicated some packages from `debs` and `rpms` sections and create a new `pps` sections with according packages for `pacman`.
Issue: https://github.com/facebook/folly/issues/1701
X-link: https://github.com/facebook/folly/pull/1702
Reviewed By: yfeldblum
Differential Revision: D33514769
Pulled By: Orvid
fbshipit-source-id: a081c3a5bcb7f7cdde3a4a91c0d15517c0a171b3
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/909
Linux Mint is based on Ubuntu and installs correctly with the same options. This adds it to the supported versions so that running `sudo ./install-system-packages.sh` succeeds.
X-link: https://github.com/facebook/watchman/pull/1234
Reviewed By: chadaustin
Differential Revision: D59666084
Pulled By: genevievehelsel
fbshipit-source-id: cfdee239be6358d4c8e2f1154391159a40ef91f4
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/899
You shouldn't be able to depend on a library unless it is in your direct dependencies, also this shortens the massive GETDEPS_CABAL_FLAGS to something more sensible.
Reviewed By: chadaustin
Differential Revision: D58244928
fbshipit-source-id: 3e93f26ef197252cd723a65c1752dad53b5327b6
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/897
Builder refactoring: instead of providing `install_dirs` to `build()`, `test()` etc., provide `loader` and `dep_manifests` when creating the builder. This is a cleaner API because we were computing `install_dirs` in multiple places before.
Furthermore this lets us do things that need to see the manifests of the dependencies, not just the list of `install_dirs`, such as treating direct dependencies differently from indirect dependencies (see D58244928).
Reviewed By: chadaustin
Differential Revision: D58200528
fbshipit-source-id: e52d35e84161b83ab49ab43099c3e3b9bb03f36e
Summary:
This is a patch that we are carrying in boost internally - D37196783
This is an open issue with C++20 - https://fburl.com/wtm7yhrm and the suggestion is to add explicit member candidates.
More details in D37196783
Reviewed By: peygar, zechengh09
Differential Revision: D58957227
fbshipit-source-id: d48e218c26199180d192f3a174e54f900770aae3
Summary:
[getdeps] restore rpm system deps for fedora
centOS (even stream) tends to be quite old and thus ends up having its rpm system deps turned off, e.g. boost in D55758008 and glog and gtest in D51813855. Unfortunate the rpm deps were removed entirely rather than limited by distro or distro_vers.
Lets restore the rpm deps but specify distro=fedora to reduce the risk of people removing them entirely.
Also:
* fedora has up to date gtest & gmock, so use them
* zlib-ng-compat added from fedora 38 with zlib removed from F40, so update zlib rpm names. F37 is EOL
X-link: https://github.com/facebook/folly/pull/2231
Reviewed By: HarveyHunt
Differential Revision: D58324546
Pulled By: ahornby
fbshipit-source-id: a4d5e8620cf55701e19317a301db3846d60f8d4b
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/871
The problem I need to solve is that projects without a pkg-config
can't be found by Cabal. I need to pass extra flags to Cabal for it to
find the includes and libraries for these projects. So here I'm
creating a `GETDEPS_CABAL_FLAGS` env with all the necessary flags.
It's a bit horrible. Really I want to do this only for the direct
deps, but where the env is being setup we don't have access to the
direct vs. non-direct deps currently, only the install_dirs.
Reviewed By: josefs
Differential Revision: D58200841
fbshipit-source-id: 03f8630610691485561438d69fe8e1182396cd04
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/866
Build triggering works by using entries in shipit.pathmap, however for
Glean we're using the native ShipIt so we didn't have these. Add a
dummy shipit.pathmap section to enable triggering.
Reviewed By: josefs
Differential Revision: D58146311
fbshipit-source-id: 45ce5a707584d834a4de452029cc0699abb0df82
Summary: As titled, move fboss oss to use sai 1.14.0
Reviewed By: simuthus-fb
Differential Revision: D58173787
fbshipit-source-id: 6e3206b274bbc414a607ac27184fed59d5b405ef
Summary:
Starts a shell in the build dir, with the environment set up in the
same way as for the build. Useful for experimenting and testing.
Reviewed By: chadaustin
Differential Revision: D58082246
fbshipit-source-id: 82b275401528d7616c2560d80b4c187de67f6032
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/858
Because it needs to be passed to other commands that use project
hashes, such as "test".
(in general there are probably a lot more of these, just fixing the
ones I've ran into so far)
Reviewed By: genevievehelsel
Differential Revision: D58082245
fbshipit-source-id: 09fa6b5ce4cc4b3ae7ecfb34ac83681cecb36e3c
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/856
Build Glean under the control of getdeps.
This avoids all of our `install_deps.sh` and `build.sh` stuff. Having
the build driven by getdeps means that getdeps handles all the
`PKG_CONFIG_PATH` and `LD_LIBRARY_PATH` stuff for us.
TODO
* only builds, doesn't run tests yet
* doesn't build any indexers - clang should be possible
Reviewed By: pepeiborra
Differential Revision: D57968314
fbshipit-source-id: 033bd0faad3b602f0fcd25e172531df7cab9c775
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/857
Where one project should be checked out in a subdirectory of another
project. Like git submodules.
This is how the Glean build currently works: hsthrift is a separate
git repo, but Glean builds with hsthrift checked out in a
subdirectory.
Reviewed By: chadaustin
Differential Revision: D58055066
fbshipit-source-id: 1a22abaa8c5261c40b752d685a03d01625215b12
Summary:
X-link: https://github.com/facebook/folly/pull/2219
Save a bit of time on each github build. Enable homebrew system deps for fmt, gflags, glog, googletest, snappy
Reviewed By: chadaustin
Differential Revision: D57967014
fbshipit-source-id: 286ba96fb384e1b5e8f4e97160af2b801e458aef
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/853
For projects that can't use the simple shipit transformer (e.g. hsthrift) and projects where it would be a pain to duplicate the shipit config (e.g. Glean).
Reviewed By: pepeiborra
Differential Revision: D58055453
fbshipit-source-id: f693a320f42cfccd9808306b4ad8b1f31ce00f97
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/854
This will only work with `--allow-system-packages`, but that's enough for the Glean use case.
Reviewed By: pepeiborra
Differential Revision: D58055451
fbshipit-source-id: 2b6323e4fe81095c80a02ad9dc49c1f374fed5d5
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/852
It was using the old PHP shipit script
Reviewed By: chadaustin
Differential Revision: D58013009
fbshipit-source-id: 97f0c31b897c04217ca5dd62fbe6cc2a55d280c8
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/849
Needed for installing ghc binaries, which have an autoconf-based
distribution that only supports `make install`, not `make`.
Reviewed By: chadaustin
Differential Revision: D58011865
fbshipit-source-id: db7c3cc45701201466a6b2853c5f3515b178fa74
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/848
Because it should work with `show-inst-dir`, otherwise we can't
calculate the right project hash.
Reviewed By: chadaustin
Differential Revision: D58011867
fbshipit-source-id: d8960b4a993efbada8e27584e56976279fcd6b43
Summary: The openssl manifest needed an nop builder to allow build without --allow-system-packages , otherwise if gave`Exception: project openssl has no builder for <getdeps.manifest.ManifestContext object at 0x7f43f263b220>`
Reviewed By: DevidXu
Differential Revision: D57277879
fbshipit-source-id: ec87a2b9e072645e550e6b9edd09936b88698b83
Summary: Use the declared getdeps system dependencies from ws_airstore build. As they come from the OS packages they are dynamically linked, which makes the python build happy.
Reviewed By: zhaoduow
Differential Revision: D57047488
fbshipit-source-id: 751fd2b71c5e81d987d9fe6d9502cd5f4613ac66
Summary: this runs on github... but also not what i really care about
Reviewed By: terrelln
Differential Revision: D57125977
fbshipit-source-id: 39d7fd319a0ce45a36ba11c4301f5a27356b6c9f
Summary:
As titled, remove picking system boost for centos9 oss builds.
We are seeing the following error (https://tracker.ceph.com/issues/54265) when building qsfp service with c++20 and on CentOS9. We need boost 1.77 or more to build with c++20.
Discussion: https://fburl.com/workplace/4u3glapv
Reviewed By: chadaustin
Differential Revision: D55758008
fbshipit-source-id: dae0bb5a70de3de2988032412eaafbd1b6d4e53d
Summary:
getdeps can generate a windows wrapper script that can be used to run build artifacts from build directory.
In github actions for large projects we set a getdeps option delete the build dir as soon as we've successfully installed artefacts to save disk space. This option was enabled for windows in D56165825. Turns out that didn't work, this diff adds the missing conditional so that it should.
Reviewed By: vitaut
Differential Revision: D56930778
fbshipit-source-id: 0cb9ac94ef9b39f4e33af8fb91098dc0d833731b
Summary:
there is a bunch of scripts that uses python3 to run, this means that they are at the mercy of whoever controll their path, in linux, this can be system python3, but can also be platform python (and probably it is both), and in windows in particular it abuses c:\tools\fb-python\python3.exe. fbpython is the universal way to run python at the company that chooses the right platform python, but also provides monitoring and observability.
this scripts generates jobs like
https://www.internalfb.com/sandcastle/job/18014399781484898/
that will stop working once we remove c:\tools\fb-python\python3*.exe
Reviewed By: fried
Differential Revision: D56896564
fbshipit-source-id: d911fdaf6750635adb05b096f0522603baf47bcc
Summary: this diff adds support for thrift in the OSS client build. it changes the `getdeps` airstore manifest to gain access to the thrift cpp2 compiler, then uses a rule similar to other projects to generate the cpp type headers. It changes the OSS `libbundle` library to depend on the thrift types introduced in D56578073 (and, through a lot of pain, get generated in the OSS build stack) which will then be used to ser/de bundles in the OSS build later in the stack!
Reviewed By: ASchneidman
Differential Revision: D56578071
fbshipit-source-id: 1a8d906d0f7a24da21fe7f225fe68644c6bc49d7
Summary: Add a manifest for libiberty so that folly open source builds pick it up and use the demangler when showing stack traces
Reviewed By: dmm-fb
Differential Revision: D56679872
fbshipit-source-id: 622090112e19a5dd0d2b58a36dead0ea81e89026
Summary: Add a manifest for libunwind so that folly open source builds pick it up and show stack traces
Reviewed By: dmm-fb
Differential Revision: D56679859
fbshipit-source-id: 1fd3321ba1e80c4569b870974737be7bc65b77b9
Summary: Give folly depends on and picks up libdwarf, add a manifest for libdwarf to make it explicit and stop it being found via other means
Reviewed By: markbt
Differential Revision: D56630711
fbshipit-source-id: 7b9386b4b93788e7efda13e51e35c9fec4fd6df2
Summary:
X-link: https://github.com/facebookincubator/zstrong/pull/749
Updating generated workflow files to account for recent changes. Most notably, this updates the checkout action to v4 and sets an explicit read-only permission.
This also adds support for `--cron` in the codegen to account for only running CI on a schedule (useful for managing costs).
Reviewed By: ahornby
Differential Revision: D56165825
fbshipit-source-id: 298b16effefb6b8a2dc6cbcf07d4ec4a61f48364