AllenNeuralDynamics / AllenNeuralDynamics/aind-metadata-mapper

Add support for Python 3.12 and 3.13 testing

Open
#263 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
0
Forks
2
Avg merge
1d 7h
Merged PRs (30d)
1

Description

## Feature Request
Add Python 3.12 and 3.13 to our GitHub Actions test matrix. Currently, we test against Python 3.9-3.11.

## Motivation
- Python 3.12 was released in October 2023
- Python 3.13 was released in ~December~ October 2024
- We should ensure compatibility with all currently released Python versions

## Known Issues to Address
1. Python 3.12 removes several deprecated unittest methods:
- `TestCase.assertEquals()` -> `assertEqual()`
- `TestCase.assertNotEquals()` -> `assertNotEqual()`
- `TestCase.assertAlmostEquals()` -> `assertAlmostEqual()`
- And others (see [Python 3.12 changelog](https://docs.python.org/3/whatsnew/3.12.html#unittest))

2. Our test suite currently uses some of these deprecated methods, particularly in:
- `tests/test_open_ephys/test_utils/test_behavior_utils.py`
- `tests/test_open_ephys/test_utils/test_stim_utils.py`

## Implementation Steps
1. Update `.github/workflows/run_dev_tests.yml` to include Python 3.12 and 3.13:
```yaml
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
```
2. Update deprecated unittest assertions
3. Test and fix any other compatibility issues that arise

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.