brlib 0.1.0__tar.gz → 0.2.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (419) hide show
  1. {brlib-0.1.0 → brlib-0.2.0}/.github/workflows/test.yml +3 -2
  2. {brlib-0.1.0 → brlib-0.2.0}/PKG-INFO +1 -1
  3. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/__init__.py +1 -1
  4. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/_helpers/abbreviations_manager.py +1 -1
  5. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/_helpers/constants.py +54 -45
  6. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/_helpers/no_hitter_dicts.py +2 -2
  7. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/_helpers/utils.py +11 -10
  8. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/all_major_leaguers.py +2 -2
  9. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/find_games.py +1 -1
  10. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/find_teams.py +1 -1
  11. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/game.py +136 -114
  12. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/game_set.py +104 -104
  13. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/options.py +76 -4
  14. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/player.py +66 -57
  15. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/player_set.py +35 -35
  16. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/team.py +107 -13
  17. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/team_set.py +94 -4
  18. {brlib-0.1.0 → brlib-0.2.0}/tests/_helpers/test_abbreviations_manager.py +13 -25
  19. {brlib-0.1.0 → brlib-0.2.0}/tests/_helpers/test_no_hitter_dicts.py +42 -26
  20. brlib-0.2.0/tests/_helpers/test_utils.py +58 -0
  21. brlib-0.2.0/tests/conftest.py +138 -0
  22. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/1961-allstar-game-1/info.csv +2 -2
  23. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/2025-allstar-game/info.csv +2 -2
  24. brlib-0.2.0/tests/expected/games/original/ANA202305090/batting.csv +24 -0
  25. brlib-0.2.0/tests/expected/games/original/ANA202305090/fielding.csv +25 -0
  26. brlib-0.2.0/tests/expected/games/original/ANA202305090/info.csv +2 -0
  27. brlib-0.2.0/tests/expected/games/original/ANA202305090/linescore.csv +3 -0
  28. brlib-0.2.0/tests/expected/games/original/ANA202305090/pitching.csv +7 -0
  29. brlib-0.2.0/tests/expected/games/original/ANA202305090/players.json +1 -0
  30. brlib-0.2.0/tests/expected/games/original/ANA202305090/team_info.csv +3 -0
  31. brlib-0.2.0/tests/expected/games/original/ANA202305090/teams.json +1 -0
  32. brlib-0.2.0/tests/expected/games/original/ANA202305090/ump_info.csv +5 -0
  33. {brlib-0.1.0/tests/expected/games/updated → brlib-0.2.0/tests/expected/games/original}/BOS201708250/info.csv +2 -2
  34. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/FLO199407290/info.csv +2 -2
  35. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/MLA190105301/info.csv +2 -2
  36. {brlib-0.1.0/tests/expected/games/updated → brlib-0.2.0/tests/expected/games/original}/NYN200908230/info.csv +2 -2
  37. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PHI202211020/info.csv +2 -2
  38. {brlib-0.1.0/tests/expected/games/updated → brlib-0.2.0/tests/expected/games/original}/PIT192010023/info.csv +2 -2
  39. {brlib-0.1.0/tests/expected/games/updated → brlib-0.2.0/tests/expected/games/original}/SEA197805231/info.csv +2 -2
  40. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201208150/info.csv +2 -2
  41. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201804190/info.csv +2 -2
  42. {brlib-0.1.0/tests/expected/games/updated → brlib-0.2.0/tests/expected/games/original}/SEA201905270/info.csv +2 -2
  43. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA202210150/info.csv +2 -2
  44. brlib-0.2.0/tests/expected/games/original/SLN190710051/batting.csv +22 -0
  45. brlib-0.2.0/tests/expected/games/original/SLN190710051/fielding.csv +22 -0
  46. brlib-0.2.0/tests/expected/games/original/SLN190710051/info.csv +2 -0
  47. brlib-0.2.0/tests/expected/games/original/SLN190710051/linescore.csv +3 -0
  48. brlib-0.2.0/tests/expected/games/original/SLN190710051/pitching.csv +5 -0
  49. brlib-0.2.0/tests/expected/games/original/SLN190710051/players.json +1 -0
  50. brlib-0.2.0/tests/expected/games/original/SLN190710051/team_info.csv +3 -0
  51. brlib-0.2.0/tests/expected/games/original/SLN190710051/teams.json +1 -0
  52. brlib-0.2.0/tests/expected/games/original/SLN190710051/ump_info.csv +2 -0
  53. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/1961-allstar-game-1/info.csv +2 -2
  54. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/2025-allstar-game/info.csv +2 -2
  55. brlib-0.2.0/tests/expected/games/updated/ANA202305090/batting.csv +24 -0
  56. brlib-0.2.0/tests/expected/games/updated/ANA202305090/fielding.csv +25 -0
  57. brlib-0.2.0/tests/expected/games/updated/ANA202305090/info.csv +2 -0
  58. brlib-0.2.0/tests/expected/games/updated/ANA202305090/linescore.csv +3 -0
  59. brlib-0.2.0/tests/expected/games/updated/ANA202305090/pitching.csv +7 -0
  60. brlib-0.2.0/tests/expected/games/updated/ANA202305090/team_info.csv +3 -0
  61. {brlib-0.1.0/tests/expected/games/original → brlib-0.2.0/tests/expected/games/updated}/BOS201708250/info.csv +2 -2
  62. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/FLO199407290/info.csv +2 -2
  63. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/MLA190105301/info.csv +2 -2
  64. {brlib-0.1.0/tests/expected/games/original → brlib-0.2.0/tests/expected/games/updated}/NYN200908230/info.csv +2 -2
  65. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PHI202211020/info.csv +2 -2
  66. {brlib-0.1.0/tests/expected/games/original → brlib-0.2.0/tests/expected/games/updated}/PIT192010023/info.csv +2 -2
  67. {brlib-0.1.0/tests/expected/games/original → brlib-0.2.0/tests/expected/games/updated}/SEA197805231/info.csv +2 -2
  68. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201208150/info.csv +2 -2
  69. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201804190/info.csv +2 -2
  70. {brlib-0.1.0/tests/expected/games/original → brlib-0.2.0/tests/expected/games/updated}/SEA201905270/info.csv +2 -2
  71. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA202210150/info.csv +2 -2
  72. brlib-0.2.0/tests/expected/games/updated/SLN190710051/batting.csv +22 -0
  73. brlib-0.2.0/tests/expected/games/updated/SLN190710051/fielding.csv +22 -0
  74. brlib-0.2.0/tests/expected/games/updated/SLN190710051/info.csv +2 -0
  75. brlib-0.2.0/tests/expected/games/updated/SLN190710051/linescore.csv +3 -0
  76. brlib-0.2.0/tests/expected/games/updated/SLN190710051/pitching.csv +5 -0
  77. brlib-0.2.0/tests/expected/games/updated/SLN190710051/team_info.csv +3 -0
  78. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/aloumo01/batting.csv +4 -4
  79. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/aloumo01/fielding.csv +80 -80
  80. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/bendech01/batting.csv +5 -5
  81. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/bendech01/fielding.csv +43 -43
  82. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/bendech01/pitching.csv +5 -5
  83. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/colli05/fielding.csv +3 -3
  84. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/gibsojo99/fielding.csv +66 -66
  85. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/hallaro01/batting.csv +2 -2
  86. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/hallaro01/fielding.csv +21 -21
  87. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/hallaro01/pitching.csv +2 -2
  88. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/jacksre01/batting.csv +11 -11
  89. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/jacksre01/fielding.csv +94 -94
  90. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/kigerma01/fielding.csv +1 -1
  91. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/pressry01/batting.csv +7 -7
  92. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/pressry01/fielding.csv +25 -25
  93. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/pressry01/pitching.csv +7 -7
  94. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/vogtst01/batting.csv +1 -1
  95. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/vogtst01/fielding.csv +52 -52
  96. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/bendech01/pitching.csv +5 -5
  97. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/hallaro01/pitching.csv +2 -2
  98. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/pressry01/pitching.csv +7 -7
  99. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BBB1924/info.csv +1 -1
  100. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BEG1939/batting.csv +1 -1
  101. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BEG1939/info.csv +1 -1
  102. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/CHC2020/info.csv +1 -1
  103. brlib-0.2.0/tests/expected/teams/original/COT1932/batting.csv +1 -0
  104. brlib-0.2.0/tests/expected/teams/original/COT1932/fielding.csv +1 -0
  105. brlib-0.2.0/tests/expected/teams/original/COT1932/info.csv +2 -0
  106. brlib-0.2.0/tests/expected/teams/original/COT1932/pitching.csv +1 -0
  107. brlib-0.2.0/tests/expected/teams/original/COT1932/players.json +1 -0
  108. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/HOU2022/batting.csv +2 -2
  109. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/HOU2022/info.csv +1 -1
  110. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/LAA2012/info.csv +1 -1
  111. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/SEA2012/batting.csv +1 -1
  112. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/SEA2012/info.csv +1 -1
  113. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/WSH1904/info.csv +1 -1
  114. brlib-0.2.0/tests/expected/teams/updated/BBB1924/batting.csv +26 -0
  115. brlib-0.2.0/tests/expected/teams/updated/BBB1924/fielding.csv +22 -0
  116. brlib-0.2.0/tests/expected/teams/updated/BBB1924/info.csv +2 -0
  117. brlib-0.2.0/tests/expected/teams/updated/BEG1939/batting.csv +45 -0
  118. brlib-0.2.0/tests/expected/teams/updated/BEG1939/fielding.csv +37 -0
  119. brlib-0.2.0/tests/expected/teams/updated/BEG1939/info.csv +2 -0
  120. brlib-0.2.0/tests/expected/teams/updated/CHC2020/batting.csv +49 -0
  121. brlib-0.2.0/tests/expected/teams/updated/CHC2020/fielding.csv +69 -0
  122. brlib-0.2.0/tests/expected/teams/updated/CHC2020/info.csv +2 -0
  123. brlib-0.2.0/tests/expected/teams/updated/COT1932/batting.csv +1 -0
  124. brlib-0.2.0/tests/expected/teams/updated/COT1932/fielding.csv +1 -0
  125. brlib-0.2.0/tests/expected/teams/updated/COT1932/info.csv +2 -0
  126. brlib-0.2.0/tests/expected/teams/updated/COT1932/pitching.csv +1 -0
  127. brlib-0.2.0/tests/expected/teams/updated/HOU2022/batting.csv +52 -0
  128. brlib-0.2.0/tests/expected/teams/updated/HOU2022/fielding.csv +75 -0
  129. brlib-0.2.0/tests/expected/teams/updated/HOU2022/info.csv +2 -0
  130. brlib-0.2.0/tests/expected/teams/updated/LAA2012/batting.csv +39 -0
  131. brlib-0.2.0/tests/expected/teams/updated/LAA2012/fielding.csv +45 -0
  132. brlib-0.2.0/tests/expected/teams/updated/LAA2012/info.csv +2 -0
  133. brlib-0.2.0/tests/expected/teams/updated/LAA2012/pitching.csv +25 -0
  134. brlib-0.2.0/tests/expected/teams/updated/SEA2012/batting.csv +38 -0
  135. brlib-0.2.0/tests/expected/teams/updated/SEA2012/fielding.csv +39 -0
  136. brlib-0.2.0/tests/expected/teams/updated/SEA2012/info.csv +2 -0
  137. brlib-0.2.0/tests/expected/teams/updated/WSH1904/batting.csv +31 -0
  138. brlib-0.2.0/tests/expected/teams/updated/WSH1904/fielding.csv +29 -0
  139. brlib-0.2.0/tests/expected/teams/updated/WSH1904/info.csv +2 -0
  140. brlib-0.2.0/tests/expected/teams/updated/WSH1904/pitching.csv +11 -0
  141. brlib-0.2.0/tests/test_all_major_leaguers.py +23 -0
  142. {brlib-0.1.0 → brlib-0.2.0}/tests/test_game.py +1 -1
  143. {brlib-0.1.0 → brlib-0.2.0}/tests/test_player.py +1 -1
  144. {brlib-0.1.0 → brlib-0.2.0}/tests/test_team.py +22 -4
  145. brlib-0.1.0/.gitignore +0 -0
  146. brlib-0.1.0/tests/conftest.py +0 -114
  147. brlib-0.1.0/tests/expected/teams/updated/LAA2012/pitching.csv +0 -25
  148. brlib-0.1.0/tests/expected/teams/updated/WSH1904/pitching.csv +0 -11
  149. {brlib-0.1.0 → brlib-0.2.0}/.github/workflows/publish.yml +0 -0
  150. {brlib-0.1.0 → brlib-0.2.0}/LICENSE.txt +0 -0
  151. {brlib-0.1.0 → brlib-0.2.0}/README.md +0 -0
  152. {brlib-0.1.0 → brlib-0.2.0}/pyproject.toml +0 -0
  153. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/_helpers/__init__.py +0 -0
  154. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/_helpers/inputs.py +0 -0
  155. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/_helpers/requests_manager.py +0 -0
  156. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/_helpers/singleton.py +0 -0
  157. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/find_asg.py +0 -0
  158. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/get_games.py +0 -0
  159. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/get_players.py +0 -0
  160. {brlib-0.1.0 → brlib-0.2.0}/src/brlib/get_teams.py +0 -0
  161. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/1961-allstar-game-1/batting.csv +0 -0
  162. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/1961-allstar-game-1/fielding.csv +0 -0
  163. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/1961-allstar-game-1/linescore.csv +0 -0
  164. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/1961-allstar-game-1/pitching.csv +0 -0
  165. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/1961-allstar-game-1/players.json +0 -0
  166. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/1961-allstar-game-1/team_info.csv +0 -0
  167. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/1961-allstar-game-1/teams.json +0 -0
  168. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/1961-allstar-game-1/ump_info.csv +0 -0
  169. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/2025-allstar-game/batting.csv +0 -0
  170. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/2025-allstar-game/fielding.csv +0 -0
  171. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/2025-allstar-game/linescore.csv +0 -0
  172. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/2025-allstar-game/pitching.csv +0 -0
  173. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/2025-allstar-game/players.json +0 -0
  174. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/2025-allstar-game/team_info.csv +0 -0
  175. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/2025-allstar-game/teams.json +0 -0
  176. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/2025-allstar-game/ump_info.csv +0 -0
  177. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/BOS201708250/batting.csv +0 -0
  178. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/BOS201708250/fielding.csv +0 -0
  179. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/BOS201708250/linescore.csv +0 -0
  180. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/BOS201708250/pitching.csv +0 -0
  181. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/BOS201708250/players.json +0 -0
  182. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/BOS201708250/team_info.csv +0 -0
  183. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/BOS201708250/teams.json +0 -0
  184. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/BOS201708250/ump_info.csv +0 -0
  185. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/FLO199407290/batting.csv +0 -0
  186. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/FLO199407290/fielding.csv +0 -0
  187. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/FLO199407290/linescore.csv +0 -0
  188. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/FLO199407290/pitching.csv +0 -0
  189. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/FLO199407290/players.json +0 -0
  190. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/FLO199407290/team_info.csv +0 -0
  191. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/FLO199407290/teams.json +0 -0
  192. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/FLO199407290/ump_info.csv +0 -0
  193. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/MLA190105301/batting.csv +0 -0
  194. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/MLA190105301/fielding.csv +0 -0
  195. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/MLA190105301/linescore.csv +0 -0
  196. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/MLA190105301/pitching.csv +0 -0
  197. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/MLA190105301/players.json +0 -0
  198. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/MLA190105301/team_info.csv +0 -0
  199. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/MLA190105301/teams.json +0 -0
  200. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/MLA190105301/ump_info.csv +0 -0
  201. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/NYN200908230/batting.csv +0 -0
  202. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/NYN200908230/fielding.csv +0 -0
  203. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/NYN200908230/linescore.csv +0 -0
  204. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/NYN200908230/pitching.csv +0 -0
  205. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/NYN200908230/players.json +0 -0
  206. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/NYN200908230/team_info.csv +0 -0
  207. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/NYN200908230/teams.json +0 -0
  208. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/NYN200908230/ump_info.csv +0 -0
  209. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PHI202211020/batting.csv +0 -0
  210. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PHI202211020/fielding.csv +0 -0
  211. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PHI202211020/linescore.csv +0 -0
  212. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PHI202211020/pitching.csv +0 -0
  213. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PHI202211020/players.json +0 -0
  214. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PHI202211020/team_info.csv +0 -0
  215. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PHI202211020/teams.json +0 -0
  216. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PHI202211020/ump_info.csv +0 -0
  217. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PIT192010023/batting.csv +0 -0
  218. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PIT192010023/fielding.csv +0 -0
  219. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PIT192010023/linescore.csv +0 -0
  220. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PIT192010023/pitching.csv +0 -0
  221. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PIT192010023/players.json +0 -0
  222. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PIT192010023/team_info.csv +0 -0
  223. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PIT192010023/teams.json +0 -0
  224. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/PIT192010023/ump_info.csv +0 -0
  225. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA197805231/batting.csv +0 -0
  226. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA197805231/fielding.csv +0 -0
  227. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA197805231/linescore.csv +0 -0
  228. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA197805231/pitching.csv +0 -0
  229. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA197805231/players.json +0 -0
  230. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA197805231/team_info.csv +0 -0
  231. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA197805231/teams.json +0 -0
  232. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA197805231/ump_info.csv +0 -0
  233. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201208150/batting.csv +0 -0
  234. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201208150/fielding.csv +0 -0
  235. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201208150/linescore.csv +0 -0
  236. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201208150/pitching.csv +0 -0
  237. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201208150/players.json +0 -0
  238. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201208150/team_info.csv +0 -0
  239. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201208150/teams.json +0 -0
  240. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201208150/ump_info.csv +0 -0
  241. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201804190/batting.csv +0 -0
  242. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201804190/fielding.csv +0 -0
  243. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201804190/linescore.csv +0 -0
  244. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201804190/pitching.csv +0 -0
  245. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201804190/players.json +0 -0
  246. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201804190/team_info.csv +0 -0
  247. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201804190/teams.json +0 -0
  248. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201804190/ump_info.csv +0 -0
  249. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201905270/batting.csv +0 -0
  250. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201905270/fielding.csv +0 -0
  251. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201905270/linescore.csv +0 -0
  252. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201905270/pitching.csv +0 -0
  253. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201905270/players.json +0 -0
  254. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201905270/team_info.csv +0 -0
  255. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201905270/teams.json +0 -0
  256. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA201905270/ump_info.csv +0 -0
  257. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA202210150/batting.csv +0 -0
  258. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA202210150/fielding.csv +0 -0
  259. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA202210150/linescore.csv +0 -0
  260. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA202210150/pitching.csv +0 -0
  261. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA202210150/players.json +0 -0
  262. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA202210150/team_info.csv +0 -0
  263. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA202210150/teams.json +0 -0
  264. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/original/SEA202210150/ump_info.csv +0 -0
  265. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/1961-allstar-game-1/batting.csv +0 -0
  266. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/1961-allstar-game-1/fielding.csv +0 -0
  267. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/1961-allstar-game-1/linescore.csv +0 -0
  268. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/1961-allstar-game-1/pitching.csv +0 -0
  269. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/1961-allstar-game-1/team_info.csv +0 -0
  270. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/2025-allstar-game/batting.csv +0 -0
  271. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/2025-allstar-game/fielding.csv +0 -0
  272. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/2025-allstar-game/linescore.csv +0 -0
  273. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/2025-allstar-game/pitching.csv +0 -0
  274. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/2025-allstar-game/team_info.csv +0 -0
  275. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/BOS201708250/batting.csv +0 -0
  276. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/BOS201708250/fielding.csv +0 -0
  277. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/BOS201708250/linescore.csv +0 -0
  278. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/BOS201708250/pitching.csv +0 -0
  279. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/BOS201708250/team_info.csv +0 -0
  280. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/FLO199407290/batting.csv +0 -0
  281. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/FLO199407290/fielding.csv +0 -0
  282. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/FLO199407290/linescore.csv +0 -0
  283. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/FLO199407290/pitching.csv +0 -0
  284. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/FLO199407290/team_info.csv +0 -0
  285. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/MLA190105301/batting.csv +0 -0
  286. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/MLA190105301/fielding.csv +0 -0
  287. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/MLA190105301/linescore.csv +0 -0
  288. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/MLA190105301/pitching.csv +0 -0
  289. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/MLA190105301/team_info.csv +0 -0
  290. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/NYN200908230/batting.csv +0 -0
  291. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/NYN200908230/fielding.csv +0 -0
  292. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/NYN200908230/linescore.csv +0 -0
  293. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/NYN200908230/pitching.csv +0 -0
  294. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/NYN200908230/team_info.csv +0 -0
  295. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PHI202211020/batting.csv +0 -0
  296. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PHI202211020/fielding.csv +0 -0
  297. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PHI202211020/linescore.csv +0 -0
  298. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PHI202211020/pitching.csv +0 -0
  299. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PHI202211020/team_info.csv +0 -0
  300. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PIT192010023/batting.csv +0 -0
  301. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PIT192010023/fielding.csv +0 -0
  302. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PIT192010023/linescore.csv +0 -0
  303. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PIT192010023/pitching.csv +0 -0
  304. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/PIT192010023/team_info.csv +0 -0
  305. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA197805231/batting.csv +0 -0
  306. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA197805231/fielding.csv +0 -0
  307. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA197805231/linescore.csv +0 -0
  308. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA197805231/pitching.csv +0 -0
  309. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA197805231/team_info.csv +0 -0
  310. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201208150/batting.csv +0 -0
  311. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201208150/fielding.csv +0 -0
  312. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201208150/linescore.csv +0 -0
  313. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201208150/pitching.csv +0 -0
  314. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201208150/team_info.csv +0 -0
  315. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201804190/batting.csv +0 -0
  316. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201804190/fielding.csv +0 -0
  317. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201804190/linescore.csv +0 -0
  318. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201804190/pitching.csv +0 -0
  319. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201804190/team_info.csv +0 -0
  320. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201905270/batting.csv +0 -0
  321. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201905270/fielding.csv +0 -0
  322. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201905270/linescore.csv +0 -0
  323. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201905270/pitching.csv +0 -0
  324. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA201905270/team_info.csv +0 -0
  325. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA202210150/batting.csv +0 -0
  326. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA202210150/fielding.csv +0 -0
  327. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA202210150/linescore.csv +0 -0
  328. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA202210150/pitching.csv +0 -0
  329. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/games/updated/SEA202210150/team_info.csv +0 -0
  330. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/aloumo01/bling.csv +0 -0
  331. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/aloumo01/info.csv +0 -0
  332. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/aloumo01/pitching.csv +0 -0
  333. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/aloumo01/relatives.json +0 -0
  334. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/aloumo01/teams.json +0 -0
  335. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/bendech01/bling.csv +0 -0
  336. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/bendech01/info.csv +0 -0
  337. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/bendech01/relatives.json +0 -0
  338. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/bendech01/teams.json +0 -0
  339. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/colli05/batting.csv +0 -0
  340. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/colli05/bling.csv +0 -0
  341. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/colli05/info.csv +0 -0
  342. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/colli05/pitching.csv +0 -0
  343. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/colli05/relatives.json +0 -0
  344. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/colli05/teams.json +0 -0
  345. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/gibsojo99/batting.csv +0 -0
  346. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/gibsojo99/bling.csv +0 -0
  347. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/gibsojo99/info.csv +0 -0
  348. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/gibsojo99/pitching.csv +0 -0
  349. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/gibsojo99/relatives.json +0 -0
  350. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/gibsojo99/teams.json +0 -0
  351. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/hallaro01/bling.csv +0 -0
  352. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/hallaro01/info.csv +0 -0
  353. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/hallaro01/relatives.json +0 -0
  354. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/hallaro01/teams.json +0 -0
  355. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/jacksre01/bling.csv +0 -0
  356. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/jacksre01/info.csv +0 -0
  357. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/jacksre01/pitching.csv +0 -0
  358. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/jacksre01/relatives.json +0 -0
  359. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/jacksre01/teams.json +0 -0
  360. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/kigerma01/batting.csv +0 -0
  361. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/kigerma01/bling.csv +0 -0
  362. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/kigerma01/info.csv +0 -0
  363. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/kigerma01/pitching.csv +0 -0
  364. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/kigerma01/relatives.json +0 -0
  365. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/kigerma01/teams.json +0 -0
  366. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/pressry01/bling.csv +0 -0
  367. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/pressry01/info.csv +0 -0
  368. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/pressry01/relatives.json +0 -0
  369. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/pressry01/teams.json +0 -0
  370. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/vogtst01/bling.csv +0 -0
  371. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/vogtst01/info.csv +0 -0
  372. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/vogtst01/pitching.csv +0 -0
  373. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/vogtst01/relatives.json +0 -0
  374. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/original/vogtst01/teams.json +0 -0
  375. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/aloumo01/info.csv +0 -0
  376. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/aloumo01/pitching.csv +0 -0
  377. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/bendech01/info.csv +0 -0
  378. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/colli05/info.csv +0 -0
  379. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/colli05/pitching.csv +0 -0
  380. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/gibsojo99/info.csv +0 -0
  381. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/gibsojo99/pitching.csv +0 -0
  382. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/hallaro01/info.csv +0 -0
  383. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/jacksre01/info.csv +0 -0
  384. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/jacksre01/pitching.csv +0 -0
  385. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/kigerma01/info.csv +0 -0
  386. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/kigerma01/pitching.csv +0 -0
  387. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/pressry01/info.csv +0 -0
  388. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/vogtst01/info.csv +0 -0
  389. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/players/updated/vogtst01/pitching.csv +0 -0
  390. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BBB1924/batting.csv +0 -0
  391. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BBB1924/fielding.csv +0 -0
  392. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BBB1924/pitching.csv +0 -0
  393. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BBB1924/players.json +0 -0
  394. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BEG1939/fielding.csv +0 -0
  395. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BEG1939/pitching.csv +0 -0
  396. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/BEG1939/players.json +0 -0
  397. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/CHC2020/batting.csv +0 -0
  398. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/CHC2020/fielding.csv +0 -0
  399. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/CHC2020/pitching.csv +0 -0
  400. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/CHC2020/players.json +0 -0
  401. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/HOU2022/fielding.csv +0 -0
  402. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/HOU2022/pitching.csv +0 -0
  403. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/HOU2022/players.json +0 -0
  404. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/LAA2012/batting.csv +0 -0
  405. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/LAA2012/fielding.csv +0 -0
  406. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/LAA2012/pitching.csv +0 -0
  407. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/LAA2012/players.json +0 -0
  408. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/SEA2012/fielding.csv +0 -0
  409. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/SEA2012/pitching.csv +0 -0
  410. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/SEA2012/players.json +0 -0
  411. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/WSH1904/batting.csv +0 -0
  412. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/WSH1904/fielding.csv +0 -0
  413. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/WSH1904/pitching.csv +0 -0
  414. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/original/WSH1904/players.json +0 -0
  415. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/updated/BBB1924/pitching.csv +0 -0
  416. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/updated/BEG1939/pitching.csv +0 -0
  417. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/updated/CHC2020/pitching.csv +0 -0
  418. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/updated/HOU2022/pitching.csv +0 -0
  419. {brlib-0.1.0 → brlib-0.2.0}/tests/expected/teams/updated/SEA2012/pitching.csv +0 -0
