dev.to open source help/discussion thread (v0)

Andy Zhao (he/him) on August 08, 2018

This is the starting point for getting help on any issue relating to working with the dev.to open source project. This thread will act as an FAQ de... [Read Full]
Editor guide

I have similar issue running bundle install

bundle install
Your Ruby version is 2.0.0, but your Gemfile specified 2.5.1

only have Ruby 2.5.1 installed.

❯ ls

I have tried restarting terminal and machine both just to clear cache if there's any.


Did you set 2.5.1 as the global version?

According to karloespiritu.github.io/cheatsheet... you need to type: rbenv global 2.5.1, otherwise it uses the default version shipped with the OS


Thanks for the cheatsheet. Yes, I have tried rbenv global 2.5.1.

When you are in the directory of the project, what does rbenv version say?

rbenv version
2.5.1 (set by /Users/awdesh/Documents/source/sandbox/dev.to/.ruby-version)

I feel like something is messed up with the /etc/paths/ although can't seem to figure it out. I am following this link here-: stackoverflow.com/questions/873067...

What's the output of ruby -v compared to rbenv version?

Try running rbenv shell 2.5.1 and then running bundle.

If not, a reinstall of 2.5.1 might help:

rbenv uninstall 2.5.1
# restart terminal
rbenv install 2.5.1
# install complete; restart terminal
ruby -v
#=> ruby -v version
rbenv version
#=> rbenv version

Let me know how it goes!

Thanks Andy. I did a reinstall of rbenv and ran below.

❯ ruby -v

ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin15]

❯ rbenv version
2.5.1 (set by RBENV_VERSION environment variable)

❯ rbenv shell 2.5.1

still see the same issue.

❯ bundle install
Your Ruby version is 2.0.0, but your Gemfile specified 2.5.1

Ah, your bundle install might be running from your old Ruby version as opposed to the latest one.

Try running which gem and which bundle. You should be seeing something similar to this output:

which gem
#=> /Users/username/.rbenv/shims/gem
:which ruby
#=> /Users/username/.rbenv/shims/ruby
:which bundle
#=> /Users/username/.rbenv/shims/bundle

If it's different, you'll probably see that bundle or gem are running from different paths than ruby.

That did it. Thanks for the tip.

gem and ruby paths were same but bundle. I updated the PATH for bundle gem file using BUNDLE_GEMFILE

export BUNDLE_GEMFILE=/Users/awdesh/.rbenv/shims/bundle

restarted terminal

bundle install  #worked.

Awesome! Glad to know it worked. From my experience, it's "cleaner" to reinstall your gems per version, but I'm not too sure if it matters too much.

Hey, I am currently working on some night mode bugs and my work mainly works on editing scss/css files,
nevertheless I want to run a local setup of the application in an attempt to check the changes I am making.
I am having the same error as above only that dev.to required ruby version 2.6.1 but it seems to be picking up 2.3.7 from my system macOS
I have followed all the steps but to no use, I have little to no experience in ruby. could use your help in the same.


I don't have a ton of ruby experience so I actually ran into what I thought was a problem installing ruby with rbenv. I just wanted to share my experience here in case others run into the same issue.

I started by installing rbenv with homebrew.

~ $ brew install rbenv

No issues, cool. Then I went to install the current ruby version of 2.6.1 in rbenv but it kept hanging on the following line.

~ $ rbenv install 2.6.1
ruby-build: use openssl from homebrew
Downloading ruby-2.6.1.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.1.tar.bz2
Installing ruby-2.6.1...
ruby-build: use readline from homebrew

I kept canceling out of it thinking it was stuck but it was actually building in the background. The installer could use some work giving users some sort of visual feedback that it's actually building. I looked it up and stumbled on to a GitHub issue about it: github.com/rbenv/ruby-build/issues...

One of the comments mentioned that you can actually use the install -v flag when installing with rbenv to get a verbose output of the build process in your terminal. I then ran the following:

~ $ rbenv install -v 2.6.1

And no more hanging on readline! It will fill your terminal window with build logs but at least you know it's working.

Hope this helps someone!


Great tip, thanks!


Here's something I ran into as I'm going through the setup instructions, in case anyone else has the same problem.

When I did gem install bundler, I got this error message:

Fetching: bundler-1.16.5.gem (100%)
ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory.

It might have occurred because I uninstalled rvm (using rvm implode ) after installing rbenv.

