diff --git a/.gitignore b/.gitignore
index 17a8ab637e..ed3c91c3fc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -54,3 +54,6 @@ yarn-error.log*
# pyc files
*.pyc
__pycache__/
+
+# vscode stuff
+.vscode
diff --git a/docs/maintainer/knowledge_base.md b/docs/maintainer/knowledge_base.md
index ffc5da69f5..0be7fd5e21 100644
--- a/docs/maintainer/knowledge_base.md
+++ b/docs/maintainer/knowledge_base.md
@@ -1402,13 +1402,16 @@ if you import parts of `matplotlib` that link to `libX11`.
-### `pybind11` ABI Constraints
+
-Sometimes when different python libraries using `pybind11` interact via lower-level C++ interfaces,
-the underlying ABI between the two libraries has to match. To ease this use case, we have a `pybind11-abi`
-metapackage that can be used in the `host` section of a build. Its version is pinned globally and it has a
+### `pybind11` and `swig` ABI Constraints
+
+Sometimes when different python libraries using `pybind11`/`swig` interact via lower-level interfaces,
+the underlying ABI between the two libraries has to match. To ease this use case, we have a `pybind11-abi`/`swig-abi`
+metapackage that can be used in the `host` section of a build. Its version is pinned globally, and it has a
run export on itself, meaning that builds with this package in `host` will have a runtime constraint on it.
-Further, the `pybind11` has a run constraint on the ABI metapackage to help ensure consistent usage.
+Further, the `pybind11`/`swig` has a run constraint on the respective ABI metapackage to help ensure
+consistent usage.
To use this package in a build, put it in the host environment like so
@@ -1418,6 +1421,14 @@ requirements:
- pybind11-abi
```
+or
+
+```yaml
+requirements:
+ host:
+ - swig-abi
+```
+