Faraday: Адаптер для HTTP.rb

Созданный на 23 февр. 2018  ·  6Комментарии  ·  Источник: lostisland/faraday

Резюме

Недавно узнал о HTTP - The Gem! один HTTP-клиент для Ruby, но выглядит довольно изящно.

Было бы здорово, если бы у Фарадея был адаптер для этого.

Подробности

Я готов помочь с этим, на самом деле, я подумываю написать это сам. Для начала потребуется несколько указателей и ответы на следующие вопросы:

  • Как написать переходник? Есть ли руководство или конкретная реализация, на которой можно поучиться?
  • Куда отправить запрос на перенос? HTTP.rb? Фарадей? Оба?

Самый полезный комментарий

@PandaWhisperer faraday-http только что вышел первый релиз, в основном благодаря вашей прошлогодней работе: https://rubygems.org/gems/faraday-http 🎉

Если вы все еще планируете использовать его и вам интересно, я хотел бы продлить приглашение на добавление вас в качестве соавтора в это репо.

Все 6 Комментарий

Привет, @PandaWhisperer, и спасибо за интерес к Фарадею!

До сих пор адаптер хранился в Faraday и поддерживался основной командой.
Однако мы поняли, что это вызывает некоторые проблемы, поэтому решили перенести их за пределы.

Я предпочитаю иметь специальный гем (например, faraday-http ), но есть случаи, когда адаптер интегрирован в клиентский гем (например, typhoeus ).
Вы можете выбрать тот, который вам больше нравится, но первое, как правило, является лучшим вариантом, если вы не поддерживаете клиентский гем.

Что касается реализации, я недавно дал несколько советов о том, как собрать еще один адаптер. Вы можете найти их (вместе со ссылкой на код адаптера) в # 766.

Я также нахожусь в процессе переписывания тестов с использованием RSpec, и идея состоит в том, чтобы позволить внешним гемам интегрировать их в свой конвейер тестов. Но это не краткосрочный период 😅

Я надеюсь, что все это было полезно, но, пожалуйста, дайте мне знать, если вам что-нибудь понадобится 👍!

Привет, @iMacTia. У меня было время и собрал базовый адаптер. Здесь вы можете увидеть запрос на перенос (я не отправлял его в основное репо). Поддерживаются и тестируются основные функции. Если у вас есть минутка, я буду признателен за ваш отзыв.

ПРИМЕЧАНИЕ: это было просто для развлечения, сейчас мне это не НУЖНО. Но если кто-то это делает и хочет обернуть его в драгоценный камень, пожалуйста, LMK.

Привет, @PandaWhisperer, и спасибо, что
Я быстро посмотрел, и PR выглядит как хорошая отправная точка 👍
Как вы уже отметили, я сомневаюсь, что текущая реализация предлагает поддержку SSL или сжатия, но, учитывая, что она была разработана для развлечения в свободное время, я был бы доволен результатом 😄

Вся идея v1.0 состоит в том, чтобы максимально упростить процесс создания нового адаптера, чтобы такие люди, как вы (сообщество!) Могли вносить свой вклад в Faraday, не зависимо от основной команды.
Важная задача, решаемая в настоящее время для достижения этой цели, - это упростить тесты и сделать их доступными для выполнения из гемов внешнего адаптера / промежуточного программного обеспечения.

В настоящее время я сосредоточен на этом, и вы можете увидеть прогресс в этой ветке .

После того, как это будет завершено и объединено, мы можем использовать ваш адаптер в качестве тестового стола для него 👍

Привет, @PandaWhisperer 👋
После нескольких болезненных месяцев и большого количества рефакторинга тесты 1.0 теперь преобразованы в RSpec 🎉!
В рамках этого я создал набор «общих примеров», в которых описывается, как должен работать адаптер.

Следующим шагом будет сделать эти тесты доступными для внешних гемов, чтобы они могли проверять изменения на соответствие ядру Фарадея.

Если вы все еще работаете над своим HTTP-клиентом и хотите попробовать, дайте мне знать 👍

@PandaWhisperer Мы приближаемся к версии 1.0, и теперь адаптеры могут жить в своих собственных репозиториях.
Я воспользовался свободой создания драгоценного камня из написанного вами адаптера, вы можете найти основной PR здесь: https://github.com/lostisland/faraday-http/pull/1

Это всего лишь демонстрация концепции, но она может стать первым официальным внешним адаптером Faraday 1.0 ❤️

Если вы все еще заинтересованы в этом адаптере и у вас есть время, я с радостью добавлю вас в качестве соавтора в этот проект, чтобы вы могли поддерживать и улучшать его с течением времени.

@PandaWhisperer faraday-http только что вышел первый релиз, в основном благодаря вашей прошлогодней работе: https://rubygems.org/gems/faraday-http 🎉

Если вы все еще планируете использовать его и вам интересно, я хотел бы продлить приглашение на добавление вас в качестве соавтора в это репо.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги