Otter-grader

Latest version: v6.0.4

Safety actively analyzes 693883 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 16

5.1.2

* Enabled the use of custom Jupyter kernels by enforcing the use of the `python3` kernel inside Otter grading containers per [706](https://github.com/ucbds-infra/otter-grader/issues/706)
* Fixed a bug that was preventing Otter from exiting when an error was thrown during notebook execution caused by the log capturing solution per [707](https://github.com/ucbds-infra/otter-grader/issues/707)
* Updated PDF upload logic to surface error statuses returned by the Gradescope API

5.1.1

* Fixed a bug in attempting to read the users from the submission metadata when validating the autograder notebook in Otter Assign per [695](https://github.com/ucbds-infra/otter-grader/issues/695)
* Added `__getstate__` to `test_case` to fix pickling bug for exception style tests per [696](https://github.com/ucbds-infra/otter-grader/issues/696)
* Added back remove cell ID patch to Otter Assign for notebooks with nbformat version < 4.5 per [701](https://github.com/ucbds-infra/otter-grader/issues/701)

5.1.0

* Removed patch that strips cell IDs from notebooks in Otter Assign per [677](https://github.com/ucbds-infra/otter-grader/issues/677)
* Added notebook force-save to R notebook assignments per [474](https://github.com/ucbds-infra/otter-grader/issues/474)
* Updated default version of `ottr` to v1.4.0
* Added a configuration to require students to acknowledge when a PDF of their notebook cannot be generated when using `Notebook.export` before exporting the zip file per [599](https://github.com/ucbds-infra/otter-grader/issues/599)
* Added a simple TCP socket server for receiving Otter's logs from the executed notebook to re-enable question logging during Otter Assign per [589](https://github.com/ucbds-infra/otter-grader/issues/589)
* Fixed recursive inclusion of files when a directory is in the list passed to the `files` argument of `Notebook.export` per [620](https://github.com/ucbds-infra/otter-grader/issues/620)
* Fixed the grader export cell failing due to warnings about frozen modules per [686](https://github.com/ucbds-infra/otter-grader/issues/686)

5.0.2

* Fixed local submission zip checking with `otter.Notebook` per [678](https://github.com/ucbds-infra/otter-grader/issues/678)

5.0.1

* Added `nbconvert` as a required dependency for non-WASM environments

5.0.0

* Converted all dependency management in the autograder configuration zip file to Conda per [501](https://github.com/ucbds-infra/otter-grader/issues/501)
* Removed deprecated Otter Assign format v0
* Disabled editing for question prompt cells in the notebooks generated by Otter Assign per [431](https://github.com/ucbds-infra/otter-grader/issues/431)
* Removed `ucbdsinfra/otter-grader` Docker image and made default image for Otter Grade `ubuntu:22.04` per [534](https://github.com/ucbds-infra/otter-grader/issues/534)
* Make `xeCJK` opt-in behavior for exporting notebooks via LaTeX per [548](https://github.com/ucbds-infra/otter-grader/issues/548)
* Convert from use of deprecated `PyPDF2` package to `pypdf`
* Add configuration to submit blank PDF to manual-grading Gradescope assignment if PDF generation fails per [551](https://github.com/ucbds-infra/otter-grader/issues/551)
* Removed the `after_execution` event from the plugin lifecycle
* Updated execution internals to use `nbconvert.preprocessors.ExecutePreprocessor` instead of the `exec` function to execute submissions per [604](https://github.com/ucbds-infra/otter-grader/issues/604)
* Deprecated the `variables` key of the assignment config in favor of `generate.serialized_variables`
* Enabled Otter Generate for all assignments created with Otter Assign
* Updated Otter Assign to use Otter Run to validate that all tests in the assignment pass, allowing tests to be run for R assignments as well as Python, per [427](https://github.com/ucbds-infra/otter-grader/issues/427)
* Allow Markdown cells to be used instead of raw cells for Otter Assign per [592](https://github.com/ucbds-infra/otter-grader/issues/592)
* Use Otter Grade CLI flags to update `otter_config.json` values in the grading container per [395](https://github.com/ucbds-infra/otter-grader/issues/395)
* Removed `linux/amd64` platform specification for Docker images in Otter Grade
* Updated Otter Assign to normalize notebooks before writing them with `nbformat.validator.normalize` per [658](https://github.com/ucbds-infra/otter-grader/issues/658)
* Added summary of assignment questions to Otter Assign logging per [564](https://github.com/ucbds-infra/otter-grader/issues/564)
* Converted to Mamba from Conda for package management in grading containers per [660](https://github.com/ucbds-infra/otter-grader/issues/660)
* Upgraded default Python version in grading containers from 3.7 to 3.9

Page 4 of 16

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.