The fix (found here ) was to add eval "$(rbenv init -)" to my .bash_profile (then do source ~/.bash_profile). After that gem install bundler worked.


Awesome, thanks for sharing!


I can't explain how helpful this is. You saved me from a great amount of trouble. Thank you!


Hey Tristan, definitely not a stupid question :)

It's probably a bit early to realistically stand up a fully self-hosted instance of DEV.

If your company is sharing technical content that is for public consumption, you're welcome to set up an organization account on the production site. You can look at Heroku as an example. You never know what might help other users.

@ben will follow up with a bit more info and context.


Yeah, org accounts are the recommended way to go right now, but the instance direction is something we could start working on right away, as long as we’re willing to be patient along the way.

So that area has to be thought of as really theoretical at this point, but being an early adopter of that path could be very powerful, so you are welcome to volunteer to become part of our early group who might start thinking about that use case. Let me know if you’d like me to keep you in the loop.


Does anyone know how to update the built-in version of ruby on Mac?

➜  ~ ruby -v
ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin17]
➜  ~ /usr/local/Cellar/ruby/2.5.1/bin/ruby -v
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin17]

I ended up getting around it by using RubyMine and telling it to use the brew version for the dev.to environment, and then I set up the bin scripts as run configurations.

Since I had ruby 2.5.1 installed, I wasn't terribly inclined to download RVM just so it could download its own version of ruby, too. I just don't think this was the most optimal way of fixing my version issues.

(And as someone who never used postgressql before, that part was not intuative at all... but I have no clue how to fix that in the docs, since I was bumbling my way through it)


I use RVM because I have different projects using different versions of Ruby and it's useful for that:

➜  ~ rvm list
   ruby-2.3.0 [ x86_64 ]
   ruby-2.4.3 [ x86_64 ]
=* ruby-2.5.1 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

(And as someone who never used postgressql before, that part was not intuative at all... but I have no clue how to fix that in the docs, since I was bumbling my way through it)

Can you please articulate what issues did you have? I think it's very important because a difficult onboarding can be a turn off for first contributors. Thank you!


My issue was trying to figure out how to articulate it late at night ;)

I think the issues started with completely blowing past the hey you need to install this stuff first section of the README and just starting to get the local build working with stuff like api keys and bundle install. And since I was having issues with the ruby version, I was inclined to think all my issues were around ruby rather than the db.

The biggest thing after needing it installed was needing to have it run before running anything. The installation was lumped with installing things like bundle and yarn which are more hands-off, so it wasn't clear that after installing the prereqs, I should actually start the db and that it wasn't handled in the bin scripts like everything else.

Then I wanted to actually see what was in the db, so I hunted through the configs and internet to see how to find the settings of the db that's created to connect to it within RubyMine.

It wasn't anything really hard or missing, just stuff that wasn't obvious as someone not in the stack.


(And as someone who never used postgressql before, that part was not intuative at all...

Ah gotcha, we'll shore that up for the next iteration. What sort of issues are you having right now with it?

Does anyone know how to update the built-in version of ruby on Mac?

Are you using a Ruby version manager? You probably have rbenv or rvm installed.


Are you using a Ruby version manager?

As far as I know, I have not because I'm not a Rubyish person, but I can check once I get home. I knew I brew installed it and would have installed it way back when for brew (since I'm pretty sure brew runs on ruby) but otherwise I don't recall ever doing anything with ruby.

What sort of issues are you having right now with it?

