A summary of data about the Ruby ecosystem.

https://github.com/ruby/net-imap

Ruby client api for Internet Message Access Protocol
https://github.com/ruby/net-imap

Keywords

hacktoberfest ruby

Keywords from Contributors

repl webrick rubygems bigdecimal debugger debugging-tool documentation-tool lalr-parser-generator parser-generator strscan

Last synced: about 18 hours ago
JSON representation

Repository metadata

Ruby client api for Internet Message Access Protocol

README.md

Net::IMAP

Net::IMAP implements Internet Message Access Protocol (IMAP) client
functionality. The protocol is described in
RFC3501,
RFC9051 and various extensions.

Installation

Add this line to your application's Gemfile:

gem 'net-imap'

And then execute:

$ bundle install

Or install it yourself as:

$ gem install net-imap

Usage

Connect with TLS to port 993

imap = Net::IMAP.new('mail.example.com', ssl: true)
imap.port          => 993
imap.tls_verified? => true
case imap.greeting.name
in /OK/i
  # The client is connected in the "Not Authenticated" state.
  imap.authenticate("PLAIN", "joe_user", "joes_password")
in /PREAUTH/i
  # The client is connected in the "Authenticated" state.
end

List sender and subject of all recent messages in the default mailbox

imap.examine('INBOX')
imap.search(["RECENT"]).each do |message_id|
  envelope = imap.fetch(message_id, "ENVELOPE")[0].attr["ENVELOPE"]
  puts "#{envelope.from[0].name}: \t#{envelope.subject}"
end

Move all messages from April 2003 from "Mail/sent-mail" to "Mail/sent-apr03"

imap.select('Mail/sent-mail')
if imap.list('Mail/', 'sent-apr03').empty?
  imap.create('Mail/sent-apr03')
end
imap.search(["BEFORE", "30-Apr-2003", "SINCE", "1-Apr-2003"]).each do |message_id|
  if imap.capable?(:move) || imap.capable?(:IMAP4rev2)
    imap.move(message_id, "Mail/sent-apr03")
  else
    imap.copy(message_id, "Mail/sent-apr03")
    imap.store(message_id, "+FLAGS", [:Deleted])
  end
end
imap.expunge

Development

After checking out the repo, run bin/setup to install dependencies. Then, run bundle exec rake test to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/ruby/net-imap.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 1 day ago

Total Commits: 1,085
Total Committers: 44
Avg Commits per committer: 24.659
Development Distribution Score (DDS): 0.325

Commits in past year: 250
Committers in past year: 5
Avg Commits per committer in past year: 50.0
Development Distribution Score (DDS) in past year: 0.068

Name Email Commits
nicholas a. evans n****k@r****v 732
Shugo Maeda s****o@r****g 129
Hiroshi SHIBATA h****t@r****g 42
dependabot[bot] 4****] 42
Nobuyoshi Nakada n****u@r****g 26
Kazuhiro NISHIYAMA zn@m****m 12
matz m****z@b****e 8
akr a****r@b****e 7
Stefan Hoffmann s****3@g****m 6
Avdi Grimm a****i 5
shyouhei s****i@b****e 5
knu k****u@b****e 5
Arnt Gulbrandsen a****t@g****o 5
normal n****l@b****e 4
Yusuke Endoh m****e@r****g 4
naruse n****e@b****e 4
gsinclair g****r@b****e 4
Damir Gainetdinov d****v@z****m 3
Sarah Sunday 3****y 3
drbrain d****n@b****e 3
usa u****a@b****e 3
ko1 k****1@b****e 3
Bijan Rahnema b****n@s****m 2
Jeremy Evans c****e@j****t 2
Vít Ondruch v****h@r****m 2
marcandre m****e@b****e 2
svn s****n@b****e 2
taku0 m****b@t****g 2
gotoyuzo g****o@b****e 2
Takashi Kokubun t****n@g****m 2
and 14 more...

Committer domains:


Issue and Pull Request metadata

Last synced: 5 days ago

Total issues: 95
Total pull requests: 562
Average time to close issues: 8 months
Average time to close pull requests: 14 days
Total issue authors: 28
Total pull request authors: 16
Average comments per issue: 1.75
Average comments per pull request: 0.41
Merged pull request: 497
Bot issues: 1
Bot pull requests: 46

Past year issues: 14
Past year pull requests: 183
Past year average time to close issues: 21 days
Past year average time to close pull requests: 2 days
Past year issue authors: 10
Past year pull request authors: 4
Past year average comments per issue: 3.43
Past year average comments per pull request: 0.19
Past year merged pull request: 156
Past year bot issues: 0
Past year bot pull requests: 12

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/ruby/net-imap

