Skip to content

Fix .bazelrc to be compatible with Bazel 0.23.0#1

Closed
philwo wants to merge 1 commit intogooglecloudrobotics:masterfrom
philwo:patch-1
Closed

Fix .bazelrc to be compatible with Bazel 0.23.0#1
philwo wants to merge 1 commit intogooglecloudrobotics:masterfrom
philwo:patch-1

Conversation

@philwo
Copy link
Copy Markdown

@philwo philwo commented Feb 6, 2019

The two flags --incompatible_remove_native_http_archive and --incompatible_remove_native_git_repository have been enabled by default in a recent release and were subsequently removed, so specifying them in Bazel 0.23.0 will result in an error due to the flags being unknown.

We can just remove them from the .bazelrc now.

The two flags --incompatible_remove_native_http_archive and --incompatible_remove_native_git_repository have been enabled by default in a recent release and were subsequently removed, so specifying them in Bazel 0.23.0 will result in an error due to the flags being unknown.

We can just remove them from the .bazelrc now.
@philwo
Copy link
Copy Markdown
Author

philwo commented Feb 6, 2019

FYI @ensonic

@ensonic
Copy link
Copy Markdown
Contributor

ensonic commented Feb 6, 2019

recent release

Do you remember which one, so that we can tell people to use e.g. >=0.20.0

@philwo
Copy link
Copy Markdown
Author

philwo commented Feb 6, 2019

Yes, according to our issue tracker and release notes, the flags were flipped in 0.20.0:

bazelbuild/bazel#6569
bazelbuild/bazel#6570

However, AFAIK it shouldn't really matter - load()'ing the new http_* rules doesn't depend on manually flipping these flags. The --incompatible_* flags are just intended to identify breakages in advance on CI and "should" never be deployed to production or routinely used by developers (although I'm not sure if that's a soft or hard rule, @dslomov should be able to clarify). :)

By the way, not sure if it's interesting for you, but https://github.com/philwo/bazelisk is a helpful wrapper for Bazel, if you often have people building your project who might not have (the correct version of) Bazel installed. You can check it into your repo together with a .bazelversion file and it will automatically download and run the matching official release of Bazel for the user's platform.

@dslomov
Copy link
Copy Markdown

dslomov commented Feb 6, 2019

We do not recommend running production builds with --incompatible_* or --experimental_* flags (which implies not putting them into checked-in .bazelrcs). We can and will remove these flags at random times.
Please check out our full breaking change policy

@ensonic ensonic closed this in d81ca9d Feb 6, 2019
drigz added a commit that referenced this pull request Jul 22, 2025
This exports a list of connected PCI devices, so that we can track which
GPUs and NICs are installed on the fleet. node-exporter doesn't support
anything quite like this, the ethtool metric doesn't handle NICs that
aren't bound to a kernel driver for example, nor can it identify the
attached GPU.

The new binary is 9MB, and the new process has 21MB RSS, which seems to
mostly be TLS/protobuf dependencies that I guess come in via the
OpenCensus libraries, but could also come in via the PCI library, as
that has the ability to fetch a PCI ID database from the internet if
enabled at runtime (it is not enabled in this binary).

The extra metric load should be offset by
#549.

Example metrics:

```
# HELP pci_device_count Number of PCI devices by vendor, product, class, and driver.
# TYPE pci_device_count gauge
pci_device_count{class="Bridge",driver="",product="0x7a90",vendor="Intel Corporation"} 1
pci_device_count{class="Bridge",driver="",product="0xa700",vendor="Intel Corporation"} 1
pci_device_count{class="Bridge",driver="pcieport",product="0x7ab6",vendor="Intel Corporation"} 1
pci_device_count{class="Bridge",driver="pcieport",product="Alder Lake-S PCH PCI Express Root Port #13",vendor="Intel Corporation"} 1
pci_device_count{class="Bridge",driver="pcieport",product="Alder Lake-S PCH PCI Express Root Port #8",vendor="Intel Corporation"} 1
pci_device_count{class="Bridge",driver="pcieport",product="Raptor Lake PCI Express 5.0 Graphics Port (PEG010)",vendor="Intel Corporation"} 1
pci_device_count{class="Bridge",driver="pcieport",product="Raptor Lake PCIe 4.0 Graphics Port",vendor="Intel Corporation"} 1
pci_device_count{class="Communication controller",driver="",product="Alder Lake-S PCH Serial IO UART #0",vendor="Intel Corporation"} 1
pci_device_count{class="Communication controller",driver="mei_me",product="Alder Lake-S PCH HECI Controller #1",vendor="Intel Corporation"} 1
pci_device_count{class="Display controller",driver="nvidia",product="GA104GL [RTX A4000]",vendor="NVIDIA Corporation"} 1
pci_device_count{class="Mass storage controller",driver="ahci",product="Alder Lake-S PCH SATA Controller [AHCI Mode]",vendor="Intel Corporation"} 1
pci_device_count{class="Mass storage controller",driver="nvme",product="IX SN530 NVMe SSD (DRAM-less)",vendor="Sandisk Corp"} 3
pci_device_count{class="Memory controller",driver="",product="Alder Lake-S PCH Shared SRAM",vendor="Intel Corporation"} 1
pci_device_count{class="Multimedia controller",driver="",product="Alder Lake-S HD Audio Controller",vendor="Intel Corporation"} 1
pci_device_count{class="Multimedia controller",driver="",product="GA104 High Definition Audio Controller",vendor="NVIDIA Corporation"} 1
pci_device_count{class="Network controller",driver="atemsys_pci",product="Ethernet Connection (17) I219-LM",vendor="Intel Corporation"} 1
pci_device_count{class="Network controller",driver="igb",product="I210 Gigabit Network Connection",vendor="Intel Corporation"} 1
pci_device_count{class="Network controller",driver="intel-eth-pci",product="0x7aac",vendor="Intel Corporation"} 1
pci_device_count{class="Network controller",driver="intel-eth-pci",product="0x7aad",vendor="Intel Corporation"} 1
pci_device_count{class="Serial bus controller",driver="",product="Alder Lake-S PCH SPI Controller",vendor="Intel Corporation"} 1
pci_device_count{class="Serial bus controller",driver="",product="Alder Lake-S PCH Serial IO I2C Controller #0",vendor="Intel Corporation"} 1
pci_device_count{class="Serial bus controller",driver="",product="Alder Lake-S PCH Serial IO I2C Controller #1",vendor="Intel Corporation"} 1
pci_device_count{class="Serial bus controller",driver="",product="Alder Lake-S PCH Serial IO I2C Controller #2",vendor="Intel Corporation"} 1
pci_device_count{class="Serial bus controller",driver="",product="Alder Lake-S PCH Serial IO I2C Controller #3",vendor="Intel Corporation"} 1
pci_device_count{class="Serial bus controller",driver="",product="Alder Lake-S PCH Serial IO SPI Controller #1",vendor="Intel Corporation"} 1
pci_device_count{class="Serial bus controller",driver="i801_smbus",product="Alder Lake-S PCH SMBus Controller",vendor="Intel Corporation"} 1
pci_device_count{class="Serial bus controller",driver="xhci_hcd",product="Alder Lake-S PCH USB 3.2 Gen 2x2 XHCI Controller",vendor="Intel Corporation"} 1
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants