A summary of data about the Ruby ecosystem.

https://github.com/lostisland/faraday-em_synchrony

Faraday adapter for EM::Synchrony
https://github.com/lostisland/faraday-em_synchrony

Keywords from Contributors

feature-flag

Last synced: about 6 hours ago
JSON representation

Repository metadata

Faraday adapter for EM::Synchrony

README.md

Faraday Em::Synchrony adapter

This gem is a Faraday adapter for the Em::Synchrony library.
Faraday is an HTTP client library that provides a common interface over many adapters.
Every adapter is defined into its own gem. This gem defines the adapter for Em::Synchrony.

Installation

Add these lines to your application's Gemfile:

gem 'faraday-em_synchrony'

And then execute:

$ bundle install

Or install them yourself as:

$ gem install faraday-em_synchrony

Usage

This adapter can be used to make parallel requests using EventMachine.

The key difference between this and EM-Http is that it uses fibers.
For more information see igrigorik's blog posts on the matter:

Error handling and responses have a slightly different behaviour and structure in some cases. Please run thorough testing scenarios, including connection failures and SSL failures

Base request

require 'faraday/em_synchrony'

conn = Faraday.new(...) do |f|
  # no custom options available
  f.adapter :em_synchrony
end

Parallel Requests

require 'faraday/em_synchrony'

urls = Array.new(5) { 'http://127.0.0.1:3000' }

conn = Faraday::Connection.new do |builder|
  builder.adapter :em_synchrony
end

begin
  conn.in_parallel do
    puts "Parallel manager: #{conn.parallel_manager}"

    @responses = urls.map do |url|
      conn.get(url)
    end
  end
end

# Gather responses outside of block
puts @responses.map(&:status).join(', ')
puts @responses.map(&:status).compact.count

Development

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

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.

License

The gem is available as open source under the terms of the license.

Code of Conduct

Everyone interacting in the Faraday Em::Synchrony adapter project's codebase, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.


Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 3 days ago

Total Commits: 7
Total Committers: 3
Avg Commits per committer: 2.333
Development Distribution Score (DDS): 0.571

Commits in past year: 4
Committers in past year: 2
Avg Commits per committer in past year: 2.0
Development Distribution Score (DDS) in past year: 0.25

Name Email Commits
Olle Jonsson o****n@g****m 3
Matt i****a 3
Ignacio Huerta i****o@i****t 1

Committer domains:


Issue and Pull Request metadata

Last synced: about 2 months ago

Total issues: 2
Total pull requests: 2
Average time to close issues: 5 minutes
Average time to close pull requests: 2 days
Total issue authors: 2
Total pull request authors: 2
Average comments per issue: 0.5
Average comments per pull request: 0.0
Merged pull request: 2
Bot issues: 0
Bot pull requests: 0

Past year issues: 0
Past year pull requests: 1
Past year average time to close issues: N/A
Past year average time to close pull requests: 4 days
Past year issue authors: 0
Past year pull request authors: 1
Past year average comments per issue: 0
Past year average comments per pull request: 0.0
Past year merged pull request: 1
Past year bot issues: 0
Past year bot pull requests: 0

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/lostisland/faraday-em_synchrony

Top Issue Authors

  • Roguelazer (1)
  • ekmartin (1)

Top Pull Request Authors

  • iox (2)
  • iMacTia (1)

Top Issue Labels

Top Pull Request Labels


Package metadata

gem.coop: faraday-em_synchrony

Faraday adapter for EM::Synchrony

  • Homepage: https://github.com/lostisland/faraday-em_synchrony
  • Documentation: http://www.rubydoc.info/gems/faraday-em_synchrony/
  • Licenses: MIT
  • Latest release: 1.0.1 (published 6 months ago)
  • Last Synced: 2025-12-09T13:02:02.919Z (3 days ago)
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 301,354,540 Total
  • Docker Downloads: 960,603,831
  • Rankings:
    • Dependent repos count: 0.0%
    • Dependent packages count: 0.0%
    • Average: 0.027%
    • Downloads: 0.081%
  • Maintainers (1)
rubygems.org: faraday-em_synchrony

Faraday adapter for EM::Synchrony

  • Homepage: https://github.com/lostisland/faraday-em_synchrony
  • Documentation: http://www.rubydoc.info/gems/faraday-em_synchrony/
  • Licenses: MIT
  • Latest release: 1.0.1 (published 6 months ago)
  • Last Synced: 2025-12-09T09:03:58.365Z (3 days ago)
  • Versions: 2
  • Dependent Packages: 1
  • Dependent Repositories: 22,367
  • Downloads: 301,310,112 Total
  • Docker Downloads: 960,603,831
  • Rankings:
    • Downloads: 0.095%
    • Docker downloads count: 0.116%
    • Dependent repos count: 0.238%
    • Dependent packages count: 7.703%
    • Average: 9.948%
    • Forks count: 22.131%
    • Stargazers count: 29.405%
  • Maintainers (1)

Dependencies

faraday-em_synchrony.gemspec rubygems
  • bundler ~> 2.0 development
  • em-http-request >= 1.1 development
  • em-synchrony >= 1.0.3 development
  • faraday ~> 1.0 development
  • faraday-em_http ~> 1.0 development
  • multipart-parser ~> 0.1.1 development
  • rake ~> 13.0 development
  • rspec ~> 3.0 development
  • rubocop ~> 0.91.1 development
  • rubocop-packaging ~> 0.5 development
  • rubocop-performance ~> 1.0 development
  • simplecov ~> 0.19.0 development
  • webmock ~> 3.4 development
.github/workflows/ci.yml actions
  • actions/checkout v4 composite
  • ruby/setup-ruby v1 composite
.github/workflows/publish.yml actions
  • actions/checkout v4 composite
  • ruby/setup-ruby v1 composite
  • rubygems/release-gem v1 composite
Gemfile rubygems

Score: 24.13397645394941