Top Issue Authors

  • nevans (64)
  • stanley90 (2)
  • Neustradamus (2)
  • hoffi (2)
  • hsbt (2)
  • rhenium (1)
  • xiaoge1001 (1)
  • sos4nt (1)
  • dependabot[bot] (1)
  • joelmoss (1)
  • Eguthrie3214 (1)
  • voxik (1)
  • denzelem (1)
  • limmet (1)
  • shugo (1)

Top Pull Request Authors

  • nevans (478)
  • dependabot[bot] (46)
  • hsbt (13)
  • taku0 (4)
  • shugo (4)
  • nobu (3)
  • avdi (2)
  • sorah (2)
  • arnt (2)
  • gaynetdinov (2)
  • debasishbsws (1)
  • petergoldstein (1)
  • ssunday (1)
  • mark-young-atg (1)
  • hoffi (1)

Top Issue Labels

  • IMAP4rev2 (23)
  • SASL :lock: (11)
  • IMAP4rev1 (8)
  • bug (2)
  • backport (1)
  • help wanted (1)
  • performance (1)
  • dependencies (1)
  • enhancement (1)

Top Pull Request Labels

  • enhancement (63)
  • documentation (55)
  • dependencies (53)
  • bug (42)
  • backport (41)
  • tests-only (38)
  • SASL :lock: (35)
  • IMAP4rev2 (17)
  • github_actions (13)
  • IMAP4rev1 (11)
  • breaking-change (8)
  • v0.5 (1)
  • backport-0.5 (1)

Package metadata

rubygems.org: net-imap

Ruby client api for Internet Message Access Protocol

proxy.golang.org: github.com/ruby/net-imap

  • Homepage:
  • Documentation: https://pkg.go.dev/github.com/ruby/net-imap#section-documentation
  • Licenses: other
  • Latest release: v0.6.3 (published 18 days ago)
  • Last Synced: 2026-02-28T16:01:21.487Z (3 days ago)
  • Versions: 60
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Forks count: 4.774%
    • Stargazers count: 6.595%
    • Average: 7.937%
    • Dependent packages count: 9.576%
    • Dependent repos count: 10.802%
alpine-v3.18: ruby-net-imap-doc

