Skip to content

Commit 1fd863a

Browse files
PasteurBotdionhaefnerxalelax
authored
chore: 🚢 release v1.5.0 (#507)
This PR contains the generated changelog for the release v1.5.0. ⚠️ **Merging this PR will immediately trigger a new release**. ⚠️ To specify additional release notes, please edit this comment after the following line. --- ### Action required: migrate away from `Tesseract(url)` The `Tesseract(url)` constructor is now deprecated and will be removed in a future release. Calling it now raises an explicit deprecation warning. Update your code: ```python # Before t = Tesseract("http://localhost:8080") # After t = Tesseract.from_url("http://localhost:8080") ``` ### Highlights #### Profiling and tracing We've added two new `tesseract run` flags for debugging without modifying your code: ```bash tesseract run --tracing ... # structured logs of function inputs/outputs tesseract run --profiling ... # cProfile report after execution ``` #### Live log streaming Logs from inside a running Tesseract are now streamed in real time instead of buffered until completion, useful for long-running jobs. **CLI:** works automatically with `tesseract run`. **Python API** (`from_image` and `from_tesseract_api` only — not available with `from_url`): ```python t = Tesseract.from_image("my-image", stream_logs=True) # streams to stderr t = Tesseract.from_image("my-image", stream_logs=lambda msg: save(msg)) # custom handler ``` ### Things to look out for - **Tangent/cotangent validation (#493):** JVP/VJP calls now validate that tangent shapes match inputs and cotangents match the output schema. If you were passing mismatched arrays and relying on silent coercion, you'll now get an explicit error. - **Multiprocessing fixed (#488):** `multiprocessing` now works as expected within `tesseract_api.py`; local modules and `tesseract_api.py` are correctly importable in subprocesses. - **`/tmp` permissions (#506):** If your Tesseract writes to `/tmp` at build time (e.g., caching libraries), it will no longer fail at runtime; after runtime checks execute, we relax the permissions to `/tmp` and subfolders so other users can read/write there as well. See the changelog below for the full list of changes. --------- Co-authored-by: Dion Häfner <dion.haefner@simulation.science> Co-authored-by: Alessandro Angioi <alessandro.angioi@simulation.science>
1 parent 33f01a2 commit 1fd863a

1 file changed

Lines changed: 27 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,33 @@
22

33
All notable changes to this project will be documented in this file.
44

5+
## [1.5.0] - 2026-03-05
6+
7+
### Features
8+
9+
- Deprecate `Tesseract(url)` constructor in favor of `Tesseract.from_url` (#486)
10+
- Add live streaming of logs (#482)
11+
- Validation of (co)tangents (#493)
12+
- Add profile and trace mode, plus debugging guide (#484)
13+
14+
### Bug Fixes
15+
16+
- Better multiprocessing support from within `tesseract_api.py` (#488)
17+
- Ensure deprecration warning is actually visible (#487)
18+
- Ensure $HOME is set in Tesseracts and has appropriate permissions (#490)
19+
- Relax permissions on `/tmp` inside Tesseracts after build-time check (#506)
20+
21+
### Refactor
22+
23+
- Simplify runtime dependency handling (#495)
24+
- Make `stream_logs` a constructor-level parameter in Python SDK (#509)
25+
26+
### Documentation
27+
28+
- Add Fortran heat equation example (#477)
29+
- Tesseract init doesn't prompt if name not provided (#501)
30+
- Documentation mega issue sprint (#492)
31+
532
## [1.4.0] - 2026-02-20
633

734
### Features

0 commit comments

Comments
 (0)