brlib 0.6.0__tar.gz → 0.7.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 (790) hide show
  1. {brlib-0.6.0 → brlib-0.7.0}/PKG-INFO +1 -1
  2. {brlib-0.6.0 → brlib-0.7.0}/scripts/refresh_tests.py +5 -6
  3. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/__init__.py +1 -1
  4. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/_helpers/abbreviations_manager.py +25 -16
  5. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/_helpers/constants.py +6 -30
  6. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/_helpers/inputs.py +1 -1
  7. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/_helpers/no_hitter_dicts.py +3 -3
  8. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/_helpers/utils.py +2 -2
  9. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/find_asg.py +3 -3
  10. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/find_games.py +10 -9
  11. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/find_teams.py +3 -2
  12. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/game.py +24 -33
  13. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/game_set.py +8 -6
  14. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/get_games.py +1 -1
  15. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/get_players.py +1 -1
  16. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/get_teams.py +1 -1
  17. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/options.py +3 -3
  18. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/player.py +75 -79
  19. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/team.py +30 -59
  20. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/team_set.py +0 -21
  21. {brlib-0.6.0 → brlib-0.7.0}/tests/case_ids.py +14 -8
  22. brlib-0.7.0/tests/expected/games/original/1961-allstar-game-1/batting.csv +46 -0
  23. brlib-0.7.0/tests/expected/games/original/1961-allstar-game-1/fielding.csv +41 -0
  24. brlib-0.7.0/tests/expected/games/original/1961-allstar-game-1/pitching.csv +15 -0
  25. brlib-0.7.0/tests/expected/games/original/1961-allstar-game-1/team_info.csv +3 -0
  26. brlib-0.7.0/tests/expected/games/original/1961-allstar-game-1/ump_info.csv +7 -0
  27. brlib-0.7.0/tests/expected/games/original/2025-allstar-game/batting.csv +42 -0
  28. brlib-0.7.0/tests/expected/games/original/2025-allstar-game/fielding.csv +60 -0
  29. brlib-0.7.0/tests/expected/games/original/2025-allstar-game/pitching.csv +27 -0
  30. brlib-0.7.0/tests/expected/games/original/2025-allstar-game/team_info.csv +3 -0
  31. brlib-0.7.0/tests/expected/games/original/2025-allstar-game/ump_info.csv +7 -0
  32. brlib-0.7.0/tests/expected/games/original/ANA202305090/batting.csv +24 -0
  33. brlib-0.7.0/tests/expected/games/original/ANA202305090/fielding.csv +25 -0
  34. brlib-0.7.0/tests/expected/games/original/ANA202305090/pitching.csv +7 -0
  35. brlib-0.7.0/tests/expected/games/original/ANA202305090/team_info.csv +3 -0
  36. brlib-0.7.0/tests/expected/games/original/ANA202305090/ump_info.csv +5 -0
  37. brlib-0.7.0/tests/expected/games/original/BOS201708250/batting.csv +27 -0
  38. brlib-0.7.0/tests/expected/games/original/BOS201708250/fielding.csv +32 -0
  39. brlib-0.7.0/tests/expected/games/original/BOS201708250/pitching.csv +11 -0
  40. brlib-0.7.0/tests/expected/games/original/BOS201708250/team_info.csv +3 -0
  41. brlib-0.7.0/tests/expected/games/original/BOS201708250/ump_info.csv +5 -0
  42. brlib-0.7.0/tests/expected/games/original/BSN191107122/batting.csv +25 -0
  43. brlib-0.7.0/tests/expected/games/original/BSN191107122/fielding.csv +24 -0
  44. brlib-0.7.0/tests/expected/games/original/BSN191107122/info.csv +2 -0
  45. brlib-0.7.0/tests/expected/games/original/BSN191107122/linescore.csv +3 -0
  46. brlib-0.7.0/tests/expected/games/original/BSN191107122/pitching.csv +8 -0
  47. brlib-0.7.0/tests/expected/games/original/BSN191107122/players.json +1 -0
  48. brlib-0.7.0/tests/expected/games/original/BSN191107122/team_info.csv +3 -0
  49. brlib-0.7.0/tests/expected/games/original/BSN191107122/teams.json +1 -0
  50. brlib-0.7.0/tests/expected/games/original/BSN191107122/ump_info.csv +3 -0
  51. brlib-0.7.0/tests/expected/games/original/CHN196207291/batting.csv +28 -0
  52. brlib-0.7.0/tests/expected/games/original/CHN196207291/fielding.csv +26 -0
  53. brlib-0.7.0/tests/expected/games/original/CHN196207291/pitching.csv +9 -0
  54. brlib-0.7.0/tests/expected/games/original/CHN196207291/team_info.csv +3 -0
  55. brlib-0.7.0/tests/expected/games/original/CHN196207291/ump_info.csv +5 -0
  56. brlib-0.7.0/tests/expected/games/original/CLE192805010/batting.csv +22 -0
  57. brlib-0.7.0/tests/expected/games/original/CLE192805010/fielding.csv +22 -0
  58. brlib-0.7.0/tests/expected/games/original/CLE192805010/info.csv +2 -0
  59. brlib-0.7.0/tests/expected/games/original/CLE192805010/linescore.csv +3 -0
  60. brlib-0.7.0/tests/expected/games/original/CLE192805010/pitching.csv +6 -0
  61. brlib-0.7.0/tests/expected/games/original/CLE192805010/players.json +1 -0
  62. brlib-0.7.0/tests/expected/games/original/CLE192805010/team_info.csv +3 -0
  63. brlib-0.7.0/tests/expected/games/original/CLE192805010/teams.json +1 -0
  64. brlib-0.7.0/tests/expected/games/original/CLE192805010/ump_info.csv +4 -0
  65. brlib-0.7.0/tests/expected/games/original/FLO199407290/batting.csv +36 -0
  66. brlib-0.7.0/tests/expected/games/original/FLO199407290/fielding.csv +32 -0
  67. brlib-0.7.0/tests/expected/games/original/FLO199407290/pitching.csv +12 -0
  68. brlib-0.7.0/tests/expected/games/original/FLO199407290/team_info.csv +3 -0
  69. brlib-0.7.0/tests/expected/games/original/FLO199407290/ump_info.csv +5 -0
  70. brlib-0.7.0/tests/expected/games/original/MLA190105301/batting.csv +21 -0
  71. brlib-0.7.0/tests/expected/games/original/MLA190105301/fielding.csv +21 -0
  72. brlib-0.7.0/tests/expected/games/original/MLA190105301/pitching.csv +5 -0
  73. brlib-0.7.0/tests/expected/games/original/MLA190105301/team_info.csv +3 -0
  74. brlib-0.7.0/tests/expected/games/original/MLA190105301/ump_info.csv +2 -0
  75. brlib-0.7.0/tests/expected/games/original/PHI202211020/batting.csv +22 -0
  76. brlib-0.7.0/tests/expected/games/original/PHI202211020/fielding.csv +30 -0
  77. brlib-0.7.0/tests/expected/games/original/PHI202211020/pitching.csv +13 -0
  78. brlib-0.7.0/tests/expected/games/original/PHI202211020/team_info.csv +3 -0
  79. brlib-0.7.0/tests/expected/games/original/PHI202211020/ump_info.csv +7 -0
  80. brlib-0.7.0/tests/expected/games/original/PIT192010023/batting.csv +22 -0
  81. brlib-0.7.0/tests/expected/games/original/PIT192010023/fielding.csv +22 -0
  82. brlib-0.7.0/tests/expected/games/original/PIT192010023/pitching.csv +5 -0
  83. brlib-0.7.0/tests/expected/games/original/PIT192010023/team_info.csv +3 -0
  84. brlib-0.7.0/tests/expected/games/original/PIT192010023/ump_info.csv +3 -0
  85. brlib-0.7.0/tests/expected/games/original/SEA197805231/batting.csv +24 -0
  86. brlib-0.7.0/tests/expected/games/original/SEA197805231/fielding.csv +24 -0
  87. brlib-0.7.0/tests/expected/games/original/SEA197805231/pitching.csv +6 -0
  88. brlib-0.7.0/tests/expected/games/original/SEA197805231/team_info.csv +3 -0
  89. brlib-0.7.0/tests/expected/games/original/SEA197805231/ump_info.csv +5 -0
  90. brlib-0.7.0/tests/expected/games/original/SEA201106250/batting.csv +27 -0
  91. brlib-0.7.0/tests/expected/games/original/SEA201106250/fielding.csv +25 -0
  92. brlib-0.7.0/tests/expected/games/original/SEA201106250/pitching.csv +9 -0
  93. brlib-0.7.0/tests/expected/games/original/SEA201106250/team_info.csv +3 -0
  94. brlib-0.7.0/tests/expected/games/original/SEA201106250/ump_info.csv +5 -0
  95. brlib-0.7.0/tests/expected/games/original/SEA201208150/batting.csv +23 -0
  96. brlib-0.7.0/tests/expected/games/original/SEA201208150/fielding.csv +22 -0
  97. brlib-0.7.0/tests/expected/games/original/SEA201208150/pitching.csv +6 -0
  98. brlib-0.7.0/tests/expected/games/original/SEA201208150/team_info.csv +3 -0
  99. brlib-0.7.0/tests/expected/games/original/SEA201208150/ump_info.csv +5 -0
  100. brlib-0.7.0/tests/expected/games/original/SEA201804190/batting.csv +24 -0
  101. brlib-0.7.0/tests/expected/games/original/SEA201804190/fielding.csv +30 -0
  102. brlib-0.7.0/tests/expected/games/original/SEA201804190/pitching.csv +11 -0
  103. brlib-0.7.0/tests/expected/games/original/SEA201804190/team_info.csv +3 -0
  104. brlib-0.7.0/tests/expected/games/original/SEA201804190/ump_info.csv +5 -0
  105. brlib-0.7.0/tests/expected/games/original/SEA201905270/batting.csv +21 -0
  106. brlib-0.7.0/tests/expected/games/original/SEA201905270/fielding.csv +27 -0
  107. brlib-0.7.0/tests/expected/games/original/SEA201905270/pitching.csv +11 -0
  108. brlib-0.7.0/tests/expected/games/original/SEA201905270/team_info.csv +3 -0
  109. brlib-0.7.0/tests/expected/games/original/SEA201905270/ump_info.csv +5 -0
  110. brlib-0.7.0/tests/expected/games/original/SEA202210150/batting.csv +26 -0
  111. brlib-0.7.0/tests/expected/games/original/SEA202210150/fielding.csv +40 -0
  112. brlib-0.7.0/tests/expected/games/original/SEA202210150/pitching.csv +21 -0
  113. brlib-0.7.0/tests/expected/games/original/SEA202210150/team_info.csv +3 -0
  114. brlib-0.7.0/tests/expected/games/original/SEA202210150/ump_info.csv +7 -0
  115. brlib-0.7.0/tests/expected/games/original/SLN190710051/batting.csv +22 -0
  116. brlib-0.7.0/tests/expected/games/original/SLN190710051/fielding.csv +22 -0
  117. brlib-0.7.0/tests/expected/games/original/SLN190710051/pitching.csv +5 -0
  118. brlib-0.7.0/tests/expected/games/original/SLN190710051/team_info.csv +3 -0
  119. brlib-0.7.0/tests/expected/games/original/SLN190710051/ump_info.csv +2 -0
  120. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/records.csv +5 -4
  121. brlib-0.7.0/tests/expected/games/updated/1961-allstar-game-1/pitching.csv +15 -0
  122. brlib-0.7.0/tests/expected/games/updated/1961-allstar-game-1/team_info.csv +3 -0
  123. brlib-0.7.0/tests/expected/games/updated/2025-allstar-game/pitching.csv +27 -0
  124. brlib-0.7.0/tests/expected/games/updated/2025-allstar-game/team_info.csv +3 -0
  125. brlib-0.7.0/tests/expected/games/updated/ANA202305090/pitching.csv +7 -0
  126. brlib-0.7.0/tests/expected/games/updated/ANA202305090/team_info.csv +3 -0
  127. brlib-0.7.0/tests/expected/games/updated/BOS201708250/pitching.csv +11 -0
  128. brlib-0.7.0/tests/expected/games/updated/BOS201708250/team_info.csv +3 -0
  129. brlib-0.7.0/tests/expected/games/updated/BSN191107122/info.csv +2 -0
  130. brlib-0.7.0/tests/expected/games/updated/BSN191107122/linescore.csv +3 -0
  131. brlib-0.7.0/tests/expected/games/updated/BSN191107122/pitching.csv +8 -0
  132. brlib-0.7.0/tests/expected/games/updated/BSN191107122/team_info.csv +3 -0
  133. brlib-0.7.0/tests/expected/games/updated/CHN196207291/pitching.csv +9 -0
  134. brlib-0.7.0/tests/expected/games/updated/CHN196207291/team_info.csv +3 -0
  135. brlib-0.7.0/tests/expected/games/updated/CLE192805010/info.csv +2 -0
  136. brlib-0.7.0/tests/expected/games/updated/CLE192805010/linescore.csv +3 -0
  137. brlib-0.7.0/tests/expected/games/updated/CLE192805010/pitching.csv +6 -0
  138. brlib-0.7.0/tests/expected/games/updated/CLE192805010/team_info.csv +3 -0
  139. brlib-0.7.0/tests/expected/games/updated/FLO199407290/pitching.csv +12 -0
  140. brlib-0.7.0/tests/expected/games/updated/FLO199407290/team_info.csv +3 -0
  141. brlib-0.7.0/tests/expected/games/updated/MLA190105301/pitching.csv +5 -0
  142. brlib-0.7.0/tests/expected/games/updated/MLA190105301/team_info.csv +3 -0
  143. brlib-0.7.0/tests/expected/games/updated/PHI202211020/pitching.csv +13 -0
  144. brlib-0.7.0/tests/expected/games/updated/PHI202211020/team_info.csv +3 -0
  145. brlib-0.7.0/tests/expected/games/updated/PIT192010023/pitching.csv +5 -0
  146. brlib-0.7.0/tests/expected/games/updated/PIT192010023/team_info.csv +3 -0
  147. brlib-0.7.0/tests/expected/games/updated/SEA197805231/pitching.csv +6 -0
  148. brlib-0.7.0/tests/expected/games/updated/SEA197805231/team_info.csv +3 -0
  149. brlib-0.7.0/tests/expected/games/updated/SEA201106250/pitching.csv +9 -0
  150. brlib-0.7.0/tests/expected/games/updated/SEA201106250/team_info.csv +3 -0
  151. brlib-0.7.0/tests/expected/games/updated/SEA201208150/pitching.csv +6 -0
  152. brlib-0.7.0/tests/expected/games/updated/SEA201208150/team_info.csv +3 -0
  153. brlib-0.7.0/tests/expected/games/updated/SEA201804190/pitching.csv +11 -0
  154. brlib-0.7.0/tests/expected/games/updated/SEA201804190/team_info.csv +3 -0
  155. brlib-0.7.0/tests/expected/games/updated/SEA201905270/pitching.csv +11 -0
  156. brlib-0.7.0/tests/expected/games/updated/SEA201905270/team_info.csv +3 -0
  157. brlib-0.7.0/tests/expected/games/updated/SEA202210150/pitching.csv +21 -0
  158. brlib-0.7.0/tests/expected/games/updated/SEA202210150/team_info.csv +3 -0
  159. brlib-0.7.0/tests/expected/games/updated/SLN190710051/pitching.csv +5 -0
  160. brlib-0.7.0/tests/expected/games/updated/SLN190710051/team_info.csv +3 -0
  161. brlib-0.7.0/tests/expected/players/original/aloumo01/batting.csv +40 -0
  162. brlib-0.7.0/tests/expected/players/original/aloumo01/bling.csv +19 -0
  163. brlib-0.7.0/tests/expected/players/original/aloumo01/fielding.csv +80 -0
  164. brlib-0.7.0/tests/expected/players/original/aloumo01/pitching.csv +1 -0
  165. brlib-0.7.0/tests/expected/players/original/aloumo01/salaries.csv +21 -0
  166. brlib-0.7.0/tests/expected/players/original/bendech01/batting.csv +33 -0
  167. brlib-0.7.0/tests/expected/players/original/bendech01/bling.csv +18 -0
  168. brlib-0.7.0/tests/expected/players/original/bendech01/fielding.csv +43 -0
  169. brlib-0.7.0/tests/expected/players/original/bendech01/pitching.csv +33 -0
  170. brlib-0.7.0/tests/expected/players/original/bendech01/salaries.csv +17 -0
  171. brlib-0.7.0/tests/expected/players/original/colli05/batting.csv +4 -0
  172. brlib-0.7.0/tests/expected/players/original/colli05/bling.csv +3 -0
  173. brlib-0.7.0/tests/expected/players/original/colli05/fielding.csv +3 -0
  174. brlib-0.7.0/tests/expected/players/original/colli05/pitching.csv +1 -0
  175. brlib-0.7.0/tests/expected/players/original/colli05/salaries.csv +1 -0
  176. brlib-0.7.0/tests/expected/players/original/cormirh01/batting.csv +31 -0
  177. brlib-0.7.0/tests/expected/players/original/cormirh01/bling.csv +18 -0
  178. brlib-0.7.0/tests/expected/players/original/cormirh01/fielding.csv +23 -0
  179. brlib-0.7.0/tests/expected/players/original/cormirh01/pitching.csv +32 -0
  180. brlib-0.7.0/tests/expected/players/original/cormirh01/salaries.csv +18 -0
  181. brlib-0.7.0/tests/expected/players/original/gibsojo99/batting.csv +34 -0
  182. brlib-0.7.0/tests/expected/players/original/gibsojo99/bling.csv +16 -0
  183. brlib-0.7.0/tests/expected/players/original/gibsojo99/fielding.csv +66 -0
  184. brlib-0.7.0/tests/expected/players/original/gibsojo99/pitching.csv +4 -0
  185. brlib-0.7.0/tests/expected/players/original/gibsojo99/salaries.csv +1 -0
  186. brlib-0.7.0/tests/expected/players/original/hallaro01/batting.csv +25 -0
  187. brlib-0.7.0/tests/expected/players/original/hallaro01/bling.csv +18 -0
  188. brlib-0.7.0/tests/expected/players/original/hallaro01/fielding.csv +21 -0
  189. brlib-0.7.0/tests/expected/players/original/hallaro01/pitching.csv +27 -0
  190. brlib-0.7.0/tests/expected/players/original/hallaro01/salaries.csv +18 -0
  191. brlib-0.7.0/tests/expected/players/original/jacksre01/batting.csv +46 -0
  192. brlib-0.7.0/tests/expected/players/original/jacksre01/bling.csv +23 -0
  193. brlib-0.7.0/tests/expected/players/original/jacksre01/fielding.csv +94 -0
  194. brlib-0.7.0/tests/expected/players/original/jacksre01/pitching.csv +1 -0
  195. brlib-0.7.0/tests/expected/players/original/jacksre01/salaries.csv +24 -0
  196. brlib-0.7.0/tests/expected/players/original/kigerma01/batting.csv +4 -0
  197. brlib-0.7.0/tests/expected/players/original/kigerma01/bling.csv +3 -0
  198. brlib-0.7.0/tests/expected/players/original/kigerma01/fielding.csv +1 -0
  199. brlib-0.7.0/tests/expected/players/original/kigerma01/pitching.csv +1 -0
  200. brlib-0.7.0/tests/expected/players/original/kigerma01/salaries.csv +1 -0
  201. brlib-0.7.0/tests/expected/players/original/pressry01/batting.csv +27 -0
  202. brlib-0.7.0/tests/expected/players/original/pressry01/bling.csv +15 -0
  203. brlib-0.7.0/tests/expected/players/original/pressry01/fielding.csv +25 -0
  204. brlib-0.7.0/tests/expected/players/original/pressry01/pitching.csv +34 -0
  205. brlib-0.7.0/tests/expected/players/original/pressry01/salaries.csv +14 -0
  206. brlib-0.7.0/tests/expected/players/original/vogtst01/batting.csv +29 -0
  207. brlib-0.7.0/tests/expected/players/original/vogtst01/bling.csv +12 -0
  208. brlib-0.7.0/tests/expected/players/original/vogtst01/fielding.csv +52 -0
  209. brlib-0.7.0/tests/expected/players/original/vogtst01/pitching.csv +1 -0
  210. brlib-0.7.0/tests/expected/players/original/vogtst01/salaries.csv +12 -0
  211. brlib-0.7.0/tests/expected/players/original/willist03/batting.csv +12 -0
  212. brlib-0.7.0/tests/expected/players/original/willist03/bling.csv +5 -0
  213. brlib-0.7.0/tests/expected/players/original/willist03/fielding.csv +10 -0
  214. brlib-0.7.0/tests/expected/players/original/willist03/info.csv +2 -0
  215. brlib-0.7.0/tests/expected/players/original/willist03/pitching.csv +12 -0
  216. brlib-0.7.0/tests/expected/players/original/willist03/relatives.json +1 -0
  217. brlib-0.7.0/tests/expected/players/original/willist03/salaries.csv +1 -0
  218. brlib-0.7.0/tests/expected/players/original/willist03/teams.json +1 -0
  219. brlib-0.7.0/tests/expected/players/updated/aloumo01/pitching.csv +1 -0
  220. brlib-0.7.0/tests/expected/players/updated/bendech01/pitching.csv +33 -0
  221. brlib-0.7.0/tests/expected/players/updated/colli05/pitching.csv +1 -0
  222. brlib-0.7.0/tests/expected/players/updated/cormirh01/pitching.csv +32 -0
  223. brlib-0.7.0/tests/expected/players/updated/gibsojo99/pitching.csv +4 -0
  224. brlib-0.7.0/tests/expected/players/updated/hallaro01/pitching.csv +27 -0
  225. brlib-0.7.0/tests/expected/players/updated/jacksre01/pitching.csv +1 -0
  226. brlib-0.7.0/tests/expected/players/updated/kigerma01/pitching.csv +1 -0
  227. brlib-0.7.0/tests/expected/players/updated/pressry01/pitching.csv +34 -0
  228. brlib-0.7.0/tests/expected/players/updated/vogtst01/pitching.csv +1 -0
  229. brlib-0.7.0/tests/expected/players/updated/willist03/info.csv +2 -0
  230. brlib-0.7.0/tests/expected/players/updated/willist03/pitching.csv +12 -0
  231. brlib-0.7.0/tests/expected/teams/original/BBB1924/batting.csv +25 -0
  232. brlib-0.7.0/tests/expected/teams/original/BBB1924/bling.csv +23 -0
  233. brlib-0.7.0/tests/expected/teams/original/BBB1924/fielding.csv +21 -0
  234. brlib-0.7.0/tests/expected/teams/original/BBB1924/pitching.csv +10 -0
  235. brlib-0.7.0/tests/expected/teams/original/BEG1939/batting.csv +46 -0
  236. brlib-0.7.0/tests/expected/teams/original/BEG1939/bling.csv +29 -0
  237. brlib-0.7.0/tests/expected/teams/original/BEG1939/fielding.csv +38 -0
  238. brlib-0.7.0/tests/expected/teams/original/BEG1939/pitching.csv +18 -0
  239. brlib-0.7.0/tests/expected/teams/original/CHC2020/batting.csv +49 -0
  240. brlib-0.7.0/tests/expected/teams/original/CHC2020/bling.csv +49 -0
  241. brlib-0.7.0/tests/expected/teams/original/CHC2020/fielding.csv +69 -0
  242. brlib-0.7.0/tests/expected/teams/original/CHC2020/pitching.csv +36 -0
  243. brlib-0.7.0/tests/expected/teams/original/COT1932/batting.csv +1 -0
  244. brlib-0.7.0/tests/expected/teams/original/COT1932/bling.csv +2 -0
  245. brlib-0.7.0/tests/expected/teams/original/COT1932/fielding.csv +1 -0
  246. brlib-0.7.0/tests/expected/teams/original/COT1932/pitching.csv +1 -0
  247. brlib-0.7.0/tests/expected/teams/original/HOU2022/batting.csv +52 -0
  248. brlib-0.7.0/tests/expected/teams/original/HOU2022/bling.csv +47 -0
  249. brlib-0.7.0/tests/expected/teams/original/HOU2022/fielding.csv +75 -0
  250. brlib-0.7.0/tests/expected/teams/original/HOU2022/pitching.csv +37 -0
  251. brlib-0.7.0/tests/expected/teams/original/LAA2012/batting.csv +39 -0
  252. brlib-0.7.0/tests/expected/teams/original/LAA2012/bling.csv +46 -0
  253. brlib-0.7.0/tests/expected/teams/original/LAA2012/fielding.csv +45 -0
  254. brlib-0.7.0/tests/expected/teams/original/LAA2012/pitching.csv +25 -0
  255. brlib-0.7.0/tests/expected/teams/original/MIN2019/batting.csv +67 -0
  256. brlib-0.7.0/tests/expected/teams/original/MIN2019/bling.csv +52 -0
  257. brlib-0.7.0/tests/expected/teams/original/MIN2019/fielding.csv +76 -0
  258. brlib-0.7.0/tests/expected/teams/original/MIN2019/pitching.csv +46 -0
  259. brlib-0.7.0/tests/expected/teams/original/PHI1894/batting.csv +34 -0
  260. brlib-0.7.0/tests/expected/teams/original/PHI1894/bling.csv +32 -0
  261. brlib-0.7.0/tests/expected/teams/original/PHI1894/fielding.csv +32 -0
  262. brlib-0.7.0/tests/expected/teams/original/PHI1894/pitching.csv +16 -0
  263. brlib-0.7.0/tests/expected/teams/original/SEA2012/batting.csv +38 -0
  264. brlib-0.7.0/tests/expected/teams/original/SEA2012/bling.csv +40 -0
  265. brlib-0.7.0/tests/expected/teams/original/SEA2012/fielding.csv +39 -0
  266. brlib-0.7.0/tests/expected/teams/original/SEA2012/pitching.csv +20 -0
  267. brlib-0.7.0/tests/expected/teams/original/WSH1904/batting.csv +31 -0
  268. brlib-0.7.0/tests/expected/teams/original/WSH1904/bling.csv +29 -0
  269. brlib-0.7.0/tests/expected/teams/original/WSH1904/fielding.csv +29 -0
  270. brlib-0.7.0/tests/expected/teams/original/WSH1904/pitching.csv +11 -0
  271. brlib-0.7.0/tests/expected/teams/updated/BBB1924/pitching.csv +10 -0
  272. brlib-0.7.0/tests/expected/teams/updated/BEG1939/pitching.csv +18 -0
  273. brlib-0.7.0/tests/expected/teams/updated/CHC2020/pitching.csv +36 -0
  274. brlib-0.7.0/tests/expected/teams/updated/COT1932/pitching.csv +1 -0
  275. brlib-0.7.0/tests/expected/teams/updated/HOU2022/pitching.csv +37 -0
  276. brlib-0.7.0/tests/expected/teams/updated/LAA2012/pitching.csv +25 -0
  277. brlib-0.7.0/tests/expected/teams/updated/MIN2019/pitching.csv +46 -0
  278. brlib-0.7.0/tests/expected/teams/updated/PHI1894/pitching.csv +16 -0
  279. brlib-0.7.0/tests/expected/teams/updated/SEA2012/pitching.csv +20 -0
  280. brlib-0.7.0/tests/expected/teams/updated/WSH1904/pitching.csv +11 -0
  281. {brlib-0.6.0 → brlib-0.7.0}/tests/test_game.py +2 -10
  282. {brlib-0.6.0 → brlib-0.7.0}/tests/test_game_set.py +1 -7
  283. {brlib-0.6.0 → brlib-0.7.0}/tests/test_player.py +0 -5
  284. {brlib-0.6.0 → brlib-0.7.0}/tests/test_player_set.py +0 -3
  285. {brlib-0.6.0 → brlib-0.7.0}/tests/test_team.py +5 -18
  286. {brlib-0.6.0 → brlib-0.7.0}/tests/test_team_set.py +4 -13
  287. {brlib-0.6.0 → brlib-0.7.0}/uv.lock +6 -6
  288. brlib-0.6.0/tests/expected/games/original/1961-allstar-game-1/batting.csv +0 -46
  289. brlib-0.6.0/tests/expected/games/original/1961-allstar-game-1/fielding.csv +0 -41
  290. brlib-0.6.0/tests/expected/games/original/1961-allstar-game-1/pitching.csv +0 -15
  291. brlib-0.6.0/tests/expected/games/original/1961-allstar-game-1/team_info.csv +0 -3
  292. brlib-0.6.0/tests/expected/games/original/1961-allstar-game-1/ump_info.csv +0 -7
  293. brlib-0.6.0/tests/expected/games/original/2025-allstar-game/batting.csv +0 -42
  294. brlib-0.6.0/tests/expected/games/original/2025-allstar-game/fielding.csv +0 -60
  295. brlib-0.6.0/tests/expected/games/original/2025-allstar-game/pitching.csv +0 -27
  296. brlib-0.6.0/tests/expected/games/original/2025-allstar-game/team_info.csv +0 -3
  297. brlib-0.6.0/tests/expected/games/original/2025-allstar-game/ump_info.csv +0 -7
  298. brlib-0.6.0/tests/expected/games/original/ANA202305090/batting.csv +0 -24
  299. brlib-0.6.0/tests/expected/games/original/ANA202305090/fielding.csv +0 -25
  300. brlib-0.6.0/tests/expected/games/original/ANA202305090/pitching.csv +0 -7
  301. brlib-0.6.0/tests/expected/games/original/ANA202305090/team_info.csv +0 -3
  302. brlib-0.6.0/tests/expected/games/original/ANA202305090/ump_info.csv +0 -5
  303. brlib-0.6.0/tests/expected/games/original/BOS201708250/batting.csv +0 -27
  304. brlib-0.6.0/tests/expected/games/original/BOS201708250/fielding.csv +0 -32
  305. brlib-0.6.0/tests/expected/games/original/BOS201708250/pitching.csv +0 -11
  306. brlib-0.6.0/tests/expected/games/original/BOS201708250/team_info.csv +0 -3
  307. brlib-0.6.0/tests/expected/games/original/BOS201708250/ump_info.csv +0 -5
  308. brlib-0.6.0/tests/expected/games/original/CHN196207291/batting.csv +0 -28
  309. brlib-0.6.0/tests/expected/games/original/CHN196207291/fielding.csv +0 -26
  310. brlib-0.6.0/tests/expected/games/original/CHN196207291/pitching.csv +0 -9
  311. brlib-0.6.0/tests/expected/games/original/CHN196207291/team_info.csv +0 -3
  312. brlib-0.6.0/tests/expected/games/original/CHN196207291/ump_info.csv +0 -5
  313. brlib-0.6.0/tests/expected/games/original/FLO199407290/batting.csv +0 -36
  314. brlib-0.6.0/tests/expected/games/original/FLO199407290/fielding.csv +0 -32
  315. brlib-0.6.0/tests/expected/games/original/FLO199407290/pitching.csv +0 -12
  316. brlib-0.6.0/tests/expected/games/original/FLO199407290/team_info.csv +0 -3
  317. brlib-0.6.0/tests/expected/games/original/FLO199407290/ump_info.csv +0 -5
  318. brlib-0.6.0/tests/expected/games/original/MLA190105301/batting.csv +0 -21
  319. brlib-0.6.0/tests/expected/games/original/MLA190105301/fielding.csv +0 -21
  320. brlib-0.6.0/tests/expected/games/original/MLA190105301/pitching.csv +0 -5
  321. brlib-0.6.0/tests/expected/games/original/MLA190105301/team_info.csv +0 -3
  322. brlib-0.6.0/tests/expected/games/original/MLA190105301/ump_info.csv +0 -2
  323. brlib-0.6.0/tests/expected/games/original/NYN200908230/batting.csv +0 -31
  324. brlib-0.6.0/tests/expected/games/original/NYN200908230/fielding.csv +0 -28
  325. brlib-0.6.0/tests/expected/games/original/NYN200908230/info.csv +0 -2
  326. brlib-0.6.0/tests/expected/games/original/NYN200908230/linescore.csv +0 -3
  327. brlib-0.6.0/tests/expected/games/original/NYN200908230/pitching.csv +0 -12
  328. brlib-0.6.0/tests/expected/games/original/NYN200908230/players.json +0 -1
  329. brlib-0.6.0/tests/expected/games/original/NYN200908230/team_info.csv +0 -3
  330. brlib-0.6.0/tests/expected/games/original/NYN200908230/teams.json +0 -1
  331. brlib-0.6.0/tests/expected/games/original/NYN200908230/ump_info.csv +0 -5
  332. brlib-0.6.0/tests/expected/games/original/PHI202211020/batting.csv +0 -22
  333. brlib-0.6.0/tests/expected/games/original/PHI202211020/fielding.csv +0 -30
  334. brlib-0.6.0/tests/expected/games/original/PHI202211020/pitching.csv +0 -13
  335. brlib-0.6.0/tests/expected/games/original/PHI202211020/team_info.csv +0 -3
  336. brlib-0.6.0/tests/expected/games/original/PHI202211020/ump_info.csv +0 -7
  337. brlib-0.6.0/tests/expected/games/original/PIT192010023/batting.csv +0 -22
  338. brlib-0.6.0/tests/expected/games/original/PIT192010023/fielding.csv +0 -22
  339. brlib-0.6.0/tests/expected/games/original/PIT192010023/pitching.csv +0 -5
  340. brlib-0.6.0/tests/expected/games/original/PIT192010023/team_info.csv +0 -3
  341. brlib-0.6.0/tests/expected/games/original/PIT192010023/ump_info.csv +0 -3
  342. brlib-0.6.0/tests/expected/games/original/SEA197805231/batting.csv +0 -24
  343. brlib-0.6.0/tests/expected/games/original/SEA197805231/fielding.csv +0 -24
  344. brlib-0.6.0/tests/expected/games/original/SEA197805231/pitching.csv +0 -6
  345. brlib-0.6.0/tests/expected/games/original/SEA197805231/team_info.csv +0 -3
  346. brlib-0.6.0/tests/expected/games/original/SEA197805231/ump_info.csv +0 -5
  347. brlib-0.6.0/tests/expected/games/original/SEA201106250/batting.csv +0 -27
  348. brlib-0.6.0/tests/expected/games/original/SEA201106250/fielding.csv +0 -25
  349. brlib-0.6.0/tests/expected/games/original/SEA201106250/pitching.csv +0 -9
  350. brlib-0.6.0/tests/expected/games/original/SEA201106250/team_info.csv +0 -3
  351. brlib-0.6.0/tests/expected/games/original/SEA201106250/ump_info.csv +0 -5
  352. brlib-0.6.0/tests/expected/games/original/SEA201208150/batting.csv +0 -23
  353. brlib-0.6.0/tests/expected/games/original/SEA201208150/fielding.csv +0 -22
  354. brlib-0.6.0/tests/expected/games/original/SEA201208150/pitching.csv +0 -6
  355. brlib-0.6.0/tests/expected/games/original/SEA201208150/team_info.csv +0 -3
  356. brlib-0.6.0/tests/expected/games/original/SEA201208150/ump_info.csv +0 -5
  357. brlib-0.6.0/tests/expected/games/original/SEA201804190/batting.csv +0 -24
  358. brlib-0.6.0/tests/expected/games/original/SEA201804190/fielding.csv +0 -30
  359. brlib-0.6.0/tests/expected/games/original/SEA201804190/pitching.csv +0 -11
  360. brlib-0.6.0/tests/expected/games/original/SEA201804190/team_info.csv +0 -3
  361. brlib-0.6.0/tests/expected/games/original/SEA201804190/ump_info.csv +0 -5
  362. brlib-0.6.0/tests/expected/games/original/SEA201905270/batting.csv +0 -21
  363. brlib-0.6.0/tests/expected/games/original/SEA201905270/fielding.csv +0 -27
  364. brlib-0.6.0/tests/expected/games/original/SEA201905270/pitching.csv +0 -11
  365. brlib-0.6.0/tests/expected/games/original/SEA201905270/team_info.csv +0 -3
  366. brlib-0.6.0/tests/expected/games/original/SEA201905270/ump_info.csv +0 -5
  367. brlib-0.6.0/tests/expected/games/original/SEA202210150/batting.csv +0 -26
  368. brlib-0.6.0/tests/expected/games/original/SEA202210150/fielding.csv +0 -40
  369. brlib-0.6.0/tests/expected/games/original/SEA202210150/pitching.csv +0 -21
  370. brlib-0.6.0/tests/expected/games/original/SEA202210150/team_info.csv +0 -3
  371. brlib-0.6.0/tests/expected/games/original/SEA202210150/ump_info.csv +0 -7
  372. brlib-0.6.0/tests/expected/games/original/SLN190710051/batting.csv +0 -22
  373. brlib-0.6.0/tests/expected/games/original/SLN190710051/fielding.csv +0 -22
  374. brlib-0.6.0/tests/expected/games/original/SLN190710051/pitching.csv +0 -5
  375. brlib-0.6.0/tests/expected/games/original/SLN190710051/team_info.csv +0 -3
  376. brlib-0.6.0/tests/expected/games/original/SLN190710051/ump_info.csv +0 -2
  377. brlib-0.6.0/tests/expected/games/updated/1961-allstar-game-1/batting.csv +0 -46
  378. brlib-0.6.0/tests/expected/games/updated/1961-allstar-game-1/fielding.csv +0 -41
  379. brlib-0.6.0/tests/expected/games/updated/1961-allstar-game-1/pitching.csv +0 -15
  380. brlib-0.6.0/tests/expected/games/updated/1961-allstar-game-1/team_info.csv +0 -3
  381. brlib-0.6.0/tests/expected/games/updated/2025-allstar-game/batting.csv +0 -42
  382. brlib-0.6.0/tests/expected/games/updated/2025-allstar-game/fielding.csv +0 -60
  383. brlib-0.6.0/tests/expected/games/updated/2025-allstar-game/pitching.csv +0 -27
  384. brlib-0.6.0/tests/expected/games/updated/2025-allstar-game/team_info.csv +0 -3
  385. brlib-0.6.0/tests/expected/games/updated/ANA202305090/batting.csv +0 -24
  386. brlib-0.6.0/tests/expected/games/updated/ANA202305090/fielding.csv +0 -25
  387. brlib-0.6.0/tests/expected/games/updated/ANA202305090/pitching.csv +0 -7
  388. brlib-0.6.0/tests/expected/games/updated/ANA202305090/team_info.csv +0 -3
  389. brlib-0.6.0/tests/expected/games/updated/BOS201708250/batting.csv +0 -27
  390. brlib-0.6.0/tests/expected/games/updated/BOS201708250/fielding.csv +0 -32
  391. brlib-0.6.0/tests/expected/games/updated/BOS201708250/pitching.csv +0 -11
  392. brlib-0.6.0/tests/expected/games/updated/BOS201708250/team_info.csv +0 -3
  393. brlib-0.6.0/tests/expected/games/updated/CHN196207291/batting.csv +0 -28
  394. brlib-0.6.0/tests/expected/games/updated/CHN196207291/fielding.csv +0 -26
  395. brlib-0.6.0/tests/expected/games/updated/CHN196207291/pitching.csv +0 -9
  396. brlib-0.6.0/tests/expected/games/updated/CHN196207291/team_info.csv +0 -3
  397. brlib-0.6.0/tests/expected/games/updated/FLO199407290/batting.csv +0 -36
  398. brlib-0.6.0/tests/expected/games/updated/FLO199407290/fielding.csv +0 -32
  399. brlib-0.6.0/tests/expected/games/updated/FLO199407290/pitching.csv +0 -12
  400. brlib-0.6.0/tests/expected/games/updated/FLO199407290/team_info.csv +0 -3
  401. brlib-0.6.0/tests/expected/games/updated/MLA190105301/batting.csv +0 -21
  402. brlib-0.6.0/tests/expected/games/updated/MLA190105301/fielding.csv +0 -21
  403. brlib-0.6.0/tests/expected/games/updated/MLA190105301/pitching.csv +0 -5
  404. brlib-0.6.0/tests/expected/games/updated/MLA190105301/team_info.csv +0 -3
  405. brlib-0.6.0/tests/expected/games/updated/NYN200908230/batting.csv +0 -31
  406. brlib-0.6.0/tests/expected/games/updated/NYN200908230/fielding.csv +0 -28
  407. brlib-0.6.0/tests/expected/games/updated/NYN200908230/info.csv +0 -2
  408. brlib-0.6.0/tests/expected/games/updated/NYN200908230/linescore.csv +0 -3
  409. brlib-0.6.0/tests/expected/games/updated/NYN200908230/pitching.csv +0 -12
  410. brlib-0.6.0/tests/expected/games/updated/NYN200908230/team_info.csv +0 -3
  411. brlib-0.6.0/tests/expected/games/updated/PHI202211020/batting.csv +0 -22
  412. brlib-0.6.0/tests/expected/games/updated/PHI202211020/fielding.csv +0 -30
  413. brlib-0.6.0/tests/expected/games/updated/PHI202211020/pitching.csv +0 -13
  414. brlib-0.6.0/tests/expected/games/updated/PHI202211020/team_info.csv +0 -3
  415. brlib-0.6.0/tests/expected/games/updated/PIT192010023/batting.csv +0 -22
  416. brlib-0.6.0/tests/expected/games/updated/PIT192010023/fielding.csv +0 -22
  417. brlib-0.6.0/tests/expected/games/updated/PIT192010023/pitching.csv +0 -5
  418. brlib-0.6.0/tests/expected/games/updated/PIT192010023/team_info.csv +0 -3
  419. brlib-0.6.0/tests/expected/games/updated/SEA197805231/batting.csv +0 -24
  420. brlib-0.6.0/tests/expected/games/updated/SEA197805231/fielding.csv +0 -24
  421. brlib-0.6.0/tests/expected/games/updated/SEA197805231/pitching.csv +0 -6
  422. brlib-0.6.0/tests/expected/games/updated/SEA197805231/team_info.csv +0 -3
  423. brlib-0.6.0/tests/expected/games/updated/SEA201106250/batting.csv +0 -27
  424. brlib-0.6.0/tests/expected/games/updated/SEA201106250/fielding.csv +0 -25
  425. brlib-0.6.0/tests/expected/games/updated/SEA201106250/pitching.csv +0 -9
  426. brlib-0.6.0/tests/expected/games/updated/SEA201106250/team_info.csv +0 -3
  427. brlib-0.6.0/tests/expected/games/updated/SEA201208150/batting.csv +0 -23
  428. brlib-0.6.0/tests/expected/games/updated/SEA201208150/fielding.csv +0 -22
  429. brlib-0.6.0/tests/expected/games/updated/SEA201208150/pitching.csv +0 -6
  430. brlib-0.6.0/tests/expected/games/updated/SEA201208150/team_info.csv +0 -3
  431. brlib-0.6.0/tests/expected/games/updated/SEA201804190/batting.csv +0 -24
  432. brlib-0.6.0/tests/expected/games/updated/SEA201804190/fielding.csv +0 -30
  433. brlib-0.6.0/tests/expected/games/updated/SEA201804190/pitching.csv +0 -11
  434. brlib-0.6.0/tests/expected/games/updated/SEA201804190/team_info.csv +0 -3
  435. brlib-0.6.0/tests/expected/games/updated/SEA201905270/batting.csv +0 -21
  436. brlib-0.6.0/tests/expected/games/updated/SEA201905270/fielding.csv +0 -27
  437. brlib-0.6.0/tests/expected/games/updated/SEA201905270/pitching.csv +0 -11
  438. brlib-0.6.0/tests/expected/games/updated/SEA201905270/team_info.csv +0 -3
  439. brlib-0.6.0/tests/expected/games/updated/SEA202210150/batting.csv +0 -26
  440. brlib-0.6.0/tests/expected/games/updated/SEA202210150/fielding.csv +0 -40
  441. brlib-0.6.0/tests/expected/games/updated/SEA202210150/pitching.csv +0 -21
  442. brlib-0.6.0/tests/expected/games/updated/SEA202210150/team_info.csv +0 -3
  443. brlib-0.6.0/tests/expected/games/updated/SLN190710051/batting.csv +0 -22
  444. brlib-0.6.0/tests/expected/games/updated/SLN190710051/fielding.csv +0 -22
  445. brlib-0.6.0/tests/expected/games/updated/SLN190710051/pitching.csv +0 -5
  446. brlib-0.6.0/tests/expected/games/updated/SLN190710051/team_info.csv +0 -3
  447. brlib-0.6.0/tests/expected/players/original/aloumo01/batting.csv +0 -40
  448. brlib-0.6.0/tests/expected/players/original/aloumo01/bling.csv +0 -19
  449. brlib-0.6.0/tests/expected/players/original/aloumo01/fielding.csv +0 -80
  450. brlib-0.6.0/tests/expected/players/original/aloumo01/pitching.csv +0 -1
  451. brlib-0.6.0/tests/expected/players/original/aloumo01/salaries.csv +0 -21
  452. brlib-0.6.0/tests/expected/players/original/bendech01/batting.csv +0 -33
  453. brlib-0.6.0/tests/expected/players/original/bendech01/bling.csv +0 -18
  454. brlib-0.6.0/tests/expected/players/original/bendech01/fielding.csv +0 -43
  455. brlib-0.6.0/tests/expected/players/original/bendech01/pitching.csv +0 -33
  456. brlib-0.6.0/tests/expected/players/original/bendech01/salaries.csv +0 -17
  457. brlib-0.6.0/tests/expected/players/original/colli05/batting.csv +0 -4
  458. brlib-0.6.0/tests/expected/players/original/colli05/bling.csv +0 -3
  459. brlib-0.6.0/tests/expected/players/original/colli05/fielding.csv +0 -3
  460. brlib-0.6.0/tests/expected/players/original/colli05/pitching.csv +0 -1
  461. brlib-0.6.0/tests/expected/players/original/colli05/salaries.csv +0 -1
  462. brlib-0.6.0/tests/expected/players/original/cormirh01/batting.csv +0 -31
  463. brlib-0.6.0/tests/expected/players/original/cormirh01/bling.csv +0 -18
  464. brlib-0.6.0/tests/expected/players/original/cormirh01/fielding.csv +0 -23
  465. brlib-0.6.0/tests/expected/players/original/cormirh01/pitching.csv +0 -32
  466. brlib-0.6.0/tests/expected/players/original/cormirh01/salaries.csv +0 -18
  467. brlib-0.6.0/tests/expected/players/original/gibsojo99/batting.csv +0 -34
  468. brlib-0.6.0/tests/expected/players/original/gibsojo99/bling.csv +0 -16
  469. brlib-0.6.0/tests/expected/players/original/gibsojo99/fielding.csv +0 -66
  470. brlib-0.6.0/tests/expected/players/original/gibsojo99/pitching.csv +0 -4
  471. brlib-0.6.0/tests/expected/players/original/gibsojo99/salaries.csv +0 -1
  472. brlib-0.6.0/tests/expected/players/original/hallaro01/batting.csv +0 -25
  473. brlib-0.6.0/tests/expected/players/original/hallaro01/bling.csv +0 -18
  474. brlib-0.6.0/tests/expected/players/original/hallaro01/fielding.csv +0 -21
  475. brlib-0.6.0/tests/expected/players/original/hallaro01/pitching.csv +0 -27
  476. brlib-0.6.0/tests/expected/players/original/hallaro01/salaries.csv +0 -18
  477. brlib-0.6.0/tests/expected/players/original/jacksre01/batting.csv +0 -46
  478. brlib-0.6.0/tests/expected/players/original/jacksre01/bling.csv +0 -23
  479. brlib-0.6.0/tests/expected/players/original/jacksre01/fielding.csv +0 -94
  480. brlib-0.6.0/tests/expected/players/original/jacksre01/pitching.csv +0 -1
  481. brlib-0.6.0/tests/expected/players/original/jacksre01/salaries.csv +0 -24
  482. brlib-0.6.0/tests/expected/players/original/kigerma01/batting.csv +0 -4
  483. brlib-0.6.0/tests/expected/players/original/kigerma01/bling.csv +0 -3
  484. brlib-0.6.0/tests/expected/players/original/kigerma01/fielding.csv +0 -1
  485. brlib-0.6.0/tests/expected/players/original/kigerma01/pitching.csv +0 -1
  486. brlib-0.6.0/tests/expected/players/original/kigerma01/salaries.csv +0 -1
  487. brlib-0.6.0/tests/expected/players/original/pressry01/batting.csv +0 -27
  488. brlib-0.6.0/tests/expected/players/original/pressry01/bling.csv +0 -15
  489. brlib-0.6.0/tests/expected/players/original/pressry01/fielding.csv +0 -25
  490. brlib-0.6.0/tests/expected/players/original/pressry01/pitching.csv +0 -34
  491. brlib-0.6.0/tests/expected/players/original/pressry01/salaries.csv +0 -14
  492. brlib-0.6.0/tests/expected/players/original/vogtst01/batting.csv +0 -29
  493. brlib-0.6.0/tests/expected/players/original/vogtst01/bling.csv +0 -12
  494. brlib-0.6.0/tests/expected/players/original/vogtst01/fielding.csv +0 -52
  495. brlib-0.6.0/tests/expected/players/original/vogtst01/pitching.csv +0 -1
  496. brlib-0.6.0/tests/expected/players/original/vogtst01/salaries.csv +0 -12
  497. brlib-0.6.0/tests/expected/players/updated/aloumo01/pitching.csv +0 -1
  498. brlib-0.6.0/tests/expected/players/updated/aloumo01/salaries.csv +0 -21
  499. brlib-0.6.0/tests/expected/players/updated/bendech01/pitching.csv +0 -33
  500. brlib-0.6.0/tests/expected/players/updated/bendech01/salaries.csv +0 -17
  501. brlib-0.6.0/tests/expected/players/updated/colli05/pitching.csv +0 -1
  502. brlib-0.6.0/tests/expected/players/updated/colli05/salaries.csv +0 -1
  503. brlib-0.6.0/tests/expected/players/updated/cormirh01/pitching.csv +0 -32
  504. brlib-0.6.0/tests/expected/players/updated/cormirh01/salaries.csv +0 -18
  505. brlib-0.6.0/tests/expected/players/updated/gibsojo99/pitching.csv +0 -4
  506. brlib-0.6.0/tests/expected/players/updated/gibsojo99/salaries.csv +0 -1
  507. brlib-0.6.0/tests/expected/players/updated/hallaro01/pitching.csv +0 -27
  508. brlib-0.6.0/tests/expected/players/updated/hallaro01/salaries.csv +0 -18
  509. brlib-0.6.0/tests/expected/players/updated/jacksre01/pitching.csv +0 -1
  510. brlib-0.6.0/tests/expected/players/updated/jacksre01/salaries.csv +0 -24
  511. brlib-0.6.0/tests/expected/players/updated/kigerma01/pitching.csv +0 -1
  512. brlib-0.6.0/tests/expected/players/updated/kigerma01/salaries.csv +0 -1
  513. brlib-0.6.0/tests/expected/players/updated/pressry01/pitching.csv +0 -34
  514. brlib-0.6.0/tests/expected/players/updated/pressry01/salaries.csv +0 -14
  515. brlib-0.6.0/tests/expected/players/updated/vogtst01/pitching.csv +0 -1
  516. brlib-0.6.0/tests/expected/players/updated/vogtst01/salaries.csv +0 -12
  517. brlib-0.6.0/tests/expected/teams/original/BBB1924/batting.csv +0 -25
  518. brlib-0.6.0/tests/expected/teams/original/BBB1924/bling.csv +0 -23
  519. brlib-0.6.0/tests/expected/teams/original/BBB1924/fielding.csv +0 -21
  520. brlib-0.6.0/tests/expected/teams/original/BBB1924/pitching.csv +0 -10
  521. brlib-0.6.0/tests/expected/teams/original/BEG1939/batting.csv +0 -46
  522. brlib-0.6.0/tests/expected/teams/original/BEG1939/bling.csv +0 -29
  523. brlib-0.6.0/tests/expected/teams/original/BEG1939/fielding.csv +0 -38
  524. brlib-0.6.0/tests/expected/teams/original/BEG1939/pitching.csv +0 -18
  525. brlib-0.6.0/tests/expected/teams/original/CHC2020/batting.csv +0 -49
  526. brlib-0.6.0/tests/expected/teams/original/CHC2020/bling.csv +0 -49
  527. brlib-0.6.0/tests/expected/teams/original/CHC2020/fielding.csv +0 -69
  528. brlib-0.6.0/tests/expected/teams/original/CHC2020/pitching.csv +0 -36
  529. brlib-0.6.0/tests/expected/teams/original/COT1932/batting.csv +0 -1
  530. brlib-0.6.0/tests/expected/teams/original/COT1932/bling.csv +0 -2
  531. brlib-0.6.0/tests/expected/teams/original/COT1932/fielding.csv +0 -1
  532. brlib-0.6.0/tests/expected/teams/original/COT1932/pitching.csv +0 -1
  533. brlib-0.6.0/tests/expected/teams/original/HOU2022/batting.csv +0 -52
  534. brlib-0.6.0/tests/expected/teams/original/HOU2022/bling.csv +0 -47
  535. brlib-0.6.0/tests/expected/teams/original/HOU2022/fielding.csv +0 -75
  536. brlib-0.6.0/tests/expected/teams/original/HOU2022/pitching.csv +0 -37
  537. brlib-0.6.0/tests/expected/teams/original/LAA2012/batting.csv +0 -39
  538. brlib-0.6.0/tests/expected/teams/original/LAA2012/bling.csv +0 -46
  539. brlib-0.6.0/tests/expected/teams/original/LAA2012/fielding.csv +0 -45
  540. brlib-0.6.0/tests/expected/teams/original/LAA2012/pitching.csv +0 -25
  541. brlib-0.6.0/tests/expected/teams/original/MIN2019/batting.csv +0 -67
  542. brlib-0.6.0/tests/expected/teams/original/MIN2019/bling.csv +0 -52
  543. brlib-0.6.0/tests/expected/teams/original/MIN2019/fielding.csv +0 -76
  544. brlib-0.6.0/tests/expected/teams/original/MIN2019/pitching.csv +0 -46
  545. brlib-0.6.0/tests/expected/teams/original/PHI1894/batting.csv +0 -34
  546. brlib-0.6.0/tests/expected/teams/original/PHI1894/bling.csv +0 -32
  547. brlib-0.6.0/tests/expected/teams/original/PHI1894/fielding.csv +0 -32
  548. brlib-0.6.0/tests/expected/teams/original/PHI1894/pitching.csv +0 -16
  549. brlib-0.6.0/tests/expected/teams/original/SEA2012/batting.csv +0 -38
  550. brlib-0.6.0/tests/expected/teams/original/SEA2012/bling.csv +0 -40
  551. brlib-0.6.0/tests/expected/teams/original/SEA2012/fielding.csv +0 -39
  552. brlib-0.6.0/tests/expected/teams/original/SEA2012/pitching.csv +0 -20
  553. brlib-0.6.0/tests/expected/teams/original/WSH1904/batting.csv +0 -31
  554. brlib-0.6.0/tests/expected/teams/original/WSH1904/bling.csv +0 -29
  555. brlib-0.6.0/tests/expected/teams/original/WSH1904/fielding.csv +0 -29
  556. brlib-0.6.0/tests/expected/teams/original/WSH1904/pitching.csv +0 -11
  557. brlib-0.6.0/tests/expected/teams/updated/BBB1924/batting.csv +0 -25
  558. brlib-0.6.0/tests/expected/teams/updated/BBB1924/bling.csv +0 -23
  559. brlib-0.6.0/tests/expected/teams/updated/BBB1924/fielding.csv +0 -21
  560. brlib-0.6.0/tests/expected/teams/updated/BBB1924/pitching.csv +0 -10
  561. brlib-0.6.0/tests/expected/teams/updated/BEG1939/batting.csv +0 -46
  562. brlib-0.6.0/tests/expected/teams/updated/BEG1939/bling.csv +0 -29
  563. brlib-0.6.0/tests/expected/teams/updated/BEG1939/fielding.csv +0 -38
  564. brlib-0.6.0/tests/expected/teams/updated/BEG1939/pitching.csv +0 -18
  565. brlib-0.6.0/tests/expected/teams/updated/CHC2020/batting.csv +0 -49
  566. brlib-0.6.0/tests/expected/teams/updated/CHC2020/bling.csv +0 -49
  567. brlib-0.6.0/tests/expected/teams/updated/CHC2020/fielding.csv +0 -69
  568. brlib-0.6.0/tests/expected/teams/updated/CHC2020/pitching.csv +0 -36
  569. brlib-0.6.0/tests/expected/teams/updated/COT1932/batting.csv +0 -1
  570. brlib-0.6.0/tests/expected/teams/updated/COT1932/bling.csv +0 -2
  571. brlib-0.6.0/tests/expected/teams/updated/COT1932/fielding.csv +0 -1
  572. brlib-0.6.0/tests/expected/teams/updated/COT1932/pitching.csv +0 -1
  573. brlib-0.6.0/tests/expected/teams/updated/HOU2022/batting.csv +0 -52
  574. brlib-0.6.0/tests/expected/teams/updated/HOU2022/bling.csv +0 -47
  575. brlib-0.6.0/tests/expected/teams/updated/HOU2022/fielding.csv +0 -75
  576. brlib-0.6.0/tests/expected/teams/updated/HOU2022/pitching.csv +0 -37
  577. brlib-0.6.0/tests/expected/teams/updated/LAA2012/batting.csv +0 -39
  578. brlib-0.6.0/tests/expected/teams/updated/LAA2012/bling.csv +0 -46
  579. brlib-0.6.0/tests/expected/teams/updated/LAA2012/fielding.csv +0 -45
  580. brlib-0.6.0/tests/expected/teams/updated/LAA2012/pitching.csv +0 -25
  581. brlib-0.6.0/tests/expected/teams/updated/MIN2019/batting.csv +0 -67
  582. brlib-0.6.0/tests/expected/teams/updated/MIN2019/bling.csv +0 -52
  583. brlib-0.6.0/tests/expected/teams/updated/MIN2019/fielding.csv +0 -76
  584. brlib-0.6.0/tests/expected/teams/updated/MIN2019/pitching.csv +0 -46
  585. brlib-0.6.0/tests/expected/teams/updated/PHI1894/batting.csv +0 -34
  586. brlib-0.6.0/tests/expected/teams/updated/PHI1894/bling.csv +0 -32
  587. brlib-0.6.0/tests/expected/teams/updated/PHI1894/fielding.csv +0 -32
  588. brlib-0.6.0/tests/expected/teams/updated/PHI1894/pitching.csv +0 -16
  589. brlib-0.6.0/tests/expected/teams/updated/SEA2012/batting.csv +0 -38
  590. brlib-0.6.0/tests/expected/teams/updated/SEA2012/bling.csv +0 -40
  591. brlib-0.6.0/tests/expected/teams/updated/SEA2012/fielding.csv +0 -39
  592. brlib-0.6.0/tests/expected/teams/updated/SEA2012/pitching.csv +0 -20
  593. brlib-0.6.0/tests/expected/teams/updated/WSH1904/batting.csv +0 -31
  594. brlib-0.6.0/tests/expected/teams/updated/WSH1904/bling.csv +0 -29
  595. brlib-0.6.0/tests/expected/teams/updated/WSH1904/fielding.csv +0 -29
  596. brlib-0.6.0/tests/expected/teams/updated/WSH1904/pitching.csv +0 -11
  597. {brlib-0.6.0 → brlib-0.7.0}/.github/dependabot.yml +0 -0
  598. {brlib-0.6.0 → brlib-0.7.0}/.github/workflows/full-test.yml +0 -0
  599. {brlib-0.6.0 → brlib-0.7.0}/.github/workflows/publish.yml +0 -0
  600. {brlib-0.6.0 → brlib-0.7.0}/.github/workflows/test.yml +0 -0
  601. {brlib-0.6.0 → brlib-0.7.0}/LICENSE.txt +0 -0
  602. {brlib-0.6.0 → brlib-0.7.0}/README.md +0 -0
  603. {brlib-0.6.0 → brlib-0.7.0}/pyproject.toml +0 -0
  604. {brlib-0.6.0 → brlib-0.7.0}/scripts/refresh_wiki.py +0 -0
  605. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/_helpers/__init__.py +0 -0
  606. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/_helpers/requests_manager.py +0 -0
  607. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/_helpers/singleton.py +0 -0
  608. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/_helpers/typechecking.py +0 -0
  609. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/all_players.py +0 -0
  610. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/player_set.py +0 -0
  611. {brlib-0.6.0 → brlib-0.7.0}/src/brlib/test_connection.py +0 -0
  612. {brlib-0.6.0 → brlib-0.7.0}/tests/_helpers/test_abbreviations_manager.py +0 -0
  613. {brlib-0.6.0 → brlib-0.7.0}/tests/_helpers/test_inputs.py +0 -0
  614. {brlib-0.6.0 → brlib-0.7.0}/tests/_helpers/test_no_hitter_dicts.py +0 -0
  615. {brlib-0.6.0 → brlib-0.7.0}/tests/_helpers/test_typechecking.py +0 -0
  616. {brlib-0.6.0 → brlib-0.7.0}/tests/_helpers/test_utils.py +0 -0
  617. {brlib-0.6.0 → brlib-0.7.0}/tests/conftest.py +0 -0
  618. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/1961-allstar-game-1/info.csv +0 -0
  619. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/1961-allstar-game-1/linescore.csv +0 -0
  620. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/1961-allstar-game-1/players.json +0 -0
  621. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/1961-allstar-game-1/teams.json +0 -0
  622. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/2025-allstar-game/info.csv +0 -0
  623. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/2025-allstar-game/linescore.csv +0 -0
  624. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/2025-allstar-game/players.json +0 -0
  625. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/2025-allstar-game/teams.json +0 -0
  626. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/ANA202305090/info.csv +0 -0
  627. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/ANA202305090/linescore.csv +0 -0
  628. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/ANA202305090/players.json +0 -0
  629. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/ANA202305090/teams.json +0 -0
  630. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/BOS201708250/info.csv +0 -0
  631. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/BOS201708250/linescore.csv +0 -0
  632. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/BOS201708250/players.json +0 -0
  633. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/BOS201708250/teams.json +0 -0
  634. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/CHN196207291/info.csv +0 -0
  635. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/CHN196207291/linescore.csv +0 -0
  636. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/CHN196207291/players.json +0 -0
  637. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/CHN196207291/teams.json +0 -0
  638. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/FLO199407290/info.csv +0 -0
  639. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/FLO199407290/linescore.csv +0 -0
  640. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/FLO199407290/players.json +0 -0
  641. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/FLO199407290/teams.json +0 -0
  642. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/MLA190105301/info.csv +0 -0
  643. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/MLA190105301/linescore.csv +0 -0
  644. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/MLA190105301/players.json +0 -0
  645. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/MLA190105301/teams.json +0 -0
  646. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/PHI202211020/info.csv +0 -0
  647. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/PHI202211020/linescore.csv +0 -0
  648. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/PHI202211020/players.json +0 -0
  649. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/PHI202211020/teams.json +0 -0
  650. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/PIT192010023/info.csv +0 -0
  651. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/PIT192010023/linescore.csv +0 -0
  652. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/PIT192010023/players.json +0 -0
  653. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/PIT192010023/teams.json +0 -0
  654. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA197805231/info.csv +0 -0
  655. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA197805231/linescore.csv +0 -0
  656. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA197805231/players.json +0 -0
  657. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA197805231/teams.json +0 -0
  658. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201106250/info.csv +0 -0
  659. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201106250/linescore.csv +0 -0
  660. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201106250/players.json +0 -0
  661. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201106250/teams.json +0 -0
  662. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201208150/info.csv +0 -0
  663. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201208150/linescore.csv +0 -0
  664. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201208150/players.json +0 -0
  665. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201208150/teams.json +0 -0
  666. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201804190/info.csv +0 -0
  667. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201804190/linescore.csv +0 -0
  668. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201804190/players.json +0 -0
  669. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201804190/teams.json +0 -0
  670. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201905270/info.csv +0 -0
  671. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201905270/linescore.csv +0 -0
  672. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201905270/players.json +0 -0
  673. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA201905270/teams.json +0 -0
  674. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA202210150/info.csv +0 -0
  675. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA202210150/linescore.csv +0 -0
  676. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA202210150/players.json +0 -0
  677. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SEA202210150/teams.json +0 -0
  678. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SLN190710051/info.csv +0 -0
  679. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SLN190710051/linescore.csv +0 -0
  680. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SLN190710051/players.json +0 -0
  681. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/original/SLN190710051/teams.json +0 -0
  682. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/1961-allstar-game-1/info.csv +0 -0
  683. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/1961-allstar-game-1/linescore.csv +0 -0
  684. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/2025-allstar-game/info.csv +0 -0
  685. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/2025-allstar-game/linescore.csv +0 -0
  686. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/ANA202305090/info.csv +0 -0
  687. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/ANA202305090/linescore.csv +0 -0
  688. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/BOS201708250/info.csv +0 -0
  689. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/BOS201708250/linescore.csv +0 -0
  690. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/CHN196207291/info.csv +0 -0
  691. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/CHN196207291/linescore.csv +0 -0
  692. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/FLO199407290/info.csv +0 -0
  693. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/FLO199407290/linescore.csv +0 -0
  694. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/MLA190105301/info.csv +0 -0
  695. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/MLA190105301/linescore.csv +0 -0
  696. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/PHI202211020/info.csv +0 -0
  697. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/PHI202211020/linescore.csv +0 -0
  698. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/PIT192010023/info.csv +0 -0
  699. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/PIT192010023/linescore.csv +0 -0
  700. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA197805231/info.csv +0 -0
  701. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA197805231/linescore.csv +0 -0
  702. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA201106250/info.csv +0 -0
  703. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA201106250/linescore.csv +0 -0
  704. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA201208150/info.csv +0 -0
  705. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA201208150/linescore.csv +0 -0
  706. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA201804190/info.csv +0 -0
  707. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA201804190/linescore.csv +0 -0
  708. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA201905270/info.csv +0 -0
  709. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA201905270/linescore.csv +0 -0
  710. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA202210150/info.csv +0 -0
  711. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SEA202210150/linescore.csv +0 -0
  712. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SLN190710051/info.csv +0 -0
  713. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/games/updated/SLN190710051/linescore.csv +0 -0
  714. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/aloumo01/info.csv +0 -0
  715. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/aloumo01/relatives.json +0 -0
  716. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/aloumo01/teams.json +0 -0
  717. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/bendech01/info.csv +0 -0
  718. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/bendech01/relatives.json +0 -0
  719. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/bendech01/teams.json +0 -0
  720. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/colli05/info.csv +0 -0
  721. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/colli05/relatives.json +0 -0
  722. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/colli05/teams.json +0 -0
  723. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/cormirh01/info.csv +0 -0
  724. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/cormirh01/relatives.json +0 -0
  725. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/cormirh01/teams.json +0 -0
  726. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/gibsojo99/info.csv +0 -0
  727. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/gibsojo99/relatives.json +0 -0
  728. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/gibsojo99/teams.json +0 -0
  729. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/hallaro01/info.csv +0 -0
  730. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/hallaro01/relatives.json +0 -0
  731. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/hallaro01/teams.json +0 -0
  732. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/jacksre01/info.csv +0 -0
  733. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/jacksre01/relatives.json +0 -0
  734. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/jacksre01/teams.json +0 -0
  735. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/kigerma01/info.csv +0 -0
  736. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/kigerma01/relatives.json +0 -0
  737. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/kigerma01/teams.json +0 -0
  738. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/pressry01/info.csv +0 -0
  739. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/pressry01/relatives.json +0 -0
  740. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/pressry01/teams.json +0 -0
  741. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/vogtst01/info.csv +0 -0
  742. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/vogtst01/relatives.json +0 -0
  743. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/original/vogtst01/teams.json +0 -0
  744. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/aloumo01/info.csv +0 -0
  745. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/bendech01/info.csv +0 -0
  746. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/colli05/info.csv +0 -0
  747. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/cormirh01/info.csv +0 -0
  748. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/gibsojo99/info.csv +0 -0
  749. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/hallaro01/info.csv +0 -0
  750. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/jacksre01/info.csv +0 -0
  751. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/kigerma01/info.csv +0 -0
  752. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/pressry01/info.csv +0 -0
  753. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/players/updated/vogtst01/info.csv +0 -0
  754. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/BBB1924/info.csv +0 -0
  755. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/BBB1924/players.json +0 -0
  756. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/BEG1939/info.csv +0 -0
  757. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/BEG1939/players.json +0 -0
  758. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/CHC2020/info.csv +0 -0
  759. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/CHC2020/players.json +0 -0
  760. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/COT1932/info.csv +0 -0
  761. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/COT1932/players.json +0 -0
  762. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/HOU2022/info.csv +0 -0
  763. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/HOU2022/players.json +0 -0
  764. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/LAA2012/info.csv +0 -0
  765. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/LAA2012/players.json +0 -0
  766. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/MIN2019/info.csv +0 -0
  767. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/MIN2019/players.json +0 -0
  768. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/PHI1894/info.csv +0 -0
  769. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/PHI1894/players.json +0 -0
  770. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/SEA2012/info.csv +0 -0
  771. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/SEA2012/players.json +0 -0
  772. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/WSH1904/info.csv +0 -0
  773. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/original/WSH1904/players.json +0 -0
  774. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/records.csv +0 -0
  775. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/BBB1924/info.csv +0 -0
  776. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/BEG1939/info.csv +0 -0
  777. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/CHC2020/info.csv +0 -0
  778. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/COT1932/info.csv +0 -0
  779. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/HOU2022/info.csv +0 -0
  780. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/LAA2012/info.csv +0 -0
  781. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/MIN2019/info.csv +0 -0
  782. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/PHI1894/info.csv +0 -0
  783. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/SEA2012/info.csv +0 -0
  784. {brlib-0.6.0 → brlib-0.7.0}/tests/expected/teams/updated/WSH1904/info.csv +0 -0
  785. {brlib-0.6.0 → brlib-0.7.0}/tests/get_expected.py +0 -0
  786. {brlib-0.6.0 → brlib-0.7.0}/tests/test_all_players.py +0 -0
  787. {brlib-0.6.0 → brlib-0.7.0}/tests/test_find_asg.py +0 -0
  788. {brlib-0.6.0 → brlib-0.7.0}/tests/test_find_games.py +0 -0
  789. {brlib-0.6.0 → brlib-0.7.0}/tests/test_find_teams.py +0 -0
  790. {brlib-0.6.0 → brlib-0.7.0}/tests/test_options.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: brlib
