Skip to content

Conversation

@MitchellAcoustics
Copy link
Owner

No description provided.

- Updated scatter_plot and density_plot functions to utilize the CircumplexPlot class with a more streamlined interface.
- Removed backend parameter and associated logic, simplifying the plotting process.
- Enhanced documentation for parameters and return types in plotting functions.
- Added support for returning Seaborn Objects plots.
- Refactored create_circumplex_subplots to accommodate new plotting structure.
- Updated tests to reflect changes in plotting functions and removed backend-specific tests.
- Improved test coverage for new features and functionalities in plotting.
- Updated scatter_plot and density_plot functions to utilize the CircumplexPlot class with a more streamlined interface.
- Removed backend parameter and associated logic, simplifying the plotting process.
- Enhanced documentation for parameters and return types in plotting functions.
- Added support for returning Seaborn Objects plots.
- Refactored create_circumplex_subplots to accommodate new plotting structure.
- Updated tests to reflect changes in plotting functions and removed backend-specific tests.
- Improved test coverage for new features and functionalities in plotting.
@MitchellAcoustics MitchellAcoustics self-assigned this May 2, 2025
@MitchellAcoustics MitchellAcoustics added the enhancement New feature or request label May 2, 2025
* WIP: Initial implementation of SPI feature

* Add initial tox configuration for testing optional dependencies

* Update optional dependencies system for SPI feature

* Add plan for simplifying optional dependencies system

* Add SPI development plans

* Update uv.lock

* refactor: simplify optional dependencies system

- Replace _optionals.py with direct try/except import patterns
- Move dependency checks to module __init__.py files
- Update main __init__.py to use direct imports with try/except
- Update conftest.py to use find_spec for dependency checking
- Update tests to handle missing dependencies
- Remove _optionals.py and related tests

* docs: update CONTRIBUTING.md to reflect simplified optional dependencies system

* test: simplify SPI test markers

- Remove duplicate skipif markers in test_r_dependencies.py
- Use single optional_deps marker consistently for all SPI tests
- Remove manual import check for rpy2 in favor of universal handling

* test: skip SPI tests during development phase

- Add pytestmark = pytest.mark.skip to all SPI test files
- Keep SPI development out of the test run until ready
- Allow tests to run without R dependencies

* refactor: update tox configuration and CI workflow

- Replace direct pytest calls with tox in GitHub Actions
- Improve test selection in tox environments with keyword filtering
- Update skip markers in test_basic.py to use pytest.mark.skip
- Update documentation in CONTRIBUTING.md

* ci: add spi-feature and simplify-optional-deps branches to test workflow triggers

* refactor: clean up import statements and improve dependency checks

* ci: update tox integration with GitHub Actions using tox-gh

* ci: simplify tox integration with GitHub Actions

* ci: fix tox installation and execution in GitHub Actions

* refactor: remove unused SPI module files and stubs in preparation for future development

* first pass simpler spi feature

* Refactor SPI module and enhance MultiSkewNorm functionality

- Updated imports in soundscapy/__init__.py to include new classes and functions from the SPI module.
- Modified MultiSkewNorm class in MSN.py to support fitting from both DataFrame and numpy array inputs, with improved error handling for data validation.
- Enhanced the sample method to allow for customizable sample sizes and ensured proper handling of existing sample data in plotting functions.
- Introduced new tests for MultiSkewNorm, including checks for R package availability and validation of parameter conversions between DirectParams and CentredParams.
- Removed unused code and comments to streamline the MSN.py file.
- Added necessary imports and error handling in _r_wrapper.py for R session initialization.
- Updated test cases to reflect changes in the MultiSkewNorm class and ensure robust testing of new features.

* Remove phase documentation for SPI feature development

- Deleted phase 1, phase 2, phase 3, and phase 4 plans for the SPI feature, which outlined the TDD approach, objectives, implementation plans, testing strategies, and development sequences.
- Removed the overarching SPI feature development plan that detailed goals, technical design, testing strategies, and future enhancements.

* Enhance SPI module: add skip_if_deps marker, implement ks2ds functionality, and update R dependency checks

* Remove unused imports from MSN.py and test_basic.py

* Add R installation and environment setup to GitHub workflows

* Enhance R environment setup in GitHub workflows: add PATH variable to R configuration

* Add success message for R installation in workflow files

* Reorganize R installation and environment setup in workflow: move steps to correct position and ensure proper execution

* Remove unnecessary '-p' flag from tox command in test workflow

* Update branch filters and enhance R installation in workflow: remove unnecessary branches and add libtirpc-dev

* Update documentation and improve structure in Soundscapy SPI module

- Updated copyright year in mkdocs.yml to 2025.
- Enhanced navigation structure in mkdocs.yml, adding new tutorial and API reference entries.
- Improved docstrings in DirectParams, CentredParams, MultiSkewNorm classes and related functions for clarity and consistency.
- Refined parameter descriptions and added type hints in functions across the SPI module.
- Enhanced error handling and type checking in functions related to R session management.
- Improved comments and documentation in ks2d.py for better understanding of statistical methods.

* Begin to integrate setup from ucl arc python-tooling

* Remove deprecated _version.py file and update .gitignore for cleaner project structure

* Revert "Remove deprecated _version.py file and update .gitignore for cleaner project structure"

This reverts commit 668cc7d.

* Remove deprecated _version.py file

* Add _version.py to .gitignore to exclude package version files

* Update dependencies and improve module documentation