@@ -2,10 +2,11 @@ name: Tests
2
2
 
3
3
  on:
4
4
  push:
5
- branches: '**'
5
+ branches:
6
+ - '**'
6
7
  schedule:
7
8
  # run at 12 UTC, hopefully after BR's daily in-season updates
8
- # run weekly because any more would be overkill
9
+ # run weekly, because anything more would be overkill
9
10
  - cron: '0 12 * * 6'
10
11
 
11
12
  jobs:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: brlib
3
- Version: 0.1.0
3
+ Version: 0.2.0
4
4
  Summary: A library for collecting baseball statistics from Baseball Reference
5
5
  Project-URL: Homepage, https://github.com/john-bieren/brlib
6
6
  Project-URL: Documentation, https://github.com/john-bieren/brlib/wiki
@@ -13,7 +13,7 @@ from .player_set import PlayerSet
13
13
  from .team import Team
14
14
  from .team_set import TeamSet
15
15
 
16
- __version__ = "0.1.0"
16
+ __version__ = "0.2.0"
17
17
 
18
18
  __all__ = [
19
19
  "all_major_leaguers",
@@ -121,7 +121,7 @@ class AbbreviationsManager(Singleton):
121
121
  Can return an empty DataFrame if there is no match.
122
122
 
123
123
  If `era_adjustment` is True, the return DataFrame will contain the row associated with
124
- `abbrevation`'s franchise during `season` even if the abbreviation is not correct.
124
+ `abbreviation`'s franchise during `season` even if the abbreviation is not correct.
125
125
  For example, `self._find_correct_teams("FLA", 2025, True)` returns the `MIA` team row.
126
126
  There can be multiple rows in the return DataFrame if an abbreviation, e.g. `BAL`,
127
127
  is valid during a season, e.g. 1915, and is also associated with a franchise that
@@ -58,11 +58,11 @@ DATE_REGEX = re.compile("^[0-1]?[0-9][0-3][0-9]$")
58
58
  DATE_RANGE_REGEX = re.compile("^[0-1]?[0-9][0-3][0-9]-[0-1]?[0-9][0-3][0-9]$")
59
59
  PLAYER_ID_REGEX = re.compile("^[a-z.'_]{3,7}[0-9]{2}$")
60
60
  SCHEDULE_TAG_REGEX = re.compile("^all_[0-9]")
61
- GAME_URL_REGEX = re.compile(r"https:\/\/www\.baseball-reference\.com\/boxes\/[A-Z1-2]{2,3}\/[A-Z1-2]{2,3}[0-9]{4}[0-1][0-9][0-3][0-9][0-3]\.shtml")
62
- ALLSTAR_GAME_URL_REGEX = re.compile(r"https:\/\/www\.baseball-reference\.com\/allstar\/[1-2][0-9]{3}-allstar-game-?[1-2]?\.shtml")
63
- PLAYER_URL_REGEX = re.compile(r"https:\/\/www\.baseball-reference\.com\/players\/[a-z]\/[a-z.'_]{3,7}[0-9]{2}\.shtml")
64
- TEAM_URL_REGEX = re.compile(r"https:\/\/www\.baseball-reference\.com\/teams\/[A-Z1-4]{2,3}\/[1-2][0-9]{3}\.shtml")
65
- SB_ATTEMPT_REGEX = re.compile(r"^(?P<base>2nd base|3rd base|Home) (?:off|by) (?P<pitcher>\D+)\/(?P<catcher>\D+)(?P<times>[0-9]?)$")
61
+ GAME_URL_REGEX = re.compile(r"https://www\.baseball-reference\.com/boxes/[A-Z1-2]{2,3}/[A-Z1-2]{2,3}[0-9]{4}[0-1][0-9][0-3][0-9][0-3]\.shtml")
62
+ ALLSTAR_GAME_URL_REGEX = re.compile(r"https://www\.baseball-reference\.com/allstar/[1-2][0-9]{3}-allstar-game-?[1-2]?\.shtml")
63
+ PLAYER_URL_REGEX = re.compile(r"https://www\.baseball-reference\.com/players/[a-z]/[a-z.'_]{3,7}[0-9]{2}\.shtml")
64
+ TEAM_URL_REGEX = re.compile(r"https://www\.baseball-reference\.com/teams/[A-Z1-4]{2,3}/[1-2][0-9]{3}\.shtml")
65
+ SB_ATTEMPT_REGEX = re.compile(r"^(?P<base>2nd base|3rd base|Home) (?:off|by) (?P<pitcher>\D+)/(?P<catcher>\D+)(?P<times>[0-9]?)$")
66
66
  PICKOFF_REGEX = re.compile(r"^(?P<base>1st base|2nd base|3rd base|Home) by (?P<pitcher>\D+)(?P<times>[0-9]?)$")
67
67
 
68
68
  # old names for teams (which have box scores) that didn't relocate
@@ -106,54 +106,52 @@ RANGE_TEAM_REPLACEMENTS = (
106
106
  (1901, 1960, "Washington Senators", "Washington Nationals (1901-1960)")
107
107
  )
108
108
 
109
- # old names for stadiums
109
+ # map all names of a venue to its best known name, or current name, if applicable
110
110
  VENUE_REPLACEMENTS = {
111
- "Angel Stadium of Anaheim": "Anaheim Stadium",
112
- "Edison Field": "Anaheim Stadium",
111
+ "Miller Park": "American Family Field",
112
+ "Anaheim Stadium": "Angel Stadium of Anaheim",
113
+ "Edison Field": "Angel Stadium of Anaheim",
113
114
  "BB&T Park": "Bowman Field",
114
115
  "Muncy Bank Ballpark": "Bowman Field",
115
116
  "Journey Bank Ballpark": "Bowman Field",
117
+ "3Com Park": "Candlestick Park",
116
118
  "Bank One Ballpark": "Chase Field",
117
119
  "White Sox Park": "Comiskey Park I",
118
- "U.S. Cellular Field": "Comiskey Park II",
119
- "Guaranteed Rate Field": "Comiskey Park II",
120
- "Rate Field": "Comiskey Park II",
121
120
  "Mile High Stadium": "Coors Field",
122
121
  "Redland Field": "Crosley Field",
123
122
  "Enron Field": "Daikin Park",
124
123
  "Minute Maid Park": "Daikin Park",
125
- "The Ballpark in Arlington": "Globe Life Park",
126
- "Ameriquest Field": "Globe Life Park",
127
- "Rangers Ballpark in Arlington": "Globe Life Park",
128
- "Globe Life Park in Arlington": "Globe Life Park",
129
- "Sun Life Stadium": "Hard Rock Stadium",
130
- "Land Shark Stadium": "Hard Rock Stadium",
131
- "Dolphin Stadium": "Hard Rock Stadium",
132
- "Dolphins Stadium": "Hard Rock Stadium",
133
- "Pro Player Stadium": "Hard Rock Stadium",
124
+ "The Ballpark in Arlington": "Globe Life Park in Arlington",
125
+ "Ameriquest Field": "Globe Life Park in Arlington",
126
+ "Rangers Ballpark in Arlington": "Globe Life Park in Arlington",
127
+ "Comiskey Park II": "Rate Field",
128
+ "U.S. Cellular Field": "Rate Field",
129
+ "Guaranteed Rate Field": "Rate Field",
134
130
  "Joe Robbie Stadium": "Hard Rock Stadium",
131
+ "Pro Player Stadium": "Hard Rock Stadium",
132
+ "Dolphins Stadium": "Hard Rock Stadium",
133
+ "Dolphin Stadium": "Hard Rock Stadium",
134
+ "Land Shark Stadium": "Hard Rock Stadium",
135
+ "Sun Life Stadium": "Hard Rock Stadium",
135
136
  "Royals Stadium": "Kauffman Stadium",
136
- "loanDepot park": "Marlins Park",
137
- "American Family Field": "Miller Park",
138
- "Municipal Stadium": "Oakland Coliseum",
139
- "Oakland-Alameda County Coliseum": "Oakland Coliseum",
140
- "Network Associates Coliseum": "Oakland Coliseum",
141
- "McAfee Coliseum": "Oakland Coliseum",
142
- "O.co Coliseum": "Oakland Coliseum",
143
- "RingCentral Coliseum": "Oakland Coliseum",
144
- "AT&T Park": "Oracle Park",
145
- "SBC Park": "Oracle Park",
137
+ "Marlins Park": "loanDepot park",
138
+ "Oakland Coliseum": "Oakland-Alameda County Coliseum",
139
+ "Network Associates Coliseum": "Oakland-Alameda County Coliseum",
140
+ "McAfee Coliseum": "Oakland-Alameda County Coliseum",
141
+ "O.co Coliseum": "Oakland-Alameda County Coliseum",
142
+ "RingCentral Coliseum": "Oakland-Alameda County Coliseum",
146
143
  "Pacific Bell Park": "Oracle Park",
147
- "3Com Park": "Oracle Park",
144
+ "SBC Park": "Oracle Park",
145
+ "AT&T Park": "Oracle Park",
148
146
  "Jacobs Field": "Progressive Field",
149
147
  "Cinergy Field": "Riverfront Stadium",
150
148
  "SkyDome": "Rogers Centre",
151
- "Jack Murphy Stadium": "San Diego Stadium",
152
- "Qualcomm Stadium": "San Diego Stadium",
149
+ "San Diego Stadium": "Jack Murphy Stadium",
150
+ "Qualcomm Stadium": "Jack Murphy Stadium",
153
151
  "Connie Mack Stadium": "Shibe Park",
152
+ "Safeco Field": "T-Mobile Park",
154
153
  "Navin Field": "Tiger Stadium",
155
154
  "Briggs Stadium": "Tiger Stadium",
156
- "Safeco Field": "T-Mobile Park",
157
155
  "SunTrust Park": "Truist Park",
158
156
  "Weeghman Park": "Wrigley Field",
159
157
  "Cubs Park": "Wrigley Field",
@@ -234,7 +232,24 @@ MISSING_SEASONS_DICT = {
234
232
  1940: {"JRC"}
235
233
  }
236
234
 
237
- # for distniguishing between league and team abbreviations when processing player career totals
235
+ # some games need their winners altered due to forfeits (https://www.retrosheet.org/forfeits.htm)
236
+ FORFEITED_GAME_WINNERS = {
237
+ "NY1190105130": "New York Giants",
238
+ "DET190105310": "Detroit Tigers",
239
+ "CLE190107230": "Washington Senators",
240
+ "PIT190508050": "Pittsburgh Pirates",
241
+ "NYA190609032": "New York Highlanders",
242
+ "SLN190710051": "St. Louis Cardinals",
243
+ "NY1190910042": "New York Giants",
244
+ "CHN191607180": "Brooklyn Robins",
245
+ "CHA191709090": "Chicago White Sox",
246
+ "WS1194108150": "Boston Red Sox",
247
+ "NY1194209262": "Boston Braves",
248
+ "WS2197109300": "New York Yankees",
249
+ "CLE197406040": "Texas Rangers"
250
+ }
251
+
252
+ # for distinguishing between league and team abbreviations when processing player career totals
238
253
  LEAGUE_ABVS = {
239
254
  "WS", "NL", "AL", "NNL", "NN2", "NAL", "ECL", "ANL",
240
255
  "EWL", "NSL", "FL", "AA", "PL", "UA", "NA"
@@ -316,12 +331,11 @@ GAME_INFO_COLS = (
316
331
  "Innings",
317
332
  "Field Condition",
318
333
  "Temperature",
319
- "Windspeed",
334
+ "Wind Speed",
320
335
  "Wind Direction",
321
336
  "Weather",
322
337
  "Precipitation",
323
- "Game Type",
324
- "Doubleheader"
338
+ "Game Type"
325
339
  )
326
340
 
327
341
  GAME_BATTING_COLS = (
@@ -483,12 +497,6 @@ GAME_TEAM_INFO_COLS = (
483
497
  "Game ID"
484
498
  )
485
499
 
486
- GAME_UMP_INFO_COLS = (
487
- "Game ID",
488
- "Position",
489
- "Umpire"
490
- )
491
-
492
500
  PLAYER_INFO_COLS = (
493
501
  "Player",
494
502
  "Player ID",
@@ -764,6 +772,7 @@ PLAYER_FIELDING_COLS = (
764
772
  "CS%",
765
773
  "lgCS%",
766
774
  "Pick",
775
+ "Salary",
767
776
  "AS",
768
777
  "GG",
769
778
  "SS",
@@ -789,7 +798,7 @@ TEAM_INFO_COLS = (
789
798
  "General Manager",
790
799
  "Farm Director",
791
800
  "Scouting Director",
792
- "Ballpark",
801
+ "Venue",
793
802
  "Attendance",
794
803
  "Attendance Rank",
795
804
  "Multi-Year Batting Park Factor",
@@ -199,12 +199,12 @@ class NoHitterDicts(Singleton):
199
199
  player_id_column.append(player_id)
200
200
  elif href.startswith("/boxes"):
201
201
  game_id = str_between(href, "/", ".", anchor="end")
202
- # filter out links to non-existant pages
202
+ # filter out links to non-existent pages
203
203
  if game_id[:-9] not in BML_TEAM_ABVS:
204
204
  game_id_column.append(game_id)
205
205
 
206
206
  combined_df["Player ID"] = player_id_column
207
- combined_df["Game ID"] = combined_df["Game ID"].astype("object")
207
+ combined_df["Game ID"] = combined_df["Game ID"].astype("object") # cast to nullable dtype
208
208
  combined_df.loc[
209
209
  (~combined_df["Team"].isin(BML_TEAM_ABVS)) &
210
210
  (combined_df["Year"].astype(int) >= FIRST_GAMES_YEAR),
@@ -3,10 +3,11 @@
3
3
  """Defines utility functions used throughout the codebase."""
4
4
 
5
5
  import functools
6
+ import typing
6
7
  from collections.abc import Callable
7
8
  from datetime import datetime
8
9
  from types import UnionType
9
- from typing import Any, get_args, get_origin, get_type_hints
10
+ from typing import Any
10
11
 
11
12
  import pandas as pd
12
13
  from bs4 import BeautifulSoup as bs
@@ -18,7 +19,7 @@ from tqdm import tqdm
18
19
  def report_on_exc(resp_index: int = 1) -> Callable[..., Any]:
19
20
  """
20
21
  Prints the URL of a page which causes an exception.
21
- `resp_index` is the index of the decorated function's Response arugment which
22
+ `resp_index` is the index of the decorated function's Response argument which
22
23
  corresponds to the offending page.
23
24
  """
24
25
  def decorator(func: Callable[..., Any]) -> Callable[..., Any]:
@@ -40,7 +41,7 @@ def runtime_typecheck(func: Callable[..., Any]) -> Callable[..., Any]:
40
41
  Raises a TypeError at runtime if values passed to the function
41
42
  do not match its type annotations.
42
43
  """
43
- hints = get_type_hints(func)
44
+ hints = typing.get_type_hints(func)
44
45
 
45
46
  @functools.wraps(func)
46
47
  def wrapper(*args: Any, **kwargs: Any) -> Any:
@@ -61,11 +62,11 @@ def is_type(value: Any, expected_type: type) -> bool:
61
62
  if expected_type == Any:
62
63
  return True
63
64
 
64
- origin = get_origin(expected_type)
65
+ origin = typing.get_origin(expected_type)
65
66
  if origin is None:
66
67
  return isinstance(value, expected_type)
67
68
 
68
- args = get_args(expected_type)
69
+ args = typing.get_args(expected_type)
69
70
  if origin is UnionType:
70
71
  return any(is_type(value, arg) for arg in args)
71
72
 
@@ -97,10 +98,10 @@ def str_between(string: str, start: str, end: str, anchor: str = "start") -> str
97
98
  Returns the substring of `string` which appears between `start` and `end`.
98
99
  `string` must contain `start` and `end`.
99
100
 
100
- If `anchor` == "start", the substring between the first occurrence of `start`
101
+ If `anchor` == `"start"`, the substring between the first occurrence of `start`
101
102
  and the first subsequent occurrence of `end` will be returned.
102
103
 
103
- If `anchor` == "end", the substring between the final occurrence of `end`
104
+ If `anchor` == `"end"`, the substring between the final occurrence of `end`
104
105
  and the final prior occurrence of `start` will be returned.
105
106
  """
106
107
  if start not in string:
@@ -126,7 +127,7 @@ def clean_spaces(string: str) -> str:
126
127
 
127
128
  def reformat_date(string_date: str) -> str:
128
129
  """
129
- Converts `string_date` of "MM DD, YYYY" to "YY-MM-DD" for formatting consistency.
130
+ Converts `string_date` of "Month DD, YYYY" to "YY-MM-DD" for formatting consistency.
130
131
  If `string_date` does not match this format, an empty string will be returned.
131
132
  """
132
133
  try:
@@ -139,7 +140,7 @@ def reformat_date(string_date: str) -> str:
139
140
  day = f"0{day}" if day < 10 else day
140
141
  return f"{date.year}-{month}-{day}"
141
142
 
142
- def soup_from_comment(tag: Tag, only_if_table: bool = False) -> bs | Tag:
143
+ def soup_from_comment(tag: Tag, only_if_table: bool) -> bs | Tag:
143
144
  """
144
145
  Returns contents from the first comment within `tag`.
145
146
  If `tag` does not include a table and `only_if_table` == True, returns `tag`.
@@ -153,7 +154,7 @@ def soup_from_comment(tag: Tag, only_if_table: bool = False) -> bs | Tag:
153
154
  except (IndexError, ValueError):
154
155
  return tag
155
156
 
156
- def scrape_player_ids(table: bs) -> list[str]:
157
+ def scrape_player_ids(table: bs | Tag) -> list[str]:
157
158
  """Returns player IDs from anchor tags in `table`."""
158
159
  player_id_column = []
159
160
  for row in table.find_all("a", href=True):
@@ -16,7 +16,7 @@ def all_major_leaguers() -> pd.DataFrame:
16
16
 
17
17
  ## Parameters
18
18
 
19
- None.
19
+ None
20
20
 
21
21
  ## Returns
22
22
 
@@ -67,6 +67,6 @@ def all_major_leaguers() -> pd.DataFrame:
67
67
  # convert active column from 0/1 to boolean
68
68
  players_df["Active"] = players_df["Active"].astype(bool)
69
69
 
70
- columns=["Player ID", "Name", "Career Start", "Career End", "Active"]
70
+ columns = ["Player ID", "Name", "Career Start", "Career End", "Active"]
71
71
  players_df = players_df.reindex(columns=columns)
72
72
  return players_df
@@ -253,7 +253,7 @@ def _find_season_games(
253
253
  ) -> list[tuple[str, str, str]]:
254
254
  """
255
255
  Scrapes an MLB schedule page, and returns the games from that season which
256
- match all of the other input parameters. Inputs must be uppercase.
256
+ match all the other input parameters. Inputs must be uppercase.
257
257
  """
258
258
  team_set = set(teams)
259
259
  opponent_set = set(opponents)
@@ -170,7 +170,7 @@ def _find_season_teams(year: int, year_teams: list[str]) -> list[tuple[str, str]
170
170
  else:
171
171
  team_mask = abv_man.df["Team"] == team
172
172
 
173
- match_rows = abv_man.df[(year_mask) & (team_mask)]
173
+ match_rows = abv_man.df[year_mask & team_mask]
174
174
  teams = match_rows["Team"].values
175
175
  results = [(abv, str(year)) for abv in teams if abv not in missing_seasons]
176
176
  results.sort(key=lambda x: x[0]) # sort by team abv instead of franchise abv