3
- Version: 0.6.0
3
+ Version: 0.7.0
4
4
  Summary: A library for collecting baseball statistics from Baseball Reference
5
5
  Project-URL: Documentation, https://github.com/john-bieren/brlib/wiki
6
6
  Project-URL: GitHub, https://github.com/john-bieren/brlib
@@ -35,6 +35,7 @@ def main() -> None:
35
35
 
36
36
  def refresh_games(games_dir: Path) -> None:
37
37
  """Refreshes expected data for games in `games_dir`."""
38
+ games_list = []
38
39
  for game_id in tqdm(game_test_cases, unit="game"):
39
40
  # locate, create target directories
40
41
  (original_dir := games_dir / "original" / game_id).mkdir(exist_ok=True)
@@ -57,12 +58,14 @@ def refresh_games(games_dir: Path) -> None:
57
58
  game.update_team_names()
58
59
  game.update_venue_names()
59
60
  game.info.to_csv(updated_dir / "info.csv", index=False)
60
- game.batting.to_csv(updated_dir / "batting.csv", index=False)
61
61
  game.pitching.to_csv(updated_dir / "pitching.csv", index=False)
62
- game.fielding.to_csv(updated_dir / "fielding.csv", index=False)
63
62
  game.team_info.to_csv(updated_dir / "team_info.csv", index=False)