- Added `setuptools-scm>=8.3.1` to development dependencies in `pyproject.toml` and `uv.lock`.
- Enhanced docstrings across multiple modules for clarity and consistency.
- Refactored import statements and improved organization in `__init__.py` files.

* Add GitHub issue forms schema and update tox.ini for dependency management

- Introduced a new JSON schema for GitHub issue forms to standardize issue template configurations.
- Updated tox.ini to utilize dependency groups for managing extras in test environments, improving clarity and maintainability.
- Adjusted test environment configurations to streamline the installation of dependencies based on specified groups.

* Begin integrating ucl arc pre-commit checks. (skipped pre-commit)

Apply universal formatting and linting to the codebase, including:
- Updated import statements in test files for consistency and clarity.
- Added comprehensive tests for logging functionality in `test_sspylogging.py`, covering setup, enabling/disabling logging, and format levels.
- Modified `tox.ini` for improved environment management and command clarity.

* Resolve pre-commit issues in surveys/ submodule (skip pre-commit)

* Resolve pre-commit errors for databases submodule (ignored pre-commit)

* Resolve pre-commit issue for data module

* Resolve pre-commit issues in spi submodule (skipping pre-commit hooks)

- Updated `pyproject.toml` to include `types-pyyaml` for type hinting support.
- Refined author information formatting in `pyproject.toml`.
- Improved code organization in `__init__.py` by using relative imports.
- Removed unused import `araus` from `databases/__init__.py`.
- Enhanced `MSN.py` with detailed docstrings and type hints for better clarity.
- Updated `spi/__init__.py` to use consistent module naming conventions.
- Refactored `_rsn_wrapper.py` to include type hints and improve function signatures.
- Added error handling and validation in `sample_mtsn` and `sample_msn` functions.
- Improved `ks2d.py` with ruff comments for better linting control.
- Updated `uv.lock` to reflect new dependency on `types-pyyaml`.

* Update markdownlint configuration, pre-commit hooks, and documentation formatting

I need to move on and not get bogged down with the linting errors. The linting pre-commit hook has been disabled for now. I will revisit this later. Full linting pre-commit hook disabled #114

* Refactor audio metrics and parallel processing modules to pass pre-commit checks

- Updated docstrings for clarity and consistency in `metrics.py` and `parallel_processing.py`.
- Enhanced type hints and added TypedDict for better parameter handling in `mosqito_metric_1ch`.
- Improved error handling and logging in various functions.
- Refactored function signatures to use keyword arguments for clarity.
- Adjusted imports to follow a consistent structure across modules.
- Added utility functions for path handling in a new `_utils.py` module.
- Updated tests to reflect changes in exception handling and function signatures.
- Removed unused `__init__.py` file in the plotting test directory.

* Add issue templates for bug reports, documentation, feature requests, and questions; configure workflows for documentation and linting

* Refactor documentation structure for audio and plotting modules; add backends documentation and improve module descriptions

* Update pre-commit configuration to exclude markdown files in docs and format plotting documentation for clarity

* setup to rename msn.py

* add msn.py back with lowercase name

* Refactor R environment setup in GitHub Actions workflow

* Add DESCRIPTION file for Soundscapy package R dependencies

* Update package version to 0.8.0 in R DESCRIPTION file

* Add R environment variable setup to GitHub Actions workflow

* Refactor R environment setup in GitHub Actions workflow to streamline variable configuration

* Refactor R dependencies installation in GitHub Actions workflow

* Add 'sn' package to R dependencies installation in GitHub Actions workflow

* Refactor R package availability check in tox.ini to use library() instead of conditional installation

* Update R 'sn' package availability check in tox.ini to ensure installation if not present

* Add container specification for test job in GitHub Actions workflow

* Revert GH action R setup and print debug info

* Fix R environment variable setup in GitHub Actions workflow

* Add debug action for R environment setup in GitHub Actions workflow

* Update R environment setup and package installation in workflow files

* Update R environment variable setup and comment out 'sn' package installation in tox.ini

* Update R package installation method and comment out unnecessary lines in workflow files

* Update R dependencies installation and comment out debug action in workflow

* Fix R dependencies installation syntax in workflow

* Working Actions setup

* tutorial run check
- Updated scatter_plot and density_plot functions to utilize the CircumplexPlot class with a more streamlined interface.
- Removed backend parameter and associated logic, simplifying the plotting process.
- Enhanced documentation for parameters and return types in plotting functions.
- Added support for returning Seaborn Objects plots.
- Refactored create_circumplex_subplots to accommodate new plotting structure.
- Updated tests to reflect changes in plotting functions and removed backend-specific tests.
- Improved test coverage for new features and functionalities in plotting.
- Updated scatter_plot and density_plot functions to utilize the CircumplexPlot class with a more streamlined interface.
- Removed backend parameter and associated logic, simplifying the plotting process.
- Enhanced documentation for parameters and return types in plotting functions.
- Added support for returning Seaborn Objects plots.
- Refactored create_circumplex_subplots to accommodate new plotting structure.
- Updated tests to reflect changes in plotting functions and removed backend-specific tests.
- Improved test coverage for new features and functionalities in plotting.
…or so.Plot()

- Implemented custom Mark classes for circumplex grids, quadrant labels, and point annotations in `marks.py`.
- Developed a function-based API for soundscape plots in `soundscape_functions.py`, including scatter, density, and joint plots.
- Created a matplotlib style sheet for consistent plot aesthetics in `soundscapy.mplstyle`.
- Added custom Stat components for calculating ISO coordinates from PAQ data in `stats.py`.
- Updated test suite for plotting functions to reflect new changes and ensure functionality.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant