Skip to content

Releases: DrewWing/EDrewcatedGuesser

v50.0

30 Jun 23:23
e32e62f
Compare
Choose a tag to compare

v50.0

June 30th, 2025.

Overview

First post-release update. Added and fixed lots of documentation, made configuration a lot easier, added much better logging, and created a more efficient statistics calculation system.

Known Bugs:

  • #49 In statistics ranking, Google Sheets template spreadsheet "ties" between two teams cuases it to show neither.
  • #1 "Recent OPR" calculations sometimes show up as 0 due to the way that statistic is calculated.

Bugs Fixed

  • #2 Tests failed due to argparse usage.
  • #30 Global data from two or more seasons interacted with one another, causing incorrect season statistics.
  • 2babbce A FIRST API authentication bug.
  • 2737b9f A tests file filter bug.

Key changes

  • #5 Added configuration using environment variables!
    • Completely redid the flow of operation.
      • Added app/__main__.py as the main function (replaces BASH/PowerShell files)
    • Added .env.template
    • Removed old configuration (app/init_settings.py, app/python_settings.py).
  • #20 Scrapped the old manual logging system and replaced it with Python's builtin logging module.
    • Removed functions log_error, green_check, info_i, and red_x.
    • Added create_logger.
    • Added clearer debug logging levels (configurable).
    • Added debug.log log file.
    • Added logging tests.
    • line_counter.py now treats logging output lines as output lines.
  • #23 and #33 Renamed PATH_TO_FTCAPI to PROJECT_PATH and added automatic detection (PROJECT_PATH is no longer a required configuration variable).
    • Paths are now more resilient and can support both backslashes and forwardslashes (now using os.path).
    • Added function to automatically create required directories, solving many FilepathNotFoundError.
  • #9 Added option to disable Google Sheets api interaction.
  • #29 Reworked statistics calculation (what calculations happen when).
    • Added CALCULATION_MODE configuration variable.
    • Added a time counter since last global calculation
    • Added documentation.
    • Reworked various functions in json_parse, specifically:
      • prepare_opr_calculation, and
      • SeasonEvents.filter.
  • Separated caching heavy functions into its own function in opr.
  • #39 Main program now warns the user when API data doesn't exist.
  • Made the GitHub Project management easier.
  • #3 Added Google Sheets spreadsheet version validation (user is warned if version is too old).
  • Updated the .gitignore (rearranged, added Scalene profile output files)
  • Cleaned up a lot of comments.
  • Removed old code.

Docs

v49.0-beta

25 Dec 17:47
Compare
Choose a tag to compare

49.0 Beta

December 25th, 2024

Overview

First version released to public. This changelog is also available at docs/Updates.md.

Many fixes, a license, revamped docs, and a better file system.

Fixed Bugs

  • Gitignore in all branches not ignoring .venv/ folder. Otherwise, VS Code says too many changes and won't show the git changes for any other branch.
  • Line counter bug where gitignore items were not being ignored due to Windows using backslashes in their paths.
  • Fixed a lot of bugs with bad pathing (now using os.path.join to navigate to specific folders)

Files

  • Renamed ml-test.py to train_algorithm.py
  • Put all docs in the docs folder
  • Add a generated files folder

Licensing and Attribution

  • Added the license
  • Referenced licenses for all parent packages used
  • Updated conventions, tests, and scripts to include license in header

Docs

  • Added instructions to creating secrets.txt to the ReadMe.
  • Updated ReadMe
    • Updated file instructions, file names, and directory names to match current ones.
    • Added link to contribution guidelines.
  • Added contribution guidelines
  • Added setup docs
  • Added running the project docs
  • Added FAQs
  • Added Conventions page
    • Create standard variable naming, file naming, and code conventions
  • Reorganized this todos.md page and sorted by category.

Tests

  • Added tests for new license headers in Python files
  • Added tests for correct files in correct places

Other

  • Removed references to heatmap stuff (unused)
  • Updated the __all__ variable in commonresources.py
  • Made the season year an input variable
  • Uploaded to GitHub
    • Added name and description
    • Added issue and feature request templates
    • Added milestones
    • Added tags