sports 0.1.0 → 0.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 831dacee645acf5dea757570924ad7c9e1e2212f
4
- data.tar.gz: 676b1114696241c5113854fc523821da2a8155ad
2
+ SHA256:
3
+ metadata.gz: fcf596fa5de8979932ac959ba21a72b4a70d68fd39ef4b27e7b4d53455e94718
4
+ data.tar.gz: 00f5eabef3fcbc130cab8b8a6144b4752af8948ee13a756879a34444d28e669f
5
5
  SHA512:
6
- metadata.gz: 61ad3469162b1c9269166ec3e4ed8fa739be3e181e7e0fa74bd3440ef631f046a293fe63752c4c28d9f5c4a856ddc83e6f15b94b347c3c50b773adb2b4b98768
7
- data.tar.gz: 3cde3acf5f4a7756f0b68d5c4686f374f6cf45f967f4070c8b952e7747e0bf51ebb32d464a4e71b9e887dcac40b7b9ac12e1f6cf3aa1cdb8c270982d2ba73d75
6
+ metadata.gz: '096dde8696ce224b2da68613b98e5a50f2db8dd49a01e898a1c7be81c67dd586cc6f3415294479f7286359706cebd507a0aaa5c50dce3c00a6601a28f1d0dcf6'
7
+ data.tar.gz: 8961ba79a40f424d4aadbed68b409560a069fb749b1f8aa4d2e4157549e3504a7fc0baf57e9df343abbd8664760aafc16678ca9816ef6fa3b0a4bfa317a70d73
data/CHANGELOG.md CHANGED
@@ -1,3 +1,4 @@
1
+ ### 0.2.0
1
2
  ### 0.0.1 / 2020-08-17
2
3
 
3
4
  * Everything is new. First release.
data/Manifest.txt CHANGED
@@ -3,27 +3,4 @@ Manifest.txt
3
3
  README.md
4
4
  Rakefile
5
5
  lib/sports.rb
6
- lib/sports/config.rb
7
- lib/sports/goal_parser_csv.rb
8
- lib/sports/match_parser_csv.rb
9
- lib/sports/match_status_parser.rb
10
- lib/sports/name_helper.rb
11
- lib/sports/season.rb
12
- lib/sports/structs/country.rb
13
- lib/sports/structs/goal.rb
14
- lib/sports/structs/group.rb
15
- lib/sports/structs/league.rb
16
- lib/sports/structs/match.rb
17
- lib/sports/structs/matchlist.rb
18
- lib/sports/structs/round.rb
19
- lib/sports/structs/standings.rb
20
- lib/sports/structs/team.rb
21
- lib/sports/structs/team_usage.rb
22
6
  lib/sports/version.rb
