Skip to content

Conversation

@matrixise
Copy link
Contributor

@matrixise matrixise commented Jul 2, 2025

Remove the support of the speakers because we don't use them in the site.

@ArcaneIRE
Copy link
Member

Hi @matrixise. Are you looking for another approval on this?

@matrixise
Copy link
Contributor Author

I'm going to update this branch with the latest changes from master, and then I'll request a review from @ArcaneIRE.

Copy link
Member

@ArcaneIRE ArcaneIRE left a comment

Choose a reason for hiding this comment

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

Thanks!


# Absolute filesystem path to the Django project directory:
PROJECT_ROOT = dirname(dirname(dirname(abspath(__file__))))
print(f'{PROJECT_ROOT=}')
Copy link
Member

Choose a reason for hiding this comment

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

Is this intentional?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Good catch, thank you and sorry for the delay!

matrixise and others added 9 commits January 11, 2026 09:26
- Resolved modify/delete conflicts by keeping speakers app deletion
- Updated CLAUDE.md to remove references to speakers/sessions functionality
- Merged latest changes from master including CI/CD improvements
- Removed speakers/sessions directory completely including remaining migrations
- Updated CLAUDE.md to remove speakers app documentation
- Updated README.md to remove speakers/sessions references
- Updated CONTRIBUTING.md with alternative examples
- Updated DEVELOPMENT.md to remove all speakers/sessions sections
- Removed speakers.html template
- Updated generate_sample_data.py to remove Speakers page creation
- Updated .claude/commands/commit.md examples to use alternative models
- Removed pycon:import:sessionize task
- Removed pycon:import:sessionize:json task

These management commands no longer exist after speakers app removal.
Creates core migration 0010_remove_speakers_tables.py that:
- Drops all database tables from the removed speakers app
- Handles table dependencies correctly (CASCADE)
- Drops tables in order: junction tables, then FK tables, then base tables
- Is irreversible (requires backup to rollback)

Tables dropped:
- speakers_session_speakers (M2M junction table)
- speakers_session
- speakers_speaker
- speakers_room
- speakers_talkspage
- speakers_speakerspage

This migration should be run on production before deploying the code
that removes the speakers app from INSTALLED_APPS.
Documents the complete deployment procedure including:
- Pre-deployment checklist
- Step-by-step migration instructions
- Rollback procedure
- Troubleshooting guide
- Post-deployment cleanup

This guide should be followed when deploying PR #161 to production.
Updates core.0010_remove_speakers_tables to:
- Detect database vendor (PostgreSQL vs SQLite)
- Use CASCADE only for PostgreSQL (not supported in SQLite)
- Temporarily disable foreign keys for SQLite
- Use f-strings for conditional CASCADE syntax

This allows the migration to run on both development (SQLite)
and production (PostgreSQL) environments.

Tested successfully on SQLite - all speakers tables removed.
- Added django:migrate:postgres task to run migrations on PostgreSQL in docker-compose
- Added django:showmigrations task to view migration status with PostgreSQL
- Both tasks use pythonie.settings.pgdev for PostgreSQL database configuration

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
- Update quote style to use double quotes consistently

Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
@matrixise matrixise closed this Jan 11, 2026
@matrixise matrixise deleted the remove-speakers branch January 11, 2026 10:12
@matrixise matrixise restored the remove-speakers branch January 11, 2026 10:14
@matrixise matrixise reopened this Jan 11, 2026
@matrixise matrixise merged commit e811ab8 into master Jan 11, 2026
5 checks passed
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