Changelog
Changelog
[Unreleased]
[0.1.0] - 2026-09-26 @ 16:20
Summary
Establish the MyCount documentation website and development foundation, with shared coding conventions and a tested release workflow. Add the shared MariaDB layer and explicit schema setup as the foundation for collection and reporting. Add local IPv4/IPv6 geolocation and an installer with weekly reference-data updates.
Added
- Separate GeoIP download, import, schema, and lookup components using the free ipapi.is IPv4 and IPv6 datasets and the shared MariaDB layer.
- Root installer for the application, database, credentials, systemd service, and weekly GeoIP cron job; refreshes publish both address families together.
- Collector skeleton with HTTP handling, visit preparation, and persistence in separate components.
Visitentity for passing validated visit data between processing activities, independent of database persistence.- Generic
DbMgrwith parameterized queries, UTC connections, transaction rollback, read-only transactions, and explicit connection cleanup. - Separate visitor schema activity with reporting indexes and relational constraints, designed for repeatable installation and upgrade setup.
- PyMySQL dependency, focused database tests, and a data access guide linked from the documentation index.
- JavaScript page-view client and Jekyll example targeting
https://count.osoyalce.com/, with a linked integration guide. - Project mission documenting the mydynip testing purpose, planned visitor metrics, browser and service components, and privacy boundaries, linked from the homepage.
- Jekyll configuration for
mycount.osoyalce.comusing the dark Minimal Mistakes theme. - Minimal homepage linking coding guidelines, release management, and the changelog.
AGENTS.mdand MyCount coding guidelines covering component responsibilities, constants naming, and focused documentation.- Python package foundation with
DMyCount.VERSION, initially0.0.1. - Release script that updates the version and changelog, merges feature work through
devtomain, and publishes an annotated tag. - Six isolated release tests covering successful publication, prereleases, invalid input, dirty working trees, duplicate versions, and help output.
- Release guide documenting development checks and the maintainer’s release workflow.
Changed
- Replace the preliminary MaxMind integration with local ipapi.is reference data; widen city names to accommodate verified upstream values.
- Update the planned reporting design to use browser fingerprinting for estimated unique-browser counts; simplify collection documentation and remove outdated privacy claims. Fingerprinting implementation remains pending.
- Use
index.mdas the sole documentation root, require every documentation page to be reachable from it, and simplify the README to a website pointer; record these conventions in the coding guidelines. - Document development ownership: the AI assistant handles implementation, tests, and documentation; the project owner owns architecture, all Git operations, and release scripts.
- Extend
.gitignorefor Jekyll output, caches, and local Bundler dependencies.