Commit graph

5252 commits

Author SHA1 Message Date
Claude
ca6e157a91
Add Todos, Projects, and Contexts web pages
- Created todos.html template showing user's todos with state badges
- Created projects.html template showing project cards in grid layout
- Created contexts.html template showing context cards
- Added ShowTodos, ShowProjects, ShowContexts handlers to web_handler.go
- Added routes for /todos, /projects, /contexts to main.go
- All pages show empty state when no data exists
- Navigation menu links now work without 404 errors

All pages are functional and display user-specific data from the database.
2025-11-05 12:54:47 +00:00
Claude
f51dccb228
Make login error message dismissible with X button and confirmation dialog 2025-11-05 12:40:45 +00:00
Claude
29fd18839f
Add form submission debugging to login page 2025-11-05 12:36:32 +00:00
Claude
90234ee58b
Add error message display to login page 2025-11-05 12:17:23 +00:00
Claude
1e0cfe5270
Add embedded web UI with dark/light mode support
Features:
- Single binary deployment with embedded HTML templates
- Dark and light mode theme switcher with localStorage persistence
- Server-side rendered Go templates
- Clean, modern UI with CSS variables for theming
- Login page with default admin credentials hint
- Dashboard with statistics and quick actions
- Admin user management page
- Session management via HTTP-only cookies

Implementation:
- Created web templates in cmd/tracks/web/templates/
  - base.html: Main layout with navigation and theme toggle
  - login.html: Login form with first-time user hint
  - dashboard.html: Main dashboard with stats cards and recent todos
  - admin_users.html: User management with create user modal
- Added web_handler.go for serving web UI
  - ShowLogin: Renders login page
  - HandleLogin: Processes login form, sets cookie, redirects to dashboard
  - HandleLogout: Clears cookie, redirects to login
  - ShowDashboard: Shows personalized dashboard with stats
  - ShowAdminUsers: Admin-only user management page
  - HandleCreateUser: Processes user creation form
- Updated main.go to embed templates using //go:embed
- Added web routes before API routes:
  - GET/POST /login (public)
  - GET /logout (public)
  - GET / and /dashboard (authenticated)
  - GET/POST /admin/users (authenticated + admin)

UI Features:
- Responsive design with mobile support
- Theme persistence across sessions
- Clean card-based layout
- Statistics dashboard (active todos, projects, contexts, completed today)
- Quick action buttons
- Admin badge for admin users
- Navigation menu with conditional admin links

Security:
- HttpOnly cookies for session tokens
- Admin middleware for protected routes
- CSRF protection via form POST
- Password fields properly masked

No external dependencies - all CSS and JS inline in templates.
Everything compiles into single binary.

Tested:
- Login page renders correctly ✓
- Login form submits and creates session ✓
- Dashboard displays with user info ✓
- Theme toggle functionality included ✓
- Admin user sees admin links ✓
2025-11-05 11:56:31 +00:00
Claude
4e9e0b4efa
Add default admin user and admin-only user creation
Features added:
- Automatic creation of default admin user on first startup (login: admin, password: admin)
- Admin-only endpoint POST /api/admin/users for creating new users
- Admin users can set is_admin flag when creating users
- Non-admin users are blocked from accessing admin endpoints

Implementation:
- Added CreateDefaultAdmin() function in internal/database/database.go
  - Checks if any users exist, creates admin only if database is empty
  - Admin user: login "admin", password "admin", is_admin true
- Added CreateUser() method to auth service for admin user creation
- Added CreateUser() handler to auth handler
- Added /api/admin/users endpoint with AuthMiddleware + AdminMiddleware
- Updated README_GOLANG.md with:
  - Default admin credentials
  - Instructions for creating additional users
  - Admin API documentation

Security:
- Default admin password should be changed after first login
- AdminMiddleware ensures only users with is_admin=true can access admin routes
- Non-admin users receive 403 Forbidden when accessing admin endpoints