64
63
  game.linescore.to_csv(updated_dir / "linescore.csv", index=False)
65
64
 
65
+ games_list.append(game)
66
+ game_set = br.GameSet(games_list)
67
+ game_set.records.to_csv(games_dir / "records.csv", index=False)
68
+
66
69
 
67
70
  def refresh_players(players_dir: Path) -> None:
68
71
  """Refreshes expected data for players in `players_dir`."""
@@ -87,7 +90,6 @@ def refresh_players(players_dir: Path) -> None:
87
90
  player.update_team_names()
88
91
  player.info.to_csv(updated_dir / "info.csv", index=False)
89
92
  player.pitching.to_csv(updated_dir / "pitching.csv", index=False)
90
- player.salaries.to_csv(updated_dir / "salaries.csv", index=False)
91
93
 
92
94
 
93
95
  def refresh_teams(teams_dir: Path) -> None:
@@ -112,10 +114,7 @@ def refresh_teams(teams_dir: Path) -> None:
112
114
  team.update_team_names()
113
115
  team.update_venue_names()
114
116
  team.info.to_csv(updated_dir / "info.csv", index=False)
115
- team.bling.to_csv(updated_dir / "bling.csv", index=False)
116
- team.batting.to_csv(updated_dir / "batting.csv", index=False)
117
117
  team.pitching.to_csv(updated_dir / "pitching.csv", index=False)
