Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Changelog

## v1.3.1 (14.04.2025)

* Update readme and docs

## v1.3.0 (14.04.2025)

* Bump minimal Python version to 3.10
Expand Down
26 changes: 20 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ or Poetry:
poetry add csaps
```

The module depends only on NumPy and SciPy. Python 3.9 or above is supported.
The module depends only on NumPy and SciPy. Python 3.10 or above is supported.

## Simple Examples

Expand Down Expand Up @@ -97,28 +97,42 @@ plt.show()

More examples of usage and the full documentation can be found at https://csaps.readthedocs.io.

## Testing
# Development

We use pytest for testing.
We use Poetry to manage the project:

```
git clone https://github.com/espdev/csaps.git
cd csaps
poetry install
poetry install -E docs
```

Also, install pre-commit hooks:

```
poetry run pre-commit install
```

## Testing and Linting

We use pytest for testing and ruff/mypy for linting.
Use `poethepoet` to run tests and linters:

```
poetry run poe test
poetry run poe check
```

## Algorithm and Implementation

**csaps** Python package is inspired by MATLAB [CSAPS](https://www.mathworks.com/help/curvefit/csaps.html) function that is an implementation of
Fortran routine SMOOTH from [PGS](http://pages.cs.wisc.edu/~deboor/pgs/) (originally written by Carl de Boor).

Also the algothithm implementation in other languages:
Also, the algothithm implementation in other languages:

* [csaps-rs](https://github.com/espdev/csaps-rs) Rust ndarray/sprs based implementation
* [csaps-cpp](https://github.com/espdev/csaps-cpp) C++11 Eigen based implementation (incomplete)


## References

C. de Boor, A Practical Guide to Splines, Springer-Verlag, 1978.
Expand Down
2 changes: 1 addition & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
# -- Project information -----------------------------------------------------

project = 'csaps'
copyright = '2017-2023, Eugene Prilepin' # noqa
copyright = '2017-2025, Eugene Prilepin' # noqa
author = 'Eugene Prilepin'


Expand Down
2 changes: 1 addition & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ You can install and update csaps using pip:

The module depends only on NumPy and SciPy.

Python 3.6 or above is supported.
Python 3.10 or above is supported.

Content
-------
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[tool.poetry]
name = "csaps"
version = "1.3.0"
version = "1.3.1"
description = "Cubic spline approximation (smoothing)"
authors = ["Evgeny Prilepin <esp.home@gmail.com>"]
license = "MIT"
Expand Down