itest5ch 3.0.2 → 3.0.3
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 +4 -4
- data/.github/dependabot.yml +11 -3
- data/.github/release.yml +31 -0
- data/.github/workflows/dependabot-manager.yml +28 -0
- data/.github/workflows/pages.yml +4 -45
- data/.github/workflows/release_gem.yml +4 -31
- data/.github/workflows/test.yml +67 -24
- data/CHANGELOG.md +8 -2
- data/Gemfile +5 -0
- data/README.md +1 -1
- data/itest5ch.gemspec +2 -0
- data/lib/itest5ch/version.rb +1 -1
- metadata +32 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5f74f193f37a49f7bb42068a72fac30d66edf131a44d0666a172144c85bb4065
|
|
4
|
+
data.tar.gz: dc8a904eae7bbbee523e5766176b2a2631003b21029fa5bf2583f550376eb711
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b096d70295e2d2b3215befcf875eb174362666e8c69c18bb0c72a513642837a71a16db2d046a6e9f7ab062a0e1cffc50159cdc8692ba7632dce898b4b02969fd
|
|
7
|
+
data.tar.gz: 1211e3c1d0c9272aff3c6e57fbdd84337aff0a168d5ce8957c01abb9adfa0c8a05039f3ec360351ca84ee6c6699c198c34eb78e48a4b21994e1d1fb0451b4790
|
data/.github/dependabot.yml
CHANGED
|
@@ -2,11 +2,19 @@
|
|
|
2
2
|
version: 2
|
|
3
3
|
|
|
4
4
|
updates:
|
|
5
|
+
###########################################################
|
|
6
|
+
# NOTE: following sections are auto generated. DO NOT EDIT!
|
|
7
|
+
###########################################################
|
|
5
8
|
- package-ecosystem: github-actions
|
|
6
9
|
directory: /
|
|
7
10
|
schedule:
|
|
8
|
-
interval:
|
|
9
|
-
|
|
10
|
-
|
|
11
|
+
interval: monthly
|
|
12
|
+
time: "05:00"
|
|
13
|
+
timezone: Asia/Tokyo
|
|
11
14
|
assignees:
|
|
12
15
|
- sue445
|
|
16
|
+
cooldown:
|
|
17
|
+
default-days: 7
|
|
18
|
+
exclude:
|
|
19
|
+
- ruby/setup-ruby
|
|
20
|
+
###########################################################
|
data/.github/release.yml
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# ref. https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes#configuring-automatically-generated-release-notes
|
|
2
|
+
|
|
3
|
+
changelog:
|
|
4
|
+
exclude:
|
|
5
|
+
labels:
|
|
6
|
+
- chore
|
|
7
|
+
|
|
8
|
+
categories:
|
|
9
|
+
- title: ":bomb: Breaking Changes"
|
|
10
|
+
labels:
|
|
11
|
+
- breaking change
|
|
12
|
+
|
|
13
|
+
- title: ":lock: Security Fix"
|
|
14
|
+
labels:
|
|
15
|
+
- security
|
|
16
|
+
|
|
17
|
+
- title: ":rocket: Features"
|
|
18
|
+
labels:
|
|
19
|
+
- enhancement
|
|
20
|
+
|
|
21
|
+
- title: ":bug: Bug Fixes"
|
|
22
|
+
labels:
|
|
23
|
+
- bug
|
|
24
|
+
|
|
25
|
+
- title: ":dependabot: Dependency updates"
|
|
26
|
+
labels:
|
|
27
|
+
- dependencies
|
|
28
|
+
|
|
29
|
+
- title: ":pencil: Other Changes"
|
|
30
|
+
labels:
|
|
31
|
+
- "*"
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
name: dependabot-manager
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request:
|
|
5
|
+
types:
|
|
6
|
+
- opened
|
|
7
|
+
- synchronize # PR branch is rebased
|
|
8
|
+
|
|
9
|
+
jobs:
|
|
10
|
+
dependabot-auto-merge:
|
|
11
|
+
uses: sue445/workflows/.github/workflows/dependabot-auto-merge.yml@main
|
|
12
|
+
with:
|
|
13
|
+
repo-name: sue445/itest5ch
|
|
14
|
+
secrets:
|
|
15
|
+
# TODO: Set secrets to Dependabot secrets
|
|
16
|
+
app-id: ${{ secrets.GH_APP_ID }}
|
|
17
|
+
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
|
|
18
|
+
slack-webhook: ${{ secrets.SLACK_WEBHOOK }}
|
|
19
|
+
|
|
20
|
+
dependabot-security-alert:
|
|
21
|
+
uses: sue445/workflows/.github/workflows/dependabot-security-alert.yml@main
|
|
22
|
+
with:
|
|
23
|
+
repo-name: sue445/itest5ch
|
|
24
|
+
secrets:
|
|
25
|
+
# TODO: Set secrets to Dependabot secrets
|
|
26
|
+
app-id: ${{ secrets.GH_APP_ID }}
|
|
27
|
+
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
|
|
28
|
+
slack-webhook: ${{ secrets.SLACK_WEBHOOK }}
|
data/.github/workflows/pages.yml
CHANGED
|
@@ -1,59 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
name: Deploy static content to Pages
|
|
1
|
+
name: Deploy yard to Pages
|
|
3
2
|
|
|
4
3
|
on:
|
|
5
|
-
# Runs on pushes targeting the default branch
|
|
6
4
|
push:
|
|
7
5
|
branches:
|
|
8
6
|
- master
|
|
9
|
-
|
|
10
|
-
# Allows you to run this workflow manually from the Actions tab
|
|
11
7
|
workflow_dispatch:
|
|
12
8
|
|
|
13
|
-
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
|
14
9
|
permissions:
|
|
15
10
|
contents: read
|
|
16
11
|
pages: write
|
|
17
12
|
id-token: write
|
|
18
13
|
|
|
19
|
-
# Allow one concurrent deployment
|
|
20
|
-
concurrency:
|
|
21
|
-
group: "pages"
|
|
22
|
-
cancel-in-progress: true
|
|
23
|
-
|
|
24
14
|
jobs:
|
|
25
|
-
# Single deploy job since we're just deploying
|
|
26
15
|
deploy:
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
runs-on: ubuntu-latest
|
|
31
|
-
steps:
|
|
32
|
-
- name: Checkout
|
|
33
|
-
uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1
|
|
34
|
-
|
|
35
|
-
- uses: ruby/setup-ruby@8aeb6ff8030dd539317f8e1769a044873b56ea71 # v1.268.0
|
|
36
|
-
with:
|
|
37
|
-
ruby-version: ruby
|
|
38
|
-
bundler-cache: true
|
|
39
|
-
|
|
40
|
-
- run: bundle exec yard
|
|
41
|
-
|
|
42
|
-
- name: Setup Pages
|
|
43
|
-
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0
|
|
44
|
-
- name: Upload artifact
|
|
45
|
-
uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # v4.0.0
|
|
46
|
-
with:
|
|
47
|
-
# Upload entire repository
|
|
48
|
-
path: './doc'
|
|
49
|
-
- name: Deploy to GitHub Pages
|
|
50
|
-
id: deployment
|
|
51
|
-
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5
|
|
52
|
-
|
|
53
|
-
- name: Slack Notification (not success)
|
|
54
|
-
uses: act10ns/slack@cfcc30955fe9377f4f55e1079e5419ee1014269f # v2
|
|
55
|
-
if: "! success()"
|
|
56
|
-
continue-on-error: true
|
|
57
|
-
with:
|
|
58
|
-
status: ${{ job.status }}
|
|
59
|
-
webhook-url: ${{ secrets.SLACK_WEBHOOK }}
|
|
16
|
+
uses: sue445/workflows/.github/workflows/pages-yard.yml@main
|
|
17
|
+
secrets:
|
|
18
|
+
slack-webhook: ${{ secrets.SLACK_WEBHOOK }}
|
|
@@ -5,37 +5,10 @@ on:
|
|
|
5
5
|
|
|
6
6
|
jobs:
|
|
7
7
|
release:
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
name: rubygems.org
|
|
13
|
-
url: https://rubygems.org/gems/itest5ch
|
|
14
|
-
|
|
8
|
+
uses: sue445/workflows/.github/workflows/release_gem.yml@main
|
|
9
|
+
with:
|
|
10
|
+
repo-name: sue445/itest5ch
|
|
11
|
+
gem-name: itest5ch
|
|
15
12
|
permissions:
|
|
16
13
|
contents: write
|
|
17
14
|
id-token: write
|
|
18
|
-
|
|
19
|
-
steps:
|
|
20
|
-
- name: Harden Runner
|
|
21
|
-
uses: step-security/harden-runner@ec9f2d5744a09debf3a187a3f4f675c53b671911 # v2.13.0
|
|
22
|
-
with:
|
|
23
|
-
egress-policy: audit
|
|
24
|
-
|
|
25
|
-
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
|
|
26
|
-
|
|
27
|
-
- name: Set up Ruby
|
|
28
|
-
uses: ruby/setup-ruby@eaecf785f6a34567a6d97f686bbb7bccc1ac1e5c # v1.237.0
|
|
29
|
-
with:
|
|
30
|
-
bundler-cache: true
|
|
31
|
-
ruby-version: ruby
|
|
32
|
-
|
|
33
|
-
- name: Publish to RubyGems
|
|
34
|
-
uses: rubygems/release-gem@a25424ba2ba8b387abc8ef40807c2c85b96cbe32 # v1.1.1
|
|
35
|
-
|
|
36
|
-
- name: Create GitHub release
|
|
37
|
-
run: |
|
|
38
|
-
tag_name="$(git describe --tags --abbrev=0)"
|
|
39
|
-
gh release create "${tag_name}" --verify-tag --generate-notes
|
|
40
|
-
env:
|
|
41
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
data/.github/workflows/test.yml
CHANGED
|
@@ -27,11 +27,12 @@ jobs:
|
|
|
27
27
|
- "3.2"
|
|
28
28
|
- "3.3"
|
|
29
29
|
- "3.4"
|
|
30
|
+
- "4.0"
|
|
30
31
|
|
|
31
32
|
steps:
|
|
32
|
-
- uses: actions/checkout@
|
|
33
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
33
34
|
|
|
34
|
-
- uses: ruby/setup-ruby@
|
|
35
|
+
- uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1.321.0
|
|
35
36
|
with:
|
|
36
37
|
ruby-version: ${{ matrix.ruby }}
|
|
37
38
|
bundler-cache: true
|
|
@@ -40,47 +41,89 @@ jobs:
|
|
|
40
41
|
run: |
|
|
41
42
|
set -xe
|
|
42
43
|
bundle config path vendor/bundle
|
|
43
|
-
bundle update --jobs $(nproc) --retry 3
|
|
44
|
+
bundle update --all --jobs $(nproc) --retry 3
|
|
44
45
|
|
|
45
|
-
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
- run: bundle exec rspec
|
|
47
|
+
|
|
48
|
+
- name: Slack Notification (not success)
|
|
49
|
+
uses: act10ns/slack@d96404edccc6d6467fc7f8134a420c851b1e9054 # v2.2.0
|
|
50
|
+
if: "! success()"
|
|
50
51
|
continue-on-error: true
|
|
52
|
+
with:
|
|
53
|
+
status: ${{ job.status }}
|
|
54
|
+
webhook-url: ${{ secrets.SLACK_WEBHOOK }}
|
|
55
|
+
matrix: ${{ toJson(matrix) }}
|
|
51
56
|
|
|
52
|
-
|
|
57
|
+
yard:
|
|
58
|
+
runs-on: ubuntu-latest
|
|
53
59
|
|
|
54
|
-
|
|
55
|
-
|
|
60
|
+
steps:
|
|
61
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
62
|
+
|
|
63
|
+
- uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1.321.0
|
|
56
64
|
with:
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
65
|
+
ruby-version: ruby
|
|
66
|
+
bundler-cache: true
|
|
67
|
+
|
|
68
|
+
- name: bundle update
|
|
69
|
+
run: |
|
|
70
|
+
set -xe
|
|
71
|
+
bundle config path vendor/bundle
|
|
72
|
+
bundle update --all --jobs $(nproc) --retry 3
|
|
73
|
+
|
|
74
|
+
- name: yard generating test
|
|
75
|
+
run: |
|
|
76
|
+
set -xe
|
|
77
|
+
bundle exec yard
|
|
78
|
+
ls -ld doc/
|
|
79
|
+
|
|
80
|
+
- name: Slack Notification (not success)
|
|
81
|
+
uses: act10ns/slack@d96404edccc6d6467fc7f8134a420c851b1e9054 # v2.2.0
|
|
82
|
+
if: "! success()"
|
|
60
83
|
continue-on-error: true
|
|
84
|
+
with:
|
|
85
|
+
status: ${{ job.status }}
|
|
86
|
+
webhook-url: ${{ secrets.SLACK_WEBHOOK }}
|
|
87
|
+
|
|
88
|
+
rubocop:
|
|
89
|
+
runs-on: ubuntu-latest
|
|
90
|
+
|
|
91
|
+
steps:
|
|
92
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
93
|
+
|
|
94
|
+
- uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1.321.0
|
|
95
|
+
with:
|
|
96
|
+
ruby-version: ruby
|
|
97
|
+
bundler-cache: true
|
|
98
|
+
|
|
99
|
+
- name: bundle update
|
|
100
|
+
run: |
|
|
101
|
+
set -xe
|
|
102
|
+
bundle config path vendor/bundle
|
|
103
|
+
bundle update --all --jobs $(nproc) --retry 3
|
|
61
104
|
|
|
62
105
|
- run: bundle exec rubocop
|
|
63
106
|
|
|
64
107
|
- name: Slack Notification (not success)
|
|
65
|
-
uses: act10ns/slack@
|
|
108
|
+
uses: act10ns/slack@d96404edccc6d6467fc7f8134a420c851b1e9054 # v2.2.0
|
|
66
109
|
if: "! success()"
|
|
67
110
|
continue-on-error: true
|
|
68
111
|
with:
|
|
69
112
|
status: ${{ job.status }}
|
|
70
113
|
webhook-url: ${{ secrets.SLACK_WEBHOOK }}
|
|
71
|
-
matrix: ${{ toJson(matrix) }}
|
|
72
114
|
|
|
73
|
-
|
|
115
|
+
all-pass:
|
|
116
|
+
if: always()
|
|
117
|
+
|
|
74
118
|
needs:
|
|
75
119
|
- test
|
|
120
|
+
- yard
|
|
121
|
+
- rubocop
|
|
76
122
|
|
|
77
|
-
runs-on: ubuntu-
|
|
123
|
+
runs-on: ubuntu-slim
|
|
78
124
|
|
|
79
125
|
steps:
|
|
80
|
-
- name:
|
|
81
|
-
uses:
|
|
82
|
-
if: always()
|
|
83
|
-
continue-on-error: true
|
|
126
|
+
- name: check dependent jobs
|
|
127
|
+
uses: re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe # v1.2.2
|
|
84
128
|
with:
|
|
85
|
-
|
|
86
|
-
webhook-url: ${{ secrets.SLACK_WEBHOOK }}
|
|
129
|
+
jobs: ${{ toJSON(needs) }}
|
data/CHANGELOG.md
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
## master
|
|
2
|
-
[full changelog](http://github.com/sue445/itest5ch/compare/v3.0.
|
|
2
|
+
[full changelog](http://github.com/sue445/itest5ch/compare/v3.0.3...master)
|
|
3
3
|
|
|
4
|
-
## [v3.0.
|
|
4
|
+
## [v3.0.3](https://github.com/sue445/itest5ch/releases/tag/v3.0.3)
|
|
5
|
+
[full changelog](http://github.com/sue445/itest5ch/compare/v3.0.2...v3.0.3)
|
|
6
|
+
|
|
7
|
+
* Migrate release_gem workflow to sue445/workflows (Also testing the gem release)
|
|
8
|
+
* https://github.com/sue445/itest5ch/pull/156
|
|
9
|
+
|
|
10
|
+
## [v3.0.2](https://github.com/sue445/itest5ch/releases/tag/v3.0.2)
|
|
5
11
|
[full changelog](http://github.com/sue445/itest5ch/compare/v3.0.1...v3.0.2)
|
|
6
12
|
|
|
7
13
|
* Release gem from GitHub Actions
|
data/Gemfile
CHANGED
|
@@ -4,3 +4,8 @@ git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
|
|
|
4
4
|
|
|
5
5
|
# Specify your gem's dependencies in itest5ch.gemspec
|
|
6
6
|
gemspec
|
|
7
|
+
|
|
8
|
+
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new("3.2.0")
|
|
9
|
+
# NOTE: i18n 1.15.0+ requires Ruby 3.2+
|
|
10
|
+
gem "i18n", "< 1.15.0"
|
|
11
|
+
end
|
data/README.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
[](https://badge.fury.io/rb/itest5ch)
|
|
6
6
|
[](https://github.com/sue445/itest5ch/actions/workflows/test.yml)
|
|
7
7
|
[](https://coveralls.io/github/sue445/itest5ch)
|
|
8
|
-
[](https://qlty.sh/gh/sue445/projects/itest5ch)
|
|
9
9
|
|
|
10
10
|
## Installation
|
|
11
11
|
|
data/itest5ch.gemspec
CHANGED
|
@@ -34,8 +34,10 @@ Gem::Specification.new do |spec|
|
|
|
34
34
|
spec.add_development_dependency "activesupport"
|
|
35
35
|
spec.add_development_dependency "bundler", ">= 1.16"
|
|
36
36
|
spec.add_development_dependency "coveralls"
|
|
37
|
+
spec.add_development_dependency "irb"
|
|
37
38
|
spec.add_development_dependency "onkcop", "1.0.0.0"
|
|
38
39
|
spec.add_development_dependency "rake", ">= 10.0"
|
|
40
|
+
spec.add_development_dependency "rdoc"
|
|
39
41
|
spec.add_development_dependency "rspec", "~> 3.0"
|
|
40
42
|
spec.add_development_dependency "rspec-its"
|
|
41
43
|
spec.add_development_dependency "rspec-parameterized"
|
data/lib/itest5ch/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: itest5ch
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 3.0.
|
|
4
|
+
version: 3.0.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- sue445
|
|
@@ -79,6 +79,20 @@ dependencies:
|
|
|
79
79
|
- - ">="
|
|
80
80
|
- !ruby/object:Gem::Version
|
|
81
81
|
version: '0'
|
|
82
|
+
- !ruby/object:Gem::Dependency
|
|
83
|
+
name: irb
|
|
84
|
+
requirement: !ruby/object:Gem::Requirement
|
|
85
|
+
requirements:
|
|
86
|
+
- - ">="
|
|
87
|
+
- !ruby/object:Gem::Version
|
|
88
|
+
version: '0'
|
|
89
|
+
type: :development
|
|
90
|
+
prerelease: false
|
|
91
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
92
|
+
requirements:
|
|
93
|
+
- - ">="
|
|
94
|
+
- !ruby/object:Gem::Version
|
|
95
|
+
version: '0'
|
|
82
96
|
- !ruby/object:Gem::Dependency
|
|
83
97
|
name: onkcop
|
|
84
98
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -107,6 +121,20 @@ dependencies:
|
|
|
107
121
|
- - ">="
|
|
108
122
|
- !ruby/object:Gem::Version
|
|
109
123
|
version: '10.0'
|
|
124
|
+
- !ruby/object:Gem::Dependency
|
|
125
|
+
name: rdoc
|
|
126
|
+
requirement: !ruby/object:Gem::Requirement
|
|
127
|
+
requirements:
|
|
128
|
+
- - ">="
|
|
129
|
+
- !ruby/object:Gem::Version
|
|
130
|
+
version: '0'
|
|
131
|
+
type: :development
|
|
132
|
+
prerelease: false
|
|
133
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
134
|
+
requirements:
|
|
135
|
+
- - ">="
|
|
136
|
+
- !ruby/object:Gem::Version
|
|
137
|
+
version: '0'
|
|
110
138
|
- !ruby/object:Gem::Dependency
|
|
111
139
|
name: rspec
|
|
112
140
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -284,6 +312,8 @@ extra_rdoc_files: []
|
|
|
284
312
|
files:
|
|
285
313
|
- ".coveralls.yml"
|
|
286
314
|
- ".github/dependabot.yml"
|
|
315
|
+
- ".github/release.yml"
|
|
316
|
+
- ".github/workflows/dependabot-manager.yml"
|
|
287
317
|
- ".github/workflows/pages.yml"
|
|
288
318
|
- ".github/workflows/release_gem.yml"
|
|
289
319
|
- ".github/workflows/test.yml"
|
|
@@ -331,7 +361,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
331
361
|
- !ruby/object:Gem::Version
|
|
332
362
|
version: '0'
|
|
333
363
|
requirements: []
|
|
334
|
-
rubygems_version:
|
|
364
|
+
rubygems_version: 4.0.16
|
|
335
365
|
specification_version: 4
|
|
336
366
|
summary: 5ch (a.k.a. 2ch) reader via itest.5ch.net
|
|
337
367
|
test_files: []
|