Tested:
- Default admin creation on startup ✓
- Admin login with default credentials ✓
- Admin can create new users ✓
- New users can login ✓
- Non-admin users blocked from admin endpoints ✓
2025-11-05 11:35:36 +00:00
Claude
65f1265555
Simplify database support to SQLite only
Removed PostgreSQL and MySQL support to reduce complexity:
- Removed postgres and mysql drivers from go.mod
- Simplified database.Initialize() to only use SQLite
- Simplified DatabaseConfig struct (removed Driver, Host, Port, User, Password, SSLMode)
- Removed GetDSN() method from config
- Removed --db CLI flag (only --db-name remains for specifying SQLite file path)
- Updated .env.example to remove MySQL/PostgreSQL options
- Updated README_GOLANG.md to reflect SQLite-only support
- Ran go mod tidy to clean up dependencies

This makes the application simpler to deploy and maintain, with no
external database dependencies required.
2025-11-05 11:23:40 +00:00
Claude
4aaa889634 Add CLI flags for port, host, and database configuration
- Added --port flag to override SERVER_PORT
- Added --host flag to override SERVER_HOST
- Added --db flag to override DB_DRIVER
- Added --db-name flag to override DB_NAME

CLI flags take precedence over environment variables for easier
deployment without Docker.
2025-11-05 11:14:54 +00:00
Claude
9b0428638c
Fix polymorphic tagging and add test script
This commit fixes the tag loading issue and adds comprehensive testing.

## Bug Fix: Polymorphic Tag Loading

Fixed issue with many-to-many tag relationships not working correctly with
polymorphic associations. The problem was that GORM doesn't support using
`many2many` with polymorphic relationships directly.

**Changes:**
- Modified `internal/models/todo.go`: Changed Tags field to use `gorm:"-"`
  to skip GORM handling
- Modified `internal/models/recurring_todo.go`: Same fix for recurring todos
- Modified `internal/services/todo_service.go`: Added `loadTodoTags()` helper
  function to manually load tags through the taggings join table

**How it works now:**
1. Tags are no longer automatically loaded by GORM
2. Manual loading via JOIN query: `tags JOIN taggings ON tag_id WHERE taggable_id AND taggable_type`
3. Called after loading todos in both `GetTodo()` and `GetTodos()`

## Testing

Added `test_api.sh` - comprehensive integration test script that tests:
1. Health check
2. User registration
3. Authentication
4. Context creation
5. Project creation
6. Todo creation with tags
7. Listing todos with filters
8. Completing todos
9. Project statistics

All tests pass successfully!

## Files Changed

- `internal/models/todo.go`: Fix tag relationship
- `internal/models/recurring_todo.go`: Fix tag relationship
- `internal/services/todo_service.go`: Add manual tag loading
- `test_api.sh`: New integration test script
- `go.sum`: Updated with exact dependency versions
2025-11-05 10:59:26 +00:00
Claude
f0eb4bdef5
Rewrite Tracks application in Golang
This commit introduces a complete rewrite of the Tracks GTD application
in Go (Golang), providing a modern, performant alternative to the Ruby
on Rails implementation.

## Architecture & Technology Stack

- Language: Go 1.21+
- Web Framework: Gin
- ORM: GORM with SQLite/MySQL/PostgreSQL support
- Authentication: JWT with bcrypt password hashing
- Clean Architecture: Separated models, services, handlers, and middleware

## Implemented Features

### Core Models
- User: Authentication and user management
- Context: GTD contexts (@home, @work, etc.)
- Project: Project grouping and tracking
- Todo: Task management with state machine (active, completed, deferred, pending)
- Tag: Flexible tagging system with polymorphic associations
- Dependency: Todo dependencies with circular dependency detection
- Preference: User preferences and settings
- Note: Project notes
- Attachment: File attachment support (model only)
- RecurringTodo: Recurring task template (model only)

### API Endpoints

**Authentication:**
- POST /api/auth/login - User login
- POST /api/auth/register - User registration
- POST /api/auth/logout - User logout
- GET /api/me - Get current user

**Todos:**
- GET /api/todos - List todos with filtering
- POST /api/todos - Create todo
- GET /api/todos/:id - Get todo details
- PUT /api/todos/:id - Update todo
- DELETE /api/todos/:id - Delete todo
- POST /api/todos/:id/complete - Mark as completed
- POST /api/todos/:id/activate - Mark as active
- POST /api/todos/:id/defer - Defer to future date
- POST /api/todos/:id/dependencies - Add dependency
- DELETE /api/todos/:id/dependencies/:successor_id - Remove dependency

