Skip to content

v2.6.0 - Subject Mapping Management & Settings Restructure

Choose a tag to compare

@mambucodev mambucodev released this 27 Jan 22:35
· 136 commits to main since this release

What's New in v2.6.0

This release enhances ClasseViva integration with a subject mapping management interface and completely restructures the Settings page for better organization and usability.

✨ New Features

Subject Mapping Management

  • New Dialog: Added ManageSubjectMappingsDialog for viewing and editing existing ClasseViva → VoteTracker subject mappings
  • Easy Access: New "Manage Subject Mappings" button in Settings > ClasseViva section
  • Full Control: Edit, delete individual mappings, or clear all at once
  • Smart Workflow: Automatically creates VoteTracker subjects when mapping to non-existent ones
  • Helpful UI: Shows mapping count and guidance messages

Settings Page Overhaul

  • No More Tabs: Replaced confusing tab-based layout with organized sections on a single scrollable page
  • Clear Organization: Four main sections:
    • General: Language, school years management, current term display
    • Data Management: Import/export, database location, clear data
    • ClasseViva Integration: All CV-related settings in one place
    • Help & Info: Keyboard shortcuts and version display
  • Better UX: More efficient use of space, better visual hierarchy, easier navigation
  • Compact Layout: Related settings grouped together to minimize scrolling

📚 Documentation

CLAUDE.md Development Guide

  • Comprehensive Documentation: Added complete development guide for Claude Code
  • Project Overview: Detailed feature list and architecture explanation
  • File Documentation: Every file documented with classes, methods, and purposes
  • Development Workflow: Versioning guidelines, commit standards, release process
  • Quick Reference: Fast lookup for classes, functions, and data structures
  • Best Practices: Development tips, testing guidelines, and common tasks

🔧 Changes

  • Settings page now shows current term in General section
  • Version number displayed in Help & Info section
  • ClasseViva import workflow improved with easier access to mapping management
  • All settings accessible without tab switching

🐛 Bug Fixes

  • Fixed potential issue with subject mapping not being visible to users
  • Improved settings page responsiveness on smaller screens with scrollable layout

📦 Technical Details

New Files:

  • CLAUDE.md - Comprehensive development guide

Modified Files:

  • src/votetracker/dialogs.py:

    • Added ManageSubjectMappingsDialog class (195 lines)
    • Table view of all ClasseViva→VoteTracker mappings
    • Inline editing with dropdown selectors
    • Delete individual or clear all mappings
  • src/votetracker/pages/settings.py:

    • Complete UI restructure from tabs to sections
    • Added scrollable container for better responsiveness
    • Reorganized 180 lines of layout code
    • Added term and version display

Version Updates:

  • pyproject.toml: 2.5.0 → 2.6.0
  • src/votetracker/__init__.py: 2.5.0 → 2.6.0
  • scripts/PKGBUILD: 2.5.0 → 2.6.0

📥 Installation

Arch Linux:

cd scripts && makepkg -si

pip:

pip install --upgrade votetracker

From source:

git clone https://github.com/mambucodev/votetracker.git
cd votetracker
pip install .
votetracker

🔗 Commits in this Release

  • 4df1e6b - feat: Add ManageSubjectMappingsDialog for viewing/editing ClasseViva mappings
  • 95b9cfd - feat: Restructure Settings page from tabs to organized sections
  • 13f5453 - docs: Add comprehensive CLAUDE.md development guide
  • 24114e5 - chore: Bump version to 2.6.0
  • 24f6412 - chore: Update PKGBUILD version to 2.6.0

Full Changelog: v2.5.0...v2.6.0