Ruby client api for Internet Message Access Protocol (ri docs)

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.3.4.1-r0 (published almost 2 years ago)
  • Last Synced: 2026-02-07T07:06:12.021Z (24 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 11.476%
    • Forks count: 21.565%
    • Stargazers count: 24.338%
  • Maintainers (1)
alpine-v3.18: ruby-net-imap

Ruby client api for Internet Message Access Protocol

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.3.4.1-r0 (published almost 2 years ago)
  • Last Synced: 2026-02-03T10:56:36.111Z (28 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 11.476%
    • Forks count: 21.565%
    • Stargazers count: 24.338%
  • Maintainers (1)
alpine-v3.16: ruby-net-imap-doc

Ruby client api for Internet Message Access Protocol (ri docs)

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.2.4-r0 (published almost 2 years ago)
  • Last Synced: 2026-02-03T10:39:31.563Z (28 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Average: 15.537%
    • Forks count: 16.306%
    • Stargazers count: 18.53%
    • Dependent packages count: 27.311%
  • Maintainers (1)
alpine-v3.16: ruby-net-imap

Ruby client api for Internet Message Access Protocol

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.2.4-r0 (published almost 2 years ago)
  • Last Synced: 2026-02-03T10:56:44.886Z (28 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Average: 15.537%
    • Forks count: 16.306%
    • Stargazers count: 18.53%
    • Dependent packages count: 27.311%
  • Maintainers (1)
alpine-edge: ruby-net-imap-doc

Ruby client api for Internet Message Access Protocol (ri docs)

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.5.8-r0 (published 10 months ago)
  • Last Synced: 2026-02-03T10:56:32.386Z (28 days ago)
  • Versions: 8
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 14.641%
    • Average: 15.775%
    • Forks count: 22.441%
    • Stargazers count: 26.018%
  • Maintainers (1)
alpine-edge: ruby-net-imap

Ruby client api for Internet Message Access Protocol

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.5.8-r0 (published 10 months ago)
  • Last Synced: 2026-02-06T06:01:18.309Z (25 days ago)
  • Versions: 8
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 14.641%
    • Average: 15.775%
    • Forks count: 22.441%
    • Stargazers count: 26.018%
  • Maintainers (1)
alpine-v3.17: ruby-net-imap-doc

Ruby client api for Internet Message Access Protocol (ri docs)

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.2.4-r0 (published almost 2 years ago)
  • Last Synced: 2026-02-03T10:56:32.316Z (28 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Average: 17.185%
    • Forks count: 19.395%
    • Stargazers count: 22.089%
    • Dependent packages count: 27.254%
  • Maintainers (1)
alpine-v3.17: ruby-net-imap

Ruby client api for Internet Message Access Protocol

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.2.4-r0 (published almost 2 years ago)
  • Last Synced: 2026-02-03T05:22:39.622Z (28 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Average: 17.185%
    • Forks count: 19.395%
    • Stargazers count: 22.089%
    • Dependent packages count: 27.254%
  • Maintainers (1)
alpine-v3.23: ruby-net-imap

Ruby client api for Internet Message Access Protocol

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.5.8-r0 (published 10 months ago)
  • Last Synced: 2026-02-03T10:00:46.446Z (28 days ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
alpine-v3.23: ruby-net-imap-doc

Ruby client api for Internet Message Access Protocol (ri docs)

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.5.8-r0 (published 10 months ago)
  • Last Synced: 2026-02-03T10:00:46.481Z (28 days ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
gem.coop: net-imap

Ruby client api for Internet Message Access Protocol

alpine-v3.22: ruby-net-imap-doc

Ruby client api for Internet Message Access Protocol (ri docs)

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.5.8-r0 (published 10 months ago)
  • Last Synced: 2026-02-03T10:56:42.459Z (28 days ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
  • Maintainers (1)
alpine-v3.19: ruby-net-imap-doc

Ruby client api for Internet Message Access Protocol (ri docs)

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.3.9-r0 (published 10 months ago)
  • Last Synced: 2026-02-20T09:04:35.903Z (11 days ago)
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
  • Maintainers (1)
alpine-v3.20: ruby-net-imap-doc

Ruby client api for Internet Message Access Protocol (ri docs)

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.4.22-r0 (published 3 months ago)
  • Last Synced: 2026-02-04T10:57:00.887Z (27 days ago)
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
  • Maintainers (1)
alpine-v3.22: ruby-net-imap

Ruby client api for Internet Message Access Protocol

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.5.8-r0 (published 10 months ago)
  • Last Synced: 2026-02-03T10:39:38.584Z (28 days ago)
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
  • Maintainers (1)
alpine-v3.21: ruby-net-imap

Ruby client api for Internet Message Access Protocol

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.4.22-r0 (published 3 months ago)
  • Last Synced: 2026-02-03T10:56:43.453Z (28 days ago)
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
  • Maintainers (1)
alpine-v3.19: ruby-net-imap

Ruby client api for Internet Message Access Protocol

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.3.9-r0 (published 10 months ago)
  • Last Synced: 2026-02-04T10:56:54.801Z (27 days ago)
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
  • Maintainers (1)
alpine-v3.21: ruby-net-imap-doc

Ruby client api for Internet Message Access Protocol (ri docs)

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.4.22-r0 (published 3 months ago)
  • Last Synced: 2026-02-03T10:56:11.304Z (28 days ago)
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
  • Maintainers (1)
alpine-v3.20: ruby-net-imap

Ruby client api for Internet Message Access Protocol

  • Homepage: https://github.com/ruby/net-imap
  • Licenses: BSD-2-Clause AND Ruby
  • Latest release: 0.4.22-r0 (published 3 months ago)
  • Last Synced: 2026-02-03T10:56:42.693Z (28 days ago)
  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 100%
  • Maintainers (1)

Dependencies

.github/workflows/test.yml actions
  • actions/checkout v3 composite
  • ruby/setup-ruby v1 composite
Gemfile rubygems
  • rake >= 0
  • rdoc >= 0
  • test-unit >= 0
net-imap.gemspec rubygems
  • digest >= 0 development
  • strscan >= 0 development
  • date >= 0
  • net-protocol >= 0
.github/workflows/pages.yml actions
  • actions/checkout v5 composite
  • actions/configure-pages v5 composite
  • actions/deploy-pages v4 composite
  • actions/upload-pages-artifact v4 composite
  • ruby/setup-ruby v1 composite
.github/workflows/push_gem.yml actions
  • actions/checkout v5 composite
  • ruby/setup-ruby v1 composite
  • rubygems/release-gem v1 composite
  • step-security/harden-runner 95d9a5deda9de15063e7595e9719c11c38c90ae2 composite

Score: 31.48850633817227