Skip to content

Releases: Flowfin/jellyfin-plugin-stats

0.1.1.0-stable

Choose a tag to compare

@github-actions github-actions released this 07 Sep 02:34
0.1.1.0-stable
a8c8d38

What's Changed

  • Wait on the writer rather than on the file (#241) by @iderex in #243
  • Keep a row's change moment across an import (#239) by @iderex in #244
  • Count watched time in full under every reason a play carries (#242) by @iderex in #245
  • Order the reason rows by watched time and fold what re-encoded them (#60) by @iderex in #246
  • Record the channel a live television play was on by @iderex in #248
  • Cut a wrap-up's top lists to what the account asking may still see (#54) by @iderex in #249
  • Withhold a top list the way a breakdown is withheld, and group and order it as asked (#52) by @iderex in #250
  • Serve the first aggregate report, to an administrator, with every choice mapped through a closed set (#55) by @iderex in #255
  • Fold the members too few accounts stand behind into one group instead of withholding the breakdown (#41) by @iderex in #256
  • Serve the breakdown by client and by device over a range (#59) by @iderex in #257
  • Serve how much the server was used over a range, one row per day (#57) by @iderex in #258
  • Measure every route and every shape over a store nobody would call small by @iderex in #260
  • Fold each finished play into the day it belongs to, as it is written by @iderex in #261
  • Name what a deletion means at the call that makes it, and write it down by @iderex in #262
  • Rebuild the rollups from the play rows, and let a corrective deletion move them by @iderex in #264
  • Serve the usage view as a page, assembled from the drawing modules by @iderex in #265
  • Serve a user their own wrap-up, with a selector over the years they have by @iderex in #266
  • Say under the range view which moment its delivery figures speak about by @iderex in #267
  • Ask every page in the directory what it draws when it cannot ask by @iderex in #268
  • Read one account's year off the days it was folded into by @iderex in #269
  • Give the installing section the address a server adds (#81) by @iderex in #270
  • Say on the front page what the tree actually holds (#271) by @iderex in #272
  • Let one configuration produce every analysis this branch stands on by @iderex in #275
  • Take the reading of the settings page that no route here could take by @iderex in #276
  • Let the reading survive a server that has bound its port and is not answering by @iderex in #278
  • Wait for a server that has finished starting, not one that has answered by @iderex in #280
  • Ask for the first user before naming it by @iderex in #281
  • Name the stored file the server actually wrote by @iderex in #282
  • Refuse an analysis this branch stands on that this tree did not produce by @iderex in #283
  • Give a signed-in user a page about their own figures and their own choices by @iderex in #288
  • Attach the bill of materials to the release it describes by @iderex in #284
  • A failed view says who holds the reason and stops passing one on by @iderex in #285
  • Fold a year from the rollups and read the rows a month at a time by @iderex in #287
  • Stop the page that arrived beside the reason refusal from passing one by @iderex in #292
  • Draw a figure the fold could not take rather than a page that failed by @iderex in #294
  • Serve one account their own figures over three windows by @iderex in #293
  • Answer the server's year and name only the accounts that agreed by @iderex in #291
  • Take a consent record off the account the sweep never reached by @iderex in #298
  • Read what-is-stored.md against the tree it describes by @iderex in #301
  • Hold the self statistics page against the answer the server sends by @iderex in #302
  • Document every row the authorization matrix runs, and hold the table to them by @iderex in #304
  • Read the configuration reference against the tree and repair what drifted by @iderex in #308
  • Write the queue's own reason in the first person by @iderex in #310
  • The two caps on the settings page bind the aggregate reports by @iderex in #316
  • One visibility rule over both of an account's own top lists by @iderex in #317
  • Read the reason ordering's tie with the fold's own comparison by @iderex in #318
  • Anchor the premise the string-formatting dismissal rests on by @iderex in #320
  • Turn off the six style rules the per-rule decision turns off by @iderex in #321
  • The daily aggregates go when their own retention window says so by @iderex in #322
  • A reading follows the documented install route on a fresh server by @iderex in #324
  • The install route reading compares identifiers the way the server writes them by @iderex in #325
  • The install route was followed on a fresh server, and the README says so by @iderex in #326
  • Bind the SQLite stack at the floor each server line ships by @iderex in #339
  • The em dash leaves the page comment by @iderex in #341
  • A refused save leaves the running configuration as the stored file by @iderex in #344
  • Declare what is shipped, and say so in every file that speaks about it by @iderex in #345
  • The README a stranger reads, and the wiki that holds the rest [#333] by @iderex in #347
  • Raise the version to 0.1.1.0 and read the floor on every install route by @iderex in #349

Full Changelog: 0.1.0.0-stable...0.1.1.0-stable

0.1.0.0-stable

Choose a tag to compare

@github-actions github-actions released this 24 Aug 19:30
083fdbd

What's Changed

  • Write the version in one place and add a changelog by @iderex in #85
  • Pin the shared workflow calls and deny permissions by default by @iderex in #89
  • Add a greppable invariant lint and seed it with four rules by @iderex in #88
  • Remove the scheduled label sync by @iderex in #87
  • Point CodeQL at this repository and remove three workflows that cannot run by @iderex in #92
  • Write down the headless test policy and split its rule into four by @iderex in #91
  • Rename the project from Template to Stats by @iderex in #93
  • Give the plugin its own identifier and catalogue metadata by @iderex in #94
  • Adopt Prettier over the page assets by @iderex in #95
  • Refuse a pull request that names no issue by @iderex in #96
  • Package the plugin and describe it on every pull request by @iderex in #97
  • Add the test project and one test that is not vacuous by @iderex in #98
  • Compare the plugin identifier against the manifest in a test by @iderex in #99
  • Freeze the plugin's package graph and restore against it by @iderex in #100
  • Refuse an outbound client, and record what the suite has actually run on by @iderex in #101
  • Build for both supported server lines by @iderex in #103
  • Let a documentation change report the checks that gate it by @iderex in #104
  • Record the two server lines in the changelog by @iderex in #106
  • Scan the resolved dependency graph for known vulnerabilities by @iderex in #105
  • Fake the server surfaces a play arrives on by @iderex in #107
  • Decide the play row: the fields it keeps and the fields it refuses by @iderex in #108
  • Refuse a test run that covers less than the last one did by @iderex in #109
  • Subscribe to the server's session events from a hosted service by @iderex in #110
  • Watched duration that survives pauses and seeks by @iderex in #111
  • Delete the plugin's own data when the plugin is uninstalled by @iderex in #113
  • Read a day in a zone, so a play at half past eleven lands on the right one by @iderex in #114
  • Point the configuration page at this plugin by @iderex in #116
  • Build against the oldest supported server of each line by @iderex in #118
  • Deterministic clock and time zone in every test by @iderex in #120
  • Join the events of one play together, so a play becomes one row by @iderex in #127
  • Sample the transcoding state, so a row says how the play was delivered by @iderex in #128
  • Let CodeQL report on documentation-only pull requests by @iderex in #132
  • Say that this plugin belongs to Flowfin by @iderex in #129
  • Say what the log may contain, and refuse the two shapes that break it by @iderex in #125
  • Replace the template README with one for this plugin by @iderex in #117
  • Refuse a page asset that carries a value the server would fill in by @iderex in #138
  • Derive the support matrix from the values the build uses by @iderex in #139
  • Write down that this plugin has no custom query surface by @iderex in #140
  • Replace the template's example settings with the model this plugin actually has by @iderex in #141
  • Version the stored configuration and move it forward on an upgrade by @iderex in #143
  • Argue the CodeQL trigger in the language the rest of the repository uses by @iderex in #146
  • Give the plugin somewhere to write, and version what it writes by @iderex in #147
  • Refuse a statement that drops a table by @iderex in #112
  • Index the plays table for the four shapes the reports read it in by @iderex in #148
  • Point the CodeQL gate at the account that holds this repository by @iderex in #149
  • Export the plugin's data in a plain format and read it back by @iderex in #151
  • Write the configuration reference and check it against the model by @iderex in #153
  • Refuse a page asset that loads from an external host by @iderex in #154
  • Refuse a configuration value cached in a static field by @iderex in #155
  • Add the intended-use notice by @iderex in #150
  • Write a finished play from a thread of the plugin's own by @iderex in #156
  • Decide whether a play is recorded in one place before the write by @iderex in #157
  • Say what is inside the plugin's data folder, and keep it true by @iderex in #159
  • Give the plugin a logo and point the manifest at it (#81) by @iderex in #160
  • Bring the publish pipeline that requests proved (#81) by @iderex in #161
  • Draw the charts with a module of this plugin's own (#62) by @iderex in #163
  • Meet a store from a later build on the write path (#28) by @iderex in #164
  • Clear the code scanning findings that are not cs/path-combine by @iderex in #167
  • Refuse a save carrying a value this plugin does not accept by @iderex in #168
  • Delete play rows past their retention window on a schedule by @iderex in #169
  • Say what is stored, who can read it, and what is not there by @iderex in #170
  • Refuse a test that binds a port, not only a privileged one by @iderex in #171
  • Say why the reason counts are larger than the play count by @iderex in #172
  • Count the four delivery figures against the plays they came from by @iderex in #173
  • Write the page reading into the release process by @iderex in #175
  • Move the CodeQL analysis into this tree by @iderex in #176
  • Count a play once under every reason it recorded by @iderex in #178
  • Say out loud that the store could not be opened by @iderex in #179
  • Delete a user's play rows when the account is deleted by @iderex in #180
  • Delete the rows of accounts the server no longer has by @iderex in #181
  • Read back how far the store can answer for (#65) by @iderex in #182
  • Measure the plan behind the oldest stored row by @iderex in #184
  • Break a set of plays down by client and by device by @iderex in #185
  • Count plays and watched time per day, in the zone the days were read in by @iderex in #186
  • Name Flowfin as the manifest owner by @iderex in #188
  • Point the workflow audit at the default branch by @iderex in #190
  • Compare the task names over every task the assembly declares by @iderex in https://github.com/Flowfin/jellyfin-plugin-sta...
Read more