118
- team.fielding.to_csv(updated_dir / "fielding.csv", index=False)
119
118
 
120
119
  teams_list.append(team)
121
120
  team_set = br.TeamSet(teams_list)
@@ -21,7 +21,7 @@ from .team import Team
21
21
  from .team_set import TeamSet
22
22
  from .test_connection import test_connection
23
23
 
24
- __version__ = "0.6.0"
24
+ __version__ = "0.7.0"
25
25
 
26
26
  __all__ = [
27
27
  "all_players",
@@ -26,7 +26,7 @@ from .singleton import Singleton
26
26
 
27
27
  class AbbreviationsManager(Singleton):
28
28
  """
29
- A wrapper for a DataFrame which contains information on all historical team and
29
+ A wrapper for a DataFrame that contains information on all historical team and
30
30
  franchise abbreviations used by Baseball Reference. Has methods for working with these
31
31
  abbreviations. Manages retrieval and caching of the data, loads data on import of brlib.
32
32
  """
@@ -146,13 +146,16 @@ class AbbreviationsManager(Singleton):
146
146
  """
147
147
  abv_rows = self.df.loc[self.df["Team"] == abbreviation]
148
148
 
149
+ # find the row(s) to which the arguments correspond
149
150
  if era_adjustment:
150
151
  # handle potential overlap of abbreviations (e.g., BAL, 1915)
151
152
  potential_franchises = abv_rows["Franchise"].to_numpy()
152
- franchise_rows = self.df.loc[self.df["Franchise"].isin(potential_franchises)]
153
- matching_franchises = franchise_rows.loc[
154
- (franchise_rows["First Year"] <= season) & (franchise_rows["Last Year"] >= season)
155
- ]["Franchise"]
153
+ matching_franchises = self.df.loc[
154
+ (self.df["Franchise"].isin(potential_franchises))
155
+ & (self.df["First Year"] <= season)
156
+ & (self.df["Last Year"] >= season),
157
+ "Franchise",
158
+ ]
156
159
  correct_rows = abv_rows.loc[abv_rows["Franchise"].isin(matching_franchises)]
157
160
  # handle the special case of the 1939 Toledo Crawfords, who changed leagues mid-season
158
161
  # these are treated as separate teams and have different abbreviations (TC and TC2)
@@ -162,26 +165,32 @@ class AbbreviationsManager(Singleton):
162
165
  correct_rows = pd.concat([correct_rows, tc_rows], ignore_index=True)
163
166
  else:
164
167
  # check whether abbreviation is valid for season, if so, pass that row forward
165
- mask = (abv_rows["First Year"] <= season) & (abv_rows["Last Year"] >= season)
166
- correct_rows = abv_rows.loc[mask]
168
+ correct_rows = abv_rows.loc[
169
+ (abv_rows["First Year"] <= season) & (abv_rows["Last Year"] >= season)
170
+ ]
167
171
  assert len(correct_rows) <= 1
168
172
 
169
- # For each row in correct_rows, find the team row with the shortest year range that
170
- # includes season within the same franchise.
173
+ # For each row in correct_rows, find which team row within the same franchise has the
174
+ # shortest year range that includes season.
171
175
  # This corrects abbreviations for era (if applicable) and also fixes discontinuities.
172
176
  # For example, LAA is listed as 1961-present, but CAL and ANA were also used during
173
177
  # parts of that time. The rows returned should reflect the abbreviations used during season.
174
178
  correct_rows = correct_rows.reset_index(drop=True)
175
179
  for i, franchise in enumerate(correct_rows["Franchise"].to_numpy()):
176
- franchise_rows = self.df.loc[self.df["Franchise"] == franchise]
177
- franchise_rows = franchise_rows.loc[
178
- (franchise_rows["First Year"] <= season) & (franchise_rows["Last Year"] >= season)
179
- ]
180
180
  # for the 1939 Crawfords, skip the normal process to enable the prior workaround
181
- if not (season == 1939 and franchise == "PC"):
181
+ if season == 1939 and franchise == "PC":
182
+ continue
183
+ franchise_rows = self.df.loc[
184
+ (self.df["Franchise"] == franchise)
185
+ & (self.df["First Year"] <= season)
186
+ & (self.df["Last Year"] >= season)
187
+ ]
188
+ if len(franchise_rows) > 1: # a discontinuity
182
189
  years_col = franchise_rows["Last Year"] - franchise_rows["First Year"]
183
190
  correct_row = franchise_rows.loc[years_col == years_col.min()]
184
- correct_rows.iloc[i] = correct_row.reset_index(drop=True).iloc[0]
191
+ else:
192
+ correct_row = franchise_rows
193
+ correct_rows.iloc[i] = correct_row.reset_index(drop=True).iloc[0]
185
194
  return correct_rows
186
195
 
187
196
  def correct_abvs(self, abbreviation: str, season: int, era_adjustment: bool) -> list[str]:
@@ -198,7 +207,7 @@ class AbbreviationsManager(Singleton):
198
207
 
199
208
  def all_team_abvs(self, abbreviation: str, season: int) -> list[str]:
200
209
  """
201
- Returns all team abbreviations used by the franchise which is associated with the team at
210
+ Returns all team abbreviations used by the franchise that is associated with the team at
202
211
  `abbreviation` and `season`, e.g., `("ATH", 2025)` returns `["PHA", "KCA", "OAK", "ATH"]`.
203
212
  """
204
213
  franchise_abv = self.franchise_abv(abbreviation, season)
@@ -591,7 +591,6 @@ GAME_INFO_DTYPES = {
591
591
  }
592
592
 
593
593
  GAME_BATTING_DTYPES = {
594
- "Game": "string",
595
594
  "Player": "string",
596
595
  "Position": "string",
597
596
  "AB": "Int64",
@@ -638,8 +637,6 @@ GAME_BATTING_DTYPES = {
638
637
  "2-Out RBI": "Int64",
639
638
  "LOB": "Int64",
640
639
  "RISP": "string",
641
- "Team": "string",
642
- "Opponent": "string",
643
640
  "Game ID": "string",
644
641
  "Player ID": "string",
645
642
  "Team ID": "string",
@@ -647,7 +644,6 @@ GAME_BATTING_DTYPES = {
647
644
  }
648
645
 
649
646
  GAME_PITCHING_DTYPES = {
650
- "Game": "string",
651
647
  "Player": "string",
652
648
  "Position": "string",
653
649
  "IP": "Float64",
@@ -692,8 +688,6 @@ GAME_PITCHING_DTYPES = {
692
688
  "NH": "Int64",
693
689
  "PG": "Int64",
694
690
  "CNH": "Int64",
695
- "Team": "string",
696
- "Opponent": "string",
697
691
  "Game ID": "string",
698
692
  "Player ID": "string",
699
693
  "Team ID": "string",
@@ -701,7 +695,6 @@ GAME_PITCHING_DTYPES = {
701
695
  }
702
696
 
703
697
  GAME_FIELDING_DTYPES = {
704
- "Game": "string",
705
698
  "Player": "string",
706
699
  "Position": "string",
707
700
  "PO": "Int64",
@@ -723,8 +716,6 @@ GAME_FIELDING_DTYPES = {
723
716
  "1B Pick": "Int64",
724
717
  "2B Pick": "Int64",
725
718
  "3B Pick": "Int64",
726
- "Team": "string",
727
- "Opponent": "string",
728
719
  "Game ID": "string",
729
720
  "Player ID": "string",
730
721
  "Team ID": "string",
@@ -732,7 +723,6 @@ GAME_FIELDING_DTYPES = {
732
723
  }
733
724
 
734
725
  GAME_TEAM_INFO_DTYPES = {
735
- "Game": "string",
736
726
  "Team": "string",
737
727
  "Score": "Int64",
738
728
  "Record": "string",
@@ -745,7 +735,6 @@ GAME_TEAM_INFO_DTYPES = {
745
735
  }
746
736
 
747
737
  GAME_UMP_INFO_DTYPES = {
748
- "Game": "string",
749
738
  "Umpire": "string",
750
739
  "Position": "string",
751
740
  "Game ID": "string",
@@ -797,7 +786,6 @@ PLAYER_INFO_DTYPES = {
797
786
  }
798
787
 
799
788
  PLAYER_BLING_DTYPES = {
800
- "Player": "string",
801
789
  "Season": "string",
802
790
  "AS": "Int64",
803
791
  "SS": "Int64",
@@ -828,9 +816,7 @@ PLAYER_BLING_DTYPES = {
828
816
  }
829
817
 
830
818
  PLAYER_BATTING_DTYPES = {
831
- "Player": "string",
832
819
  "Season": "string",
833
- "Game Type": "string",
834
820
  "Age": "string",
835
821
  "Team": "string",
836
822
  "League": "string",
@@ -896,14 +882,13 @@ PLAYER_BATTING_DTYPES = {
896
882
  "RS%": "Float64",
897
883
  "SB%": "Float64",
898
884
  "XBT%": "Float64",
885
+ "Game Type": "string",
899
886
  "Player ID": "string",
900
887
  "Team ID": "string",
901
888
  }
902
889
 
903
890
  PLAYER_PITCHING_DTYPES = {
904
- "Player": "string",
905
891
  "Season": "string",
906
- "Game Type": "string",
907
892
  "Age": "string",
908
893
  "Team": "string",
909
894
  "League": "string",
@@ -972,14 +957,13 @@ PLAYER_PITCHING_DTYPES = {
972
957
  "NH": "Int64",
973
958
  "PG": "Int64",
974
959
  "CNH": "Int64",
960
+ "Game Type": "string",
975
961
  "Player ID": "string",
976
962
  "Team ID": "string",
977
963
  }
978
964
 
979
965
  PLAYER_FIELDING_DTYPES = {
980
- "Player": "string",
981
966
  "Season": "string",
982
- "Game Type": "string",
983
967
  "Age": "string",
984
968
  "Team": "string",
985
969
  "League": "string",
@@ -1010,12 +994,12 @@ PLAYER_FIELDING_DTYPES = {
1010
994
  "CS%": "Float64",
1011
995
  "lgCS%": "Float64",
1012
996
  "Pick": "Int64",
997
+ "Game Type": "string",
1013
998
  "Player ID": "string",
1014
999
  "Team ID": "string",
1015
1000
  }
1016
1001
 
1017
1002
  PLAYER_SALARIES_DTYPES = {
1018
- "Player": "string",
1019
1003
  "Year": "string",
1020
1004
  "Age": "string",
1021
1005
  "Team": "string",
@@ -1064,8 +1048,6 @@ TEAM_INFO_DTYPES = {
1064
1048
  }
1065
1049
 
1066
1050
  TEAM_BLING_DTYPES = {
1067
- "Team": "string",
1068
- "Season": "Int64",
1069
1051
  "Player": "string",
1070
1052
  "AS": "Int64",
1071
1053
  "GG": "Int64",
@@ -1086,9 +1068,6 @@ TEAM_BLING_DTYPES = {
1086
1068
  }
1087
1069
 
1088
1070
  TEAM_BATTING_DTYPES = {
1089
- "Team": "string",
1090
- "Season": "Int64",
1091
- "Game Type": "string",
1092
1071
  "Player": "string",
1093
1072
  "Age": "string",
1094
1073
  "Position": "string",
@@ -1134,14 +1113,12 @@ TEAM_BATTING_DTYPES = {
1134
1113
  "oWAR": "Float64",
1135
1114
  "dWAR": "Float64",
1136
1115
  "oRAR": "Int64",
1116
+ "Game Type": "string",
1137
1117
  "Team ID": "string",
1138
1118
  "Player ID": "string",
1139
1119
  }
1140
1120
 
1141
1121
  TEAM_PITCHING_DTYPES = {
1142
- "Team": "string",
1143
- "Season": "Int64",
1144
- "Game Type": "string",
1145
1122
  "Player": "string",
1146
1123
  "Age": "string",
1147
1124
  "Position": "string",
@@ -1193,14 +1170,12 @@ TEAM_PITCHING_DTYPES = {
1193
1170
  "NH": "Int64",
1194
1171
  "PG": "Int64",
1195
1172
  "CNH": "Int64",
1173
+ "Game Type": "string",
1196
1174
  "Team ID": "string",
1197
1175
  "Player ID": "string",
1198
1176
  }
1199
1177
 
1200
1178
  TEAM_FIELDING_DTYPES = {
1201
- "Team": "string",
1202
- "Season": "Int64",
1203
- "Game Type": "string",
1204
1179
  "Player": "string",
1205
1180
  "Age": "string",
1206
1181
  "G": "Int64",
@@ -1228,6 +1203,7 @@ TEAM_FIELDING_DTYPES = {
1228
1203
  "CS%": "Float64",
1229
1204
  "Pick": "Int64",
1230
1205
  "Pos": "string",
1206
+ "Game Type": "string",
1231
1207
  "Team ID": "string",
1232
1208
  "Player ID": "string",
1233
1209
  }
@@ -137,7 +137,7 @@ def validate_team_list(team_list: list[str]) -> list[str]:
137
137
  write(f'cannot get "{team_id}": {message}')
138
138
  continue
139
139
 
140
- # check home team abbreviation
140
+ # check abbreviation
141
141
  correct_abvs = abv_mgr.correct_abvs(abv, int(season), era_adjustment=False)
142
142
  if len(correct_abvs) == 0: # correct_abvs is a list of length 0 or 1
143
143
  write(f'cannot get "{team_id}": {abv} did not play in {season}')
@@ -26,7 +26,7 @@ from .utils import soup_from_comment, str_between
26
26
 
27
27
  class NoHitterDicts(Singleton):
28
28
  """
29
- A wrapper for several dictionaries which contain information about no-hitters.
29
+ A wrapper for several dictionaries that contain information about no-hitters.
30
30
  Contains dictionaries for individual no-hitters, perfect games, or combined no-hitters
31
31
  oriented by game, player, or team. Manages retrieval and caching of the data upon use of the
32
32
  `populate` method. Until this method is called, the dictionaries are empty.
@@ -125,7 +125,7 @@ class NoHitterDicts(Singleton):
125
125
  records,
126
126
  columns=("Rk", "Name", "Perfect", "Gcar", "Gtm", "Year", "Date", "Team", "Home/Away"),
127
127
  )
