rsssf 0.0.1 → 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.
@@ -0,0 +1,21 @@
1
+
2
+ module Rsssf
3
+
4
+ class Schedule
5
+
6
+
7
+ # attr_accessor :rounds # track no of rounds - why? why not?
8
+
9
+ def initialize( txt )
10
+ @txt = txt
11
+
12
+ ## @rounds = nil # undefined
13
+ end
14
+
15
+
16
+ def save( path, header: )
17
+ write_text( path, header + @txt )
18
+ end
19
+
20
+ end ## class Schedule
21
+ end ## module Rsssf
@@ -0,0 +1,56 @@
1
+
2
+ module Rsssf
3
+ module Utils
4
+
5
+
6
+ ## move to Page - why? why not?
7
+
8
+ def year_from_file( path )
9
+ extname = File.extname( path )
10
+ basename = File.basename( path, extname ) ## e.g. duit92.txt or duit92.html => duit92
11
+ year_from_name( basename )
12
+ end
13
+
14
+
15
+ def year_from_name( name )
16
+ if name =~ /(\d+)/
17
+ digits = $1.to_s
18
+ num = digits.to_i
19
+
20
+ if digits.size == 4 ## e.g. 1980 or 2011 etc.
21
+ num
22
+ elsif digits.size == 2 ## e.g. 00, 20 or 99 etc.
23
+ if num <= 16 ## assume 20xx for now from 00..16
24
+ 2000+num
25
+ else ## assume 19xx for now
26
+ 1900+num
27
+ end
28
+ else
29
+ fail( "no year found in name #{name}; expected two or four digits")
30
+ end
31
+ else
32
+ fail( "no year found in name #{name}")
33
+ end
34
+ end # method year_from_name
35
+
36
+
37
+
38
+ def archive_dir_for_season( season )
39
+ season = Season( season )
40
+
41
+ if season < Season('2010') # e.g. season 2009-10
42
+ ## use archive folder (w/ 1980s etc)
43
+ ## get decade folder
44
+ decade = season.start_year ## 1999/2000 2000
45
+ decade -= decade % 10 ## turn 1987 into 1980 etc
46
+ "archive/#{decade}s/#{season.to_path}"
47
+ else
48
+ season.to_path
49
+ end
50
+ end
51
+
52
+
53
+
54
+ end # module Utils
55
+ end # module Rsssf
56
+
data/lib/rsssf/version.rb CHANGED
@@ -1,11 +1,9 @@
1
- # encoding: utf-8
2
-
3
1
 
4
2
  module Rsssf
5
3
 
6
4
  MAJOR = 0
7
- MINOR = 0
8
- PATCH = 1
5
+ MINOR = 2
6
+ PATCH = 0
9
7
  VERSION = [MAJOR,MINOR,PATCH].join('.')
10
8
 
11
9
  def self.version
@@ -13,11 +11,11 @@ module Rsssf
13
11
  end
14
12
 
15
13
  def self.banner
16
- "rsssf/#{VERSION} on Ruby #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}]"
14
+ "rsssf/#{VERSION} on Ruby #{RUBY_VERSION} (#{RUBY_RELEASE_DATE}) [#{RUBY_PLATFORM}] in (#{root})"
17
15
  end
18
16
 
19
17
  def self.root
20
- "#{File.expand_path( File.dirname(File.dirname(File.dirname(__FILE__))) )}"
18
+ File.expand_path( File.dirname(File.dirname(File.dirname(__FILE__))) )
21
19
  end
22
20
 
23
21
  end # module Rsssf
data/lib/rsssf.rb CHANGED
@@ -1,21 +1,57 @@
1
- # encoding: utf-8
2
1
 
3
- ## stdlibs
4
- require 'pp'
5
- require 'yaml'
6
- require 'uri'
2
+ ## 3rd party (our own)
3
+ require 'season/formats' ## add season support
4
+ require 'webget' ## incl. webget, webcache, webclient, etc.
5
+
6
+ require 'cocos'
7
+
8
+
9
+ ## (old) 3rd party libs
10
+ ## require 'textutils' ## used for File.read_utf8 etc.
11
+ ## require 'fetcher' ## used for Fetcher::Worker.new.fetch etc.
12
+
13
+
14
+ #######
15
+ ## add RsssfParser too
16
+ require 'rsssf/parser' ## from rsssf-parser gem
7
17
 
8
18
 
9
- ## 3rd party libs
10
- require 'textutils' ## used for File.read_utf8 etc.
11
- require 'fetcher' ## used for Fetcher::Worker.new.fetch etc.
12
19
 
13
20
 
14
21
  ## our own code
