Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Releases: amillolive/StatLine

StatLine v3

12 Jun 05:58
@amillolive amillolive

Choose a tag to compare

Changelog

[3.0.0] - 2026年06月11日

Release Summary

StatLine 3.0.0 is a major release. It moves StatLine from a primarily SLAPI-driven scoring CLI into a fuller local-first toolkit with a typed public Python API, richer adapter metadata, map/calc/score workflows, bundled datasets, expanded CLI commands, and a new device/API-key authentication model for SLAPI.

Added

  • Added explicit package version 3.0.0 and runtime version export through statline.__version__.
  • Added local-first operation through --mode local, --mode remote, and --mode auto runtime modes.
  • Added a stable public Python API in statline.public, exported from statline, including:
    • list_adapters()
    • load_adapter()
    • map_row() / map_batch()
    • score_row() / score_batch()
    • score()
    • list_datasets() / load_dataset()
  • Added bundled dataset discovery/loading helpers in statline.datasets.
  • Added a slapi console entry point for launching the API server.
  • Added new CLI command groups:
    • adapter for adapter listing, specs, inputs, metrics, weights, dimensions, filters, traits, and sniffing.
    • map for raw-row-to-metric mapping without scoring.
    • calc for scoring already-mapped metric rows.
    • auth for device initialization, enrollment, API key requests, API key claims, API key listing, and identity checks.
    • admin for registration tokens, enrollment approvals/denials, API key approvals/denials, DEVKEY management, and debug inspection.
    • mod for audit/API-key/device moderation.
    • sys for runtime and auth status.
    • cache, storage, and weights utility groups.
  • Added SLAPI v3 endpoints for:
    • datasets and adapter metadata,
    • adapter sniffing,
    • adapter traits/dimensions/filters/specs,
    • raw mapping,
    • mapped-row PRI calculation,
    • raw-row PRI scoring,
    • device enrollment,
    • API key request/claim flows,
    • admin and moderation operations.
  • Added Ed25519-backed device enrollment and device-proof authentication for SLAPI.
  • Added server-side SQLite auth storage for enrollments, devices, API key requests, API keys, nonces, and audit events.
  • Added registration-token workflow for onboarding devices.
  • Added API-key request/approval/claim workflow, replacing the older gifted-key style flow.
  • Added scoped principals and access checks for userbase, moderation, and admin capabilities.
  • Added audit logging for auth/admin/moderation operations.
  • Added typed adapter metadata sections:
    • dimensions
    • sniff
    • filters
    • typed buckets
    • typed source
    • typed transform
    • typed score_profiles
  • Added adapter sniffing support through statline/core/adapters/sniff.py.
  • Added score profiles with affine and windowed scoring modes.
  • Added multi-profile scoring output through scores, while keeping the primary score in pri for compatibility.
  • Added optional percentile output support.
  • Added output toggles for weights, components, buckets, raw PRI, and context details.
  • Added schema-driven filters for metric and dimension filtering.
  • Added new bundled adapters:
    • eba_players
    • eba_teams
    • valorant
    • example_game
  • Added shareable adapter example at shareable/adapter/eba_players.public.yaml.
  • Added bundled EBA/Elevate302 datasets for players, teams, and hybrid data.
  • Added HOWTO.md with install, scoring, adapter-building, SLAPI, auth, development, and release workflow guidance.
  • Added TRADEMARK_POLICY.md.
  • Added CI and publish GitHub workflow files.
  • Added mypy.ini, typings/fastapi, and typings/pydantic support files for stricter typing.
  • Added public API tests in tests/test_public_api.py.
  • Added operational scripts for local admin/bootstrap/device repair flows.

