net-imap 0.4.12 → 0.5.6
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.
Potentially problematic release.
This version of net-imap might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/Gemfile +8 -1
- data/README.md +10 -4
- data/docs/styles.css +75 -14
- data/lib/net/imap/authenticators.rb +2 -2
- data/lib/net/imap/command_data.rb +61 -48
- data/lib/net/imap/config/attr_accessors.rb +75 -0
- data/lib/net/imap/config/attr_inheritance.rb +90 -0
- data/lib/net/imap/config/attr_type_coercion.rb +61 -0
- data/lib/net/imap/config.rb +470 -0
- data/lib/net/imap/data_encoding.rb +3 -3
- data/lib/net/imap/data_lite.rb +226 -0
- data/lib/net/imap/deprecated_client_options.rb +8 -5
- data/lib/net/imap/errors.rb +6 -0
- data/lib/net/imap/esearch_result.rb +180 -0
- data/lib/net/imap/fetch_data.rb +126 -47
- data/lib/net/imap/response_data.rb +124 -237
- data/lib/net/imap/response_parser/parser_utils.rb +11 -6
- data/lib/net/imap/response_parser.rb +187 -34
- data/lib/net/imap/sasl/anonymous_authenticator.rb +3 -3
- data/lib/net/imap/sasl/authentication_exchange.rb +52 -20
- data/lib/net/imap/sasl/authenticators.rb +8 -4
- data/lib/net/imap/sasl/client_adapter.rb +77 -26
- data/lib/net/imap/sasl/cram_md5_authenticator.rb +4 -4
- data/lib/net/imap/sasl/digest_md5_authenticator.rb +218 -56
- data/lib/net/imap/sasl/external_authenticator.rb +2 -2
- data/lib/net/imap/sasl/gs2_header.rb +7 -7
- data/lib/net/imap/sasl/login_authenticator.rb +4 -3
- data/lib/net/imap/sasl/oauthbearer_authenticator.rb +6 -6
- data/lib/net/imap/sasl/plain_authenticator.rb +7 -7
- data/lib/net/imap/sasl/protocol_adapters.rb +60 -4
- data/lib/net/imap/sasl/scram_authenticator.rb +8 -8
- data/lib/net/imap/sasl.rb +7 -4
- data/lib/net/imap/sasl_adapter.rb +0 -1
- data/lib/net/imap/search_result.rb +2 -2
- data/lib/net/imap/sequence_set.rb +221 -82
- data/lib/net/imap/stringprep/nameprep.rb +1 -1
- data/lib/net/imap/stringprep/trace.rb +4 -4
- data/lib/net/imap/uidplus_data.rb +244 -0
- data/lib/net/imap/vanished_data.rb +56 -0
- data/lib/net/imap.rb +1010 -320
- data/net-imap.gemspec +3 -3
- data/rakelib/rfcs.rake +2 -0
- data/rakelib/string_prep_tables_generator.rb +2 -0
- metadata +12 -10
- data/.github/dependabot.yml +0 -6
- data/.github/workflows/pages.yml +0 -46
- data/.github/workflows/push_gem.yml +0 -48
- data/.github/workflows/test.yml +0 -31
- data/.gitignore +0 -12
- data/.mailmap +0 -13
data/net-imap.gemspec
CHANGED
@@ -16,7 +16,7 @@ Gem::Specification.new do |spec|
|
|
16
16
|
spec.summary = %q{Ruby client api for Internet Message Access Protocol}
|
17
17
|
spec.description = %q{Ruby client api for Internet Message Access Protocol}
|
18
18
|
spec.homepage = "https://github.com/ruby/net-imap"
|
19
|
-
spec.required_ruby_version = Gem::Requirement.new(">=
|
19
|
+
spec.required_ruby_version = Gem::Requirement.new(">= 3.1.0")
|
20
20
|
spec.licenses = ["Ruby", "BSD-2-Clause"]
|
21
21
|
|
22
22
|
spec.metadata["homepage_uri"] = spec.homepage
|
@@ -25,9 +25,9 @@ Gem::Specification.new do |spec|
|
|
25
25
|
|
26
26
|
# Specify which files should be added to the gem when it is released.
|
27
27
|
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
28
|
-
spec.files = Dir.chdir(
|
28
|
+
spec.files = Dir.chdir(__dir__) do
|
29
29
|
`git ls-files -z 2>/dev/null`.split("\x0")
|
30
|
-
.grep_v(%r{^(\.git
|
30
|
+
.grep_v(%r{^(\.git(ignore)?|\.mailmap|(\.github|bin|test|spec|benchmarks|features|rfcs)/)})
|
31
31
|
end
|
32
32
|
spec.bindir = "exe"
|
33
33
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
data/rakelib/rfcs.rake
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: net-imap
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shugo Maeda
|
8
8
|
- nicholas a. evans
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-02-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: net-protocol
|
@@ -46,12 +46,6 @@ executables: []
|
|
46
46
|
extensions: []
|
47
47
|
extra_rdoc_files: []
|
48
48
|
files:
|
49
|
-
- ".github/dependabot.yml"
|
50
|
-
- ".github/workflows/pages.yml"
|
51
|
-
- ".github/workflows/push_gem.yml"
|
52
|
-
- ".github/workflows/test.yml"
|
53
|
-
- ".gitignore"
|
54
|
-
- ".mailmap"
|
55
49
|
- BSDL
|
56
50
|
- COPYING
|
57
51
|
- Gemfile
|
@@ -62,9 +56,15 @@ files:
|
|
62
56
|
- lib/net/imap.rb
|
63
57
|
- lib/net/imap/authenticators.rb
|
64
58
|
- lib/net/imap/command_data.rb
|
59
|
+
- lib/net/imap/config.rb
|
60
|
+
- lib/net/imap/config/attr_accessors.rb
|
61
|
+
- lib/net/imap/config/attr_inheritance.rb
|
62
|
+
- lib/net/imap/config/attr_type_coercion.rb
|
65
63
|
- lib/net/imap/data_encoding.rb
|
64
|
+
- lib/net/imap/data_lite.rb
|
66
65
|
- lib/net/imap/deprecated_client_options.rb
|
67
66
|
- lib/net/imap/errors.rb
|
67
|
+
- lib/net/imap/esearch_result.rb
|
68
68
|
- lib/net/imap/fetch_data.rb
|
69
69
|
- lib/net/imap/flags.rb
|
70
70
|
- lib/net/imap/response_data.rb
|
@@ -96,6 +96,8 @@ files:
|
|
96
96
|
- lib/net/imap/stringprep/saslprep_tables.rb
|
97
97
|
- lib/net/imap/stringprep/tables.rb
|
98
98
|
- lib/net/imap/stringprep/trace.rb
|
99
|
+
- lib/net/imap/uidplus_data.rb
|
100
|
+
- lib/net/imap/vanished_data.rb
|
99
101
|
- net-imap.gemspec
|
100
102
|
- rakelib/benchmarks.rake
|
101
103
|
- rakelib/rdoc.rake
|
@@ -118,14 +120,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
118
120
|
requirements:
|
119
121
|
- - ">="
|
120
122
|
- !ruby/object:Gem::Version
|
121
|
-
version:
|
123
|
+
version: 3.1.0
|
122
124
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
123
125
|
requirements:
|
124
126
|
- - ">="
|
125
127
|
- !ruby/object:Gem::Version
|
126
128
|
version: '0'
|
127
129
|
requirements: []
|
128
|
-
rubygems_version: 3.6.
|
130
|
+
rubygems_version: 3.6.2
|
129
131
|
specification_version: 4
|
130
132
|
summary: Ruby client api for Internet Message Access Protocol
|
131
133
|
test_files: []
|
data/.github/dependabot.yml
DELETED
data/.github/workflows/pages.yml
DELETED
@@ -1,46 +0,0 @@
|
|
1
|
-
name: Deploy RDoc site to Pages
|
2
|
-
|
3
|
-
on:
|
4
|
-
push:
|
5
|
-
branches: [ 'master' ]
|
6
|
-
workflow_dispatch:
|
7
|
-
|
8
|
-
permissions:
|
9
|
-
contents: read
|
10
|
-
pages: write
|
11
|
-
id-token: write
|
12
|
-
|
13
|
-
concurrency:
|
14
|
-
group: "pages"
|
15
|
-
cancel-in-progress: true
|
16
|
-
|
17
|
-
jobs:
|
18
|
-
build:
|
19
|
-
runs-on: ubuntu-latest
|
20
|
-
steps:
|
21
|
-
- name: Checkout
|
22
|
-
uses: actions/checkout@v4
|
23
|
-
- name: Setup Ruby
|
24
|
-
uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0
|
25
|
-
with:
|
26
|
-
ruby-version: '3.2'
|
27
|
-
bundler-cache: true
|
28
|
-
- name: Setup Pages
|
29
|
-
id: pages
|
30
|
-
uses: actions/configure-pages@v5
|
31
|
-
- name: Build with RDoc
|
32
|
-
run: bundle exec rake rdoc
|
33
|
-
- name: Upload artifact
|
34
|
-
uses: actions/upload-pages-artifact@v3
|
35
|
-
with: { path: 'doc' }
|
36
|
-
|
37
|
-
deploy:
|
38
|
-
environment:
|
39
|
-
name: github-pages
|
40
|
-
url: ${{ steps.deployment.outputs.page_url }}
|
41
|
-
runs-on: ubuntu-latest
|
42
|
-
needs: build
|
43
|
-
steps:
|
44
|
-
- name: Deploy to GitHub Pages
|
45
|
-
id: deployment
|
46
|
-
uses: actions/deploy-pages@v4
|
@@ -1,48 +0,0 @@
|
|
1
|
-
name: Publish gem to rubygems.org
|
2
|
-
|
3
|
-
on:
|
4
|
-
push:
|
5
|
-
tags:
|
6
|
-
- 'v*'
|
7
|
-
|
8
|
-
permissions:
|
9
|
-
contents: read
|
10
|
-
|
11
|
-
jobs:
|
12
|
-
push:
|
13
|
-
if: github.repository == 'ruby/net-imap'
|
14
|
-
runs-on: ubuntu-latest
|
15
|
-
|
16
|
-
environment:
|
17
|
-
name: rubygems.org
|
18
|
-
url: https://rubygems.org/gems/net-imap
|
19
|
-
|
20
|
-
permissions:
|
21
|
-
contents: write
|
22
|
-
id-token: write
|
23
|
-
|
24
|
-
steps:
|
25
|
-
# Set up
|
26
|
-
- name: Harden Runner
|
27
|
-
uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
|
28
|
-
with:
|
29
|
-
egress-policy: audit
|
30
|
-
|
31
|
-
- uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
|
32
|
-
|
33
|
-
- name: Set up Ruby
|
34
|
-
uses: ruby/setup-ruby@cacc9f1c0b3f4eb8a16a6bb0ed10897b43b9de49 # v1.176.0
|
35
|
-
with:
|
36
|
-
bundler-cache: true
|
37
|
-
ruby-version: ruby
|
38
|
-
|
39
|
-
# Release
|
40
|
-
- name: Publish to RubyGems
|
41
|
-
uses: rubygems/release-gem@612653d273a73bdae1df8453e090060bb4db5f31 # v1
|
42
|
-
|
43
|
-
- name: Create GitHub release
|
44
|
-
run: |
|
45
|
-
tag_name="$(git describe --tags --abbrev=0)"
|
46
|
-
gh release create "${tag_name}" --verify-tag --draft --generate-notes
|
47
|
-
env:
|
48
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
data/.github/workflows/test.yml
DELETED
@@ -1,31 +0,0 @@
|
|
1
|
-
name: Run tests
|
2
|
-
|
3
|
-
on: [push, pull_request]
|
4
|
-
|
5
|
-
jobs:
|
6
|
-
ruby-versions:
|
7
|
-
uses: ruby/actions/.github/workflows/ruby_versions.yml@master
|
8
|
-
with:
|
9
|
-
engine: cruby
|
10
|
-
min_version: 2.7
|
11
|
-
|
12
|
-
build:
|
13
|
-
needs: ruby-versions
|
14
|
-
name: build (${{ matrix.ruby }} / ${{ matrix.os }})
|
15
|
-
strategy:
|
16
|
-
matrix:
|
17
|
-
ruby: ${{ fromJson(needs.ruby-versions.outputs.versions) }}
|
18
|
-
os: [ ubuntu-latest, macos-latest ]
|
19
|
-
experimental: [false]
|
20
|
-
runs-on: ${{ matrix.os }}
|
21
|
-
continue-on-error: ${{ matrix.experimental }}
|
22
|
-
steps:
|
23
|
-
- uses: actions/checkout@v4
|
24
|
-
- name: Set up Ruby
|
25
|
-
uses: ruby/setup-ruby@v1
|
26
|
-
with:
|
27
|
-
ruby-version: ${{ matrix.ruby }}
|
28
|
-
bundler-cache: true
|
29
|
-
rubygems: 3.4.22
|
30
|
-
- name: Run test
|
31
|
-
run: bundle exec rake test
|
data/.gitignore
DELETED
data/.mailmap
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
nicholas a. evans <nick@rubinick.dev>
|
2
|
-
nicholas a. evans <nick@rubinick.dev> <nick@410labs.com>
|
3
|
-
nicholas a. evans <nick@rubinick.dev> <nick@ekenosen.net>
|
4
|
-
nicholas a. evans <nick@rubinick.dev> <nicholas.evans@gmail.com>
|
5
|
-
|
6
|
-
Shugo Maeda <shugo@ruby-lang.org>
|
7
|
-
Shugo Maeda <shugo@ruby-lang.org> <shugo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
|
8
|
-
|
9
|
-
Nobuyoshi Nakada <nobu@ruby-lang.org>
|
10
|
-
Nobuyoshi Nakada <nobu@ruby-lang.org> <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
|
11
|
-
|
12
|
-
Hiroshi SHIBATA <hsbt@ruby-lang.org>
|
13
|
-
Hiroshi SHIBATA <hsbt@ruby-lang.org> <hsbt@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
|