15
- require 'rsssf/version' # note: let version always go first
22
+ require_relative 'rsssf/version' # note: let version always go first
23
+
24
+ require_relative 'rsssf/utils' # include Utils - goes first
25
+
26
+ require_relative 'rsssf/download'
27
+
28
+ require_relative 'rsssf/convert'
29
+ require_relative 'rsssf/page'
30
+ require_relative 'rsssf/schedule'
31
+
32
+ require_relative 'rsssf/reports/schedule'
33
+ require_relative 'rsssf/reports/page'
34
+
35
+ require_relative 'rsssf/repo'
36
+
37
+
38
+
39
+
40
+ #############
41
+ ## add (shortcut) alias(es)
42
+ RsssfPage = Rsssf::Page
43
+ RsssfPageConverter = Rsssf::PageConverter
44
+ RsssfPageStat = Rsssf::PageStat
45
+ RsssfPageReport = Rsssf::PageReport
46
+
47
+ RsssfSchedule = Rsssf::Schedule
48
+ RsssfScheduleStat = Rsssf::ScheduleStat
49
+ RsssfScheduleReport = Rsssf::ScheduleReport
16
50
 
51
+ RsssfRepo = Rsssf::Repo
52
+ RsssfUtils = Rsssf::Utils
17
53
 
18
54
 
19
55
 
20
56
  ## say hello
21
- puts Rsssf.banner if defined?($RUBYLIBS_DEBUG) && $RUBYLIBS_DEBUG
57
+ puts Rsssf.banner ## if defined?($RUBYLIBS_DEBUG) && $RUBYLIBS_DEBUG
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rsssf
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
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: 2015-09-15 00:00:00.000000000 Z
11
+ date: 2024-07-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: logutils
14
+ name: cocos
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -25,7 +25,7 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: textutils
28
+ name: season-formats
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -39,7 +39,7 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: fetcher
42
+ name: rsssf-parser
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -56,51 +56,65 @@ dependencies:
56
56
  name: rdoc
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '4.0'
62
+ - - "<"
63
+ - !ruby/object:Gem::Version
64
+ version: '7'
62
65
  type: :development
63
66
  prerelease: false
64
67
  version_requirements: !ruby/object:Gem::Requirement
65
68
  requirements:
66
- - - "~>"
69
+ - - ">="
67
70
  - !ruby/object:Gem::Version
68
71
  version: '4.0'
72
+ - - "<"
73
+ - !ruby/object:Gem::Version
74
+ version: '7'
69
75
  - !ruby/object:Gem::Dependency
70
76
  name: hoe
71
77
  requirement: !ruby/object:Gem::Requirement
72
78
  requirements:
73
79
  - - "~>"
74
80
  - !ruby/object:Gem::Version
75
- version: '3.13'
81
+ version: '4.1'
76
82
  type: :development
77
83
  prerelease: false
78
84
  version_requirements: !ruby/object:Gem::Requirement
79
85
  requirements:
80
86
  - - "~>"
81
87
  - !ruby/object:Gem::Version
82
- version: '3.13'
88
+ version: '4.1'
83
89
  description: rsssf - tools 'n' scripts for RSSSF (Rec.Sport.Soccer Statistics Foundation)
84
90
  archive data
85
- email: opensport@googlegroups.com
91
+ email: gerald.bauer@gmail.com
86
92
  executables: []
87
93
  extensions: []
88
94
  extra_rdoc_files:
89
- - HISTORY.md
95
+ - CHANGELOG.md
90
96
  - Manifest.txt
91
97
  - README.md
92
98
  files:
93
- - HISTORY.md
99
+ - CHANGELOG.md
94
100
  - Manifest.txt
95
101
  - README.md
96
102
  - Rakefile
97
103
  - lib/rsssf.rb
104
+ - lib/rsssf/convert.rb
105
+ - lib/rsssf/download.rb
106
+ - lib/rsssf/page.rb
107
+ - lib/rsssf/repo.rb
108
+ - lib/rsssf/reports/page.rb
109
+ - lib/rsssf/reports/schedule.rb
110
+ - lib/rsssf/schedule.rb
111
+ - lib/rsssf/utils.rb
98
112
  - lib/rsssf/version.rb
99
- homepage: https://github.com/sportdb/rsssf
113
+ homepage: https://github.com/sportdb/sport.db.sources
100
114
  licenses:
101
115
  - Public Domain
102
116
  metadata: {}
103
- post_install_message:
117
+ post_install_message:
104
118
  rdoc_options:
105
119
  - "--main"
106
120
  - README.md
@@ -110,16 +124,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
110
124
  requirements:
111
125
  - - ">="
112
126
  - !ruby/object:Gem::Version
113
- version: 1.9.2
127
+ version: 2.2.2
114
128
  required_rubygems_version: !ruby/object:Gem::Requirement
115
129
  requirements:
116
130
  - - ">="
117
131
  - !ruby/object:Gem::Version
118
132
  version: '0'
119
133
  requirements: []
120
- rubyforge_project:
121
- rubygems_version: 2.2.3
122
- signing_key:
134
+ rubygems_version: 3.4.10
135
+ signing_key:
123
136
  specification_version: 4
124
137
  summary: rsssf - tools 'n' scripts for RSSSF (Rec.Sport.Soccer Statistics Foundation)
125
138
  archive data