Right now, nothing, since I was eventually able to get local dev.to up and running to get my screenshots for my PR :) Originally, though, since I was only installing it to use dev.to, I didn't:

  1. have it installed (ended up installing it outside of the recommended path since I was trying to solve ruby errors rather than continue reading the readme and find what I skipped over)
  2. have it running (lots of googling eventually found me to where a blog somewhere listed the command to run it)
  3. or how to access it (I loved the seed data scripts but wanted to add a user with specific data to hit my cases... I ended up setting up Github integration to use myself, but eventually figured out how to list known databases and then I could use RubyMine's built-in db handling to modify local data)

Like, reading the section of hey install this stuff didn't really click with me to actually run the database and that it was not a part of the bin scripts.

Ah gotcha, sorry that wasn't clear! We'll definitely update the instructions for the prerequisites.

And yep, let me know if you still have issues with your Ruby, or anything else really. 🙂


I'm getting the following error when running bin/setup:

== Preparing database ==
rails aborted!
/usr/local/lib/ruby/gems/2.5.0/gems/envied-0.9.1/lib/envied.rb:38:in `error_on_missing_variables!'
/usr/local/lib/ruby/gems/2.5.0/gems/envied-0.9.1/lib/envied.rb:19:in `require'
/Users/Stephanie/Documents/Github/dev.to/config/application.rb:12:in `<top (required)>'
/Users/Stephanie/Documents/Github/dev.to/Rakefile:4:in `require'
/Users/Stephanie/Documents/Github/dev.to/Rakefile:4:in `<top (required)>'
/usr/local/lib/ruby/gems/2.5.0/gems/railties-5.1.6/lib/rails/commands/rake/rake_command.rb:20:in `block in perform'
/usr/local/lib/ruby/gems/2.5.0/gems/railties-5.1.6/lib/rails/commands/rake/rake_command.rb:18:in `perform'
/usr/local/lib/ruby/gems/2.5.0/gems/railties-5.1.6/lib/rails/command.rb:46:in `invoke'
/usr/local/lib/ruby/gems/2.5.0/gems/railties-5.1.6/lib/rails/commands.rb:16:in `<top (required)>'
/Users/Stephanie/Documents/Github/dev.to/bin/rails:9:in `require'
/Users/Stephanie/Documents/Github/dev.to/bin/rails:9:in `<top (required)>'
/usr/local/lib/ruby/gems/2.5.0/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `load'
/usr/local/lib/ruby/gems/2.5.0/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `call'
/usr/local/lib/ruby/gems/2.5.0/gems/spring-2.0.2/lib/spring/client/command.rb:7:in `call'
/usr/local/lib/ruby/gems/2.5.0/gems/spring-2.0.2/lib/spring/client.rb:30:in `run'
/usr/local/lib/ruby/gems/2.5.0/gems/spring-2.0.2/bin/spring:49:in `<top (required)>'
/usr/local/lib/ruby/gems/2.5.0/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `load'
/usr/local/lib/ruby/gems/2.5.0/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `<top (required)>'
/Users/Stephanie/Documents/Github/dev.to/bin/spring:15:in `<top (required)>'
bin/rails:3:in `load'
bin/rails:3:in `<main>'
(See full trace by running task with --trace)

== Command ["bin/rails db:setup"] failed ==

But I already added the Algolia keys to config/application.yml:


It seems like the ENV variables aren't being set, despite changing application.yml. I'm not sure what I'm missing.


Hm that's strange. Try these two things:

  1. You're probably doing this correctly already, but make sure you're setting the keys in config/application.yml and not sample_application.yml.
  2. You might be running into a spring error, which is a Rails app preloader. If spring is running, it'll run bin commands for you, but sometimes doesn't refresh when you change things like environment variables. Try turning it off with spring stop and then running bin/setup again.

Spring wasn't actually running, but I figured out what the issue was.

When I ran git status, it seemed like I accidentally made some changes to config/application.rb. I undid those changes and now bin/setup works.

Thanks for trying to help though!

Great! Glad it's resolved :)


Hello everyone!
I'm trying to write specs for login/signup procedure.
I've inspected the code and came out with these potential scenarios.
Can someone help me to correct, validate, refine these scenarios to met the reality?
(I follow the format ---> )

1 User never login before

create new user
create new identity
update user data
create session
go to welcome page

2 User second login with same provider

find existing user
find existing identity
update user data
create session
go to dashboard

3 User second login with other provider

find existing user
create new identity
update user data
create session
go to dashboard

4 User revoked authorization on twitter, login and re-authorizes

find existing user
find existing identity
update user data
create session
go to dashboard
Error cases ——

5 Twitter doesn’t provide enough information for the user (let’s say uid is nil)

don't create session
go to back to same page
display error message Twitter authorization problem. Try again later


Yep, that sounds right. We have a feature test for Twitter auth /spec/features/user_logs_in_with_twitter_spec.rb and some other tests for registration in spec/models/user_spec.rb#270. Those should be helpful for see what else would need coverage.


Awesome thanks I'll take a look.


That seems like the right path. @andy can provide more thoughts


Hello! I was successfully able to run bin/setup and bin/startup does work and spin up the server, but when I go to the localhost port it tells me, I get a Cannot GET / error. All routes seem to be doing this. Anyone had this problem before? Do I need to input any keys above and beyond the Algolia ones to get the base site to work?


Hmm, not sure what that's about. Do you have another server that's connected to localhost:3000? Although if you do, you wouldn't have been able to start up the server.

Could you drop a screenshot of the browser on localhost:3000 and maybe a snippet of the server logs?


OH I think I know what it is. You might have went to localhost:3035 which is running Webpack. It might not be exactly 3035, but it's something similar and is not localhost:3000. localhost:3000 is the port for the backend Rails server, which is the one you want to visit.

Also, now that I've got it set up, props to whoever on your team likes this book:
to say nothing of the dog


oh wait, there we go! I think I did have something else running on 3000—not surprising, since I am always running like five development servers, but I should have double-checked that port was open. Thanks!


When running bin/setup I get the following error:

"2/8 Creating Users"
rails aborted!
Algolia::AlgoliaProtocolError: Cannot reach any host: getaddrinfo: nodename nor servname provided, or not known (1916c2b24231d12082a54f9c2f29efa2.algolia.net:443), getaddrinfo: nodename nor servname provided, or not known (1916c2b24231d12082a54f9c2f29efa2-1.algolianet.com:443), getaddrinfo: nodename nor servname provided, or not known (1916c2b24231d12082a54f9c2f29efa2-2.algolianet.com:443), getaddrinfo: nodename nor servname provided, or not known (1916c2b24231d12082a54f9c2f29efa2-3.algolianet.com:443)
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-1.19.1/lib/algolia/client.rb:417:in `request'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-1.19.1/lib/algolia/client.rb:429:in `put'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-1.19.1/lib/algolia/index.rb:516:in `set_settings'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-rails-1.20.4/lib/algoliasearch-rails.rb:286:in `block (3 levels) in <class:SafeIndex>'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-rails-1.20.4/lib/algoliasearch-rails.rb:321:in `log_or_throw'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-rails-1.20.4/lib/algoliasearch-rails.rb:285:in `block (2 levels) in <class:SafeIndex>'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-rails-1.20.4/lib/algoliasearch-rails.rb:752:in `algolia_ensure_init'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-rails-1.20.4/lib/algoliasearch-rails.rb:595:in `block in algolia_clear_index!'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-rails-1.20.4/lib/algoliasearch-rails.rb:593:in `each'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/algoliasearch-rails-1.20.4/lib/algoliasearch-rails.rb:593:in `algolia_clear_index!'
/Users/jibrankalia/side/dev.to/db/seeds.rb:26:in `<top (required)>'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:286:in `load'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:286:in `block in load'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:258:in `load_dependency'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/activesupport-5.1.6/lib/active_support/dependencies.rb:286:in `load'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/railties-5.1.6/lib/rails/engine.rb:549:in `load_seed'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/activerecord-5.1.6/lib/active_record/tasks/database_tasks.rb:270:in `load_seed'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/activerecord-5.1.6/lib/active_record/railties/databases.rake:184:in `block (2 levels) in <top (required)>'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/airbrake-5.8.1/lib/airbrake/rake/task_ext.rb:19:in `execute'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/railties-5.1.6/lib/rails/commands/rake/rake_command.rb:21:in `block in perform'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/railties-5.1.6/lib/rails/commands/rake/rake_command.rb:18:in `perform'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/railties-5.1.6/lib/rails/command.rb:46:in `invoke'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/railties-5.1.6/lib/rails/commands.rb:16:in `<top (required)>'
/Users/jibrankalia/side/dev.to/bin/rails:9:in `require'
/Users/jibrankalia/side/dev.to/bin/rails:9:in `<top (required)>'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `load'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `call'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/spring-2.0.2/lib/spring/client/command.rb:7:in `call'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/spring-2.0.2/lib/spring/client.rb:30:in `run'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/spring-2.0.2/bin/spring:49:in `<top (required)>'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `load'
/Users/jibrankalia/.rvm/gems/ruby-2.5.1/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `<top (required)>'
/Users/jibrankalia/side/dev.to/bin/spring:15:in `<top (required)>'
bin/rails:3:in `load'
bin/rails:3:in `<main>'
Tasks: TOP => db:setup => db:seed

Not sure what to do from here.


Hey Jibran, looks like you have some error with Algolia. You'll need Algolia API keys in order to run the local server on your machine. See our guide here on how to get it: docs.dev.to/get-api-keys-dev-env/


Hey Andy,

Got it to work. Silly setup error on my part. Thanks!

Gotcha :) Glad it's working!



Trying to setup locally on my machine but running into an error after running bin/setup

"1/8 Creating Organizations"
"2/8 Creating Users"
rails aborted!
ActiveRecord::RecordInvalid: Validation failed: Profile image could not download file: SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate)

Has anyone else come across this before as finding it tricky to debug?

The console also throws this error at end of log

== Command ["bin/rails db:setup"] failed ==

So seems like db issues.. is there anything specific I need to do to set this up? I've just been following the installation steps where it only mentions to have postgresql 9.4 or higher (which I have)

Thanks for any help in advance!


Oh that's a strange error. I can't seem to reproduce it, but I think it might be something with the profile_image_url we're using. It's currently randomly generated by a gem, but feel free to replace it with any other valid image. The only non-standard validation we have for images is that its dimensions have to be less than or equal to 4096x4096.

You can replace line #31 in the seeds.rb file with any URL you'd like:

# current version
remote_profile_image_url: Faker::Avatar.image(nil, "300x300", "png", "set2", "bg2")

# change to anything, like your own dev.to profile pic:
remote_profile_image_url: "https://thepracticaldev.s3.amazonaws.com/uploads/user/profile_image/104515/87d99338-e340-4642-8393-e3731deb5b97.jpg"

# or use random Bill Murray images with 400x400 size:
remote_profile_image_url: Faker::Fillmurray.image(false, 400, 400)

Faker::Fillmurray docs here, if you're so inclined. 😇


Thank you!

Yes that was it, I've now been able to get running using my own profile pic. As happy as I am that it's working now am quite sad I've not been able to use the Bill Murray Faker... 😂

For info I was getting a 'redirect' error

ActiveRecord::RecordInvalid: Validation failed: Profile avatar could not download file: redirection forbidden:

...which seemed like it was expecting https in the url, but I couldn't find an easy way to resolve this.

But all good with a non-Faker url for the profile image 👍

Awesome, glad it worked! Unfortunate about Bill Murray 🙃


I am getting following error I am not sure what is issue with bcrypt

BCrypt::Errors::InvalidHash in OmniauthCallbacksController#github


Hey, when are you hitting this error? We'll need some more context to help you debug. I'm guessing you tried signing in? If you're doing any sign in process, you'll need to setup the appropriate APIs. Instructions here: docs.dev.to/get-api-keys-dev-env/#...


Hi Andy,

I did all the setup required by the docs and still got this error and there is a GitHub issue[1] and same error while populating the database with the initial seeds bin/setup got this error

BCrypt::Errors::InvalidHash: invalid hash

[1] github.com/codahale/bcrypt-ruby/is...


We'll be here for any and all random problems folks run into.



I have recently been learning python, HTML5 CSS3 and now Javascript for the past 3 months, and so I am quite new to all of this, but I am incredibly driven and passionate about growing and learning new things and more.

I am also new to the community scene, therefore I was hoping someone could help me learn how I can contribute and get to know others who I can work alongside and grow with.



I've got it running but I get a 401 unauthorized when I try to log in (using the Twitter button).

A page showing login buttons

An error page showing OAuth::Unauthorized

I'm looking to play around with editing posts and comments to look into the stale post/comment issue I've run into (maybe the same as #526, though I haven't had it give me a 404 ), which might require looking into caching stuff.


Hmm, did you set up your Twitter OAuth app? Guide here: docs.dev.to/get-api-keys-dev-env/#...


Thanks, I must have skipped that one. I'm now waiting to hear back from Twitter about my applicaiton for an API account.

Oh hmm that must be new. If you'd rather, you can make a GitHub OAuth app instead. For sign in purposes they're the same.


Hey @ben , it's my first time contribution to any open source project. I am trying to setup the project on my machine (rails version 5.2.1) but schema migrations are causing some trouble. Here take a look:

migration issue


Hey @mirza, that's a current bug with the migrations since our older migrations are not forward-compatible right now. Since you're setting up for the first time, we recommend using bin/setup to setup your database from scratch. If you've setup your database already with rails db:create or rake db:create (same command), you'll need to drop it first with rails db:drop before running bin/setup.


i followed your suggestion and its now working. thanks mate! any advise for a rookie OSS contributor?

Glad it works! You can check out our issues page and work on any issues with the approved label. There should be enough context in the issue or the comments to get started. Any issues with "good first issue" is also a good start.

For OSS in general, I personally don't have much advice but that's how repo works. We try to adhere to similar standards that the OSS community has, and any feedback along the way will certainly be heard!


Is anyone else having problems when running the whole suite of tests?

[Zonebie] Setting timezone: ZONEBIE_TZ="Mid-Atlantic"
1st Try error in ./spec/features/articles/user_edits_an_article_spec.rb:31:
Unable to find field "article_body_markdown"

RSpec::Retry: 2nd try ./spec/features/articles/user_edits_an_article_spec.rb:31
....................................................*................................................................................................................................................................................................................................................................./Users/mbellucci/.rvm/gems/ruby-2.5.3/gems/railties- [BUG] Segmentation fault at 0x00007000085e74c0
ruby 2.5.3p105 (2018-10-18 revision 65156) [x86_64-darwin17]

-- Crash Report log information --------------------------------------------
   See Crash Report log file under the one of following:                    
     * ~/Library/Logs/DiagnosticReports                                     
     * /Library/Logs/DiagnosticReports                                      
   for more details.                                                        
Don't forget to include the above Crash Report log file in bug reports.     

-- Control frame information -----------------------------------------------
c:0180 p:---- s:0982 e:000981 CFUNC  :sub
c:0179 p:0019 s:0976 e:000975 BLOCK  /Users/mbellucci/.rvm/gems/ruby-2.5.3/gems/railties- [FINISH]
c:0178 p:0011 s:0972 e:000971 BLOCK  /Users/mbellucci/.rvm/gems/ruby-2.5.3/gems/activesupport- [FINISH]
c:0177 p:---- s:0968 e:000967 CFUNC  :map
c:0176 p:0010 s:0964 e:000963 BLOCK  /Users/mbellucci/.rvm/gems/ruby-2.5.3/gems/activesupport- [FINISH]

Yeah, this seems to be an issue for me, too. I wrote a post about it: dev.to/andy/ruby-segmentation-faul...

I didn't think it was anything since I was the only person on our team who could reproduce it for a while. I've also been using our CI as a workaround since that seems to pass properly.

I don't think it's hardware related, but my specs are macOS 10.13.5 on a Macbook Air with a 1.6 GHz i5 and 8 GB 1600 MHz DDR3 RAM.


Trying github auth with gitpod and failing 😕


Any help would be awesome :)


Hey Samarth! To get GitHub auth working, you can follow this guide:

The one thing you might need to change is the authorization callback URL in your GitHub OAuth app. I'm not sure how it would work with GitPod though; maybe try matching it to whatever GitPod URL you instead of localhost:3000?


Hey, im trying to contribute to issue #3091

Rate limiting new posts for users #3091

Is your feature request related to a problem? Please describe. I occasionally find my feed clogged with posts that I guess are bots? Or users trying to push users off site.

Describe the solution you'd like Rate limit users posts per hour. Perhaps loosen limits for people who have old enough accounts and/or enough post interactions.

Describe alternatives you've considered Creating a bot to filter out any similarly titled articles?

Additional context Example of my latest feed: Screenshot 2019-06-10 at 13 49 14

Examples of users who have been created today and have posted 15+ posts each within the last 40 minutes: Screenshot 2019-06-10 at 13 53 46 Screenshot 2019-06-10 at 13 54 07 Screenshot 2019-06-10 at 13 54 16

Screenshot 2019-06-10 at 14 00 23 Screenshot 2019-06-10 at 14 00 35

Im new to ruby/rails & this codebase and having a couple of issues with identifying the correct place to add new features.

Where I am up to:

I have rate limiting working and it will save a users post instead of publishing it. I am trying to inform the user of this by appending a message in the front end based upon a flag on the Article. Similar to the flag used when informing the user of a saved post (eg. Article.published). but I cannot figure out how to add this parameter to the Article object.

Thanks for any help.


Hey George, thanks for working on this. I'm not completely clear on what you mean by "appending a message in the front end based upon a flag on the Article." In my head, you mean the following:

  1. User who has already hit the rate limit hits the publish button
  2. The post is not published but instead saved
  3. User lands on the unpublished post with the red "edit" banner

I think it would make more sense to add error messaging that prevents a user from publishing, and the user will still have click "save draft" instead.


I had this, although it was recommended against in the pull request. Although it seems there were more issues there.


Trying to setup the project for the first time and i keep getting this error when i run bin/setup.

Any help will be greatly appreciated thanks.


Hmm, do you have your environment variables set up properly, with the correct syntax? Your application.yml should look like this:

SOME_KEY: "some_value_for_api_key"
SOME_KEY: "some_value_for_api_key"
SOME_KEY: "some_value_for_api_key"
SOME_KEY: "some_value_for_api_key"

Make sure you're using double quotes for the values, and that your keys have no quotes. There should also only be a colon and space in between the two.


Long-time reader, first-time poster (on this thread!)

Can anyone help me to understand what the roadmap / design goal / plan is around the external API?

I'm seeing a bunch of specs, some of which explicitly live under /api/v0 and others of which just seem to be available at the root level unversioned. Some of them seem to overlap (github_repos_spec). Some objects like User seem to be "needed" or no-brainer entities on an external API, but are at the top level and unversioned. I'm not really seeing any documentation on this at the moment.

Also, are there any thoughts about adopting or conforming to e.g. OpenAPI or other standard specifications?

In general: big fan of APIs; want to help, advise, contribute; but at the moment I'm fairly confused about what I'm seeing in the codebase and in a few scattered posts where devs have used the current early v0. Would love to understand more about the goals and design intent here!


I was running into an error around gem install pg after bundle install ran for a while.

I followed the instructions here to fix it


I also ran into an issue during bundle install where pg failed to install.

Fetching pg 1.1.4
Installing pg 1.1.4 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /Users/sleeve/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/pg-1.1.4/ext
/Users/sleeve/.rbenv/versions/2.6.1/bin/ruby -I /Users/sleeve/.rbenv/versions/2.6.1/lib/ruby/2.6.0 -r
./siteconf20190305-63813-1cef7ua.rb extconf.rb
checking for pg_config... no
No pg_config... trying anyway. If building fails, please try again with

I went with the recommended quick install method for PostgreSQL and just installed the macOS app. It looks like this unfortunately causes an issue in bundle install where it can't find the pg_config file. I tried to follow the instructions in the referenced blog post above but some of the commands are actually written/formatted incorrectly. I was able to find the pg_config file within the app package though.


Once I found that, I ran the following command to get pg installed.

~ $ sudo gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/11/bin/pg_config

Then I was able to rerun bundle install and it completed successfully.


@ben How can I make myself an admin? Is there any separate area for admins?


For development, you can add yourself as admin via CLI.

  1. Open up your CLI
  2. Run bin/rails console
  3. Run this one-liner:
User.last.add_role :super_admin # assuming you are the last user

Thanks for the quick reply. I'm thinking of moving my discourse forum to dev.to hosted site.

Can you let me know what are the minimum requirements to host dev.to instance?

I've around 19K users and 20000+ Posts on my discourse forum.

Ah gotcha. Someone else in this thread asked this question, so I'll link that thread, which includes @ben and @peter 's responses: dev.to/tristan957/comment/4j6g

It's not relevant to my question. It's not related to programming its something about a community of founders which is based on discourse.

So I wanted to know the basic requirements to run dev.to hosted environment.


@andy @ben can you guys pls reply on this?


Hi guys,
When i tried to run bin/setup, it throws this error
Alt text of image
I tried to Google but since I have no exp with Ruby so i am kinda clueless.
Thank you


Hey Khang, sorry just seeing this now. A few questions:

  • Are you using rbenv as your Ruby version manager? rbenv global should give you a Ruby version.
  • What version Ruby are you running? Run ruby -v to find out. This should match the version given with rbenv global

Hey, I'm looking to start work on

Allow pinning of GitHub organisation projects #243

GitHub Organisation Projects

It would be great if you could pin a GitHub repo from one of your organisations, as well as your personal repositories e.g. I'd like to be able to pin this project on my profile

(on the 13th as I'm still without broadband). Is there anything I need to do outside of the stuff mentioned in getting started? Also, would this make for a decent first issue, as I'm completely new to Ruby on Rails (any good resources would also be cool). Thanks!

I wouldn't say this is a particularly simple first Rails issue but since it's yours I think you have the other insight to make it happen.

Basically in the controller we have this defined:

@client = Octokit::Client.
          new(access_token: current_user.identities.where(provider: "github").last.token)

Octokit is the GitHub Ruby wrapper. It's been around a long time and is well-supported.

From here with @client, we currently call an octokit method to look up repos to display in the settings area.

@client.repositories.each do |repo|

I imagine to add the org repos, it'll be a matter of finding out what octokit has for that. Maybe they have a flattened way of finding all the repos, but I imagine it could be about sort of traveling up and down the object tree to get them. Hopefully it can be done efficiently.

Good luck, we can help with any bumps!


I have an issue running bin/startup


== Command ["foreman start -f Procfile.dev"] failed ==

Hey Hugo, what's the full error message you're getting?


Thanks for answer quickly. It was my mistake, I forgot to install foreman

Gotcha, glad you resolved it :)


Perhaps you don’t have your environment variables/keys set up?


Hey guys. Does fixing a typo count as a contribution? :)


Yeah, based on the URL endpoint you provided it looks like you are missing Stream API keys. See our docs for more info:


Have you given any (and I mean any) thought to using Dart in the future? Whether via AngularDart for the frontend or Dart on the backend?

What about Flutter for Android and iOS apps?


I've played around with Flutter. I don't think it necessarily fits our use cases today, but I am all for keeping an eye on Flutter and Dart as choices for new things in the future. (And possibly for our current native app story, but need to be convinced)


1.) Could we create a separate CONTRIBUTING.md file for "How to Contribute" guidelines?


Yeah, I think that makes sense.


Can I start to assist in this project by helping with items to do with the Roadmap? I see it's pretty scant and I used to do PM work along time ago and while it's not exactly relevant here, I may be able to afford more time to it than is being done now.



Hi all. Is there any way to hide specific tags from feed? dev.to has "my tags" section, but i don't understand its purpose.


Hey @ben Will you get a notification when i mention you?


Hey @gradi , sorry about that. Just seeing your message now. Tags help you build your feed, and the feed provides posts based on the tags and people you follow.

We currently don't have a way to hide specific tags from a feed. It's something that's been suggested before by other people. Feel free to add any additional thoughts in this issue: github.com/thepracticaldev/dev.to/...


I’m working on the issue below. What’s the best way to better understand how the RSS publishing feature works?

Improve documentation of RSS cross-publication feature #321

Hi! Thanks for the RSS cross-publish feature. Just had a suggestion related to its documentation in the website.

Feature Request or Task

User Story / Description

As a user wanting to cross-publish on DEV, I would like to have a description of how a draft is created from an RSS item so that I can decide whether my feed is correctly formatted for cross-publication.

Definition of Done

  • The tags used to build the draft are documented on the cross publication page in the user settings/profile.
  • If multiple tags are used/tried to pull the content (eg content, summary...), their priority order is documented.
  • Whether drafts support content with markdown content is documented.

Additional Info (device/browser, helpful links)

From Twitter discussion with DEV:

Hey there! Yep, if you put your Markdown as in the tag, it should properly pull in. Alternatively, if you don't want to change your description tag, we look for the content and summary (and description, in that order respectively) tags to pull the body text.


Can i make my own dev.to community


How to make yourself an administrator?


In rails console you can run:

yourself = User.last
# or
yourself = User.find_by_username('butonix')
yourself.add_role :super_admin

Whatcha working on? More context means I can offer more help. :)


Hey guy MacOS and Ubuntu on digital ocean found this same problem


Hey Kris, not sure where you ran into that error. Could you provide some more details about the issue?

From a basic check, it looks like you're running into an issue with our ENV variable checker gem envied. Your application.yml should have key value pairs where the key is all capitals with no quotes and the value should have quotes, like so:

KEY: "value"
GITHUB_KEY: "somethingsomething"
# etc


Can i contribute using Microsoft Windows?


Definitely! Check out our installation guide and docs in general: docs.dev.to/installation/windows/


I would like to know the production release for dev.to. How is the production release cycle like?


Hey there, we use Travis as our CI. Someone makes a pull request, it runs through tests, and after a variety of checks (Travis test suite passes, CodeClimate looks okay) and a review, we merge it. Once merged to the master branch, it goes through the CI once again and if it passes, it deploys.


I am unable to install dev.to i got error in heroku push failed

Code of Conduct Report abuse