Commit Graph

44 Commits

Author SHA1 Message Date
bot
f2c4360883 feat: update total contributions from 2515 to 2518 and average per user to 24.93 in export dataset
- Increment total contributions count in export/0_dataset.txt from 2515 to 2518
- Adjust average contributions per user from 24.9 to 24.93
- Update binary export artifacts (whl, tar.gz, graphs, JSON stats) to reflect latest database state
- Refresh comment statistics JSON files with new counts for hour 20 (126→129) and updated weekday aggregations
2024-11-25 20:31:07 +00:00
600ed88efc feat: rename upvote_ratio column to upvotes_per_post_on_average in contributions_extended view
Update the SQL view definition to replace the ambiguous `upvote_ratio` column name with the more descriptive `upvotes_per_post_on_average`, and update the ranked view to order by the new column name instead of the old one.
2024-11-25 20:24:06 +00:00
bot
51fca071ad chore: update export dataset with 101 active users and 2515 total contributions
- Increment active user count from 100 to 101 and total contributions from 2389 to 2515 in export/0_dataset.txt
- Append 425 new lines of user posts to export/posts-retoor.txt
- Regenerate all binary export files including graphs, score charts, and compiled statistics images
- Update drstats.db database and rebuild dist packages to version 1.3.37
2024-11-25 19:58:34 +00:00
a03c6eb774 chore: prefix pip and python commands with venv path in Makefile build target 2024-11-25 19:50:20 +00:00
66155ce6a6 chore: bump package version to 1.3.37 and declare runtime dependencies in PKG-INFO
Update PKG-INFO metadata to remove UNKNOWN placeholders for Home-page and Platform fields, and add explicit Requires-Dist entries for aiohttp, dataset, matplotlib, and requests. Also trim trailing blank lines from the description section.
2024-11-25 19:48:02 +00:00
f816a73efa chore: add ensure_env target to Makefile for automatic venv creation 2024-11-25 19:47:34 +00:00
2f3a4431b6 fix: re-add sync target to Makefile all and fix asyncio loop reference in get_recent_rants
The Makefile's `all` target was missing the `sync` step, which has now been restored alongside a fix in `src/drstats/sync.py` where `asyncio.wait_for` incorrectly called `asyncio.run_in_executor` instead of the proper `loop.run_in_executor` to avoid event loop context errors during async execution.
2024-11-25 19:44:33 +00:00
a6fd640e92 feat: make get_recent_rants async by wrapping dr.get_rants in run_in_executor with 5s timeout 2024-11-25 19:39:06 +00:00
c32c59dd2a fix: restore accidentally deleted __main__ and __init__ module files
The __main__.py and __init__.py files were inadvertently removed during a previous cleanup operation. This commit restores both files to their original state, ensuring the package can be properly executed as a module and imported as a package.
2024-11-25 19:28:59 +00:00
5025647f04 chore: remove stale pycache files and add asyncio timeout to sync loop
Remove all compiled Python cache files from the drstats package directory to prevent stale bytecode issues. Refactor the sync_rants function by extracting the rant processing logic into a private _sync_rants helper and wrap it with asyncio.wait_for using a 5-second timeout to handle rate-limited API responses gracefully, breaking the loop on timeout exceptions.
2024-11-25 19:27:39 +00:00
2657c83053 fix: handle missing comments key when syncing rants with no comments
The previous code assumed every rant returned from the API would have a "comments" key, causing a KeyError crash when iterating over rants that had zero comments. This fix uses `.get("comments", [])` to safely default to an empty list, allowing the sync loop to continue without interruption.
2024-11-25 19:19:22 +00:00
ed190ec774 fix: prefix dr.sync, dr.stats_all, dr.dataset, and merge_images.py with ./venv/bin/ in Makefile targets 2024-11-25 19:15:31 +00:00
bot
81c5d77676 chore: remove dependency list and add platform metadata placeholders in PKG-INFO for drstats 1.3.37
The diff shows removal of Requires-Dist entries for aiohttp, dataset, matplotlib, and requests from PKG-INFO, along with addition of Home-page: UNKNOWN and Platform: UNKNOWN fields, plus trailing newlines in entry_points.txt.
2024-11-24 07:44:38 +00:00
8f86fc8112 fix: correct dataset dump and db queries to handle multiple user records 2024-11-24 07:39:56 +00:00
b5103f45f1 fix: remove newline and whitespace stripping from user rants and posts in dataset dump 2024-11-24 07:10:21 +00:00
bot
1910548ee0 chore: remove dependency metadata and add UNKNOWN placeholders in PKG-INFO for drstats 1.3.37
The diff shows removal of Requires-Dist lines for aiohttp, dataset, matplotlib, and requests from PKG-INFO, along with addition of Home-page: UNKNOWN and Platform: UNKNOWN fields, plus trailing newline adjustments in entry_points.txt.
2024-11-24 07:07:40 +00:00
27a6409c09 feat: add initial export of devRant statistics, mentions, posts, and contributions data
Add raw query results for user contributions, mention counts, individual user posts, and view-comment statistics exported as text and JSON files under the export/ directory.
2024-11-24 07:02:48 +00:00
04e61f8a56 feat: add raw query results to json export for each view using new Db context manager 2024-11-24 07:02:32 +00:00
c59085db6a fix: correct indentation of view export loop inside dump function 2024-11-24 06:38:33 +00:00
7ec7ae8646 feat: add view export functionality and refactor contributions query to use named view
Introduce a new `get_views()` function in db.py that queries the sqlite_schema for user-defined views, and add a loop in dataset.py to export each view's query results as a JSON file. Also create a persistent `contributions_extended_ranked` view to replace the inline subquery in `get_contributions()`, and refactor `get_users()` to use a direct DISTINCT query instead of deduplicating in Python.
2024-11-24 06:38:17 +00:00
e5e5dd3aca fix: correct f.write argument in dataset.py dump function to close code block properly 2024-11-24 06:17:50 +00:00
7040fe5797 fix: correct string concatenation in dataset.py write calls for user and text 2024-11-24 06:16:36 +00:00
1414d1e116 fix: add missing commas in print and f.write calls for dataset export formatting 2024-11-24 06:15:17 +00:00
31b792bde2 feat: add rank column to user stats and format score with commas in display
Implement rank calculation based on total score ordering and format score values with thousands separator for improved readability in the user statistics view.
2024-11-24 06:13:53 +00:00
9497cde9c8 feat: add export_statistics and export_mentions make targets with dataset prefix markers
Add two new Makefile targets for exporting statistics and mentions data from the dataset file, each prefixed with "===" markers in the dataset.py dump function to enable clean grep extraction. The export_statistics target filters lines containing "Statistics:" while export_mentions filters lines containing "times ment", both writing results to separate export files.
2024-11-24 06:09:50 +00:00
bot
f06382c373 feat: add per-user contribution stats export and update PKG-INFO with retoor9b reference
Generate export/0_dataset.txt containing per-user contribution counts, percentages, and average post lengths for all 100 active ranters. Update PKG-INFO description to reference retoor9b AI hype and adjust dataset link path from dataset.txt to 0_dataset.txt.
2024-11-23 20:16:08 +00:00
cdc8c1a0c2 docs: rewrite README to replace outdated ML dataset reference with retoor9b hype and reorder build server explanation 2024-11-23 20:11:28 +00:00
b4c969e62a chore: remove clean step from all target and update dataset export path in readme
The clean step was removed from the default build pipeline to preserve historic statistics across builds, as deleted data still consumes git storage. Additionally, the dataset export filename was changed from dataset.txt to 0_dataset.txt, and the corresponding link in the README was updated to reflect this new path.
2024-11-23 20:05:45 +00:00
bot
2064809545 chore: update drstats package to v1.3.37 with refreshed export dataset and PKG metadata
Bump package version from 0.1.1 to 1.3.37 in PKG-INFO, update author email to retoor@molodetz.nl, and replace generic project description with detailed build automation notes and export links. Regenerate binary wheel and source distribution artifacts alongside updated export graphs compilation and dataset text file with revised user contribution statistics.
2024-11-23 20:03:37 +00:00
dbe9b4184d docs: add generated statistics dataset and graphs to README with build server links 2024-11-23 19:48:43 +00:00
d95f215975 fix: configure git user email and name before commit in export workflow 2024-11-23 19:36:40 +00:00
c84e34be26 chore: pin dependency versions and add requests library to setup.cfg and egg-info 2024-11-23 19:29:56 +00:00
e039dae62b chore: remove build output redirection to file in export workflow
The CI export workflow previously redirected `make` output to `build_output.txt`.
This change removes the file redirection, allowing build output to flow directly
to the job's standard output stream.
2024-11-23 19:22:22 +00:00
7177c356f2 fix: normalize SQL formatting and remove duplicate DROP VIEW in user_stats view creation 2024-11-23 19:20:16 +00:00
513dbaf095 chore: remove time prefix from pip install and dr commands in Makefile targets 2024-11-23 19:18:21 +00:00
9b195fcb48 style: fix whitespace formatting and trailing newlines across multiple Python files 2024-11-23 19:17:01 +00:00
8b259cc39c chore: redirect make output to build_output.txt and auto-commit export results 2024-11-23 19:09:06 +00:00
26d883e0cb feat: add CI workflow, clean target, and fix user_stats view with deduplicated columns
Add .gitea/workflows/export.yaml for automated build on push, introduce `clean` target in Makefile to recreate export directory, remove stale `dump_text.py` from SOURCES.txt, and correct duplicate column definitions in the `user_stats` SQL view creation inside db.py.
2024-11-23 19:07:19 +00:00
768477df2a feat: add merge_images script, dataset module, and rename dr.rant_stats_all to dr.stats_all
Add new merge_images.py script that compiles all exported PNG graphs into a single composite image with 2-column layout and 480x320 per-image sizing. Introduce drstats/dataset.py with dump() function that outputs per-user contribution statistics and all rants/posts for LLM embedding. Rename the console script entry point from dr.rant_stats_all to dr.stats_all across setup.cfg, entry_points.txt, README.md, and PKG-INFO. Update Makefile to replace sync with sync_excempt target, add merge_images target, and add prerequisite reminders for export targets. Refactor db.py view creation queries to use compact string formatting. Redirect Duration class timing output and dataset.py printr calls to stderr.
2024-11-23 18:56:52 +00:00
d1594ed798 feat: add dataset export command and contributions views with user stats aggregation
Add dr.dataset console script entry point and implement dump function in new dataset module. Create SQL views for contributions, contributions_extended, rants_of_user, and posts_of_user in db.py to aggregate user activity metrics. Update Makefile with sync, export_stats, and export_dataset targets. Add timeout parameter to HTTP requests in devrant.py and remove demo code. Extend README with usage instructions for environment setup and available dr.* commands.
2024-11-23 18:56:52 +00:00
507a8dcaeb feat: add dr.rant_stats_all command and comment/score views to database schema 2024-11-23 18:56:52 +00:00
12a93eccb5 chore: add credits section to README and replace pirant dependency with matplotlib
- Add credits section acknowledging Rohan Burke (coolq) for the devrant API wrapper
- Remove pirant dependency from setup.cfg and add matplotlib>=3.9.2
- Add new console scripts for sync and per-day/weekday/hour statistics
- Add new source files: db.py, devrant.py, sync.py, and updated statistics.py
- Include binary database file drstats.db and compiled Python cache files
2024-11-23 18:56:52 +00:00
0ad7c0cf51 chore: add dataset and pirant dependencies, rename console script entry point to dr.rant_stats
Add dataset>=1.6.2 and pirant>=0.1.4.dev1 (via git URL) to install_requires in setup.cfg.
Rename the console_scripts entry point from 'utro = drstats.statistics:rant_stats' to 'dr.rant_stats = drstats.statistics:rant_stats'.
Update egg-info metadata files (PKG-INFO, requires.txt, entry_points.txt, SOURCES.txt, top_level.txt) to reflect new dependencies and package structure.
2024-11-23 18:56:52 +00:00
c32565621d feat: scaffold drstats project with setuptools build, gitignore, and utro CLI entry point
Initialize the dRStats repository with core project structure: add .gitignore excluding dist and venv directories, create Makefile for pip-based build and editable install, write README.md describing the devrant health monitoring purpose, define pyproject.toml using setuptools build backend, configure setup.cfg with metadata (name drstats, version 0.1.1, MIT license, aiohttp dependency) and console_scripts entry point mapping 'utro' to drstats.statistics:rant_stats, and include generated egg-info metadata files.
2024-11-23 18:56:52 +00:00