Skip to content

chore(kad): probe peers before inserting them into the routing table #6063

chore(kad): probe peers before inserting them into the routing table

chore(kad): probe peers before inserting them into the routing table #6063

Workflow file for this run

name: C bindings
on:
push:
branches:
- master
pull_request:
merge_group:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
c-bindings:
timeout-minutes: 30
strategy:
fail-fast: false
env:
NIMBLE_COMMIT: 9207e8b2bbdf66b5a4d1020214cff44d2d30df92 # v0.20.1
defaults:
run:
shell: bash
name: "Build C bindings"
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v6
with:
submodules: true
- name: Setup Nim
uses: "./.github/actions/install_nim"
with:
shell: bash
os: linux
cpu: amd64
nim_ref: v2.2.10
- name: Restore deps from cache
id: deps-cache
uses: actions/cache@v5
with:
path: nimbledeps
# Keep this in sync with ci.yml's cache key so entries are
# reusable. See ci.yml for the rationale on os/cpu/cc scoping.
key: nimbledeps-linux-amd64-gcc-${{ hashFiles('.pinned') }}
- name: Install deps
if: ${{ steps.deps-cache.outputs.cache-hit != 'true' }}
run: |
nimble install_pinned
- name: Build FFI library and generate C/CDDL bindings
run: |
nim --version
nimble --version
gcc --version
nimble setup
cd cbind
nimble install_pinned
nimble setup
nimble buildffi
nimble genbindings_c
nimble genbindings_cddl
- name: Build and run C bindings examples
run: |
cd cbind
nimble examples
# macOS coverage for the FFI library build + C/CDDL binding generation; the
# main c-bindings job above covers linux.
c-bindings-ffi:
timeout-minutes: 30
strategy:
fail-fast: false
env:
NIMBLE_COMMIT: 9207e8b2bbdf66b5a4d1020214cff44d2d30df92 # v0.20.1
defaults:
run:
shell: bash
name: "Build FFI library (nim-ffi)"
runs-on: macos-15 # fastest to compile and run; see daily_test_all_no_flags.yml
steps:
- name: Checkout
uses: actions/checkout@v6
with:
submodules: true
- name: Setup Nim
uses: "./.github/actions/install_nim"
with:
shell: bash
os: macos-15
cpu: arm64
nim_ref: v2.2.10
- name: Restore deps from cache
id: deps-cache
uses: actions/cache@v5
with:
path: nimbledeps
key: nimbledeps-macos-15-arm64-clang-${{ hashFiles('.pinned', 'cbind/.pinned') }}
- name: Install deps
if: ${{ steps.deps-cache.outputs.cache-hit != 'true' }}
run: |
nimble install_pinned
- name: Build FFI library and generate C/CDDL bindings
run: |
nim --version
nimble --version
clang --version
nimble setup
cd cbind
nimble install_pinned
nimble setup
nimble buildffi
nimble genbindings_c
nimble genbindings_cddl