23
- test/helper.rb
24
- test/test_clubs.rb
25
- test/test_csv_reader.rb
26
- test/test_match.rb
27
- test/test_match_status_parser.rb
28
- test/test_name_helper.rb
29
- test/test_season.rb
data/README.md CHANGED
@@ -5,7 +5,6 @@
5
5
  * bugs :: [github.com/sportdb/sport.db/issues](https://github.com/sportdb/sport.db/issues)
6
6
  * gem :: [rubygems.org/gems/sports](https://rubygems.org/gems/sports)
7
7
  * rdoc :: [rubydoc.info/gems/sports](http://rubydoc.info/gems/sports)
8
- * forum :: [opensport](http://groups.google.com/group/opensport)
9
8
 
10
9
 
11
10
 
@@ -74,9 +73,6 @@ Read in all matches with the `Match.read_csv` method from the sports library / g
74
73
  ``` ruby
75
74
  require 'sports'
76
75
 
77
- include Sports ## include Match, Team, Standings, etc. data classes
78
-
79
-
80
76
  matches = Match.read_csv( 'england/2010s/2019-20/eng.1.csv' )
81
77
  pp matches.size #=> 380
82
78
  pp matches
@@ -291,6 +287,7 @@ or add the gem to your Gemfile
291
287
  gem 'sports'
292
288
 
293
289
 
290
+
294
291
  ## License
295
292
 
296
293
  The `sports` scripts are dedicated to the public domain.
@@ -299,6 +296,5 @@ Use it as you please with no restrictions whatsoever.
299
296
 
300
297
  ## Questions? Comments?
301
298
 
302
- Send them along to the
303
- [Open Sports & Friends Forum/Mailing List](http://groups.google.com/group/opensport).
304
- Thanks!
299
+ Yes, you can. More than welcome.
300
+ See [Help & Support »](https://github.com/openfootball/help)
data/Rakefile CHANGED
@@ -8,10 +8,10 @@ Hoe.spec 'sports' do
8
8
  self.summary = "sports - sport data structures for matches, scores, leagues, seasons, rounds, groups, teams, clubs and more"
9
9
  self.description = summary
10
10
 
11
- self.urls = ['https://github.com/sportdb/sport.db']
11
+ self.urls = { home: 'https://github.com/sportdb/sport.db' }
12
12
 
13
13
  self.author = 'Gerald Bauer'
14
- self.email = 'opensport@googlegroups.com'
14
+ self.email = 'gerald.bauer@gmail.com'
15
15
 
16
16
  # switch extension to .markdown for gihub formatting
17
17
  self.readme_file = 'README.md'
@@ -20,13 +20,10 @@ Hoe.spec 'sports' do
20
20
  self.licenses = ['Public Domain']
21
21
 
22
22
  self.extra_deps = [
23
- ['alphabets', '>= 1.0.0'],
24
- ['date-formats', '>= 1.0.1'],
25
- ['score-formats', '>= 0.1.0'],
26
- ['csvreader', '>= 1.2.4'],
23
+ ['sportdb-structs', '>= 0.5.0'],
27
24
  ]
28
25
 
29
26
  self.spec_extras = {
30
- required_ruby_version: '>= 2.2.2'
27
+ required_ruby_version: '>= 3.1.0'
31
28
  }
32
29
  end
@@ -3,7 +3,7 @@ module SportDb
3
3
  module Module
4
4
  module Sports
5
5
  MAJOR = 0 ## todo: namespace inside version or something - why? why not??
6
- MINOR = 1
6
+ MINOR = 2
7
7
  PATCH = 0
8
8
  VERSION = [MAJOR,MINOR,PATCH].join('.')
9
9
 
@@ -12,7 +12,7 @@ module SportDb
12
12
  end
13
13
 
14
14
  def self.banner
15
- "sports/#{VERSION} on Ruby #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
15
+ "sports/#{VERSION} on Ruby #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}] in (#{root})"
16
16
  end
17
17
 
18
18
  def self.root
data/lib/sports.rb CHANGED
@@ -1,82 +1,15 @@
1
1
  ## 3rd party gems
2
- require 'alphabets' # downcase_i18n, unaccent, variants, ...
3
- require 'date/formats' # DateFormats.parse, find!, ...
4
- require 'score/formats'
5
- require 'csvreader'
6
-
7
-
8
- def read_csv( path, sep: nil,
9
- symbolize_names: nil )
10
- opts = {}
11
- opts[:sep] = sep if sep
12
- opts[:header_converters] = :symbol if symbolize_names
13
-
14
- CsvHash.read( path, **opts )
15
- end
16
-
17
- def parse_csv( txt, sep: nil,
18
- symbolize_names: nil )
19
- opts = {}
20
- opts[:sep] = sep if sep
21
- opts[:header_converters] = :symbol if symbolize_names
22
-
23
- CsvHash.parse( txt, **opts )
24
- end
2
+ require 'sportdb/structs'
25
3
 
26
4
 
27
5
  ###
28
6
  # our own code
29
- require 'sports/version' # let version always go first
30
- require 'sports/config'
31
- require 'sports/season'
32
-
33
- require 'sports/name_helper'
34
-
35
- require 'sports/structs/country'
36
- require 'sports/structs/league'
37
- require 'sports/structs/team'
38
- require 'sports/structs/round'
39
- require 'sports/structs/group'
40
- require 'sports/structs/goal'
41
- require 'sports/structs/match'
42
- require 'sports/structs/matchlist'
43
- require 'sports/structs/standings'
44
- require 'sports/structs/team_usage'
7
+ require_relative 'sports/version' # let version always go first
45
8
 
46
9
 
47
- require 'sports/match_status_parser'
48
- require 'sports/match_parser_csv'
49
- require 'sports/goal_parser_csv'
10
+ # auto-include to "top-level" data struct(ures) / classes e.g.
11
+ # Match, Team, Standings, etc.
12
+ include Sports
50
13
 
51
14
 
52
- ### add convenience shortcut helpers
53
- module Sports
54
- class Match
55
- def self.read_csv( path, headers: nil, filters: nil, converters: nil, sep: nil )
56
- SportDb::CsvMatchParser.read( path,
57
- headers: headers,
58
- filters: filters,
59
- converters: converters,
60
- sep: sep )
61
- end
62
-
63
- def self.parse_csv( txt, headers: nil, filters: nil, converters: nil, sep: nil )
64
- SportDb::CsvMatchParser.parse( txt,
65
- headers: headers,
66
- filters: filters,
67
- converters: converters,
68
- sep: sep )
69
- end
70
- end # class Match
71
- end # module Sports
72
-
73
-
74
- #####
75
- # note: add Sport and Football convenience alias - why? why not?
76
-
77
- Sport = Sports
78
- Football = Sports
79
-
80
15
  puts SportDb::Module::Sports.banner # say hello
81
-
82
-
metadata CHANGED
@@ -1,102 +1,66 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sports
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gerald Bauer
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-08-24 00:00:00.000000000 Z
11
+ date: 2024-12-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: alphabets
14
+ name: sportdb-structs
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 1.0.0
19
+ version: 0.5.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 1.0.0
26
+ version: 0.5.0
27
27
  - !ruby/object:Gem::Dependency
28
- name: date-formats
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: 1.0.1
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- version: 1.0.1
41
- - !ruby/object:Gem::Dependency
42
- name: score-formats
28
+ name: rdoc
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
31
  - - ">="
46
32
  - !ruby/object:Gem::Version
47
- version: 0.1.0
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ">="
53
- - !ruby/object:Gem::Version
54
- version: 0.1.0
55
- - !ruby/object:Gem::Dependency
56
- name: csvreader
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ">="
33
+ version: '4.0'
34
+ - - "<"
60
35
  - !ruby/object:Gem::Version
61
- version: 1.2.4
62
- type: :runtime
36
+ version: '7'
37
+ type: :development
63
38
  prerelease: false
64
39
  version_requirements: !ruby/object:Gem::Requirement
65
40
  requirements:
66
41
  - - ">="
67
- - !ruby/object:Gem::Version
68
- version: 1.2.4
69
- - !ruby/object:Gem::Dependency
70
- name: rdoc
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
42
  - !ruby/object:Gem::Version
75
43
  version: '4.0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
44
+ - - "<"
81
45
  - !ruby/object:Gem::Version
82
- version: '4.0'
46
+ version: '7'
83
47
  - !ruby/object:Gem::Dependency
84
48
  name: hoe
85
49
  requirement: !ruby/object:Gem::Requirement
86
50
  requirements:
87
51
  - - "~>"
88
52
  - !ruby/object:Gem::Version
89
- version: '3.16'
53
+ version: '4.2'
90
54
  type: :development
91
55
  prerelease: false
92
56
  version_requirements: !ruby/object:Gem::Requirement
93
57
  requirements:
94
58
  - - "~>"
95
59
  - !ruby/object:Gem::Version
96
- version: '3.16'
60
+ version: '4.2'
97
61
  description: sports - sport data structures for matches, scores, leagues, seasons,
98
62
  rounds, groups, teams, clubs and more
99
- email: opensport@googlegroups.com
63
+ email: gerald.bauer@gmail.com
100
64
  executables: []
101
65
  extensions: []
102
66
  extra_rdoc_files:
@@ -109,35 +73,12 @@ files:
109
73
  - README.md
110
74
  - Rakefile
111
75
  - lib/sports.rb
112
- - lib/sports/config.rb
113
- - lib/sports/goal_parser_csv.rb
114
- - lib/sports/match_parser_csv.rb
115
- - lib/sports/match_status_parser.rb
116
- - lib/sports/name_helper.rb
117
- - lib/sports/season.rb
118
- - lib/sports/structs/country.rb
119
- - lib/sports/structs/goal.rb
120
- - lib/sports/structs/group.rb
121
- - lib/sports/structs/league.rb
122
- - lib/sports/structs/match.rb
123
- - lib/sports/structs/matchlist.rb
124
- - lib/sports/structs/round.rb
125
- - lib/sports/structs/standings.rb
126
- - lib/sports/structs/team.rb
127
- - lib/sports/structs/team_usage.rb
128
76
  - lib/sports/version.rb
129
- - test/helper.rb
130
- - test/test_clubs.rb
131
- - test/test_csv_reader.rb
132
- - test/test_match.rb
133
- - test/test_match_status_parser.rb
134
- - test/test_name_helper.rb
135
- - test/test_season.rb
136
77
  homepage: https://github.com/sportdb/sport.db
137
78
  licenses:
138
79
  - Public Domain
139
80
  metadata: {}
140
- post_install_message:
81
+ post_install_message:
141
82
  rdoc_options:
142
83
  - "--main"
143
84
  - README.md
@@ -147,16 +88,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
147
88
  requirements:
148
89
  - - ">="
149
90
  - !ruby/object:Gem::Version
150
- version: 2.2.2
91
+ version: 3.1.0
151
92
  required_rubygems_version: !ruby/object:Gem::Requirement
152
93
  requirements:
153
94
  - - ">="
154
95
  - !ruby/object:Gem::Version
155
96
  version: '0'
156
97
  requirements: []
157
- rubyforge_project:
158
- rubygems_version: 2.5.2
159
- signing_key:
98
+ rubygems_version: 3.5.22
99
+ signing_key:
160
100
  specification_version: 4
161
101
  summary: sports - sport data structures for matches, scores, leagues, seasons, rounds,
162
102
  groups, teams, clubs and more
data/lib/sports/config.rb DELETED
@@ -1,40 +0,0 @@
1
-
2
- module SportDb
3
- module Import
4
- class Configuration
5
-
6
- attr_reader :lang
7
- def lang=(value)
8
- ## check/todo: always use to_sym - why? needed?
9
- DateFormats.lang = value
10
- ScoreFormats.lang = value
11
- end
12
-
13
- ## lets you use
14
- ## SportDb.configure do |config|
15
- ## config.lang = 'it'
16
- ## end
17
-
18
- def self.configure() yield( config ); end
19
-
20
- end # class Configuration
21
- def self.config() @config ||= Configuration.new; end
22
- end
23
- end
24
-
25
-
26
-
27
- module Sports
28
-
29
- ## lets you use
30
- ## Sports.configure do |config|
31
- ## config.lang = 'it'
32
- ## end
33
-
34
- ## note: just forward to SportDb::Import configuration!!!!!
35
- ## keep Sports module / namespace "clean"
36
- ## that is, only include data structures (e.g. Match,League,etc) for now - why? why not?
37
- def self.configure() yield( config ); end
38
- def self.config() SportDb::Import.config; end
39
-
40
- end # module Sports
@@ -1,28 +0,0 @@
1
-
2
- module SportDb
3
- class CsvGoalParser
4
-
5
-
6
- def self.read( path )
7
- txt = File.open( path, 'r:utf-8' ) {|f| f.read } ## note: make sure to use (assume) utf-8
8
- parse( txt )
9
- end
10
-
11
- def self.parse( txt )
12
- new( txt ).parse
13
- end
14
-
15
-
16
- def initialize( txt )
17
- @txt = txt
18
- end
19
-
20
- def parse
21
- rows = parse_csv( @txt )
22
- recs = rows.map { |row| Sports::GoalEvent.build( row ) }
23
- ## pp recs[0]
24
- recs
25
- end
26
-
27
- end # class CsvGoalParser
28
- end # module Sports