Suggest a Tweet for @<%= SiteConfig.social_media_handles["twitter"] %>
- <%= f.hidden_field :article_id, value: @moderatable.id %>
- <%= f.text_area :body_text, maxlength: 220, placeholder: "Can be a TLDR of the post, an interesting quote from the post, or bullet points from topics covered in the post, etc." %>
- <%= f.submit "Share Tweet Suggestion" %>
- <% end %>
-
- <% end %>
<% end %>
diff --git a/config/routes.rb b/config/routes.rb
index 2b5af67c7..6f9ae884e 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -48,7 +48,6 @@ Rails.application.routes.draw do
remote_token http_origin session_hijacking] } })
mount flipper_ui, at: "feature_flags"
end
- resources :buffer_updates, only: %i[create update]
resources :feedback_messages, only: %i[index show]
resources :invitations, only: %i[index new create destroy]
resources :organization_memberships, only: %i[update destroy create]
@@ -383,7 +382,6 @@ Rails.application.routes.draw do
resources :credits, only: %i[index new create] do
get "purchase", on: :collection, to: "credits#new"
end
- resources :buffer_updates, only: [:create]
resources :reading_list_items, only: [:update]
resources :poll_votes, only: %i[show create]
resources :poll_skips, only: [:create]
diff --git a/lib/data_update_scripts/20200825095213_remove_orphaned_buffer_updates_by_article.rb b/lib/data_update_scripts/20200825095213_remove_orphaned_buffer_updates_by_article.rb
deleted file mode 100644
index 3f21ace03..000000000
--- a/lib/data_update_scripts/20200825095213_remove_orphaned_buffer_updates_by_article.rb
+++ /dev/null
@@ -1,13 +0,0 @@
-module DataUpdateScripts
- class RemoveOrphanedBufferUpdatesByArticle
- def run
- # Delete all BufferUpdates belonging to Articles that don't exist anymore
- ActiveRecord::Base.connection.execute(
- <<~SQL.squish,
- DELETE FROM buffer_updates
- WHERE article_id NOT IN (SELECT id FROM articles);
- SQL
- )
- end
- end
-end
diff --git a/lib/data_update_scripts/20200910140109_cleanup_published_articles_with_duplicate_user_id_title_body_markdown.rb b/lib/data_update_scripts/20200910140109_cleanup_published_articles_with_duplicate_user_id_title_body_markdown.rb
index 57a93f969..23ff5a6f1 100644
--- a/lib/data_update_scripts/20200910140109_cleanup_published_articles_with_duplicate_user_id_title_body_markdown.rb
+++ b/lib/data_update_scripts/20200910140109_cleanup_published_articles_with_duplicate_user_id_title_body_markdown.rb
@@ -66,7 +66,6 @@ module DataUpdateScripts
# Poll is ignored because it's related to the liquid tag inside the article, also user's can't use polls
# TagAdjustment is ignored as there's likely no reason for article to have an adjustment moved over
models_with_a_direct_relation = [
- BufferUpdate,
HtmlVariantSuccess,
HtmlVariantSuccess,
HtmlVariantTrial,
diff --git a/lib/data_update_scripts/20200917135847_nullify_orphan_rows_from_buffer_updates_by_composer_user_id.rb b/lib/data_update_scripts/20200917135847_nullify_orphan_rows_from_buffer_updates_by_composer_user_id.rb
deleted file mode 100644
index ac32a0097..000000000
--- a/lib/data_update_scripts/20200917135847_nullify_orphan_rows_from_buffer_updates_by_composer_user_id.rb
+++ /dev/null
@@ -1,15 +0,0 @@
-module DataUpdateScripts
- class NullifyOrphanRowsFromBufferUpdatesByComposerUserId
- def run
- # Nullify all BufferUpdates composer_user_id belonging to Users that don't exist anymore
- ActiveRecord::Base.connection.execute(
- <<~SQL.squish,
- UPDATE buffer_updates
- SET composer_user_id = NULL
- WHERE composer_user_id IS NOT NULL
- AND composer_user_id NOT IN (SELECT id FROM users);
- SQL
- )
- end
- end
-end
diff --git a/spec/factories/buffer_updates.rb b/spec/factories/buffer_updates.rb
deleted file mode 100644
index a235f543a..000000000
--- a/spec/factories/buffer_updates.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-FactoryBot.define do
- factory :buffer_update do
- article
- tag
- end
-end
diff --git a/spec/models/article_spec.rb b/spec/models/article_spec.rb
index 9ec74217a..eea0e820f 100644
--- a/spec/models/article_spec.rb
+++ b/spec/models/article_spec.rb
@@ -18,7 +18,6 @@ RSpec.describe Article, type: :model do
it { is_expected.to belong_to(:organization).optional }
it { is_expected.to belong_to(:user) }
- it { is_expected.to have_many(:buffer_updates).dependent(:destroy) }
it { is_expected.to have_many(:comments).dependent(:nullify) }
it { is_expected.to have_many(:html_variant_successes).dependent(:nullify) }
it { is_expected.to have_many(:html_variant_trials).dependent(:nullify) }
diff --git a/spec/models/buffer_update_spec.rb b/spec/models/buffer_update_spec.rb
deleted file mode 100644
index e550121cd..000000000
--- a/spec/models/buffer_update_spec.rb
+++ /dev/null
@@ -1,66 +0,0 @@
-require "rails_helper"
-
-RSpec.describe BufferUpdate, type: :model do
- let(:article) { create(:article) }
- let(:tag1) { create(:tag) }
- let(:tag2) { create(:tag) }
-
- describe "validations" do
- describe "builtin validations" do
- subject { described_class.buff!(article.id, "twitter_buffer_text") }
-
- it { is_expected.to belong_to(:approver_user).optional }
- it { is_expected.to belong_to(:composer_user).optional }
- it { is_expected.to belong_to(:tag).optional }
- end
- end
-
- it "creates update" do
- described_class.buff!(article.id, "twitter_buffer_text")
- expect(described_class.all.size).to eq(1)
- end
-
- it "does not allow duplicate updates" do
- described_class.buff!(article.id, "twitter_buffer_text")
- described_class.buff!(article.id, "twitter_buffer_text")
- expect(described_class.all.size).to eq(1)
- end
-
- it "does not allow duplicate updates if the first one was a little while ago" do
- b1 = described_class.buff!(article.id, "twitter_buffer_text")
- b1.update_column(:created_at, 5.minutes.ago)
- described_class.buff!(article.id, "twitter_buffer_text")
- expect(described_class.all.size).to eq(2)
- described_class.buff!(article.id, "twitter_buffer_text")
- expect(described_class.all.size).to eq(2)
- described_class.buff!(article.id, "twitter_buffer_text yoyo")
- expect(described_class.all.size).to eq(3)
- end
-
- it "allows same text across different social platforms" do
- described_class.buff!(article.id, "twitter_buffer_text", social_service_name: "facebook")
- described_class.buff!(article.id, "twitter_buffer_text")
- expect(described_class.all.size).to eq(2)
- end
-
- it "allows same text across different tags" do
- described_class.buff!(article.id, "twitter_buffer_text", tag_id: tag1.id)
- described_class.buff!(article.id, "twitter_buffer_text", tag_id: tag2.id)
- expect(described_class.all.size).to eq(2)
- end
-
- it "allows same text across different articles with the same tag" do
- described_class.buff!(article.id, "twitter_buffer_text", tag_id: tag1.id)
- described_class.buff!(create(:article).id, "twitter_buffer_text", tag_id: tag1.id)
- expect(described_class.all.size).to eq(2)
- end
-
- it "does not allow more than 3 suggestions" do
- Array.new(3) do |i|
- described_class.buff!(article.id, "twitter_buffer_text_#{i}")
- end
- invalid_buffer = described_class.buff!(article.id, "twitter_buffer_text_4")
- expect(described_class.all.size).to eq(3)
- expect(invalid_buffer.errors.full_messages.first).to include("already has multiple suggestions")
- end
-end
diff --git a/spec/models/tag_spec.rb b/spec/models/tag_spec.rb
index 632c41f53..0b0d7c656 100644
--- a/spec/models/tag_spec.rb
+++ b/spec/models/tag_spec.rb
@@ -8,7 +8,6 @@ RSpec.describe Tag, type: :model do
subject { tag }
it { is_expected.to belong_to(:badge).optional }
- it { is_expected.to have_many(:buffer_updates).dependent(:nullify) }
it { is_expected.to have_one(:sponsorship).inverse_of(:sponsorable).dependent(:destroy) }
it { is_expected.to validate_length_of(:name).is_at_most(30) }
diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb
index 9be3faaa9..f3c2398bb 100644
--- a/spec/models/user_spec.rb
+++ b/spec/models/user_spec.rb
@@ -145,22 +145,6 @@ RSpec.describe User, type: :model do
.dependent(:delete_all)
end
- it do
- expect(subject).to have_many(:buffer_updates_approved)
- .class_name("BufferUpdate")
- .with_foreign_key("approver_user_id")
- .inverse_of(:approver_user)
- .dependent(:nullify)
- end
-
- it do
- expect(subject).to have_many(:buffer_updates_composed)
- .class_name("BufferUpdate")
- .with_foreign_key("composer_user_id")
- .inverse_of(:composer_user)
- .dependent(:nullify)
- end
-
it do
expect(subject).to have_many(:created_podcasts)
.class_name("Podcast")
diff --git a/spec/policies/buffer_update_policy_spec.rb b/spec/policies/buffer_update_policy_spec.rb
deleted file mode 100644
index aac163c00..000000000
--- a/spec/policies/buffer_update_policy_spec.rb
+++ /dev/null
@@ -1,13 +0,0 @@
-require "rails_helper"
-
-RSpec.describe BufferUpdatePolicy, type: :policy do
- subject { described_class.new(user, article) }
-
- let(:article) { build_stubbed(:article) }
-
- context "when user is trusted" do
- let(:user) { build(:user, :trusted) }
-
- it { is_expected.to permit_actions(%i[create]) }
- end
-end
diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb
index 42bde89ba..3fd176b4b 100644
--- a/spec/rails_helper.rb
+++ b/spec/rails_helper.rb
@@ -163,9 +163,6 @@ RSpec.configure do |config|
stub_request(:any, /localhost:9090/)
.to_return(status: 200, body: "OK".to_json, headers: {})
- stub_request(:post, /api.bufferapp.com/)
- .to_return(status: 200, body: { fake_text: "so fake" }.to_json, headers: {})
-
# for twitter image cdn
stub_request(:get, /twimg.com/)
.to_return(status: 200, body: "", headers: {})
diff --git a/spec/requests/admin/buffer_updates_spec.rb b/spec/requests/admin/buffer_updates_spec.rb
deleted file mode 100644
index c040c82a3..000000000
--- a/spec/requests/admin/buffer_updates_spec.rb
+++ /dev/null
@@ -1,84 +0,0 @@
-require "rails_helper"
-require "requests/shared_examples/internal_policy_dependant_request"
-
-RSpec.describe "/admin/buffer_updates", type: :request do
- let(:user) { create(:user) }
- let(:article) { create(:article, user_id: user.id) }
- let(:comment) { build_stubbed(:comment, user_id: user.id, commentable: article) }
-
- it_behaves_like "an InternalPolicy dependant request", BufferUpdate do
- let(:request) { post "/admin/buffer_updates" }
- end
-
- describe "POST /admin/buffer_updates" do
- before do
- user.add_role(:super_admin)
- sign_in user
- end
-
- it "creates buffer update for tweet if tweet params are passed" do
- post "/admin/buffer_updates",
- params:
- { social_channel: "main_twitter", article_id: article.id, tweet: "Hello this is a test" }
- expect(BufferUpdate.all.size).to eq(1)
- post "/admin/buffer_updates",
- params: { social_channel: "main_twitter", article_id: article.id, tweet: "Hello this is a test!" }
- expect(BufferUpdate.all.size).to eq(2)
- expect(BufferUpdate.last.article_id).to eq(article.id)
- end
-
- it "updates last buffered at" do
- post "/admin/buffer_updates",
- params:
- { social_channel: "main_twitter", article_id: article.id, tweet: "Hello this is a test" }
- expect(article.reload.last_buffered).not_to eq(nil)
- end
-
- it "marks article as featured" do
- post "/admin/buffer_updates",
- params:
- { social_channel: "main_twitter", article_id: article.id, tweet: "Hello this is a test" }
- expect(article.reload.featured).to be true
- end
-
- it "updates last buffered at with satellite buffer" do
- post "/admin/buffer_updates",
- params:
- { social_channel: "satellite_twitter", article_id: article.id, tweet: "Hello this is a test" }
- expect(article.reload.last_buffered).not_to eq(nil)
- end
-
- it "updates last facebook buffered at" do
- post "/admin/buffer_updates",
- params:
- { social_channel: "facebook", article_id: article.id, fb_post: "Hello this is a test" }
- expect(article.reload.facebook_last_buffered).not_to eq(nil)
- end
- end
-
- describe "PUT /admin/buffer_updates" do
- let(:tag) { create(:tag) }
- let(:buffer_update) do
- BufferUpdate.create(article_id: article.id,
- composer_user_id: user.id,
- body_text: "This is text - #{rand(100)}",
- social_service_name: "twitter",
- tag_id: tag.id,
- status: "pending")
- end
-
- before do
- sign_in user
- user.add_role(:super_admin)
- end
-
- it "sends to buffer" do
- put "/admin/buffer_updates/#{buffer_update.id}", params: {
- status: "confirmed", body_text: "test"
- }
- expect(buffer_update.reload.buffer_response).not_to eq(nil)
- expect(buffer_update.reload.status).to eq("confirmed")
- expect(buffer_update.reload.approver_user_id).to eq(user.id)
- end
- end
-end
diff --git a/spec/requests/buffer_updates_spec.rb b/spec/requests/buffer_updates_spec.rb
deleted file mode 100644
index 63859b014..000000000
--- a/spec/requests/buffer_updates_spec.rb
+++ /dev/null
@@ -1,74 +0,0 @@
-require "rails_helper"
-
-RSpec.describe "BufferUpdates", type: :request do
- let(:user) { create(:user) }
- let(:mod_user) { create(:user) }
- let(:article) { create(:article, user_id: user.id) }
- let(:mod_article) { create(:article, user_id: mod_user.id) }
- let(:comment) { create(:comment, user_id: user.id, commentable: article) }
-
- context "when trusted user is logged in" do
- before do
- sign_in mod_user
- mod_user.add_role(:trusted)
- end
-
- it "creates buffer update for tweet if tweet params are passed" do
- post "/buffer_updates",
- params:
- { buffer_update: { body_text: "This is the text!!!!", tag_id: "javascript", article_id: article.id } }
- expect(BufferUpdate.all.size).to eq(2)
- expect(BufferUpdate.last.body_text).to start_with("This is the text!!!!")
- expect(BufferUpdate.last.status).to eq("pending")
- end
-
- it "creates buffer update with link" do
- post "/buffer_updates",
- params:
- { buffer_update: { body_text: "This is the text!!!!", tag_id: "javascript", article_id: article.id } }
- expect(BufferUpdate.first.body_text).to include(article.path)
- end
-
- it "creates buffer hashtag" do
- allow(SiteConfig).to receive(:twitter_hashtag).and_return("#DEVCommunity")
- post "/buffer_updates",
- params:
- { buffer_update: { body_text: "This is the text!!!!", tag_id: "javascript", article_id: article.id } }
- expect(BufferUpdate.first.body_text).to include(SiteConfig.twitter_hashtag.to_s)
- end
-
- it "creates satellite and Facebook buffer" do
- article.update_column(:cached_tag_list, "ruby, rails, meta")
- create(:tag, name: "rails")
- tag = create(:tag, buffer_profile_id_code: "placeholder", name: "ruby")
- post "/buffer_updates",
- params:
- { buffer_update: { body_text: "This is the text!!!!", tag_id: "javascript", article_id: article.id } }
- expect(BufferUpdate.all.size).to eq(3)
- expect(BufferUpdate.second.tag_id).to eq(tag.id)
- expect(BufferUpdate.last.social_service_name).to eq("facebook")
- end
- end
-
- context "when non-trusted user is logged in" do
- before do
- sign_in user
- mod_user.add_role(:trusted)
- end
-
- it "rejects buffer update for non-trusted user" do
- expect do
- post "/buffer_updates",
- params:
- { buffer_update: { body_text: "This is the text!!!!", tag_id: "javascript", article_id: mod_article.id } }
- end.to raise_error(Pundit::NotAuthorizedError)
- end
-
- it "accepts buffer update from author of article" do
- post "/buffer_updates",
- params:
- { buffer_update: { body_text: "This is the text!!!!", tag_id: "javascript", article_id: article.id } }
- expect(BufferUpdate.first.body_text).to include(article.path)
- end
- end
-end
diff --git a/spec/services/bufferizer/facebook_post_spec.rb b/spec/services/bufferizer/facebook_post_spec.rb
deleted file mode 100644
index 08fe94a61..000000000
--- a/spec/services/bufferizer/facebook_post_spec.rb
+++ /dev/null
@@ -1,42 +0,0 @@
-require "rails_helper"
-
-RSpec.describe Bufferizer::FacebookPost, type: :service do
- describe "#call" do
- let(:user) { create(:user) }
- let(:tag) { create(:tag, buffer_profile_id_code: "test") }
- let(:article) { create(:article, user_id: user.id, tags: tag.name) }
-
- context "when article is nil" do
- it "doesn't raise an error" do
- post = "test post"
- expect { described_class.call(nil, post, user.id) }.not_to raise_error
- end
- end
-
- context "when post is nil" do
- it "doesn't raise an error" do
- expect { described_class.call(article, nil, user.id) }.not_to raise_error
- end
- end
-
- context "when admin_id is nil" do
- it "doesn't raise an error" do
- post = "test post"
- expect { described_class.call(article, post, nil) }.not_to raise_error
- end
- end
-
- it "sends to buffer facebook" do
- post = "test facebook post"
- described_class.call(article, post, user.id)
- expect(article.facebook_last_buffered.utc.to_i).to be > 2.minutes.ago.to_i
- end
-
- it "adds linkedin social tags" do
- post = "test facebook post"
- described_class.call(article, post, user.id)
- expect(BufferUpdate.last.body_text).to include(" #programming")
- expect(BufferUpdate.last.body_text).to include(" ##{article.tag_list.first}")
- end
- end
-end
diff --git a/spec/services/bufferizer/listings_tweet_spec.rb b/spec/services/bufferizer/listings_tweet_spec.rb
deleted file mode 100644
index ce5906c8e..000000000
--- a/spec/services/bufferizer/listings_tweet_spec.rb
+++ /dev/null
@@ -1,27 +0,0 @@
-require "rails_helper"
-
-RSpec.describe Bufferizer::ListingsTweet, type: :service do
- describe "#call" do
- let(:user) { create(:user) }
- let(:listing) { create(:listing, user_id: user.id) }
-
- context "when listing is nil" do
- it "doesn't raise an error" do
- tweet = "test tweet"
- expect { described_class.call(nil, tweet) }.not_to raise_error
- end
- end
-
- context "when tweet is nil" do
- it "doesn't raise an error" do
- expect { described_class.call(listing, nil) }.not_to raise_error
- end
- end
-
- it "sends to buffer listings" do
- text = "test listing"
- described_class.call(listing, text)
- expect(listing.last_buffered).not_to be(nil)
- end
- end
-end
diff --git a/spec/services/bufferizer/main_tweet_spec.rb b/spec/services/bufferizer/main_tweet_spec.rb
deleted file mode 100644
index 7def43410..000000000
--- a/spec/services/bufferizer/main_tweet_spec.rb
+++ /dev/null
@@ -1,40 +0,0 @@
-require "rails_helper"
-
-RSpec.describe Bufferizer::MainTweet, type: :service do
- describe "#call" do
- let(:user) { create(:user) }
- let(:article) { create(:article, user_id: user.id) }
-
- context "when article is nil" do
- it "doesn't raise an error" do
- tweet = "test tweet"
- expect { described_class.call(nil, tweet, user.id) }.not_to raise_error
- end
- end
-
- context "when tweet is nil" do
- it "doesn't raise an error" do
- expect { described_class.call(article, nil, user.id) }.not_to raise_error
- end
- end
-
- context "when admin_id is nil" do
- it "doesn't raise an error" do
- tweet = "test tweet"
- expect { described_class.call(article, tweet, nil) }.not_to raise_error
- end
- end
-
- it "sends to buffer twitter" do
- tweet = "test tweet"
- described_class.call(article, tweet, user.id)
- expect(article.last_buffered.utc.to_i).to be > 2.minutes.ago.to_i
- end
-
- it "includes admin approver" do
- tweet = "test tweet"
- described_class.call(article, tweet, user.id)
- expect(BufferUpdate.last.approver_user_id).to be user.id
- end
- end
-end
diff --git a/spec/services/bufferizer/satellite_tweet_spec.rb b/spec/services/bufferizer/satellite_tweet_spec.rb
deleted file mode 100644
index abd230c54..000000000
--- a/spec/services/bufferizer/satellite_tweet_spec.rb
+++ /dev/null
@@ -1,37 +0,0 @@
-require "rails_helper"
-
-RSpec.describe Bufferizer::SatelliteTweet, type: :service do
- describe "#call" do
- let(:user) { create(:user) }
- let(:tag) { create(:tag, buffer_profile_id_code: "test") }
- let(:article) { create(:article, user_id: user.id, tags: tag.name) }
-
- context "when article is nil" do
- it "doesn't raise an error" do
- tweet = "test tweet"
- expect { described_class.call(nil, tweet, user.id) }.not_to raise_error
- end
- end
-
- context "when tweet is nil" do
- it "doesn't raise an error" do
- expect { described_class.call(article, nil, user.id) }.not_to raise_error
- end
- end
-
- context "when admin_id is nil" do
- it "doesn't raise an error" do
- tweet = "test tweet"
- expect { described_class.call(article, tweet, nil) }.not_to raise_error
- end
- end
-
- it "sends to buffer sattelite twitter" do
- allow(SiteConfig).to receive(:twitter_hashtag).and_return("#DEVCommunity")
- tweet = "test tweet #{SiteConfig.twitter_hashtag}"
- described_class.call(article, tweet, user.id)
- expect(article.last_buffered.utc.to_i).to be > 2.minutes.ago.to_i
- expect(BufferUpdate.last.body_text).to include(" #{SiteConfig.twitter_hashtag} ##{tag.name} http")
- end
- end
-end
diff --git a/spec/services/users/delete_articles_spec.rb b/spec/services/users/delete_articles_spec.rb
index 6805f23db..dc2ff7156 100644
--- a/spec/services/users/delete_articles_spec.rb
+++ b/spec/services/users/delete_articles_spec.rb
@@ -36,14 +36,6 @@ RSpec.describe Users::DeleteArticles, type: :service do
expect(Comment.where(commentable_id: article.id, commentable_type: "Article").any?).to be false
end
- it "deletes articles' buffer updates" do
- BufferUpdate.buff!(article.id, "twitter_buffer_text")
-
- described_class.call(user)
-
- expect(BufferUpdate.where(article_id: article.id).any?).to be false
- end
-
it "busts cache" do
described_class.call(user)
expect(EdgeCache::BustComment).to have_received(:call).with(article).twice
diff --git a/spec/services/users/delete_spec.rb b/spec/services/users/delete_spec.rb
index 1c789eaf8..cd1d87e6f 100644
--- a/spec/services/users/delete_spec.rb
+++ b/spec/services/users/delete_spec.rb
@@ -95,8 +95,6 @@ RSpec.describe Users::Delete, type: :service do
affected_feedback_messages
audit_logs
banished_users
- buffer_updates_approved
- buffer_updates_composed
created_podcasts
offender_feedback_messages
page_views
diff --git a/vendor/cache/buffer-0.1.3.gem b/vendor/cache/buffer-0.1.3.gem
deleted file mode 100644
index 0c1ada57c..000000000
Binary files a/vendor/cache/buffer-0.1.3.gem and /dev/null differ
diff --git a/vendor/cache/environs-1.1.0.gem b/vendor/cache/environs-1.1.0.gem
deleted file mode 100644
index ac929b880..000000000
Binary files a/vendor/cache/environs-1.1.0.gem and /dev/null differ
diff --git a/vendor/cache/faraday_middleware-1.0.0.gem b/vendor/cache/faraday_middleware-1.0.0.gem
deleted file mode 100644
index d8db4616a..000000000
Binary files a/vendor/cache/faraday_middleware-1.0.0.gem and /dev/null differ
diff --git a/vendor/cache/yajl-ruby-1.4.1.gem b/vendor/cache/yajl-ruby-1.4.1.gem
deleted file mode 100644
index 0f6d5d6b4..000000000
Binary files a/vendor/cache/yajl-ruby-1.4.1.gem and /dev/null differ