NEW Major Release: Tendenci OSS v15.0

tendenci open source v15.x

Major Release: Tendenci v15.0 — Open Source Association Management Software (AMS)
Released March 30, 2024. As of October 8, 2025, Tendenci is currently on version 15.3.7.

A Heartfelt Thank You 🩵🐾`
First and foremost, we want to thank the GitHub community and all the developers contributing to the Tendenci project—your Tendenci project! Together, we continue to empower nonprofits and associations worldwide with open source freedom and transparency.

If you host your Tendenci website with us—great news: your site has already been upgraded. Yeii! 🤓🐾

Real People, Real Work 👩🏻‍💻🐾
It took a lot of planning and teamwork to cross the finish line for this major upgrade, and it wasn’t performed with Artificial Intelligence. It was done by real people—in particular, a strong programmer and developer who has passionately maintained the Tendenci repository for more than 15 years. Our team proudly celebrates our Chief Programmer, Jenny Qian, who continues to be a pillar of the Tendenci community.

Our Commitment to You 🐾
As always, we remain dedicated to providing our hosted clients with secure, scalable, and affordable managed hosting services in our AWS private cloud. Compared to other AMS platforms, our hosting stands out—
✅Security and privacy first

✅No per user or admin fees
✅No license fees
✅ Upgrades are included in the hosting plan that best suits your association

If your association is exploring a new Association Management System (AMS), we’d love to connect. Contact us for a free consultation and demo!

What’s New in Tendenci OSS v15.0?! 🙌

You can find the full list of software release and upgrade details in our CHANGELOG.md file.

Major Highlights
🤓 Dropped support for Django 3.2 LTS — Tendenci now requires Django 4.2 LTS.
🤓 Database updates — Minimum supported version raised: PostgreSQL 12+ required.
🤓 Base template upgrade — Tendenci now uses Font Awesome v6 by default (older Font-Awesome links should be updated).
🤓 URL configuration changes — Outdated url() imports replaced with re_path() in urls.py, in line with Django 4.x best practices.

For step-by-step upgrade instructions from v14.x to v15.0, visit our documentation on Read the Docs.

More in v15.x ✨

Tendenci v15.x is packed with exciting new features and enhancements—from the Newsletter module to Payments and Donations, Membership and Event Management updates, Directories module updates, and more!

Check out our recent version blog post for details:
🤩 Version bump 15.3 and 15.3.1
🤩 Version bump 15.3.4
🤩 Version bump 15.3.5

Remember to upgrade your Tendenci site to the latest version. Post your issues on GitHub for full support

tendenci logo
TendenciDEV Team

ctop – measure container cpu utilization like htop

Developers and programmers are frequently (ok, almost always) asked to accomplish the impossible yesterday. So this post is for the Tendenci developers and anyone else who uses docker containers, cgroups, jailed name spaces or similar.

Situation: You have a server that is spiking when it previously did not.

Let’s just assume you already have something like OSSEC and the ElasticSearch Stack  (ELK Stack) installed and are using a WAF/IDS/IPS endpoint. You are on top of your game. You see the errors from writing to the file system in dockers using the overlayfs file system (please no aufs, just don’t.) How to diagnose it:

“htop” is very good at showing you the issue. It (htop) is also frequently replaced by malware so double check yourself with “ctop” which most variants of common malware omit. Regardless, in this case, we can clearly see we have a stuck process. Enter “ctop” (open source like Tendenci at https://ctop.sh/ and on github at https://github.com/bcicen/ctop .

Running ctop you can quickly identify the container that is using the resources and then enter that container for further trouble shooting. “ctop” look like this:

The solution to a container over utilizing its resources is up to you and your developers. ctop is however a great way to zero in on at least which container is the problem.

In our case, a quick stop/start of the container removed the load and allowed us to do more debugging to figure out the cause. Tendenci is a mature and large codebase for association management (AMS Software) so it’s an iterative process to zero in on issues. And it can be done with the right tools.

Happy Container Utilization

This is what one of the Tendenci Cloud docker servers looked like after  debugging and killing the process causing the problem. “Yes” of course there is no replacement for “grep”. But with containers the debugging is a new art even for experienced programmers.

Hopefully this is helpful for all of the open source self-hosted Tendenci – the Open Source AMS self install developers using an AMS with 75+ languages out there.

And if you are a Python/Django developer – fork Tendenci open ams on github!

#peace