# Tesseract Core v1.7.0 released

**URL:** <https://si-tesseract.discourse.group/t/tesseract-core-v1-7-0-released/121>\
**Category:** Release Notes\
**Created:** [April 17, 2026, 11:48am UTC](https://si-tesseract.discourse.group/t/tesseract-core-v1-7-0-released/121 "2026-04-17T11:48:49Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![dionhaefner](https://yyz1.discourse-cdn.com/flex009/user_avatar/si-tesseract.discourse.group/dionhaefner/32/13_2.png) [@dionhaefner](https://si-tesseract.discourse.group/u/dionhaefner)\
**Post date:** [April 17, 2026, 11:48am UTC](https://si-tesseract.discourse.group/t/tesseract-core-v1-7-0-released/121/1 "2026-04-17T11:48:49Z")

</div>

# Release v1.7.0

## Highlights

**Automatic Docker network creation** — You no longer need to manually run `docker network create` before using `--network`. If the network doesn’t exist, Tesseract creates it for you:

```bash
# Before: required two steps
docker network create my-net
tesseract serve my_tesseract --network my-net

# Now: just this
tesseract serve my_tesseract --network my-net

```

See the [updated networking docs](https://docs.pasteurlabs.ai/projects/tesseract-core/latest/content/using-tesseracts/advanced.html#networking-and-interactions-between-tesseracts) for more on multi-Tesseract communication patterns.

**Container resource leak fixed** — If you use `TesseractReference` with `type="image"` in a loop (e.g., during optimization), previous versions leaked containers because `atexit` prevented garbage collection. This is now fixed — containers are properly cleaned up when references go out of scope. If you had manual workarounds for this, you can remove them.

## Things to look out for

**Live logging now respects log level.** Container logs are now routed through `logger.info` instead of being printed directly to stderr. This means:

- At log level `info` or `debug`: no change in behavior.
- At `warning`: logs are re-emitted at warning severity only on error.
- At `error` or `critical`: logs are suppressed entirely.

If you run with a non-default log level and relied on always seeing live container output, adjust your log level accordingly.

**Subprocess logging is more reliable.** If you use non-Python runtimes (Julia, Fortran, etc.), logging no longer deadlocks when subprocesses write heavily to stdout. No action needed — this just works now.

## Other fixes

- Tracebacks are no longer hard-wrapped, fixing truncated output in CI/cloud environments (#539)
- False-positive “image not found” errors on Docker Desktop in resource-saving mode are resolved (#535)
- HTTP keep-alive timeouts are now retried automatically (#543)

## What’s Changed

### Features

- Automatically create network specified via --network option if it does not exist (#544)

### Bug Fixes

- Don’t hard wrap tracebacks (#539)
- False-positive ‘image not found’ errors when docker is in resource saving mode (#535)
- Resource leak when using `TesseractReference` + more fault tolerance when HTTP sessions time out (#543)
- Make logging from subprocesses more reliable (#551)

### Refactor

- Thread live logging through `logger.info` instead of printing directly to stderr (#536)

### Documentation

- Add performance guide (#508)
- Document how to use `tesseract serve --network` parameter (#530)
- Update rocket fin example to recent versions of Tesseract (#541)

**Full diff** : [Comparing v1.6.0...v1.7.0 · pasteurlabs/tesseract-core · GitHub](https://github.com/pasteurlabs/tesseract-core/compare/v1.6.0...v1.7.0)
