Releases: hackclub/hackatime
Releases · hackclub/hackatime
v0.1.7
Changelog
Full Commit Log: https://github.com/kcoderhtml/hackatime/commits/v0.1.7
[0.1.7] - 2024-09-17
🚀 Features
- Add shop page
- Add config options and load items from hc api
- Remove mentions of shop when disabled
- Use small name, update badges, & add hover effect
- Increase shop item animation
- Make shop cache expire in one minute
- Add tutorial video
- Add border around youtube video
⚙️ Miscellaneous Tasks
- Update CSS file name to app.dist.v0.1.6.css
- Add some padding to the shop
Bug
- Fix csp erros with youtube
v0.1.6
Changelog
Full Commit Log: https://github.com/kcoderhtml/hackatime/commits/v0.1.6
[0.1.6] - 2024-09-11
🚀 Features
- Compress and build
⚙️ Miscellaneous Tasks
- Fix weird /ckatime error
- Undo bad package replace
- Add hackatime to .gitignore
- Fix ci tests
- Update start_wakapi_background command to use hackatime instead of wakapi
- Update go.mod to replace muety/wakapi with kcoderhtml/hackatime v0.1.5
0.1.1
Changelog
Full Commit Log: https://github.com/kcoderhtml/hackatime/commits/0.1.1
[0.1.1] - 2024-09-11
⚙️ Miscellaneous Tasks
- Remove unused image from Docker workflow
- Change service file name
- Update module name to github.com/kcoderhtml/hackatime
- Switch module origin to kcoderhtml/hackatime
v0.1.0
Changelog
Full Commit Log: https://github.com/kcoderhtml/hackatime/commits/v0.1.0
[0.1.0] - 2024-09-10
🚀 Features
- Change default value for time Fields to CURRENT_TIMESTAMP for better cross database support. Support Scanning String Dates for HeartBeatReqTime
- Add support for sqlite3
- Ability to set default username and password
- User signup
- Introduce base path config option to better support redirections behind a proxy
- Display api key on user interface (resolve muety#24)
- Add basic sign up instructions
- Use bcrypt with salts instead of md5 for hashing password (resolve muety#21)
- Add auto-migrations for old md5 password to maintain backwards compatibility
- Allow insecure cookies (resolve muety#27)
- Persist user creation date (resolve muety#31)
- Persist user creation date (resolve muety#31)
- Add ability to change passwords (resolve muety#30)
- Add ability to reset api key (resolve muety#29)
- Add base_path environment variable
- Show data loss warning (resolve muety#38)
- Extract machine name from heartbeat requests (resolve muety#47)
- Introduce machine summaries (resolve muety#48)
- Add wakatime-compatible alltime endpoint
- Add more pre-configured intervals (resolve muety#51)
- Implement badges endpoint and sharing functionality
- Introduce legacy config migration
- Add front page (resolve muety#34)
- Add ipv6 and tls support (resolve muety#79)
- Ability to choose number of top entities to display (resolve muety#81)
- Add ui for managing aliases (resolve muety#91)
- Relay heartbeats to wakatime (resolve muety#28)
- Ui for configuring wakatime integration
- Embed assets into binary
- Add missing query params to wakatime endpoints (resolve muety#109)
- Account deletion (muety#99)
- Wakatime data import (resolve muety#87)
- Implement stats endpoint (resolve muety#114)
- Option to publicly share stats data (resolve muety#36)
- Add endpoint compatible to github readme stats (resolve muety#65)
- Allow unlimited date ranges
- Add swagger docs (resolve muety#40)
- Display setup instructions on startup (resolve muety#120)
- Add prometheus metrics without external standalone exporter
- Per-user heartbeats count metrics
- Custom time intervals (resolve muety#115)
- Gui for sample data generator script
- Sentry integration (resolve muety#142)
- Password resets (resolve muety#133)
- Smtp mail provider implementation
- Implement wakatime users endpoint (resolve muety#193)
- Email reports (resolve muety#124)
- Settings dialog for mail reports
- Implement wakatime projects endpoint (resolve muety#196)
- Basic integration / api tests (wip) (resolve #9)
- Implement project labels (resolve muety#204)
- Ui for managing project labels
- 🎸 add support for using a UNIX domain socket
- Add alpine image
- Build/push arm64 Docker image
- Build/push arm64 Docker image
- Add test steps to Linux workflow
- Implement relay endpoint (see muety#237)
- Support query parameter token
- User avatars
- Brotli precompressed assets (resolve muety#284)
- Total heartbeats per summary (resolve muety#283)
- Comprehensive summary-level filtering (resolve muety#262)
- Ability to filter by project labels
- Basic implementation of branch statistics
- Project details page with branch statistics (resolve muety#242)
- Build linux/arm/v7,linux/arm/v6
- Allow to configure custom api url for relay and import (resolve muety#105)
- GET /heartbeat endpoint (resolves muety#241)
- Ability to clear all user data (resolve muety#339)
- Add database size metric
- Allow toggling vibrant color for all charts
- Make vibrantColors a localStorage setting
- Automatic version.txt updates
- Introduce newsbox for front page (resolve muety#393)
- Add leaderboard data model
- Leaderboard generation and querying
- (wip) Leaderboard ui
- Top languages by user
- Settings option to opt in to leaderboards
- (wip) Leaderboard pagination (resolve muety#417) [ci-skip]
- Implement data retention mechanism
- Allow using mysql socket, fixes muety#433
- (subscriptions) Introduce config options and user attribute to support subscriptions
- (wip) Stripe integration for subscriptions
- (wip) Implement stripe webhooks
- (wip) Implement stripe webhooks
- (wip) Polish settings ui for subscriptions
- Implement computation of users first heartbeats data time
- Subscription expiry notification mails
- Add heartbeats download script
- Add UI changes to add project to label
- Insert label into database
- (settings) Add UI for bulk associations
- (settings) Handle bulk associations in db
- (settings) Add btn to toggle add project btn
- Implement file statistics (resolve muety#80)
- -version flag
- Add per weekday stats to report (resolve muety#493)
- Expose total user activity time in admin metrics (resolve muety#484)
- (wip) Implement query for fetching user project stats (see muety#302) [skip ci]
- (wip) First draft of projects page implementation [skip ci]
- (wip) Link from project page to summaries
- Add pagination to projects page (resolve muety#302)
- Add ui controls for filtering (resolve muety#511)
- (wip) Implement activity chart generation (see muety#12)
- Finish and include activity chart (resolve muety#12)
- Support for reverse proxy trusted header authentication (resolve muety#534)
- Implement daily average field for wakatime compat summary (resolve muety#545)
- Add option to choose legacy wakatime importer (resolve muety#542)
- Added more info per project
- Show avatar url in wakatime user model
- Show user id as
display_name
in user - Add ability to disable imports (resolve muety#552)
- Add single project compat endpoint (resolve muety#562)
- Implement leaders compat endpoint (resolve muety#570)
- Implement language filtering in leaders compat endpoint
- Include user rank in prometheus metrics (resolve muety#566)
- Add user creation automation script (resolve muety#604)
- Date format config
- Customize date formatting
- Signup captcha (resolve muety#635)
- Implement invite links (resolve muety#624)
- Ability to exlclude unknown projects from summaries (resolve muety#619)
- Implement category chart and summaries (resolve muety#630)
- Configurable heartbeats timeout and offset (resolve muety#156)
- Support ip ranges for trusted proxy header auth (resolve muety#665)
- Wildcard aliases (resolve muety#607)
- Use hackclub hand logo
- Remove features section and change footer
- Remove weird spaces in the total hours and users fields
- Make the logo be on the top
- Make the buttons match the color scheme
- Add two variations of the accent color
- Make the footer follow the colorscheme
- Switch logo to the side version if page to small
- Squash the main page into a smaller width and change copy
- Upate forgot password to match color scheme
- Make the signup page reflect color scheme
- Update icons and links in main menu
- Update the summary page and main menu to follow colorscheme
- Update the time picker and selectors to fit the color scheme
- Add dark and light mode dynamic svg
- Update projects page to fit colorscheme
- Update settings page to match color scheme
- Update readonly field style
- Update site favicon
- Customize mailing templates
- Update set-password page styling to match color scheme
- Update password reset and update pages to use colorscheme
- Make email use color scheme
- Add cliff workflow
🐛 Bug Fixes
- Proper parsing of environment variables
- Fix build script to cross-compile with sqlite dependency
- Docker build
- Update docekr file to include env vars and volume
- Forgot to check in alerts template partial
- Use relative urls
- Html base href trailing slash
- Quick summary paths
- Base path for error redirects
- Don't trim hash
- Set string key value data type to text
- Return created status code for heartbeats (resolve muety#43)
- Make summary include timestamp of first and last heartbeat (resolve muety#18)
- Adapt summary generation to new summary bounds
- Return proper response to heartbeat requests (resolve muety#46)
- Generate dummy items for missing types in historic summary data
- Column definition in migration
- Save heartbeats and summaries with millisecond time precision (resolve muety#49)
- All time data model
- Support project query param for alltime endpoint
- Attempt to fix invalid fixture query for postgres (fix muety#52)
- User agent strign parsing (fix muety#53)
- Define flags on init
- Adapt docker image to new config format
- Add legacy config again for backwards-compatibility
- Stop tracking legacy config file
- Sample data script
- Timestamp precision
- Use custom date for summary model to support sqlite deserialization
- Json serialization error when percentage is nan
- Critical fixes related to alias resolution
- Postprocessing for alias keys not corresponding to an actual entity
- Crash when calling badge endpoint with no filters applied (resolve muety#66)
- Postgres connection (resolve muety#70)
- Filters
- Crash on fail to listen
- Do not attempt to bind on ipv6 in docker (resolve muety#84)
- Concurrent access to language mappings (resolve muety#83)
- Permissions bug related to deleting language mappings
- Move caching out of authentication middleware
- Embed of static, views
- Delay defer templateFile.Close()
- (ci) Actions release, build on push/pr
- Tests
- Attempt to quickfix hash collisions
- Attempt to directly hash struct again
- Start and end parameter parsing for wakatime summary route
- Really fix it now 🤦♂️
- Make logging middleware respect proxy headers
- Selective summary generation
- Missing summary api route
- Wakatime relay
- 30 days interval
- Tests
- Tests
- Consider negative sharing intervals
- Json marshalling of custom time (resolve muety#117)
- Dockerfile syntax error
- (ui) Convert logo text to path (resolve muety#121)
- Include machine names when importing wakatime data
- Commit missing asset
- Support default range for stats endpoint (resolve muety#125)
- Tests [ci skip]
- Include overall total number of heartbeats again
- Add migration for newly introduced has data field
- Broken migration on postgres (resolve muety#127)
- Drop_badges_column migration for sqlite
- Mysql character encoding (resolve muety#131)
- U...