**Projects:**
- GET /api/projects - List projects
- POST /api/projects - Create project
- GET /api/projects/:id - Get project details
- PUT /api/projects/:id - Update project
- DELETE /api/projects/:id - Delete project
- POST /api/projects/:id/complete - Complete project
- POST /api/projects/:id/activate - Activate project
- POST /api/projects/:id/hide - Hide project
- POST /api/projects/:id/review - Mark as reviewed
- GET /api/projects/:id/stats - Get project statistics

**Contexts:**
- GET /api/contexts - List contexts
- POST /api/contexts - Create context
- GET /api/contexts/:id - Get context details
- PUT /api/contexts/:id - Update context
- DELETE /api/contexts/:id - Delete context
- POST /api/contexts/:id/hide - Hide context
- POST /api/contexts/:id/activate - Activate context
- POST /api/contexts/:id/close - Close context
- GET /api/contexts/:id/stats - Get context statistics

### Business Logic

**Todo State Management:**
- Active: Ready to work on
- Completed: Finished tasks
- Deferred: Future actions (show_from date)
- Pending: Blocked by dependencies

**Dependency Management:**
- Create blocking relationships between todos
- Automatic state transitions when blocking todos complete
- Circular dependency detection
- Automatic unblocking when prerequisites complete

**Tag System:**
- Polymorphic tagging for todos and recurring todos
- Automatic tag creation on first use
- Tag cloud support

**Project & Context Tracking:**
- State management (active, hidden, closed/completed)
- Statistics and health indicators
- Review tracking for projects

### Infrastructure

**Configuration:**
- Environment-based configuration
- Support for SQLite, MySQL, and PostgreSQL
- Configurable JWT secrets and token expiry
- Flexible server settings

**Database:**
- GORM for ORM
- Automatic migrations
- Connection pooling
- Multi-database support

**Authentication & Security:**
- JWT-based authentication
- Bcrypt password hashing
- Secure cookie support
- Token refresh mechanism

**Docker Support:**
- Multi-stage Dockerfile for optimized builds
- Docker Compose with PostgreSQL
- Volume mounting for data persistence
- Production-ready configuration

## Project Structure

```
cmd/tracks/              # Application entry point
internal/
  config/               # Configuration management
  database/             # Database setup and migrations
  handlers/             # HTTP request handlers
  middleware/           # Authentication middleware
  models/              # Database models
  services/            # Business logic layer
```

## Documentation

- README_GOLANG.md: Comprehensive documentation
- .env.example: Configuration template
- API documentation included in README
- Code comments for complex logic

## Future Work

The following features from the original Rails app are not yet implemented:
- Recurring todo instantiation logic
- Email integration (Mailgun/CloudMailin)
- Advanced statistics and analytics
- Import/Export functionality (CSV, YAML, XML)
- File upload handling for attachments
- Mobile views
- RSS/Atom feeds
- iCalendar export

## Benefits Over Rails Version

- Performance: Compiled binary, lower resource usage
- Deployment: Single binary, no runtime dependencies
- Type Safety: Compile-time type checking
- Concurrency: Better handling of concurrent requests
- Memory: Lower memory footprint
- Portability: Easy cross-platform compilation

## Testing

