> ## Documentation Index
> Fetch the complete documentation index at: https://www.osohq.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# CLI Changelog

> Changelog of updates to Oso Cloud CLI.

### 0.37.0

* Better support for large fact types when using Oso Sync.
* MySQL support for local authorization.

### 0.36.1

* Improve debugging guidance baked into MCP server.

### 0.36.0

* Policy Preview: make query timeout configurable via `--query-timeout-ms` flag.

### 0.35.1

* Emit error message for individual fact types when Oso Sync is used with `--json`.

### 0.35.0

* Policy Preview (Experimental): Introduces `oso-cloud experimental policy-preview`, a new way to test policy changes before deploying them.
* This feature is experimental and requires enablement. Contact us on Slack to get access.

### 0.34.0

* Add support for using system certificates in Oso Sync Postgres connections.

### 0.33.3

* Bug fix: update permissions for startup script in MCP server.

### 0.33.2

* Bug fix: update MCP.dxt script to prevent startup failures.

### 0.33.1

* Add validate\_policy tool to MCP server.

### 0.33.0

* Add [MCP server](/develop/local-dev/mcp)(beta).

### 0.32.3

* Bugfix: Fix race condition in Oso Sync with coordinating transactions between
  Oso Cloud and the local database.

### 0.32.2

* Bugfix: Use value for the action when a `String` type is included (e.g., `String:read` is parsed as `read`).

### 0.32.1

* Add support for an advanced language feature.

### 0.32.0

* Add a way to manually manage consistency in Oso Sync for advanced use cases.

### 0.31.0

* Add support for custom DNS servers with `--dns-servers`.
* Add support for trusting a custom CA with `--ca-path`/`OSO_CLI_CA_BUNDLE`.

### 0.30.0

* Fix bug in `generate-types` where facts used in `not` expressions were typed too loosely.

### 0.29.2

* Stream JSON diff as one-line events in `oso-cloud reconcile` and remove
  ANSI formatting of error message.

### 0.29.1

* Add support for `ObjectId` types when reconciling against MongoDB with Oso
  Sync.

### 0.29.0

* Add support for `--json` flag to `oso-cloud`, which configures all log
  output to be streamed as JSON objects, rather than the default
  human-readable format.

### 0.28.2

* Add support for environment variable `OSO_SYNC_PERFORM_UPDATES` to set
  `--perform-updates` flag on `oso-cloud reconcile`.

### 0.28.1

* Add additional context to Oso Sync HTTP errors.

### 0.28.0

* Add support for MongoDB AWS Auth with Oso Sync.

### 0.27.1

* Parallelize type generation for improved performance.

### 0.27.0

* Add support for global `-q/--quiet` and `-v/--verbose` flags to control
  CLI output.
  Using `-q` will suppress all informational logging, and `-v` will output
  additional verbose debug information.
* Add support for comma-separated database URLs for Oso Sync with MongoDB.

### 0.26.1

* Fixed a bug in the experimental `db-introspect` command that swallowed output without printing.

### 0.26.0

* LSP: add support for running `iff` assertions in policy tests; add a code action to fix failing `iff` assertions.
* Oso Sync: Promote `reconcile` from `experimental`; `oso-cloud experimental reconcile`
  will continue to work but will be removed in a future release. Current
  users should switch to `oso-cloud reconcile`. Existing configuration yaml
  files should continue to work with the non-experimental `reconcile`; however,
  the non-experimental variant is stricter when evaluating the yaml and
  rejects unknown fields. Refer to [Sync Facts](/develop/facts/sync-facts)
  for full specifications.

### 0.25.0

* Condense output of `generate-types`. Remove fact types which are expressed by other fact types.

### 0.24.0

* Added `--context` option to `authorize-local`, `list-local`, and `actions-local`.

### 0.23.0

* Introduced `go-to-definition` and `find references` support in the LSP.

### 0.22.2

* Pin the GitHub runner used for compiling `linux-arm64` builds to ensure we're linking
  to an older version of libc (2.35).

### 0.22.1

* Fixed an issue in the LSP which would raise an error in multiroot workspaces.

