mediawiki_api 0.7.1 → 0.8.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.gitignore +2 -0
- data/.rubocop.yml +5 -0
- data/.yardopts +1 -0
- data/CREDITS +2 -2
- data/Gemfile +0 -3
- data/{LICENSE.txt → LICENSE.md} +9 -9
- data/README.md +9 -0
- data/Rakefile +1 -1
- data/lib/mediawiki_api/client.rb +13 -13
- data/lib/mediawiki_api/version.rb +1 -1
- data/mediawiki_api.gemspec +18 -10
- data/spec/client_spec.rb +16 -1
- data/spec/response_spec.rb +3 -3
- metadata +55 -59
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: c7983b65785de6109edd0991f6e27a03c19d6bed4d4d666dfc172c1a4c0dd6b1
|
4
|
+
data.tar.gz: 237e9d95810e7cbba9c07f5d50f16c3b5c08dd23741005abba538eb63335d02f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2b0a4f757321496466e9cc3aff484cbeb37b0daf187ec058a8d42231cf306ccd5a33dc9dc0d1738dc1e98833a3e2891197eb71fc2a77f97b1adbe5bdbcdd5458
|
7
|
+
data.tar.gz: 27a6dcf2d01a5f1a0cb62011eca87bcd92a64ae5df939100e68db101a9057418d888f7465179a8d583c8c11e13d8a6e3dd55c274cf70563144970d6c111f6657
|
data/.gitignore
CHANGED
data/.rubocop.yml
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
AllCops:
|
2
|
+
TargetRubyVersion: 2.5
|
2
3
|
StyleGuideCopsOnly: true
|
3
4
|
|
4
5
|
Metrics/LineLength:
|
@@ -21,3 +22,7 @@ Style/StringLiterals:
|
|
21
22
|
|
22
23
|
Style/TrivialAccessors:
|
23
24
|
ExactNameMatch: true
|
25
|
+
|
26
|
+
# See https://github.com/bbatsov/rubocop/issues/4637
|
27
|
+
SpaceAroundOperators:
|
28
|
+
Enabled: false
|
data/.yardopts
CHANGED
data/CREDITS
CHANGED
@@ -2,11 +2,11 @@ mediawiki_ruby_api_client is a collaborative project released under the
|
|
2
2
|
GNU General Public License v2. We would like to recognize the
|
3
3
|
following names for their contribution to the product.
|
4
4
|
|
5
|
-
For further details on licensing, see the LICENSE file.
|
5
|
+
For further details on licensing, see the LICENSE.md file.
|
6
6
|
|
7
7
|
== Developers ==
|
8
8
|
* Amir Aharoni
|
9
|
-
* Asaf Bartov
|
9
|
+
* [Asaf Bartov](https://github.com/abartov) (current maintainer)
|
10
10
|
* Chris McMahon
|
11
11
|
* Dan Duvall
|
12
12
|
* Jeff Hall
|
data/Gemfile
CHANGED
data/{LICENSE.txt → LICENSE.md}
RENAMED
@@ -1,6 +1,6 @@
|
|
1
|
-
|
1
|
+
# License and copyright information
|
2
2
|
|
3
|
-
|
3
|
+
## License
|
4
4
|
|
5
5
|
MediaWiki is licensed under the terms of the GNU General Public License,
|
6
6
|
version 2 or later. Derivative works and later versions of the code must be
|
@@ -12,12 +12,12 @@ For the full text of version 2 of the license, see
|
|
12
12
|
https://www.gnu.org/licenses/gpl-2.0.html or '''GNU General Public License'''
|
13
13
|
below.
|
14
14
|
|
15
|
-
|
15
|
+
## Copyright owners
|
16
16
|
|
17
17
|
MediaWiki contributors, including those listed in the CREDITS file, hold the
|
18
18
|
copyright to this work.
|
19
19
|
|
20
|
-
|
20
|
+
## Additional license information
|
21
21
|
|
22
22
|
Some components of MediaWiki imported from other projects may be under other
|
23
23
|
Free and Open Source, or Free Culture, licenses. Specific details of their
|
@@ -36,7 +36,7 @@ CC licenses:
|
|
36
36
|
These icons are trademarked, and used subject to the CC trademark license,
|
37
37
|
available at http://creativecommons.org/policies#trademark
|
38
38
|
|
39
|
-
|
39
|
+
# GNU GENERAL PUBLIC LICENSE
|
40
40
|
|
41
41
|
Version 2, June 1991
|
42
42
|
|
@@ -45,7 +45,7 @@ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
|
45
45
|
Everyone is permitted to copy and distribute verbatim copies
|
46
46
|
of this license document, but changing it is not allowed.
|
47
47
|
|
48
|
-
|
48
|
+
## Preamble
|
49
49
|
|
50
50
|
The licenses for most software are designed to take away your
|
51
51
|
freedom to share and change it. By contrast, the GNU General Public
|
@@ -95,7 +95,7 @@ patent must be licensed for everyone's free use or not licensed at all.
|
|
95
95
|
The precise terms and conditions for copying, distribution and
|
96
96
|
modification follow.
|
97
97
|
|
98
|
-
|
98
|
+
# TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
99
99
|
|
100
100
|
'''0.''' This License applies to any program or other work which contains
|
101
101
|
a notice placed by the copyright holder saying it may be distributed
|
@@ -293,7 +293,7 @@ make exceptions for this. Our decision will be guided by the two goals
|
|
293
293
|
of preserving the free status of all derivatives of our free software and
|
294
294
|
of promoting the sharing and reuse of software generally.
|
295
295
|
|
296
|
-
|
296
|
+
## NO WARRANTY
|
297
297
|
|
298
298
|
'''11.''' BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
299
299
|
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
@@ -317,7 +317,7 @@ POSSIBILITY OF SUCH DAMAGES.
|
|
317
317
|
|
318
318
|
'''END OF TERMS AND CONDITIONS'''
|
319
319
|
|
320
|
-
|
320
|
+
# How to Apply These Terms to Your New Programs
|
321
321
|
|
322
322
|
If you develop a new program, and you want it to be of the greatest
|
323
323
|
possible use to the public, the best way to achieve this is to make it
|
data/README.md
CHANGED
@@ -26,6 +26,7 @@ require "mediawiki_api"
|
|
26
26
|
|
27
27
|
client = MediawikiApi::Client.new "http://127.0.0.1:8080/w/api.php"
|
28
28
|
client.log_in "username", "password" # default Vagrant username and password are "Admin", "vagrant"
|
29
|
+
client.oauth_access_token("user_oauth_token") # INSTEAD of logging in, will make all actions as the user authenticated via OAuth
|
29
30
|
client.create_account "username", "password" # will not work on wikis that require CAPTCHA, like Wikipedia
|
30
31
|
client.create_page "title", "content"
|
31
32
|
client.get_wikitext "title"
|
@@ -65,6 +66,10 @@ See https://www.mediawiki.org/wiki/Gerrit
|
|
65
66
|
|
66
67
|
## Release notes
|
67
68
|
|
69
|
+
### 0.8.0 2023-10-26
|
70
|
+
- Add `oauth_access_token`, allowing authenticated actions on behalf of users via [Wikimedia's OAuth service](https://www.mediawiki.org/wiki/OAuth/For_Developers). Obtaining the access token is up to this gem's user. In Ruby, one can use the `[oauth2](https://gitlab.com/oauth-xx/oauth2/)` gem. A working example can be seen in the source code of [the Luthor tool](https://gitlab.wikimedia.org/toolforge-repos/luthor/-/blob/master/app/controllers/usage_controller.rb).
|
71
|
+
- New maintainer: @abartov
|
72
|
+
|
68
73
|
### 0.7.1 2017-01-31
|
69
74
|
- Add `text` param to `MediawikiApi::Client#upload_image`
|
70
75
|
|
@@ -137,3 +142,7 @@ See https://www.mediawiki.org/wiki/Gerrit
|
|
137
142
|
### 0.0.1 2014-02-07
|
138
143
|
|
139
144
|
- Added MediawikiApi#create_article and #create_user.
|
145
|
+
|
146
|
+
## {file:LICENSE.md}
|
147
|
+
|
148
|
+
© Copyright 2013-2023, Wikimedia Foundation & Contributors. Released under the terms of the GNU General Public License, version 2 or later.
|
data/Rakefile
CHANGED
@@ -13,7 +13,7 @@ YARD::Rake::YardocTask.new(:yard)
|
|
13
13
|
task default: [:test]
|
14
14
|
|
15
15
|
desc 'Run all build/tests commands (CI entry point)'
|
16
|
-
task test: [
|
16
|
+
task test: %i[build rubocop spec yard]
|
17
17
|
|
18
18
|
desc 'Generate all documentations'
|
19
19
|
task doc: [:yard]
|
data/lib/mediawiki_api/client.rb
CHANGED
@@ -16,7 +16,7 @@ module MediawikiApi
|
|
16
16
|
|
17
17
|
alias_method :logged_in?, :logged_in
|
18
18
|
|
19
|
-
def initialize(url, log
|
19
|
+
def initialize(url, log: false)
|
20
20
|
@cookies = HTTP::CookieJar.new
|
21
21
|
|
22
22
|
@conn = Faraday.new(url: url) do |faraday|
|
@@ -35,21 +35,23 @@ module MediawikiApi
|
|
35
35
|
def action(name, params = {})
|
36
36
|
raw_action(name, params)
|
37
37
|
rescue ApiError => e
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
38
|
+
# propagate the exception
|
39
|
+
raise unless e.code == 'badtoken'
|
40
|
+
@tokens.clear # ensure fresh token on re-try
|
41
|
+
raw_action(name, params) # no rescue this time; only re-try once.
|
42
|
+
end
|
43
|
+
|
44
|
+
# set the OAuth access token to be used for all subsequent actions
|
45
|
+
# (obtaining the token is up to you)
|
46
|
+
def oauth_access_token(access_token)
|
47
|
+
@conn.headers['Authorization'] = "Bearer #{access_token}"
|
44
48
|
end
|
45
49
|
|
46
50
|
def create_account(username, password)
|
47
51
|
params = { modules: 'createaccount', token_type: false }
|
48
52
|
d = action(:paraminfo, params).data
|
49
53
|
params = d['modules'] && d['modules'][0] && d['modules'][0]['parameters']
|
50
|
-
if !params || !params.map
|
51
|
-
raise CreateAccountError, 'unexpected API response format'
|
52
|
-
end
|
54
|
+
raise CreateAccountError, 'unexpected API response format' if !params || !params.map
|
53
55
|
params = params.map{ |o| o['name'] }
|
54
56
|
|
55
57
|
if params.include? 'requests'
|
@@ -63,9 +65,7 @@ module MediawikiApi
|
|
63
65
|
# post-AuthManager
|
64
66
|
data = action(:query, { meta: 'tokens', type: 'createaccount', token_type: false }).data
|
65
67
|
token = data['tokens'] && data['tokens']['createaccounttoken']
|
66
|
-
unless token
|
67
|
-
raise CreateAccountError, 'failed to get createaccount API token'
|
68
|
-
end
|
68
|
+
raise CreateAccountError, 'failed to get createaccount API token' unless token
|
69
69
|
|
70
70
|
data = action(:createaccount, {
|
71
71
|
username: username,
|
data/mediawiki_api.gemspec
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
# coding: utf-8
|
2
1
|
lib = File.expand_path('../lib', __FILE__)
|
3
2
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
3
|
require 'mediawiki_api/version'
|
@@ -18,21 +17,30 @@ Gem::Specification.new do |spec|
|
|
18
17
|
spec.summary = 'A library for interacting with MediaWiki API from Ruby.'
|
19
18
|
spec.description = 'Uses adapter-agnostic Faraday gem to talk to MediaWiki API.'
|
20
19
|
spec.homepage = 'https://github.com/wikimedia/mediawiki-ruby-api'
|
21
|
-
spec.license = 'GPL-2'
|
20
|
+
spec.license = 'GPL-2.0'
|
22
21
|
|
23
22
|
spec.files = `git ls-files`.split($INPUT_RECORD_SEPARATOR)
|
24
23
|
spec.test_files = spec.files.grep(/^(test|spec|features)/)
|
25
24
|
spec.require_paths = ['lib']
|
26
25
|
|
27
|
-
spec.
|
28
|
-
spec.add_runtime_dependency 'faraday-cookie_jar', '~> 0.0', '>= 0.0.6'
|
29
|
-
spec.add_runtime_dependency 'faraday_middleware', '~> 0.10', '>= 0.10.0'
|
26
|
+
spec.required_ruby_version = '>= 2.5.0'
|
30
27
|
|
31
|
-
spec.
|
32
|
-
|
33
|
-
|
34
|
-
spec.
|
35
|
-
spec.
|
28
|
+
spec.add_runtime_dependency 'faraday', '~> 1'
|
29
|
+
# These dependencies will float to whatever `faraday` resolves to
|
30
|
+
# and are not needed for faraday 2 when we migrate to 2.X
|
31
|
+
spec.add_runtime_dependency 'faraday-cookie_jar'
|
32
|
+
spec.add_runtime_dependency 'faraday_middleware'
|
33
|
+
|
34
|
+
# Most developer dependencies can float to latest, but stick to RSpec 3
|
35
|
+
# since that would likely introduce breaking changes (bundler, rubocop
|
36
|
+
# and rake have excellent back-compat)
|
37
|
+
spec.add_development_dependency 'bundler'
|
38
|
+
spec.add_development_dependency 'rake'
|
39
|
+
spec.add_development_dependency 'rspec', '~> 3'
|
40
|
+
spec.add_development_dependency 'rubocop'
|
41
|
+
spec.add_development_dependency 'rubocop-rake'
|
42
|
+
spec.add_development_dependency 'rubocop-rspec'
|
43
|
+
spec.add_development_dependency 'webmock'
|
36
44
|
spec.add_development_dependency 'redcarpet'
|
37
45
|
spec.add_development_dependency 'yard'
|
38
46
|
end
|
data/spec/client_spec.rb
CHANGED
@@ -91,7 +91,7 @@ describe MediawikiApi::Client do
|
|
91
91
|
end
|
92
92
|
|
93
93
|
context 'array parameters' do
|
94
|
-
let(:params) { { foo: %w
|
94
|
+
let(:params) { { foo: %w[one two] } }
|
95
95
|
|
96
96
|
before do
|
97
97
|
@request = stub_action_request(action, foo: 'one|two').to_return(response)
|
@@ -141,6 +141,21 @@ describe MediawikiApi::Client do
|
|
141
141
|
end
|
142
142
|
end
|
143
143
|
|
144
|
+
context 'when an OAuth access token was supplied' do
|
145
|
+
before do
|
146
|
+
client.oauth_access_token('my_token')
|
147
|
+
end
|
148
|
+
|
149
|
+
it 'includes the OAuth access token in an Authorization: Bearer header' do
|
150
|
+
stub_token_request('csrf')
|
151
|
+
request = stub_action_request('foo').with(headers: { 'Authorization' => 'Bearer my_token' })
|
152
|
+
|
153
|
+
client.action(:foo)
|
154
|
+
|
155
|
+
expect(request).to have_been_requested
|
156
|
+
end
|
157
|
+
end
|
158
|
+
|
144
159
|
context 'when the token response includes only other types of warnings (see bug 70066)' do
|
145
160
|
let(:token_warning) do
|
146
161
|
'action=tokens has been deprecated. Please use action=query&meta=tokens instead.'
|
data/spec/response_spec.rb
CHANGED
@@ -28,14 +28,14 @@ describe MediawikiApi::Response do
|
|
28
28
|
end
|
29
29
|
|
30
30
|
context 'and a multi-level envelope' do
|
31
|
-
let(:envelope) { %w
|
31
|
+
let(:envelope) { %w[query result] }
|
32
32
|
let(:nested_object) { response_object['query']['result'] }
|
33
33
|
|
34
34
|
it { is_expected.to eq(nested_object) }
|
35
35
|
end
|
36
36
|
|
37
37
|
context "and a multi-level envelope that doesn't completely match" do
|
38
|
-
let(:envelope) { %w
|
38
|
+
let(:envelope) { %w[query something] }
|
39
39
|
let(:partially_nested_object) { response_object['query'] }
|
40
40
|
|
41
41
|
it { is_expected.to eq(partially_nested_object) }
|
@@ -46,7 +46,7 @@ describe MediawikiApi::Response do
|
|
46
46
|
let(:body) { '[ "something" ]' }
|
47
47
|
|
48
48
|
context 'with any expected envelope' do
|
49
|
-
let(:envelope) { %w
|
49
|
+
let(:envelope) { %w[what ever] }
|
50
50
|
|
51
51
|
it { is_expected.to eq(response_object) }
|
52
52
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mediawiki_api
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amir Aharoni
|
@@ -11,10 +11,10 @@ authors:
|
|
11
11
|
- Jeff Hall
|
12
12
|
- Juliusz Gonera
|
13
13
|
- Zeljko Filipin
|
14
|
-
autorequire:
|
14
|
+
autorequire:
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
|
-
date:
|
17
|
+
date: 2023-10-29 00:00:00.000000000 Z
|
18
18
|
dependencies:
|
19
19
|
- !ruby/object:Gem::Dependency
|
20
20
|
name: faraday
|
@@ -22,86 +22,68 @@ dependencies:
|
|
22
22
|
requirements:
|
23
23
|
- - "~>"
|
24
24
|
- !ruby/object:Gem::Version
|
25
|
-
version: '
|
26
|
-
- - ">="
|
27
|
-
- !ruby/object:Gem::Version
|
28
|
-
version: 0.9.0
|
25
|
+
version: '1'
|
29
26
|
type: :runtime
|
30
27
|
prerelease: false
|
31
28
|
version_requirements: !ruby/object:Gem::Requirement
|
32
29
|
requirements:
|
33
30
|
- - "~>"
|
34
31
|
- !ruby/object:Gem::Version
|
35
|
-
version: '
|
36
|
-
- - ">="
|
37
|
-
- !ruby/object:Gem::Version
|
38
|
-
version: 0.9.0
|
32
|
+
version: '1'
|
39
33
|
- !ruby/object:Gem::Dependency
|
40
34
|
name: faraday-cookie_jar
|
41
35
|
requirement: !ruby/object:Gem::Requirement
|
42
36
|
requirements:
|
43
|
-
- - "~>"
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0.0'
|
46
37
|
- - ">="
|
47
38
|
- !ruby/object:Gem::Version
|
48
|
-
version: 0
|
39
|
+
version: '0'
|
49
40
|
type: :runtime
|
50
41
|
prerelease: false
|
51
42
|
version_requirements: !ruby/object:Gem::Requirement
|
52
43
|
requirements:
|
53
|
-
- - "~>"
|
54
|
-
- !ruby/object:Gem::Version
|
55
|
-
version: '0.0'
|
56
44
|
- - ">="
|
57
45
|
- !ruby/object:Gem::Version
|
58
|
-
version: 0
|
46
|
+
version: '0'
|
59
47
|
- !ruby/object:Gem::Dependency
|
60
48
|
name: faraday_middleware
|
61
49
|
requirement: !ruby/object:Gem::Requirement
|
62
50
|
requirements:
|
63
|
-
- - "~>"
|
64
|
-
- !ruby/object:Gem::Version
|
65
|
-
version: '0.10'
|
66
51
|
- - ">="
|
67
52
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0
|
53
|
+
version: '0'
|
69
54
|
type: :runtime
|
70
55
|
prerelease: false
|
71
56
|
version_requirements: !ruby/object:Gem::Requirement
|
72
57
|
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0.10'
|
76
58
|
- - ">="
|
77
59
|
- !ruby/object:Gem::Version
|
78
|
-
version: 0
|
60
|
+
version: '0'
|
79
61
|
- !ruby/object:Gem::Dependency
|
80
62
|
name: bundler
|
81
63
|
requirement: !ruby/object:Gem::Requirement
|
82
64
|
requirements:
|
83
|
-
- - "
|
65
|
+
- - ">="
|
84
66
|
- !ruby/object:Gem::Version
|
85
|
-
version: '
|
67
|
+
version: '0'
|
86
68
|
type: :development
|
87
69
|
prerelease: false
|
88
70
|
version_requirements: !ruby/object:Gem::Requirement
|
89
71
|
requirements:
|
90
|
-
- - "
|
72
|
+
- - ">="
|
91
73
|
- !ruby/object:Gem::Version
|
92
|
-
version: '
|
74
|
+
version: '0'
|
93
75
|
- !ruby/object:Gem::Dependency
|
94
76
|
name: rake
|
95
77
|
requirement: !ruby/object:Gem::Requirement
|
96
78
|
requirements:
|
97
|
-
- - "
|
79
|
+
- - ">="
|
98
80
|
- !ruby/object:Gem::Version
|
99
81
|
version: '0'
|
100
82
|
type: :development
|
101
83
|
prerelease: false
|
102
84
|
version_requirements: !ruby/object:Gem::Requirement
|
103
85
|
requirements:
|
104
|
-
- - "
|
86
|
+
- - ">="
|
105
87
|
- !ruby/object:Gem::Version
|
106
88
|
version: '0'
|
107
89
|
- !ruby/object:Gem::Dependency
|
@@ -110,54 +92,70 @@ dependencies:
|
|
110
92
|
requirements:
|
111
93
|
- - "~>"
|
112
94
|
- !ruby/object:Gem::Version
|
113
|
-
version: '3
|
95
|
+
version: '3'
|
96
|
+
type: :development
|
97
|
+
prerelease: false
|
98
|
+
version_requirements: !ruby/object:Gem::Requirement
|
99
|
+
requirements:
|
100
|
+
- - "~>"
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '3'
|
103
|
+
- !ruby/object:Gem::Dependency
|
104
|
+
name: rubocop
|
105
|
+
requirement: !ruby/object:Gem::Requirement
|
106
|
+
requirements:
|
114
107
|
- - ">="
|
115
108
|
- !ruby/object:Gem::Version
|
116
|
-
version:
|
109
|
+
version: '0'
|
117
110
|
type: :development
|
118
111
|
prerelease: false
|
119
112
|
version_requirements: !ruby/object:Gem::Requirement
|
120
113
|
requirements:
|
121
|
-
- - "
|
114
|
+
- - ">="
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
version: '0'
|
117
|
+
- !ruby/object:Gem::Dependency
|
118
|
+
name: rubocop-rake
|
119
|
+
requirement: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - ">="
|
122
122
|
- !ruby/object:Gem::Version
|
123
|
-
version: '
|
123
|
+
version: '0'
|
124
|
+
type: :development
|
125
|
+
prerelease: false
|
126
|
+
version_requirements: !ruby/object:Gem::Requirement
|
127
|
+
requirements:
|
124
128
|
- - ">="
|
125
129
|
- !ruby/object:Gem::Version
|
126
|
-
version:
|
130
|
+
version: '0'
|
127
131
|
- !ruby/object:Gem::Dependency
|
128
|
-
name: rubocop
|
132
|
+
name: rubocop-rspec
|
129
133
|
requirement: !ruby/object:Gem::Requirement
|
130
134
|
requirements:
|
131
|
-
- - "
|
135
|
+
- - ">="
|
132
136
|
- !ruby/object:Gem::Version
|
133
|
-
version: 0
|
137
|
+
version: '0'
|
134
138
|
type: :development
|
135
139
|
prerelease: false
|
136
140
|
version_requirements: !ruby/object:Gem::Requirement
|
137
141
|
requirements:
|
138
|
-
- - "
|
142
|
+
- - ">="
|
139
143
|
- !ruby/object:Gem::Version
|
140
|
-
version: 0
|
144
|
+
version: '0'
|
141
145
|
- !ruby/object:Gem::Dependency
|
142
146
|
name: webmock
|
143
147
|
requirement: !ruby/object:Gem::Requirement
|
144
148
|
requirements:
|
145
|
-
- - "~>"
|
146
|
-
- !ruby/object:Gem::Version
|
147
|
-
version: '1.17'
|
148
149
|
- - ">="
|
149
150
|
- !ruby/object:Gem::Version
|
150
|
-
version:
|
151
|
+
version: '0'
|
151
152
|
type: :development
|
152
153
|
prerelease: false
|
153
154
|
version_requirements: !ruby/object:Gem::Requirement
|
154
155
|
requirements:
|
155
|
-
- - "~>"
|
156
|
-
- !ruby/object:Gem::Version
|
157
|
-
version: '1.17'
|
158
156
|
- - ">="
|
159
157
|
- !ruby/object:Gem::Version
|
160
|
-
version:
|
158
|
+
version: '0'
|
161
159
|
- !ruby/object:Gem::Dependency
|
162
160
|
name: redcarpet
|
163
161
|
requirement: !ruby/object:Gem::Requirement
|
@@ -206,7 +204,7 @@ files:
|
|
206
204
|
- ".yardopts"
|
207
205
|
- CREDITS
|
208
206
|
- Gemfile
|
209
|
-
- LICENSE.
|
207
|
+
- LICENSE.md
|
210
208
|
- README.md
|
211
209
|
- Rakefile
|
212
210
|
- lib/mediawiki_api.rb
|
@@ -222,9 +220,9 @@ files:
|
|
222
220
|
- spec/support/request_helpers.rb
|
223
221
|
homepage: https://github.com/wikimedia/mediawiki-ruby-api
|
224
222
|
licenses:
|
225
|
-
- GPL-2
|
223
|
+
- GPL-2.0
|
226
224
|
metadata: {}
|
227
|
-
post_install_message:
|
225
|
+
post_install_message:
|
228
226
|
rdoc_options: []
|
229
227
|
require_paths:
|
230
228
|
- lib
|
@@ -232,16 +230,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
232
230
|
requirements:
|
233
231
|
- - ">="
|
234
232
|
- !ruby/object:Gem::Version
|
235
|
-
version:
|
233
|
+
version: 2.5.0
|
236
234
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
237
235
|
requirements:
|
238
236
|
- - ">="
|
239
237
|
- !ruby/object:Gem::Version
|
240
238
|
version: '0'
|
241
239
|
requirements: []
|
242
|
-
|
243
|
-
|
244
|
-
signing_key:
|
240
|
+
rubygems_version: 3.4.21
|
241
|
+
signing_key:
|
245
242
|
specification_version: 4
|
246
243
|
summary: A library for interacting with MediaWiki API from Ruby.
|
247
244
|
test_files:
|
@@ -250,4 +247,3 @@ test_files:
|
|
250
247
|
- spec/response_spec.rb
|
251
248
|
- spec/spec_helper.rb
|
252
249
|
- spec/support/request_helpers.rb
|
253
|
-
has_rdoc:
|