Skip to content

Commit a4c5ecb

Browse files
authored
Merge pull request #871 from opsmill/stable
Merge stable into develop
2 parents bd27571 + 84ee9ef commit a4c5ecb

76 files changed

Lines changed: 3496 additions & 350 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.vale/styles/Infrahub/sentence-case.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ exceptions:
5252
- Jinja
5353
- Jinja2
5454
- JWT
55+
- MDX
5556
- Namespace
5657
- NATS
5758
- Node

.vale/styles/spelling-exceptions.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ kbps
7979
Keycloak
8080
Loopbacks
8181
markdownlint
82+
MDX
8283
max_count
8384
memgraph
8485
menu_placement

CHANGELOG.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,24 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
1010
This project uses [*towncrier*](https://towncrier.readthedocs.io/) and the changes for the upcoming release can be found in <https://github.com/opsmill/infrahub/tree/develop/infrahub/python_sdk/changelog/>.
1111

1212
<!-- towncrier release notes start -->
13+
14+
## [1.19.0](https://github.com/opsmill/infrahub-sdk-python/tree/v1.19.0) - 2026-03-16
15+
16+
### Added
17+
18+
- Added support for FileObject nodes with file upload and download capabilities. New methods `upload_from_path(path)` and `upload_from_bytes(content, name)` allow setting file content before saving, while `download_file(dest)` enables downloading files to memory or streaming to disk for large files. ([#ihs193](https://github.com/opsmill/infrahub-sdk-python/issues/ihs193))
19+
- Python SDK API documentation is now generated directly from the docstrings of the classes, functions, and methods contained in the code. ([#201](https://github.com/opsmill/infrahub-sdk-python/issues/201))
20+
- Added a 'py.typed' file to the project. This is to enable type checking when the Infrahub SDK is imported from other projects. The addition of this file could cause new typing issues in external projects until all typing issues have been resolved. Adding it to the project now to better highlight remaining issues.
21+
22+
### Changed
23+
24+
- Updated branch report command to use node metadata for proposed change creator information instead of the deprecated relationship-based approach. Requires Infrahub 1.7 or above.
25+
26+
### Fixed
27+
28+
- Allow SDK tracking feature to continue after encountering delete errors due to impacted nodes having already been deleted by cascade delete. ([#265](https://github.com/opsmill/infrahub-sdk-python/issues/265))
29+
- Fixed Python SDK query generation regarding from_pool generated attribute value ([#497](https://github.com/opsmill/infrahub-sdk-python/issues/497))
30+
1331
## [1.18.1](https://github.com/opsmill/infrahub-sdk-python/tree/v1.18.1) - 2026-01-08
1432

1533
### Fixed

changelog/151.added.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Add `infrahubctl schema export` command to export schemas from Infrahub.

changelog/201.added.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

changelog/265.fixed.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

changelog/497.fixed.md

Lines changed: 0 additions & 1 deletion
This file was deleted.

docs/AGENTS.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# docs/AGENTS.md
1+
# Documentation agents
22

33
Docusaurus documentation following Diataxis framework.
44

@@ -34,12 +34,12 @@ Sidebar navigation is dynamic: `sidebars-*.ts` files read the filesystem at buil
3434

3535
No manual sidebar update is needed when adding a new `.mdx` file. However, to control the display order of a new page, add its doc ID to the ordered list in the corresponding `sidebars-*.ts` file.
3636

37-
## Adding Documentation
37+
## Adding documentation
3838

3939
1. Create MDX file in appropriate directory
4040
2. Add frontmatter with `title`
4141

42-
## MDX Pattern
42+
## MDX pattern
4343

4444
Use Tabs for async/sync examples, callouts for notes:
4545

docs/docs/infrahubctl/infrahubctl-schema.mdx

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ $ infrahubctl schema [OPTIONS] COMMAND [ARGS]...
1717
**Commands**:
1818

1919
* `check`: Check if schema files are valid and what...
20+
* `export`: Export the schema from Infrahub as YAML...
2021
* `load`: Load one or multiple schema files into...
2122

2223
## `infrahubctl schema check`
@@ -40,6 +41,25 @@ $ infrahubctl schema check [OPTIONS] SCHEMAS...
4041
* `--config-file TEXT`: [env var: INFRAHUBCTL_CONFIG; default: infrahubctl.toml]
4142
* `--help`: Show this message and exit.
4243

44+
## `infrahubctl schema export`
45+
46+
Export the schema from Infrahub as YAML files, one per namespace.
47+
48+
**Usage**:
49+
50+
```console
51+
$ infrahubctl schema export [OPTIONS]
52+
```
53+
54+
**Options**:
55+
56+
* `--directory PATH`: Directory path to store schema files [default: (dynamic)]
57+
* `--branch TEXT`: Branch from which to export the schema
58+
* `--namespaces TEXT`: Namespace(s) to export (default: all user-defined)
59+
* `--debug / --no-debug`: [default: no-debug]
60+
* `--config-file TEXT`: [env var: INFRAHUBCTL_CONFIG; default: infrahubctl.toml]
61+
* `--help`: Show this message and exit.
62+
4363
## `infrahubctl schema load`
4464

4565
Load one or multiple schema files into Infrahub.

docs/docs/python-sdk/guides/client.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ Your client is now configured to use the specified default branch instead of `ma
251251

252252
## Hello world example
253253

254-
Let's create a simple "Hello World" example to verify your client configuration works correctly. This example will connect to your Infrahub instance and query the available accounts.
254+
Let's create a "Hello World" example to verify your client configuration works correctly. This example will connect to your Infrahub instance and query the available accounts.
255255

256256
1. Create a new file called `hello_world.py`:
257257

0 commit comments

Comments
 (0)