The code structure supports testing, though tests are not yet implemented.
Future work includes adding unit and integration tests.
2025-11-05 10:46:59 +00:00
Matt Rogers
6613d33f10
Merge pull request #3191 from TracksApp/dependabot/bundler/rubocop-1.81.7
Some checks failed
Build latest / Build latest (push) Has been cancelled
Bump rubocop from 1.81.6 to 1.81.7
2025-11-02 18:41:34 -06:00
dependabot[bot]
4aeb767bd8
Bump rubocop from 1.81.6 to 1.81.7
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.81.6 to 1.81.7.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.81.6...v1.81.7)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.81.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-11-03 00:01:34 +00:00
Matt Rogers
6bd264baec
Merge pull request #3186 from TracksApp/dependabot/bundler/rubocop-1.81.6
Some checks failed
Build latest / Build latest (push) Has been cancelled
Bump rubocop from 1.81.1 to 1.81.6
2025-10-22 15:30:46 -05:00
Matt Rogers
4201e13d69
Merge pull request #3185 from TracksApp/dependabot/bundler/acts_as_list-1.2.6
Bump acts_as_list from 1.2.4 to 1.2.6
2025-10-22 15:30:38 -05:00
Matt Rogers
9978d1790a
Merge pull request #3184 from TracksApp/dependabot/bundler/jquery-rails-4.6.1
Bump jquery-rails from 4.6.0 to 4.6.1
2025-10-22 15:30:10 -05:00
dependabot[bot]
00d3887712
Bump rubocop from 1.81.1 to 1.81.6
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.81.1 to 1.81.6.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.81.1...v1.81.6)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.81.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-22 00:01:35 +00:00
dependabot[bot]
276c46fb82
Bump acts_as_list from 1.2.4 to 1.2.6
Bumps [acts_as_list](https://github.com/brendon/acts_as_list) from 1.2.4 to 1.2.6.
- [Changelog](https://github.com/brendon/acts_as_list/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brendon/acts_as_list/compare/v1.2.4...v1.2.6)

---
updated-dependencies:
- dependency-name: acts_as_list
  dependency-version: 1.2.6
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-22 00:01:23 +00:00
dependabot[bot]
c953897d4f
Bump jquery-rails from 4.6.0 to 4.6.1
Bumps [jquery-rails](https://github.com/rails/jquery-rails) from 4.6.0 to 4.6.1.
- [Changelog](https://github.com/rails/jquery-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rails/jquery-rails/compare/v4.6.0...v4.6.1)

---
updated-dependencies:
- dependency-name: jquery-rails
  dependency-version: 4.6.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-22 00:01:07 +00:00
Jyri-Petteri Paloposki
27f01c11d3
Merge pull request #3178 from TracksApp/dependabot/bundler/stripe-17.0.0
Some checks failed
Build latest / Build latest (push) Has been cancelled
Bump stripe from 16.0.0 to 17.0.0
2025-10-15 11:45:32 +03:00
Matt Rogers
972b2d1187
Merge pull request #3179 from TracksApp/dependabot/bundler/rack-3.2.3
Some checks failed
Build latest / Build latest (push) Has been cancelled
Bump rack from 3.2.2 to 3.2.3
2025-10-10 14:43:50 -05:00
dependabot[bot]
7e9723735f
Bump rack from 3.2.2 to 3.2.3
Bumps [rack](https://github.com/rack/rack) from 3.2.2 to 3.2.3.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v3.2.2...v3.2.3)

---
updated-dependencies:
- dependency-name: rack
  dependency-version: 3.2.3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-10 17:44:33 +00:00
dependabot[bot]
f4550386d2
Bump stripe from 16.0.0 to 17.0.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 16.0.0 to 17.0.0.
- [Release notes](https://github.com/stripe/stripe-ruby/releases)
- [Changelog](https://github.com/stripe/stripe-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stripe/stripe-ruby/compare/v16.0.0...v17.0.0)

---
updated-dependencies:
- dependency-name: stripe
  dependency-version: 17.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-10 00:01:17 +00:00
Matt Rogers
bf33a3b6f1
Merge pull request #3177 from TracksApp/dependabot/bundler/rack-3.2.2
Some checks failed
Build latest / Build latest (push) Has been cancelled
2025-10-07 13:29:56 -05:00
dependabot[bot]
e0d3fdabcc
Bump rack from 3.2.1 to 3.2.2
Bumps [rack](https://github.com/rack/rack) from 3.2.1 to 3.2.2.
- [Release notes](https://github.com/rack/rack/releases)
- [Changelog](https://github.com/rack/rack/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rack/rack/compare/v3.2.1...v3.2.2)

---
updated-dependencies:
- dependency-name: rack
  dependency-version: 3.2.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-07 17:44:14 +00:00
Jyri-Petteri Paloposki
17bbddf0aa
Merge pull request #3176 from TracksApp/dependabot/bundler/stripe-16.0.0
Some checks failed
Build latest / Build latest (push) Has been cancelled
Bump stripe from 15.5.0 to 16.0.0
2025-10-05 13:28:11 +03:00
Jyri-Petteri Paloposki
3171ac3730
Merge pull request #3175 from TracksApp/dependabot/bundler/rubocop-1.81.1
Bump rubocop from 1.78.0 to 1.81.1
2025-10-05 13:28:00 +03:00
dependabot[bot]
0441f66961
Bump stripe from 15.5.0 to 16.0.0
Bumps [stripe](https://github.com/stripe/stripe-ruby) from 15.5.0 to 16.0.0.
- [Release notes](https://github.com/stripe/stripe-ruby/releases)
- [Changelog](https://github.com/stripe/stripe-ruby/blob/master/CHANGELOG.md)
- [Commits](https://github.com/stripe/stripe-ruby/compare/v15.5.0...v16.0.0)

---
updated-dependencies:
- dependency-name: stripe
  dependency-version: 16.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-01 00:01:40 +00:00
dependabot[bot]
8e6b7f2ad7
Bump rubocop from 1.78.0 to 1.81.1
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.78.0 to 1.81.1.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.78.0...v1.81.1)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-version: 1.81.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-29 00:01:45 +00:00
Jyri-Petteri Paloposki
e5b5327b5b
Merge pull request #3154 from TracksApp/dependabot/bundler/activestorage-7.1.5.2
Some checks failed
Build latest / Build latest (push) Has been cancelled
Bump activestorage from 7.1.5.1 to 7.1.5.2
2025-09-24 11:12:52 +03:00
dependabot[bot]
ebb57550a2
Bump activestorage from 7.1.5.1 to 7.1.5.2
Bumps [activestorage](https://github.com/rails/rails) from 7.1.5.1 to 7.1.5.2.
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v8.0.2.1/activestorage/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.1.5.1...v7.1.5.2)

---
updated-dependencies:
- dependency-name: activestorage
  dependency-version: 7.1.5.2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-24 08:04:14 +00:00
Jyri-Petteri Paloposki
f760c3ba16
Merge pull request #3171 from TracksApp/dependabot/bundler/solargraph-0.57.0
Bump solargraph from 0.56.0 to 0.57.0
2025-09-24 11:02:49 +03:00
Jyri-Petteri Paloposki
4789f85e74
Merge pull request #3170 from TracksApp/dependabot/bundler/sqlite3-2.7.4
Bump sqlite3 from 2.7.3 to 2.7.4
2025-09-24 11:02:36 +03:00
Jyri-Petteri Paloposki
d2901f3ef3
Merge pull request #3172 from TracksApp/dependabot/bundler/spring-4.4.0
Bump spring from 4.3.0 to 4.4.0
2025-09-24 11:02:25 +03:00
Jyri-Petteri Paloposki
a89c4e1b59
Merge pull request #3173 from TracksApp/dependabot/bundler/puma-7.0.4
Bump puma from 6.6.0 to 7.0.4
2025-09-24 11:02:13 +03:00
dependabot[bot]
0e2d83be3c
Bump puma from 6.6.0 to 7.0.4
Bumps [puma](https://github.com/puma/puma) from 6.6.0 to 7.0.4.
- [Release notes](https://github.com/puma/puma/releases)
- [Changelog](https://github.com/puma/puma/blob/master/History.md)
- [Commits](https://github.com/puma/puma/compare/v6.6.0...v7.0.4)

---
updated-dependencies:
- dependency-name: puma
  dependency-version: 7.0.4
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-24 00:02:05 +00:00
dependabot[bot]
f240b309c9
Bump spring from 4.3.0 to 4.4.0
Bumps [spring](https://github.com/rails/spring) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/rails/spring/releases)
- [Changelog](https://github.com/rails/spring/blob/main/CHANGELOG.md)
- [Commits](https://github.com/rails/spring/compare/v4.3.0...v4.4.0)

---
updated-dependencies:
- dependency-name: spring
  dependency-version: 4.4.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-24 00:01:31 +00:00
dependabot[bot]
74acc8a2b9
Bump solargraph from 0.56.0 to 0.57.0
Bumps [solargraph](https://github.com/castwide/solargraph) from 0.56.0 to 0.57.0.
- [Changelog](https://github.com/castwide/solargraph/blob/master/CHANGELOG.md)
- [Commits](https://github.com/castwide/solargraph/compare/v0.56.0...v0.57.0)

---
updated-dependencies:
- dependency-name: solargraph
  dependency-version: 0.57.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-24 00:01:19 +00:00
dependabot[bot]
e75214e8c2
Bump sqlite3 from 2.7.3 to 2.7.4
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.7.3 to 2.7.4.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.7.3...v2.7.4)

---
updated-dependencies:
- dependency-name: sqlite3
  dependency-version: 2.7.4
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-24 00:01:07 +00:00
Jyri-Petteri Paloposki
2f2b13fe7a
Merge pull request #3158 from TracksApp/dependabot/bundler/pg-1.6.2
Bump pg from 1.5.9 to 1.6.2
2025-09-23 18:24:52 +03:00
Jyri-Petteri Paloposki
59e6126741
Merge pull request #3166 from TracksApp/dependabot/bundler/rexml-3.4.4
Bump rexml from 3.4.1 to 3.4.4
2025-09-23 18:21:20 +03:00
Jyri-Petteri Paloposki
4addee5593
Merge pull request #3169 from TracksApp/dependabot/bundler/mysql2-0.5.7
Bump mysql2 from 0.5.6 to 0.5.7
2025-09-23 16:19:03 +03:00
dependabot[bot]
1bb9ba8b45
Bump mysql2 from 0.5.6 to 0.5.7
Bumps [mysql2](https://github.com/brianmario/mysql2) from 0.5.6 to 0.5.7.
- [Release notes](https://github.com/brianmario/mysql2/releases)
- [Commits](https://github.com/brianmario/mysql2/compare/0.5.6...0.5.7)

---
updated-dependencies:
- dependency-name: mysql2
  dependency-version: 0.5.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-23 00:01:13 +00:00
Jyri-Petteri Paloposki
05f7daaa56
Merge pull request #3168 from TracksApp/dependabot/bundler/factory_bot_rails-6.5.1
Bump factory_bot_rails from 6.5.0 to 6.5.1
2025-09-22 16:18:25 +03:00
dependabot[bot]
3857355bf3
Bump factory_bot_rails from 6.5.0 to 6.5.1
Bumps [factory_bot_rails](https://github.com/thoughtbot/factory_bot_rails) from 6.5.0 to 6.5.1.
- [Release notes](https://github.com/thoughtbot/factory_bot_rails/releases)
- [Changelog](https://github.com/thoughtbot/factory_bot_rails/blob/main/NEWS.md)
- [Commits](https://github.com/thoughtbot/factory_bot_rails/compare/v6.5.0...v6.5.1)

---
updated-dependencies:
- dependency-name: factory_bot_rails
  dependency-version: 6.5.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-22 00:01:17 +00:00
Jyri-Petteri Paloposki
97220798db
Merge pull request #3143 from TracksApp/dependabot/bundler/nokogiri-1.18.9
Some checks failed
Build latest / Build latest (push) Has been cancelled
Bump nokogiri from 1.18.8 to 1.18.9
2025-09-20 18:18:25 +03:00
Jyri-Petteri Paloposki
bebdcb233c
Merge pull request #3142 from TracksApp/dependabot/bundler/thor-1.4.0
Bump thor from 1.3.2 to 1.4.0
2025-09-20 18:18:09 +03:00
Jyri-Petteri Paloposki
52c9a50f16
Merge pull request #3141 from TracksApp/dependabot/bundler/sqlite3-2.7.3
Bump sqlite3 from 2.7.2 to 2.7.3
2025-09-20 18:17:55 +03:00
Jyri-Petteri Paloposki
6e0cb8125d
Merge pull request #3149 from TracksApp/dependabot/bundler/rack-mini-profiler-4.0.1
Bump rack-mini-profiler from 4.0.0 to 4.0.1
2025-09-20 18:17:41 +03:00
Jyri-Petteri Paloposki
1d483148d7
Merge pull request #3156 from TracksApp/dependabot/bundler/stripe-15.5.0
Bump stripe from 15.3.0 to 15.5.0
2025-09-20 18:16:41 +03:00
Jyri-Petteri Paloposki
d397e7be97
Merge pull request #3161 from bluewings1211/add_zh_TW_support
Add Traditional Chinese (Taiwan) localization support
2025-09-20 14:32:15 +03:00