### 0.22.0

* Support outputting resource block declarations when generating TypeScript types.
* Customize type generation output with `--include` flag. Defaults to `facts,queries` to be backwards-compatible,
  use `--include facts,queries,resources` to output types based on resource blocks too.

### 0.21.0

* Add an optional `--quiet` flag to the `oso-cloud test` command, to suppress non-test specific output (e.g. loading policy).
* Test failures from running `oso-cloud test` are now grouped by test name.

### 0.20.1

Add a `--watch` flag to the `oso-cloud test` command, which will watch all provided files for changes
and automatically rerun tests if any file changes.

### 0.20.0

Add support for using the `reconcile` command with [MongoDB](/develop/facts/sync-facts#mongodb)
and [CSV](/develop/facts/sync-facts#comma-separated-values-csv) file data sources.

### 0.19.10

Add additional context to HTTP errors.

### 0.19.9

Empty test setup blocks are no longer parse errors.

### 0.19.8

Fix a bug in the variable renaming functionality in the LSP.

### 0.19.7

Rename `validate-bindings` command to `validate-local-authorization-config`. The
new command takes the same arguments.

`validate-bindings` will be removed in a future release.

### 0.19.6

* Support new `--fail-fast` flag in `test` and `policy` commands
  to stop running tests after the first failure.

### 0.19.5

Support new Test Fixtures feature to share setup facts between tests:

```polar theme={null}
foo(x: Integer, y: Boolean, z: String) if bar(x, y, z);

test fixture bar {
  bar(1, false, "hi");
}

test "foo 1" {
  assert_not foo(1, false, "hi");
}
test "foo 2" {
  setup { fixture bar; }
  assert foo(1, false, "hi");
}
test "foo 3" {
  setup { fixture bar; }
  assert foo(1, false, "hi");
}
```

### 0.19.4

Add initial support for an upcoming language feature to the LSP.

### 0.19.3

* Improvement to Oso Sync to ensure facts inserted or deleted while the
  `reconcile` command is in progress are maintained upon completion.
* Support larger imports on the experimental `reconcile` command without timing
  out.
* Add a `--timeout` option to the `reconcile` command to configure the timeout.

### 0.19.2

* Bugfix: in the LSP test runner, handle more `!=` comparisons.

### 0.19.1

* Bugfix: in the LSP, handle multi-file policies better.

### 0.19.0

* Add a `--preview` flag for policy updates to return a diff of the changes.
* Add support for Linux arm64.
* Bugfix: `UNION` queries in data bindings now validate correctly.

### 0.18.7

* Add `--summarized-output` flag to the experimental `reconcile` command.

### 0.18.6

* Adjust the format of types generated by `generate-types` so that it's more
  pleasant to pass union types into the 2.0 TypeScript client.

### 0.18.5

* Bugfix: in the LSP, exit the process when there's nothing left to read on
  stdin. This should prevent orphaned LSP processes when (for example) closing
  workspaces while using the VSCode extension.

### 0.18.4

* Bugfix: in the LSP, clear diagnostics when deleting or closing Polar files.

### 0.18.3

* Bugfix: in the LSP, fix several bugs related to running tests.

### 0.18.2

* Bugfix: in the LSP, correctly handle deleting Polar files.

### 0.18.1

* Bugfix: in the LSP, mark passing tests as hints, rather than informational, so that editors don't display them as problems.

### 0.18.0

* Promote the `lsp` command out of the `experimental` namespace. This command starts a new Language Server Protocol server for Polar files.
* Add the ability to run tests and get suggestions on how to fix failing tests via the LSP.

### 0.17.0

* Breaking changes in the experimental `reconcile` command, old versions will no longer work.

### 0.16.1

* Add `X-Request-ID` header to uniquely identify individual API requests; include this ID in error messages for better debugging.

### 0.16.0

* **Breaking**: Policy validation errors and warnings previously went to STDOUT.
  Now, they go to STDERR. Success messages still go to STDOUT.
* Added new `oso generate-types` command to generate rich SDK types from your
  policy for use in your application. Currently we support TypeScript, with
  other languages coming soon.
