Skip to content

v1.1?#8

Merged
akustiker merged 21 commits intogroupmm:mainfrom
sebastianrosenzweig:main
Jan 16, 2026
Merged

v1.1?#8
akustiker merged 21 commits intogroupmm:mainfrom
sebastianrosenzweig:main

Conversation

@sebastianrosenzweig
Copy link
Contributor

@sebastianrosenzweig sebastianrosenzweig commented Jan 7, 2026

Hi all,

I believe libf0 requires some maintenance to ensure compatibility with current and future software projects. The main issues are:

  • Outdated dependencies: The current dependencies are quite fixed and have become outdated, making it difficult to use libf0 alongside more up-to-date algorithms like real_time_swipe. For example, in tools like pytch, I could no longer use libf0 due to these limitations, which is unfortunate.
  • Support for Python versions: Python 3.7–3.9 have reached their end of life, so we should no longer support these versions.
  • Use of setup.py: The use of setup.py is outdated. We should switch to using pyproject.toml for defining dependencies.
  • Test CI: The current test CI setup needs some fixes and could be simplified.
  • Outdated author & year information: Some metadata, including author and year details, needs to be updated.

I have addressed all of these issues in this pull request. If you agree, we can use it as the foundation for a v1.1 release.

@stefan-balke, I’d be happy to include the changes from #5 if that makes sense.

Let me know your thoughts—I'm happy to assist further.

Please excuse my commit messages, let's squash them during merge...

@stefan-balke
Copy link
Collaborator

Thanks Sebastian!
@akustiker can you have a look? I think you also had some things in mind?

@stefan-balke
Copy link
Collaborator

@simonschwaer anything you want to add?

@akustiker
Copy link
Contributor

Hi all, and thanks, Sebastian, for taking care!

I did a quick test using uv run on my local machine (macOS) for different versions of Python (add a .python-version file) from 3.10 to 3.13, as you suggested.

I had to install libsndfile using brew install libsndfile.

Besides that, the demo_libf0.ipynb ran through with no problems.

Here are some general ideas and issues regarding this update that we should consider:

  • The README.md needs an update, not only for the newer Python version but also to provide a local installation guide alongside the pip install instructions, e.g., a uv run setup.
  • Is the pip install package up to date? It seems there is no workflow for PyPI here on this GitHub repository.
  • Also, I'm not sure about the documentation—whether there is a workflow and if everything is current.

I also have some other things in my notes that I will paste in a separate message, but these are more like "code improvements."

Thanks!
Peter

@akustiker
Copy link
Contributor

I looked through my notes and identified two potential issues that we could examine, perhaps after this PR: #9, #10

Best,
Peter

@sebastianrosenzweig
Copy link
Contributor Author

Hi @akustiker,

Thanks for taking a look!

  • libsndfile is not necessary anymore - I removed that dependency! :-)
  • I have updated the README. I wouldn't give instructions for a specific dependency manager. Nowadays, there are so many options (uv, conda, poetry, ...) and we can't support everything. Instead, I shortly explained the different dependency groups.
  • I added support for Python 3.14 - works! :-)
  • I regenerated the docs, they are up to date now.

About the PyPi workflow: I am not aware of any workflows, also I don't have access to the groupmm pypi account.
Who is responsible now for the merge, github release and pypi release?
From my perspective, the pull request is ready to merge now.

@akustiker
Copy link
Contributor

Hi @sebastianrosenzweig! This looks good to me! :-) I also tested the Python version, with $\pi \approx 3.14$, on my side, and it works!

I am not familiar with the PyPI setup, so maybe @stefan-balke, @simonschwaer, or @sstrahl can help? Additionally, regarding the merging process, I kindly ask one of you in GroupMM to approve it.

Best, Peter 👋

@sebastianrosenzweig
Copy link
Contributor Author

According to https://openmdao.org/newdocs/versions/latest/other_useful_docs/building_a_tool/release_process.html
we'd have to do the following steps:

  1. Merge
  2. Tag and release a new version on Github
  3. Follow the steps to make a pypi release

@akustiker akustiker self-requested a review January 16, 2026 15:30
Copy link
Contributor

@akustiker akustiker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's do this.

@akustiker akustiker merged commit 6964e78 into groupmm:main Jan 16, 2026
5 checks passed
@sebastianrosenzweig
Copy link
Contributor Author

Thank you, Peter! 🙏

@akustiker
Copy link
Contributor

I am about to figure out the PyPi stuff. ;-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants