Recent Releases of https://github.com/alan-turing-institute/airsenal

https://github.com/alan-turing-institute/airsenal - v1.12.0: 2025/26 season

What's Changed

  • include mins from whole season in estimateminutesfromprevseason by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/689
  • fix(docker): update base image from buster to bullseye by @ppapadatis in https://github.com/alan-turing-institute/AIrsenal/pull/721
  • 25/26 season by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/711
  • Replace PyGMO with DEAP by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/712
  • Migrate to uv and ruff by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/713
  • Refactor to enable mypy by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/715
  • New AIrsenal version by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/722
  • fix(pyproject): restrict Python requirement to <4.0 to satisfy bpl dependancy by @vishnuprksh in https://github.com/alan-turing-institute/AIrsenal/pull/730
  • Fix SQLAlchemy error: use playerid instead of Player object in addtransaction by @whrit in https://github.com/alan-turing-institute/AIrsenal/pull/732
  • Recent Development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/738

New Contributors

  • @ppapadatis made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/721
  • @whrit made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/732

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.9.1...1.12.0

- Jupyter Notebook
Published by jack89roberts 10 months ago

https://github.com/alan-turing-institute/airsenal - v1.9.1

What's Changed

  • Workaround addition of managers breaking AIrsenal by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/700

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.9.0...v1.9.1

- Jupyter Notebook
Published by jack89roberts over 1 year ago

https://github.com/alan-turing-institute/airsenal - v1.9.0

What's Changed

Updates AIrsenal for new FPL rules allowing up to 5 free transfers to be saved.

  • Add time diff to data by @radka-j in https://github.com/alan-turing-institute/AIrsenal/pull/591
  • AIrsenal 1.7.2 by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/614
  • :arrow_up: Addresses #620, deprecated postgres dialect name by @Tdarnell in https://github.com/alan-turing-institute/AIrsenal/pull/621
  • [develop] Next AIrsenal release by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/618
  • [develop] Next AIrsenal Release by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/627
  • Allow --maxtransfers, --maxhit and --allowunused options for airsenalrun_pipeline by @iansealy in https://github.com/alan-turing-institute/AIrsenal/pull/637
  • Bump pillow from 10.0.0 to 10.0.1 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/644
  • Bump urllib3 from 2.0.4 to 2.0.6 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/643
  • Bump tornado from 6.3.2 to 6.3.3 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/640
  • Bump jupyter-server from 2.7.0 to 2.7.2 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/628
  • Updating team model by @rchan26 in https://github.com/alan-turing-institute/AIrsenal/pull/561
  • Next AIrsenal release [develop branch] by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/645
  • Recent Development: 23/24 season data & 24/25 season setup by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/668
  • Update max free transfers to 5 by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/680
  • Develop by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/691

New Contributors

  • @iansealy made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/637

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.7.1...v1.9.0

- Jupyter Notebook
Published by jack89roberts almost 2 years ago

https://github.com/alan-turing-institute/airsenal - v1.7.1: `bpl` and dependency updates

AIrsenal dependency updates to work with latest version of the bpl-next repo, plus further fixes in preparation for the 2023/24 season including problems with additional captcha/ad block checks in the API.