128
- # remove the header rows which appear every 25 rows
128
+ # remove the header rows, which appear every 25 rows
129
129
  individual_df = individual_df.loc[individual_df["Name"] != "Name"].reset_index(drop=True)
130
130
  individual_df["Game Type"] = "R"
131
131
  postseason_mask = (
@@ -176,7 +176,7 @@ class NoHitterDicts(Singleton):
176
176
  records,
177
177
  columns=("Rk", "Year", "Date", "Team", "Home/Away", "Opp", "Rslt", "Name", "Gcar"),
178
178
  )
179
- # remove the header rows which appear every 25 rows
179
+ # remove the header rows, which appear every 25 rows
180
180
  combined_df = combined_df.loc[combined_df["Name"] != "Name"].reset_index(drop=True)
181
181
  combined_df["Game Type"] = "R"
182
182
  postseason_mask = (
@@ -11,7 +11,7 @@ from .constants import TEAM_REPLACEMENTS
11
11
 
12
12
  def str_between(string: str, start: str, end: str, anchor: str = "start") -> str:
13
13
  """
14
- Returns the substring of `string` which appears between `start` and `end`.
14
+ Returns the substring of `string` that appears between `start` and `end`.
15
15
  `string` must contain `start` and `end`.
16
16
 
17
17
  If `anchor` is `"start"`, the substring between the first occurrence of `start`
@@ -108,7 +108,7 @@ def convert_numeric_cols(df: pd.DataFrame) -> pd.DataFrame:
108
108
  ValueError, # includes a non-convertable value of a compatible type (e.g., "a")
109
109
  TypeError, # includes a value of an incompatible type (e.g., a list)
110
110
  ):
111
- # skip columns which cannot be converted
111
+ # skip columns that cannot be converted
112
112
  pass
113
113
  return df
114
114
 
@@ -18,7 +18,7 @@ from .options import write
18
18
  @runtime_typecheck
19
19
  def find_asg(seasons: str | list[str] = "ALL") -> list[str]:
20
20
  """
21
- Returns a list of All-Star Game IDs which can be an input to
21
+ Returns a list of All-Star Game IDs, which can be an input to
22
22
  [`get_games`](https://github.com/john-bieren/brlib/wiki/get_games).
23
23
 
24
24
  ## Parameters
@@ -26,7 +26,7 @@ def find_asg(seasons: str | list[str] = "ALL") -> list[str]:
26
26
  * `seasons`: `str` or `list[str]`, default `"ALL"`
27
27
 
28
28
  A year, inclusive range of years (e.g., `"2017-2019"`), `"ALL"`, or a list of multiple such
29
- inputs which specify the seasons from which to find All-Star Games.
29
+ inputs that specify the seasons from which to find All-Star Games.
30
30
 
31
31
  ## Returns
32
32
 
@@ -34,7 +34,7 @@ def find_asg(seasons: str | list[str] = "ALL") -> list[str]:
34
34
 
35
35
  ## Examples
36
36
 
37
- Seasons which did not have All-Star Games are taken into account:
37
+ Seasons that did not have All-Star Games are taken into account:
38
38
 
39
39
  ```
40
40
  >>> br.find_asg("2019-2022")
@@ -48,22 +48,22 @@ def find_games(
48
48
  * `seasons`: `str` or `list[str]`, default `"ALL"`
49
49
 
50
50
  A year, inclusive range of years (e.g., `"2017-2019"`), `"ALL"`, or a list of multiple such
51
- inputs which specify the seasons from which to find games.
51
+ inputs that specify the seasons from which to find games.
52
52
 
53
53
  * `opponents`: `str` or `list[str]`, default `"ALL"`
54
54
 
55
- A valid `teams` input specifying the opponents which `teams` must be facing in returned
55
+ A valid `teams` input specifying the opponents that `teams` must be facing in returned
56
56
  games.
57
57
 
58
58
  * `dates`: `str` or `list[str]`, default `"ALL"`
59
59
 
60
60
  A string representing a date in MMDD format as a number (e.g., `"1005"` or `"704"`), an
61
61
  inclusive range of such numbers (e.g., `"927-1002"`), `"ALL"`, or a list of multiple such
62
- inputs which specify the dates from which games should be found.
62
+ inputs that specify the dates from which games should be found.
63
63
 
64
64
  * `home_away`: `str`, default `"ALL"`
65
65
 
66
- `"HOME"`, `"AWAY"`, or `"ALL"` to specify the role which `teams` should have in returned
66
+ `"HOME"`, `"AWAY"`, or `"ALL"` to specify the role that `teams` should have in returned
67
67
  games.
68
68
 
69
69
  * `game_type`: `str`, default `"ALL"`
@@ -91,7 +91,8 @@ def find_games(
91
91
  ['SEA201907020', 'SEA201907030', 'SEA201907040']
92
92
  ```
93
93
 
94
- Abbreviations can match multiple teams due to era adjustment:
94
+ Abbreviations can match multiple teams due to [era
95
+ adjustment](https://github.com/john-bieren/brlib/wiki/Team-Abbreviation-Handling):
95
96
 
96
97
  ```
97
98
  >>> br.find_games(teams="BAL", seasons="1915", dates="825", home_away="home")
@@ -232,7 +233,7 @@ def _find_year_list(
232
233
  if game_type == "POST":
233
234
  year_set = {y for y in year_set if y not in NO_POSTSEASON_YEARS}
234
235
 
235
- # filter years to those which could possibly contain a matchup of the teams and opponents
236
+ # filter years to those that could possibly contain a matchup of the teams and opponents
236
237
  if teams != ["ALL"] or opponents != ["ALL"]:
237
238
  valid_years = set(all_game_years)
238
239
  if teams != ["ALL"]:
@@ -270,8 +271,8 @@ def _find_season_games(
270
271
  game_type: str,
271
272
  ) -> list[str]:
272
273
  """
273
- Scrapes an MLB schedule page, and returns the games from that season which
274
- match all the other input parameters. Inputs must be uppercase.
274
+ Scrapes an MLB schedule page and returns the games from that season that match all the other
275
+ input parameters. Inputs must be uppercase.
275
276
  """
276
277
  team_set = set(teams)
277
278
  opponent_set = set(opponents)
@@ -312,7 +313,7 @@ def _find_season_games(
312
313
  links = game.find_all("a", href=True)
313
314
  # there should be links to the pages of the away team, home team, and box score
314
315
  if len(links) != 3:
315
- # skip games which lack box scores
316
+ # skip games that lack box scores
316
317
  continue
317
318
  away_link, home_link, endpoint = [a["href"] for a in links]
318
319
  if "previews" in endpoint:
@@ -40,7 +40,7 @@ def find_teams(
40
40
  * `seasons`: `str` or `list[str]`, default `"ALL"`
41
41
 
42
42
  A year, inclusive range of years (e.g., `"2017-2019"`), `"ALL"`, or a list of multiple such
43
- inputs which specify the years from which to find teams.
43
+ inputs that specify the years from which to find teams.
44
44
 
45
45
  ## Returns
46
46
 
@@ -62,7 +62,8 @@ def find_teams(
62
62
  ['BBB1948', 'BEG1948', 'CAG1948', 'CBE1948', ...]
63
63
  ```
64
64
 
65
- Abbreviations can match multiple teams due to era adjustment:
65
+ Abbreviations can match multiple teams due to [era
66
+ adjustment](https://github.com/john-bieren/brlib/wiki/Team-Abbreviation-Handling):
66
67
 
67
68
  ```
68
69
  >>> br.find_teams("BAL", "1914")
@@ -120,7 +120,7 @@ class Game:
120
120
 
121
121
  * `linescore`: `pandas.DataFrame`
122
122
 
123
- Contains the game's linescore, a box score fixture which displays the teams' run totals by
123
+ Contains the game's linescore, a box score fixture that displays the teams' run totals by
124
124
  inning, as well as their total runs, hits, and errors. [See DataFrame
125
125
  info](https://github.com/john-bieren/brlib/wiki/DataFrames-Info#gamelinescore)
126
126
 
@@ -397,14 +397,13 @@ class Game:
397
397
  self.pitching = convert_numeric_cols(self.pitching)
398
398
  self.players = list(dict.fromkeys(self.players))
399
399
 
400
- self.info[["Game", "Game ID", "Home Team ID", "Away Team ID"]] = (
400
+ self.info[["Game", "Home Team ID", "Away Team ID"]] = (
401
401
  self.name,
402
- self.id,
403
402
  self._home_team_id,
404
403
  self._away_team_id,
405
404
  )
406
- self.batting[["Game", "Game ID"]] = self.name, self.id
407
- self.pitching[["Game", "Game ID"]] = self.name, self.id
405
+ self.batting["Game ID"] = self.id
406
+ self.pitching["Game ID"] = self.id
408
407
  self.batting = self.batting.reset_index(drop=True)
409
408
  self.pitching = self.pitching.reset_index(drop=True)
410
409
 
@@ -428,7 +427,7 @@ class Game:
428
427
 
429
428
  def _scrape_info(self, content: Tag, other_info: Tag) -> None:
430
429
  """Populates `self.info` with data from `content` and `other_info`."""
431
- self.info = pd.DataFrame([self.name], columns=["Game"])
430
+ self.info = pd.DataFrame([self.id], columns=["Game ID"])
432
431
  self.team_info = pd.DataFrame(
433
432
  {"Home/Away": ["Away", "Home"], "Game ID": [self.id, self.id]}
434
433
  )
@@ -591,17 +590,16 @@ class Game:
591
590
 
592
591
  def _gather_team_info(self) -> None:
593
592
  """Generates `self.team_info`."""
594
- self.team_info["Game"] = self.name
595
- self.team_info.loc[:, "Team"] = [self._away_team, self._home_team]
596
- self.team_info.loc[:, "Team ID"] = [self._away_team_id, self._home_team_id]
597
- self.team_info.loc[:, "Score"] = [self._away_score, self._home_score]
593
+ self.team_info["Team"] = [self._away_team, self._home_team]
594
+ self.team_info["Team ID"] = [self._away_team_id, self._home_team_id]
595
+ self.team_info["Score"] = [self._away_score, self._home_score]
598
596
 
599
597
  if self._winning_team == self._home_team:
600
- self.team_info.loc[:, "Result"] = ["Loss", "Win"]
598
+ self.team_info["Result"] = ["Loss", "Win"]
601
599
  elif self._winning_team == self._away_team:
602
- self.team_info.loc[:, "Result"] = ["Win", "Loss"]
600
+ self.team_info["Result"] = ["Win", "Loss"]
603
601
  else:
604
- self.team_info.loc[:, "Result"] = "Tie"
602
+ self.team_info["Result"] = "Tie"
605
603
 
606
604
  def _scrape_other_info(self, other_info: Tag) -> None:
607
605
  """Scrapes weather and umpire info from `other_info`."""
@@ -746,12 +744,14 @@ class Game:
746
744
  dp_tp = ["DP", "TP"]
747
745
  h_df[list(player_stats.values())] = 0
748
746
  h_df[dp_tp] = 0
747
+ # find players with hyphenated names before parsing hyphen-delimited DP/TP player lists
748
+ hyphenated_names = h_df.loc[h_df["Player"].str.contains("-"), "Player"].to_numpy()
749
749
 
750
750
  team_totals_mask = h_df["Player"] == "Team Totals"
751
751
  footer = table.find("div", {"class": "footer no_hide_long"})
752
752
  # [1:] because the first tag is the parent of the others
753
753
  for line in footer.find_all("div")[1:]:
754
- # skip the divs which contain the fielding and baserunning divs
754
+ # skip the divs that contain the fielding and baserunning divs
755
755
  if "\n" in line.text:
756
756
  continue
757
757
  line_str = line.text.replace("\xa0", " ")
@@ -779,6 +779,9 @@ class Game:
779
779
  elif stat in dp_tp:
780
780
  total, player_list = players.split(". ", maxsplit=1)
781
781
  h_df.loc[team_totals_mask, stat] = int(total)
782
+ # distinguish between hyphenated names and delimiters
783
+ for name in hyphenated_names:
784
+ player_list = player_list.replace(name, name.replace("-", "&"))
782
785
 
783
786
  for dp_players in player_list.split("; "):
784
787
  if dp_players.rsplit(maxsplit=1)[1].isnumeric():
@@ -787,7 +790,8 @@ class Game:
787
790
  else:
788
791
  number = 1
789
792
  for player in set(dp_players.split("-")):
790
- h_df.loc[h_df["Player"] == player, stat] += number
793
+ # revert to hyphenated name
794
+ h_df.loc[h_df["Player"] == player.replace("&", "-"), stat] += number
791
795
 
792
796
  # convert cWPA from percentage to a float
793
797
  if "cWPA" in h_df.columns:
@@ -902,23 +906,13 @@ class Game:
902
906
  or self._home_team == "Houston Colt .45s"
903
907
  and "HoustonColts" in table_id
904
908
  ):
905
- df[["Team", "Opponent", "Team ID", "Opponent Team ID"]] = (
906
- self._home_team,
907
- self._away_team,
908
- self._home_team_id,
909
- self._away_team_id,
910
- )
909
+ df[["Team ID", "Opponent Team ID"]] = self._home_team_id, self._away_team_id
911
910
  elif (
912
911
  str_remove(self._away_team, " ", "-", ".") in table_id
913
912
  or self._away_team == "Houston Colt .45s"
914
913
  and "HoustonColts" in table_id
915
914
  ):
916
- df[["Team", "Opponent", "Team ID", "Opponent Team ID"]] = (
917
- self._away_team,
918
- self._home_team,
919
- self._away_team_id,
920
- self._home_team_id,
921
- )
915
+ df[["Team ID", "Opponent Team ID"]] = self._away_team_id, self._home_team_id
922
916
  else:
923
917
  raise ValueError("home and away teams cannot be found from batting tables")
924
918
  return df
@@ -927,7 +921,6 @@ class Game:
927
921
  """Copies info and moves fielding stats from `self.batting` to `self.fielding`."""
928
922
  self.fielding = self.batting[
929
923
  [
930
- "Game",
931
924
  "Player",
932
925
  "Player ID",
933
926
  "Position",
@@ -940,8 +933,6 @@ class Game:
940
933
  "PB",
941
934
  "SB",
942
935
  "CS",
943
- "Team",
944
- "Opponent",
945
936
  "Team ID",
946
937
  "Opponent Team ID",
947
938
  "Game ID",
@@ -958,7 +949,7 @@ class Game:
958
949
  self.fielding = self.fielding[played_defense_mask]
959
950
  self.fielding = self.fielding.reset_index(drop=True)
960
951
 
961
- # some old games have an asterisk in PO team total rows (e.g., SLN190106150)
952
+ # some old games have an asterisk in PO team total rows (e.g., SLN190106150, BSN191107122)
962
953
  self.fielding.loc[self.fielding["PO"] == "*", "PO"] = pd.NA
963
954
 
964
955
  # remove pitchers who did not hit
@@ -1064,9 +1055,9 @@ class Game:
1064
1055
  """Populates `self.ump_info`."""
1065
1056
  self.ump_info = pd.melt(
1066
1057
  self.info,
1067
- id_vars=["Game", "Game ID"],
1058
+ id_vars=["Game ID"],
1068
1059
  value_vars=["HP Ump", "1B Ump", "2B Ump", "3B Ump", "LF Ump", "RF Ump"],
1069
1060
  )
1070
1061
  self.ump_info = self.ump_info.rename(columns={"variable": "Position", "value": "Umpire"})
1071
- self.ump_info = self.ump_info.loc[~self.ump_info["Umpire"].isnull()]
1062
+ self.ump_info = self.ump_info[~self.ump_info["Umpire"].isnull()].reset_index(drop=True)
1072
1063
  self.ump_info["Position"] = self.ump_info["Position"].str.replace(" Ump", "")