Changed

  • Changed package metadata from 2.0.5 to 3.0.0.
  • Changed supported Python range from >=3.10,<3.14 to >=3.10,<3.15, adding Python 3.14 support.
  • Reworked optional dependency groups:
    • old: sheets, cli-pretty, cli, api, dev
    • new: remote, extras, devpack
  • Reworked the CLI from a small remote-oriented command set into a large local/remote-capable command surface.
  • Changed statline score so it can run locally through the core package or remotely through SLAPI.
  • Reworked adapter loading into a stricter typed loader with validation for adapter shape, source blocks, transforms, filters, buckets, and score profiles.
  • Reworked adapter compilation to use typed SourceSpec and TransformSpec objects.
  • Changed adapter source support toward field, expr, and const sources.
  • Changed transforms toward typed forms such as expr, affine, scale, clip, round, and custom.
  • Reworked scoring internals around adapter-defined score_profiles instead of a single implicit PRI render.
  • Changed bucket/metric weighting to resolve per-profile weight presets and apply adapter penalty profiles to bucket weights.
  • Changed single-row scoring context to use adapter clamp ranges when no explicit context/caps are provided.
  • Changed batch scoring context to derive leader/floor values from the batch where no context/caps are supplied.
  • Changed output payloads to include richer score details such as scores, primary_profile, components, buckets, weights, context_used, and flattened non-primary score keys.
  • Changed filtering to support flexible predicate payloads, include-only/exclude-only modes, and case-insensitive dimension matching.
  • Reorganized bundled datasets under nested folders such as DEMO/, DBA/, and EBA_Elevate302/.
  • Updated the README into a v3-oriented guide covering install variants, local CLI usage, Python API usage, CLI overview, scoring concepts, input formats, remote/API mode, development, and legal notes.
  • Updated legal documents and license/trademark presentation.
  • Tightened build configuration to include package data while excluding local databases, .git, logs, secrets, bytecode, and cache directories from built distributions.

Fixed / Improved

  • Added test coverage for the public Python API, dataset loading, adapter loading, EBA batch scoring, string adapter resolution, and filtered-out rows.
  • Verified the uploaded newer source tree passes its current test suite: 6 passed.
  • Improved numeric coercion for mapped/scored data paths, including numeric strings and comma decimal handling.
  • Improved SLAPI error handling through structured SlapiError conversion.
  • Improved CLI status/auth diagnostics and display cleanup.
  • Improved adapter inspection data for guided clients through adapter traits.
  • Improved dataset name resolution with case-insensitive and stem-based matching.
  • Improved build hygiene configuration in pyproject.toml by explicitly excluding local-only files from wheels/sdists.

Removed

  • Removed generated PKG-INFO from the source tree.
  • Removed statline/core/introspect.py.
  • Removed old top-level dataset paths:
    • statline/data/stats/demo.csv
    • statline/data/stats/dba_s0.csv
  • Removed old adapter example path:
    • statline/core/adapters/example.yaml
  • Removed old SQL migration files under statline/slapi/storage/migrations/ from the newer tree.
  • Removed the old simple registration-key CLI flow:
    • generate-key
    • keys
    • use-key
  • Removed the old dev-logs command from the top-level CLI.

Breaking Changes

  • The CLI command surface changed substantially. Existing scripts that call top-level generate-key, keys, use-key, or remote-only scoring behavior will need updates.
  • SLAPI auth changed from the older local registration-key model to device enrollment plus API key request/approval/claim workflows.
  • Adapter authors must update adapters to the v3 typed schema. Legacy/loose mapping patterns are no longer the intended path.
  • Score rendering now depends on adapter-defined score_profiles; adapters without score profiles cannot score through the v3 scorer.
  • Optional dependency names changed. Install instructions should use statline[remote], statline[extras], or statline[devpack] instead of the old extras.
  • Bundled dataset paths changed due to folder reorganization.
  • Direct imports from removed modules such as statline.core.introspect will fail.

Find it on PyPI: https://pypi.org/project/statline/

Assets 2
Loading

StatLine v3.0.0rc2

28 Jan 18:19
@amillolive amillolive

Choose a tag to compare

StatLine v3.0.0rc2 Pre-release
Pre-release

Full Changelog: v3.0.0rc1...v3.0.0rc2

Loading

StatLine v3.0.0rc1

28 Jan 18:09
@amillolive amillolive

Choose a tag to compare

StatLine v3.0.0rc1 Pre-release
Pre-release

Full Changelog: v2.0.1...v3.0.0rc1

Loading

StatLine v2.0.1

19 Sep 04:54
@amillolive amillolive

Choose a tag to compare

Full Changelog: v1.1.7...v2.0.1

Want to try?

https://pypi.org/project/statline/2.0.1/

pip install statline==2.0.1
Loading

StatLine v1.1.7

02 Sep 14:44
@amillolive amillolive

Choose a tag to compare

Full Changelog: v1.1.1...v1.1.7

Want to try?

https://pypi.org/project/statline/1.1.7/

pip install statline==1.1.7
Loading

StatLine v1.1.1

21 Aug 04:29
@amillolive amillolive

Choose a tag to compare

First viable release to the public.

Want to try?

https://pypi.org/project/statline/1.1.1/

pip install statline==1.1.1
Loading

AltStyle によって変換されたページ (->オリジナル) /