What's Changed

  • Replay experiments random by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/595
  • :bug: fix pipeline fails if pygmo not installed by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/603
  • :bug: [#604] fix getstartingsquad assuming NEXT_GAMEWEEK by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/605
  • Bump certifi from 2023.5.7 to 2023.7.22 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/606
  • Fix #608 logging in issue by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/609
  • Minutes estimation dataset for Hackweek by @rchan26 in https://github.com/alan-turing-institute/AIrsenal/pull/573
  • [develop] Next AIrsenal release by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/601

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.6.1...v1.7.1

- Jupyter Notebook
Published by jack89roberts almost 3 years ago

https://github.com/alan-turing-institute/airsenal - v1.6.1: 2023/24 Season

What's Changed

  • Feature/replay save stats by @nbarlowATI in https://github.com/alan-turing-institute/AIrsenal/pull/540
  • Type hints for scripts by @rchan26 in https://github.com/alan-turing-institute/AIrsenal/pull/544
  • Feature/warn wildcard transfers by @nbarlowATI in https://github.com/alan-turing-institute/AIrsenal/pull/551
  • give free wild card for gw following 2022 world cup by @nbarlowATI in https://github.com/alan-turing-institute/AIrsenal/pull/557
  • Bump pillow from 9.2.0 to 9.3.0 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/554
  • Recent Development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/547
  • Fix for #559 by @rchan26 in https://github.com/alan-turing-institute/AIrsenal/pull/562
  • Avoid pygmo not found error if not installed (again) by @rchan26 in https://github.com/alan-turing-institute/AIrsenal/pull/563
  • Bump ipython from 8.4.0 to 8.10.0 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/564
  • Bump jupyter-core from 4.11.1 to 4.11.2 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/558
  • Bump werkzeug from 2.2.2 to 2.2.3 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/566
  • Bump flask from 2.2.2 to 2.3.2 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/569
  • add xg, xa, xgi, xgc data to player score by @rchan26 in https://github.com/alan-turing-institute/AIrsenal/pull/568
  • Recent development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/570
  • Fix inconsistent names across files for Alvaro Fernandez Llorente by @lukehare in https://github.com/alan-turing-institute/AIrsenal/pull/576
  • Add information for teams for the 17-18 season by @helendduncan in https://github.com/alan-turing-institute/AIrsenal/pull/581
  • Fix/574 docker build by @griff-rees in https://github.com/alan-turing-institute/AIrsenal/pull/579
  • Update docs by @radka-j in https://github.com/alan-turing-institute/AIrsenal/pull/585
  • Match evaluation notebook by @crangelsmith in https://github.com/alan-turing-institute/AIrsenal/pull/582
  • Fix assorted docstring typos by @craddm in https://github.com/alan-turing-institute/AIrsenal/pull/593
  • Evolution of attack parameter for game weeks by @helendduncan in https://github.com/alan-turing-institute/AIrsenal/pull/584
  • Season replay hackweek analysis notebook by @crangelsmith in https://github.com/alan-turing-institute/AIrsenal/pull/594
  • Add teammodelclass as input param for replay_seasons. Add random te… by @lukehare in https://github.com/alan-turing-institute/AIrsenal/pull/590
  • REG Hack Week Changes by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/577
  • updates for 2324 season by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/599
  • Add docker-compose.yml and refactor Dockerfile by @griff-rees in https://github.com/alan-turing-institute/AIrsenal/pull/596
  • Recent Development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/600

New Contributors

  • @lukehare made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/576
  • @helendduncan made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/581
  • @griff-rees made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/579
  • @crangelsmith made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/582
  • @craddm made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/593

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.5.2...v1.6.1

- Jupyter Notebook
Published by jack89roberts almost 3 years ago

https://github.com/alan-turing-institute/airsenal - v1.5.2

What's Changed

  • Replace .format() with f-strings by @A1fus in https://github.com/alan-turing-institute/AIrsenal/pull/510
  • Adding functionality to airsenalsetupinitial_db by @rchan26 in https://github.com/alan-turing-institute/AIrsenal/pull/533
  • Update TransferMarkt scraper by @rchan26 in https://github.com/alan-turing-institute/AIrsenal/pull/535
  • Add historic absences by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/520
  • Update tm scraper by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/539
  • Recent Development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/518

New Contributors

  • @A1fus made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/510
  • @rchan26 made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/533

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.5.1...v1.5.2

- Jupyter Notebook
Published by jack89roberts over 3 years ago

https://github.com/alan-turing-institute/airsenal - v1.5.1

What's Changed

  • sort transfers by position (e.g. for after wildcard) by @nbarlowATI in https://github.com/alan-turing-institute/AIrsenal/pull/516
  • Recent Development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/515

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.5.0...v1.5.1

- Jupyter Notebook
Published by jack89roberts almost 4 years ago

https://github.com/alan-turing-institute/airsenal - v1.5.0

What's Changed

  • run fillinitialsquad instead of running optimization, if next gw is 1, or no existing squad found by @nbarlowATI in https://github.com/alan-turing-institute/AIrsenal/pull/498
  • Develop by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/500
  • Fix/493 player names by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/502
  • Move AIrsenal config and database by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/505
  • rename certain players with duplicate names by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/512
  • Recent development (AIrsenal v1.5.0) by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/503

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.4.0...v1.5.0

- Jupyter Notebook
Published by jack89roberts almost 4 years ago

https://github.com/alan-turing-institute/airsenal - v1.4.0

What's Changed

  • Switch to Poetry by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/488
  • Recent Development (airsenal v1.4.0) by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/490

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.3.3...v1.4.0

- Jupyter Notebook
Published by jack89roberts almost 4 years ago

https://github.com/alan-turing-institute/airsenal - v1.3.3

What's Changed

  • Run optimisation on previous seasons by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/455
  • Scrape injury and suspension data from TransferMarkt by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/485
  • Recent Development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/483

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.3.2...v1.3.3

- Jupyter Notebook
Published by jack89roberts almost 4 years ago

https://github.com/alan-turing-institute/airsenal - 1.3.2

What's Changed

  • [#479] Update dateparser by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/480

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.3.1...v1.3.2

- Jupyter Notebook
Published by jack89roberts over 4 years ago

https://github.com/alan-turing-institute/airsenal - 1.3.1

What's Changed

  • Ensure consistent argument names across airsenal functions #457 by @chahak13 in https://github.com/alan-turing-institute/AIrsenal/pull/467
  • Bump lxml from 4.6.3 to 4.6.5 by @dependabot in https://github.com/alan-turing-institute/AIrsenal/pull/462
  • #465 set allowunusedtransfers to False by default by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/470
  • [#469] Avoid squad incomplete errors if no valid replacement found by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/473
  • [#475] Update headers to fix login error by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/477
  • Recent Development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/468

New Contributors

  • @dependabot made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/462

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.3.0...v1.3.1

- Jupyter Notebook
Published by jack89roberts over 4 years ago

https://github.com/alan-turing-institute/airsenal - 1.3.0

What's Changed

  • Add home and away team info to goals and subs by @chahak13 in https://github.com/alan-turing-institute/AIrsenal/pull/440
  • Added API calls from settransfers and setlineup to FPLDataFetcher class by @Abelarm in https://github.com/alan-turing-institute/AIrsenal/pull/442
  • remove duplicates from print out by @callistusndemo in https://github.com/alan-turing-institute/AIrsenal/pull/447
  • Bug/fpl team id consistency by @chahak13 in https://github.com/alan-turing-institute/AIrsenal/pull/450
  • [FIX] Optimization for near the season end by @Abelarm in https://github.com/alan-turing-institute/AIrsenal/pull/446
  • Bug/443 by @chahak13 in https://github.com/alan-turing-institute/AIrsenal/pull/451
  • [Ready for review] Fix issue current squad data by @Tahmeed156 in https://github.com/alan-turing-institute/AIrsenal/pull/452
  • Allow checking 2 more gameweeks for player by @chahak13 in https://github.com/alan-turing-institute/AIrsenal/pull/453
  • Recent Development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/441

New Contributors

  • @Tahmeed156 made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/452

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.2.0...v1.3.0

- Jupyter Notebook
Published by callummole over 4 years ago

https://github.com/alan-turing-institute/airsenal - 1.2.0

What's Changed

  • fixes issue #428 by @sreyan-ghosh in https://github.com/alan-turing-institute/AIrsenal/pull/432
  • Add 5-2-3 formation by @callistusndemo in https://github.com/alan-turing-institute/AIrsenal/pull/438
  • Feature/349/convention docs by @nbarlowATI in https://github.com/alan-turing-institute/AIrsenal/pull/425
  • Add isort and pre-commit config by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/437
  • Add scraper for understat.com (Fixes #430) by @chahak13 in https://github.com/alan-turing-institute/AIrsenal/pull/436
  • Recent Development by @jack89roberts in https://github.com/alan-turing-institute/AIrsenal/pull/435

New Contributors

  • @sreyan-ghosh made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/432
  • @chahak13 made their first contribution in https://github.com/alan-turing-institute/AIrsenal/pull/436

Full Changelog: https://github.com/alan-turing-institute/AIrsenal/compare/v1.1.1...v1.2.0

- Jupyter Notebook
Published by nbarlowATI over 4 years ago

https://github.com/alan-turing-institute/airsenal - v1.1.1

Enhancements

  • Make arguments for playing chips available in airsenal_run_pipeline (#422)

Bug Fixes

  • Closes #423 - fix outdated use of season in Squad.get_sell_price_for_player

- Jupyter Notebook
Published by jack89roberts over 4 years ago

https://github.com/alan-turing-institute/airsenal - v1.1.0

New Features

  • Closes #403
  • Add player model that computes posterior parameters exactly using conjugate prior (closes #399).

Enhancements

  • Login to FPLDataFetcher for getting latest transfer/picks status and fix bug with AIrsenal thinking players have 2 free transfers for GW2.
  • Update default environment to Python 3.8
  • Weakens the prior for the player model (to be equivalent to being on the pitch for 13 team goals)
  • Add season as an attribute of the Squad class (#354)

Bug Fixes

  • Closes #410 : Fix KeyError in make_transfers
  • Force multiprocessing strategy to spawn on posix systems, to fix change in default strategy between Python 3.7 and 3.8.
  • Closes #412

- Jupyter Notebook
Published by jack89roberts almost 5 years ago

https://github.com/alan-turing-institute/airsenal - v1.0.0

New Features

  • Lineups can now be set automatically via the FPL API, as well as transfers.

Enhancements

  • Stan models replaced with numpyro (and bpl with bpl-next).
  • Pinned dependency versions.

Bug Fixes

  • airsenal_make_pipeline will now quit if any step fails.
  • Applying transfers in the API now works for initial squads in gameweek 1.
  • Fix Docker builds.
  • airsenal_setup_initial_db now checks whether a database already exists before proceeding.

- Jupyter Notebook
Published by jack89roberts almost 5 years ago

https://github.com/alan-turing-institute/airsenal - v0.5.0

New Features

  • Add data files from API for the completed 2020/21 season.
  • Add 2021/22 teams and FIFA ratings.

Enhancements

  • Use recent minutes from a minimum of the last 3 gameweeks when making predictions (previously same number of gameweeks as predicting for, so could be as few as a single gameweek).
  • Code refactoring.
  • Make it possible to use genetic optimisation for wildcards and free hits (not only initial squads)

Bug Fixes

  • Only attempt to update player attributes history after GW1.

- Jupyter Notebook
Published by jack89roberts almost 5 years ago

https://github.com/alan-turing-institute/airsenal - v0.4.1

  • Fix missing returrn statement in airsenal_make_transfers.
  • Updates to README.md for airsenal_make_transfers and how to optimise chips with airsenal_run_optimization.

- Jupyter Notebook
Published by jack89roberts about 5 years ago

https://github.com/alan-turing-institute/airsenal - v0.4.0

New Features

  • Closes #159 : Add injury/suspension status to the PlayerAttributes table in the database.
  • Closes #338 : Add fixture updates to airsenal_update_db
  • Make it possible to specify the database location in config files.
  • Closes #286 : Add airsenal_make_transfers to programmatically make recommended transfers with the FPL API.

Enhancements

  • Add FIFA ratings for 17/18 season.
  • Default to using recent minutes from the same number of matches that we're predicting for (previously always last 3 matches).
  • Make airsenal_update_db faster by modifying get_gameweek_by_date to filter fixtures by season and adding a LRU cache (same as the previous contribution to make the optimisation much faster).
  • Make airsenal_run_pipeline only update the database by default (not delete and recreate). Add --clean argument to delete and recreate if desired.
  • Add __str__ methods to classes in schema to tidy up some printing.

Bug Fixes

  • Check for pre-existing rows in the database when updating match results and player scores.
  • Closes #355 : Fix checks for whether transactions are already in the database when adding them from the API
  • Fix some logic around updating pre-existing rows and free hit transfers, and finding the last gameweek we have all results for.
  • Closes #356 : Fix error caused by query in get_max_gameweek.
  • Pin pystan to v2 due to breaking changes in v3, and install bpl from a specific git commit.
  • Attempt to fit the team model 3 times before erroring as a workaround for sporadic initialisation errors from bpl.
  • Hide tqdm warnings in optimisation progress bars (#360 )

- Jupyter Notebook
Published by jack89roberts about 5 years ago

https://github.com/alan-turing-institute/airsenal - v0.3.0

New Features

  • Add option to exclude strategies that spend too many points on transfers, or that waste free transfers (#321 )
  • Closes #314: Make it possible to specify the week chips are played.
  • Closes #265: Make it possible to specify FPL team ID from the command-line.
  • Closes #266: Make it possible to run AIrsenal with multiple team IDs.
  • Closes #317: Discount predicted points totals from future gameweeks.

Enhancements

  • Closes #227 : Fix flake8 errors and add code quality checks to Travis.
  • Closes #148: Quit optimisation with a meaningful error message if prediction tag doesn't have predictions for specified gameweeks.
  • Closes #329: Clarify API access errors (that can be ignored) printed for squads entered after GW1.
  • Speedup prediction and make it possible to run on more than four threads (#328)

Bug Fixes

  • Fix using pre-wildcard/pre-free hit squad for points calculation (#312)
  • Fix points calculation for free hit/bench boost + no transfers (#315)
  • Closes #323 Fix missing results/scores if update run mid-gameweek.
  • Fix sanity check errors caused by 5 substitutes being allowed at the end of the 2019/20 season (from #333, for #180)
  • Closes #332 : Fix incorrect import in data sanity checks

- Jupyter Notebook
Published by jack89roberts over 5 years ago