You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: resolve stats logging and vendor directory conflicts
Fix multiple issues with stats command and development workflow by
addressing logging permissions and Go vendoring conflicts.
Changes:
- Rename vendor/js to assets/js to avoid Go vendor detection
- Prevents "inconsistent vendoring" errors in task dev
- Updates all references in main.go, index.html, Taskfile, Dockerfile
- JavaScript assets now in assets/js/ (embedded via go:embed)
- Fix stats command logging in Docker environments
- Convert logCommand to server method using s.logfile
- Fixes disconnect between global logFile and server.logfile
- Add directory auto-creation with proper error handling
- Add startup logging message showing logfile path
- Configure Air for live development
- Add .air.toml with -mod=mod flag for Go builds
- Exclude assets/ directory from hot reload watching
- Fix Docker volume permissions for distroless (UID 65532)
- Add chmod 777 logs to docker-run and docker-compose-up tasks
- Document permission requirements in README and docker-compose.yaml
- Add troubleshooting section for Coolify deployments
- Update .gitignore
- Add logs/, build-errors.log, access.log
- Ensure Air and runtime files are ignored
Fixes:
- Stats command now works in Docker/docker-compose
- task dev no longer fails with vendor directory errors
- Proper error messages when log file doesn't exist yet
- Automatic log directory creation with proper permissions
Security:
- Maintains distroless security (no shell, UID 65532)
- Documents permission requirements clearly
- Auto-fixes permissions in task commands
_=json.NewEncoder(w).Encode(execResp{Output: fmt.Sprintf("stats: no activity logged yet\nLog file: %s\nStatistics will be available once files are shared, downloaded, or checksummed.", s.logfile)})
0 commit comments