Giter Site home page Giter Site logo

starterkits / rails4-starterkit Goto Github PK

View Code? Open in Web Editor NEW
388.0 27.0 103.0 1.65 MB

Rails 4.1 starter app with production ready performance, security, and authentication.

License: MIT License

Ruby 72.36% CoffeeScript 0.71% CSS 10.17% HTML 16.65% JavaScript 0.11%

rails4-starterkit's Introduction

Rails 4.1 Starter Kit

Bootstrap 3 / Foundation 5 + CoffeeScript + Sass + Devise + everything else you need to get into production, fast.

Overview

Rails 4.1 Starter Kit is a starter app with production ready performance, security, and authentication.

This project was extracted from several apps running in production over the past couple of years and upgraded to Rails 4.1.

Unlike most starter apps that focus on kick starting development, Rails 4.1 Starter Kit is opinionated and production ready. It combines the best gems, best practices, and optimized configuration to minimize common mistakes and repetitious framework setup.

Beyond configuration and tests, the bulk of Rails 4.1 Starter Kit code is the authentication flows. The app provides well designed UX flows for social logins (Facebook, Twitter, etc.) as well as connecting additional accounts after sign up.

Demo

Demo — Bootstrap 3

Email Template Preview — with inline CSS via Premailer

Status

  • Configuration: excellent — all configuration keys are in one file and overridable with ENV vars

  • Development: good — support for Zeus and Spring

  • Test: fair — 65% code coverage; auth flows need more tests

  • Production: good — used in several production apps

Features

UI/UX

  • Turbolinks — fast page rendering; configured to play nice with HeadJS, AJAX, etc.

  • HeadJS — fast and flexible JavaScript loading

  • NProgress — mobile app style loading indicator for AJAX requests

  • Fully baked authentication flows

    • Devise + Omniauth — password and OAuth logins

    • Intelligent handling of login, sign up and connect account flows

    • Pre-filling of registration forms from social data

    • Extracted from several years of production apps and real world UX testing

    • Stubbed out code for merging accounts; common social login UX problem

Configuration

  • All app settings are in config/application.yml with automatic overriding by ENV vars

  • Development secrets are checked into git for convenience

  • Production secrets are configured via server ENV vars

BDD/TDD

  • Spring / Zeus — fast development and testing startup; Spring is enabled by default

  • Rspec — tests, somewhat following BetterSpecs

  • SimpleCov — code coverage

  • Guard — automatically run tests on code change

Admin

Background Jobs

  • Sidekiq — fast, memory efficient background jobs

Error Reporting

Maintainable CSS

  • Bootstrap3 enabled — master branch

  • Foundation5 enabled — foundation branch

  • BEM class names — prevents class name collision

  • SASS @extend — keeps Bootstrap specific class names out of the views, making it easier to switch CSS frameworks

Emails

  • Ink — Zurb’s email templates for maximum email client compatibility

  • Premailer — automatically inlines CSS styles, making it easy to customize email templates without sacrificing compatibility

  • Previewable — easily preview emails in development

  • Scalable — User and Devise are configured to send emails via background jobs

Databases

  • PostgreSQL — app data; switchable to MySQL, MongoDB, etc.

  • Redis — background job queues

  • Memcached — session data

Production Ready

  • Heroku ready — git clone, configure, git push heroku master and you’re done

  • Free hosting — configured to run web and job processes in single Heroku dyno to get started

  • Unicorn — web server

Requirements

The following services need to be running on localhost in order for rails server to start without modifying config files.

  • PostgreSQL — app data; switchable to MySQL, MongoDB, etc.

  • Redis — background job queues

  • Memcached — session data

Installation

Gemfile is configured for OSX development. See comments in Gemfile for Linux.

git clone https://github.com/starterkits/rails4-starterkit.git
cd rails4-starterkit

# For Bootstrap 3, stay in master branch
# For Foundation 5, check out foundation branch
git checkout foundation

bundle install

# Make sure postgres, memcached and redis are running locally
# On OSX with brew...
/usr/local/opt/memcached/bin/memcached
redis-server /usr/local/etc/redis.conf
postgres -D /usr/local/var/postgres

# Setup the db
rake db:setup

Modify vars in config/application.yml. Generate new secret tokens or your app will be hackable!

Modify config/locales/en.yml. Replace references to StarterKit.

Modify config/application.rb. Replace references to StarterKit.

Development

Spring is enabled by default. To use Zeus, comment out spring gems in Gemfile and uncomment zeus.

# Spring
rails server
bundle exec guard

# Zeus
zeus start
zeus server
bundle exec guard

Open in browser: 0.0.0.0:3000

Running ‘rails server` will start WEBrick. To run unicorn in development, use `unicorn -c config/unicorn.rb` or foreman.

Twitter and Facebook demo app credentials use callback urls for 0.0.0.0:3000

Debugging

Ruby 2.0+ uses byebug instead of debugger. Starter Kit is configured to use pry or byebug.

# Add pry or byebug to code
binding.pry
byebug

To debug a background worker, start the rails server and sidekiq in separate processes.

rails server
bundle exec sidekiq -C config/sidekiq.yml

# Add byebug to worker code to debug

Use Sidekiq’s web UI to restart jobs if needed: 0.0.0.0:3000/admin/sidekiq/jobs/retries

Testing

<img src=“https://travis-ci.org/starterkits/rails4-starterkit.png?branch=master” alt=“Build Status” />

For BDD/TDD, just keep guard running in the background. The relevant tests will automatically run when code is added or modified.

To run the full test suite without guard…

# Spring
rspec spec

# Without Spring
DISABLE_SPRING=true rspec spec

# Zeus
zeus test spec

Note that Sidekiq does not process jobs in tests.

Production

Setup Heroku

heroku create [app name]

# Copy and paste
heroku addons:add heroku-postgresql
heroku addons:add memcachier
heroku addons:add newrelic
heroku addons:add pgbackups
heroku addons:add redistogo
heroku addons:add sendgrid
heroku config:add DEVISE_SECRET_KEY="$(bundle exec rake secret)"
heroku config:add DEVISE_PEPPER="$(bundle exec rake secret)"
heroku config:add SECRET_KEY_BASE="$(bundle exec rake secret)"
heroku config:set REDIS_URL=`heroku config:get REDISTOGO_URL`

# Needs customization
heroku config:add MAIL_HOST=[YOUR APP URL]

git push heroku master

heroku run rake db:migrate
heroku open

# Be sure to configure social login keys to get Facebook/Twitter/etc. login to work.

Install Errbit

Starter Kit is setup to use Airbrake or Errbit for error tracking and reporting. Errbit is an open source alternative to Airbrake that can be hosted for free on Heroku.

See github.com/errbit/errbit for installation.

After setting up Airbrake or Errbit, update your server ENV vars.

# In rails4-starterkit dir
heroku config:add AIRBRAKE_API_KEY=[YOUR KEY]
heroku config:add AIRBRAKE_HOST=[YOUR-ERRBIT-APP.herokuapp.com]

# Send test
rake airbrake:test

Additional Steps

StarterKit is pre-configured to make it easy to deploy apps into production environments. However, it’s a good idea to consider the following steps to make your app production ready:

  • split worker and web processes into separate servers or dynos

  • add SSL with CloudFlare, Heroku SSL, or similar

  • add Pingdom or other monitoring service with HTML parsing to analyze page content

  • setup Errbit or Airbrake and configure StarterKit to track errors

  • send syslogs to a central logger that supports searching and filtering

  • use a security service to analyze site for common security holes (XSS, etc.)

Updating

Starter Kit Gemfile does not specify gem versions in order to make upgrading easier.

bundle update

To merge changes from Starter Kit

git remote add upstream https://github.com/starterkits/rails4-starterkit.git

# Fetch latest upstream changes
git fetch upstream

git merge upstream/master
# or
git cherry-pick [COMMIT REF]

Compatibility

  • IE 8+ unless additional shims are added

    • See app/assets/stylesheets/icons_social.scss

Auth Flows

There are three hard coded auth flows:

  1. signup — new user registration flow

  2. login — returning user authentication flow

  3. connect — authenticated user social account connection flow

In each flow, the user is returned to the page he/she was on at the beginning of the flow if appropriate.

Signup and login flows have an intermediate step (RegistrationsController#after_auth) that prompts the user for any missing required information. This is useful when new required fields are added to User, terms of service updates, etc. It’s also useful for minimizing input fields on the first sign up page. For instance, the app might just ask for the user’s desired username on the first page and then use the intermediate page to get first name, email, etc.

Sign Up

Start at /a/signup

OAuth

  1. RegistrationsController#after_auth

  2. If user.valid? redirect to origin or user_root_path

  3. If user.invalid? show intermediate page so user can add additional info

  4. Post to RegistrationsController#create

If user already had an account via the OAuth provider, he/she is simply logged in.

Username/Password

  1. Post to RegistrationsController#create

  2. Show intermediate page if additional info is needed

  3. Redirect to origin or user_root_path

Login

OAuth

If user does not already have an account via the OAuth provider, redirect to sign up page.

Otherwise, login user and redirect to either…

  1. RegistrationsController#after_auth if additional account info is needed

  2. Origin page if specified

  3. user_root_path

Username/Password

Same as OAuth flow above.

Mail Previews

Rails 4.1 introduced mailer previews. Starter Kit now has two ways to preview emails:

Mail previews are only available in development by default. To make Starter Kit previews available in other environments, set the ALLOW_EMAIL_PREVIEW=‘1’.

TODO

rails4-starterkit's People

Contributors

chrissloey avatar davidcpell avatar mcfiredrill avatar simple10 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rails4-starterkit's Issues

OAuth not working on VPS hosting

Thanks for a great starter kit. Worked great on heroku. However, when I deployed on a VPS ( Linode) - None of oauth providers are working. I have updated client key and secret code for my domain for each of the providers. Any thing else that has to be updated?

newrelic.yml logs errors

Hello everyone,

When i deploy my rails apps on heroku and i see my logs i have the following errors:

2015-04-03T14:24:22.711459+00:00 app[web.1]: ** [NewRelic][04/03/15 14:24:22 +0000 web.1 (3)] INFO : Reading configuration from config/newrelic.yml (/app)
2015-04-03T14:24:22.711497+00:00 app[web.1]: ** [NewRelic][04/03/15 14:24:22 +0000 web.1 (3)] ERROR : Failed to read or parse configuration file at config/newrelic.yml
2015-04-03T14:24:22.711541+00:00 app[web.1]: ** [NewRelic][04/03/15 14:24:22 +0000 web.1 (3)] ERROR : Psych::SyntaxError: (): mapping values are not allowed in this context at line 40 column 32

An idea?

Trouble with Javascript loaded in a single view and not through asset-pipeline

First off, great work. I'm having trouble getting Javascript to execute in a particular view only. The script is only in one view and not compiled with everything else into the header). Here's the specifics:

I'm attempting to integrate the gmaps4rails gem into a fork of this project. gmaps4rails works fine in a fresh basic rails project, but when I try to integrate it into my app, the map (and jQuery alert that I added to the script to help debug) works very intermittently. I've even tried executing the map script with $(document).ready(<map_script here>); and $(document).on('page:load', <map_script here>);, but to no avail; just a blank div where the map should be. Or, sometimes the map works. It's so random and I'm truly stumped. I get the same results in every browser I have access to (Chromium & Firefox on Ubuntu 14.04 and Safari on iOS 7).

In the rare event that the map loads like its supposed to, Firebug doesn't show any errors (obviously). However, when the map doesn't load, Firebug says that "jQuery isn't defined" or something to that effect. Does anyone have any suggestions on how to get this working?

p.s. Similarly, I've noticed that my Twitter widget (in a separate view from the map) only loads when the page loads for the first time and doesn't reload on turbolink refreshes. So, kinda similar cases of where Javascript loaded from a single view doesn't behave properly.

Mongoid Even Possible?

You listed Mongoid as a possible ORM...is this switch even possible without activeRecord??

double log messages

hi. i'm getting double log messages on dev env. resolved that on 18th line in development.rb

config.logger = ActiveSupport::Logger.new('/dev/null')

Signup with Facebook not sending Confirmation Email?

It's sending Welcome email but when I click the "Get Active" button which I assume is an activation button? maybe it's not...

How do I make it send confirmation email? or if Login with Facebook then don't require Confirmation.

Running the application

I think there should be an easy way to start Redis, PostgresSQL, the Rails server, (and Guard?) all at once. What would be the best practice way of doing this? As a Rake task?

Move to mongodb

Having a lot of trouble changing over to mongodb. Can you provide any pointers to start? I'm already getting undefined method `email' at signup...

error while updating user via rails_admin

rails_admin user editing : http://localhost:3000/admin/user

ActiveRecord::RecordNotUnique in RailsAdmin::MainController#edit
PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "users_pkey" DETAIL: Key (id)=(1) already exists. : UPDATE "users" SET "current_sign_in_at" = $1, "first_name" = $2, "id" = $3, "is_admin" = $4, "last_sign_in_at" = $5, "unconfirmed_email" = $6, "updated_at" = $7 WHERE "users"."id" = 3

Extracted source (around line #74):
72
73
74
75
76
77

    old_time_zone = Time.zone
    Time.zone = current_user.time_zone if user_signed_in?
    yield
  ensure
    Time.zone = old_time_zone
  end

Rails.root: /home/admin/ror/aurum

Application Trace | Framework Trace | Full Trace
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/postgresql_adapter.rb:834:in `get_last_result'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/postgresql_adapter.rb:834:in `block in exec_cache'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/abstract_adapter.rb:373:in `block in log'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/abstract_adapter.rb:367:in `log'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/postgresql_adapter.rb:831:in `exec_cache'
vendor/bundle/ruby/2.1.0/gems/schema_plus-1.6.0/lib/schema_plus/active_record/connection_adapters/postgresql_adapter.rb:237:in `exec_cache_with_schema_plus'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/postgresql/database_statements.rb:155:in `exec_delete'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/abstract/database_statements.rb:101:in `update'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/abstract/query_cache.rb:14:in `update'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/relation.rb:84:in `_update_record'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/persistence.rb:494:in `_update_record'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/locking/optimistic.rb:70:in `_update_record'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/attribute_methods/dirty.rb:83:in `_update_record'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/callbacks.rb:310:in `block in _update_record'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:113:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:113:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:149:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:86:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:86:in `run_callbacks'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/callbacks.rb:310:in `_update_record'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/timestamp.rb:70:in `_update_record'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/persistence.rb:483:in `create_or_update'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/callbacks.rb:302:in `block in create_or_update'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:113:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:113:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:215:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:86:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:86:in `run_callbacks'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/callbacks.rb:302:in `create_or_update'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/persistence.rb:103:in `save'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/validations.rb:51:in `save'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/attribute_methods/dirty.rb:21:in `save'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/transactions.rb:268:in `block (2 levels) in save'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/transactions.rb:329:in `block in with_transaction_returning_status'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/abstract/database_statements.rb:201:in `block in transaction'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/abstract/database_statements.rb:209:in `within_new_transaction'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/abstract/database_statements.rb:201:in `transaction'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/transactions.rb:208:in `transaction'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/transactions.rb:326:in `with_transaction_returning_status'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/transactions.rb:268:in `block in save'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/transactions.rb:283:in `rollback_active_record_state!'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/transactions.rb:267:in `save'
vendor/bundle/ruby/2.1.0/gems/rails_admin-0.6.5/lib/rails_admin/adapters/active_record/abstract_object.rb:23:in `save'
vendor/bundle/ruby/2.1.0/gems/rails_admin-0.6.5/lib/rails_admin/config/actions/edit.rb:33:in `block (2 levels) in <class:Edit>'
(eval):8:in `instance_eval'
(eval):8:in `edit'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_controller/metal/implicit_render.rb:4:in `send_action'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/abstract_controller/base.rb:189:in `process_action'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_controller/metal/rendering.rb:10:in `process_action'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/abstract_controller/callbacks.rb:20:in `block in process_action'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:113:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:113:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:149:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:149:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:149:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:149:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:149:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:149:in `block in halting_and_conditional'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:299:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:299:in `block (2 levels) in halting'
app/controllers/application_controller.rb:74:in `set_time_zone'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:424:in `block in make_lambda'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:298:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:298:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:229:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:229:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:229:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:229:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:229:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:229:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:166:in `block in halting'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:86:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:86:in `run_callbacks'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/abstract_controller/callbacks.rb:19:in `process_action'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_controller/metal/rescue.rb:29:in `process_action'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_controller/metal/instrumentation.rb:31:in `block in process_action'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/notifications.rb:159:in `block in instrument'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/notifications.rb:159:in `instrument'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_controller/metal/instrumentation.rb:30:in `process_action'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_controller/metal/params_wrapper.rb:250:in `process_action'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/railties/controller_runtime.rb:18:in `process_action'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/abstract_controller/base.rb:136:in `process'
vendor/bundle/ruby/2.1.0/gems/actionview-4.1.6/lib/action_view/rendering.rb:30:in `process'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_controller/metal.rb:196:in `dispatch'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_controller/metal/rack_delegation.rb:13:in `dispatch'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_controller/metal.rb:232:in `block in action'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/routing/route_set.rb:82:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/routing/route_set.rb:82:in `dispatch'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/routing/route_set.rb:50:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/journey/router.rb:73:in `block in call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/journey/router.rb:59:in `each'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/journey/router.rb:59:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/routing/route_set.rb:678:in `call'
vendor/bundle/ruby/2.1.0/gems/railties-4.1.6/lib/rails/engine.rb:514:in `call'
vendor/bundle/ruby/2.1.0/gems/railties-4.1.6/lib/rails/railtie.rb:194:in `public_send'
vendor/bundle/ruby/2.1.0/gems/railties-4.1.6/lib/rails/railtie.rb:194:in `method_missing'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/journey/router.rb:73:in `block in call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/journey/router.rb:59:in `each'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/journey/router.rb:59:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/routing/route_set.rb:678:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-pjax-0.8.0/lib/rack/pjax.rb:12:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:186:in `call!'
vendor/bundle/ruby/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:164:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:186:in `call!'
vendor/bundle/ruby/2.1.0/gems/omniauth-1.2.2/lib/omniauth/strategy.rb:164:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/omniauth-1.2.2/lib/omniauth/builder.rb:59:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/rack/error_collector.rb:50:in `traced_call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:55:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/rack/agent_hooks.rb:26:in `traced_call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:55:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/rack/browser_monitoring.rb:23:in `traced_call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:55:in `call'
vendor/bundle/ruby/2.1.0/gems/warden-1.2.3/lib/warden/manager.rb:35:in `block in call'
vendor/bundle/ruby/2.1.0/gems/warden-1.2.3/lib/warden/manager.rb:34:in `catch'
vendor/bundle/ruby/2.1.0/gems/warden-1.2.3/lib/warden/manager.rb:34:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/etag.rb:23:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/conditionalget.rb:35:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/head.rb:11:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/remotipart-1.2.1/lib/remotipart/middleware.rb:27:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/params_parser.rb:27:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/flash.rb:254:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:225:in `context'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:220:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/cookies.rb:560:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/query_cache.rb:36:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/connection_adapters/abstract/connection_pool.rb:621:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/activerecord-4.1.6/lib/active_record/migration.rb:380:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/callbacks.rb:29:in `block in call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/callbacks.rb:82:in `run_callbacks'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/callbacks.rb:27:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/reloader.rb:73:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/remote_ip.rb:76:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/airbrake-4.1.0/lib/airbrake/rails/middleware.rb:13:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/debug_exceptions.rb:17:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/show_exceptions.rb:30:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/railties-4.1.6/lib/rails/rack/logger.rb:38:in `call_app'
vendor/bundle/ruby/2.1.0/gems/railties-4.1.6/lib/rails/rack/logger.rb:22:in `call'
vendor/bundle/ruby/2.1.0/gems/quiet_assets-1.0.3/lib/quiet_assets.rb:23:in `call_with_quiet_assets'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/request_id.rb:21:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/methodoverride.rb:21:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/runtime.rb:17:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/activesupport-4.1.6/lib/active_support/cache/strategy/local_cache_middleware.rb:26:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/lock.rb:17:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/actionpack-4.1.6/lib/action_dispatch/middleware/static.rb:64:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/sendfile.rb:112:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/airbrake-4.1.0/lib/airbrake/user_informer.rb:16:in `_call'
vendor/bundle/ruby/2.1.0/gems/airbrake-4.1.0/lib/airbrake/user_informer.rb:12:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/railties-4.1.6/lib/rails/engine.rb:514:in `call'
vendor/bundle/ruby/2.1.0/gems/railties-4.1.6/lib/rails/application.rb:144:in `call'
vendor/bundle/ruby/2.1.0/gems/newrelic_rpm-3.9.5.251/lib/new_relic/agent/instrumentation/middleware_tracing.rb:57:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/lock.rb:17:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/content_length.rb:14:in `call'
vendor/bundle/ruby/2.1.0/gems/rack-1.5.2/lib/rack/handler/webrick.rb:60:in `service'
/home/admin/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/webrick/httpserver.rb:138:in `service'
/home/admin/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/webrick/httpserver.rb:94:in `run'
/home/admin/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/webrick/server.rb:295:in `block in start_thread'
Request

Parameters:

{"utf8"=>"✓",
 "_method"=>"put",
 "authenticity_token"=>"F7qy0iFONT97Nq+X3EEVYuXKBInkfyi+WEtFTQtozOI=",
 "user"=>{"first_name"=>"aditya",
 "last_name"=>"9892364777",
 "remove_image_url"=>"0",
 "image_url_cache"=>"",
 "email"=>"[email protected]",
 "password"=>"[FILTERED]",
 "password_confirmation"=>"[FILTERED]",
 "reset_password_sent_at"=>"[FILTERED]",
 "remember_created_at"=>"",
 "sign_in_count"=>"1",
 "current_sign_in_at"=>"November 01,
 2014 15:33",
 "last_sign_in_at"=>"November 01,
 2014 15:33",
 "current_sign_in_ip"=>"127.0.0.1",
 "last_sign_in_ip"=>"127.0.0.1",
 "confirmed_at"=>"",
 "confirmation_sent_at"=>"",
 "unconfirmed_email"=>"",
 "failed_attempts"=>"0",
 "locked_at"=>"",
 "is_admin"=>"0",
 "time_zone"=>"Mumbai",
 "username"=>"9892364777",
 "role_ids"=>["",
 ""]},
 "return_to"=>"http://localhost:3000/admin/user",
 "_save"=>"",
 "model_name"=>"user",
 "id"=>"3"}

SOCIAL CONNECTION

Hello everyone,
i have a problem while trying to connect trough social network.
on twitter i have this message
OmniAuth::NoSessionError at /o/twitter/callback
Session Expired

on facebook it comes back to home page (http://localhost:3000/a/signup#_=_) but the application is added to my applicatoin on facebook.
i'm on windows 8 with ruby 2.1.5 + rails 4.1.6

Bundle install fails at Using capybara 2.4.4

Using capybara 2.4.4

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

/Users/MGK/.rvm/rubies/ruby-2.1.3/bin/ruby extconf.rb

Command 'qmake -spec macx-g++ ' not available

Makefile not found

Gem files will remain installed in /Users/MGK/.rvm/gems/ruby-2.1.3/gems/capybara-webkit-1.3.0 for inspection.

Airbrake setup issues

I am new to airbrake. but when I try to push to Heroku I get the following issue:

** [Airbrake] [Airbrake::Sender#setup_http_connection] Failure initializing the HTTP connection. Error: URI::InvalidURIError - the scheme https does not accept registry part: :443 (or bad hostname?)

My routes are fine as best I can tell. And I have the Airbrake host setup as https://mysubdomain.airbrake.com which I believe is the correct setup.

Couple questions:

  1. Is the initializers/airbrake.rb pulling from Application.yml?
  2. initializers/airbrake.rb notes a js_api_key which I don't think I have from Airbrake. Is this something special?

running rake airbrake:test outputs: ** [Airbrake] [Airbrake::Sender#send_to_airbrake] Cannot send notification. Error: SocketError - getaddrinfo: nodename nor servname provided, or not known

Then a bunch of trace info, then: ** [Airbrake] Environment Info: [Ruby: 2.1.2] [Rails: 4.1.4] [Env: development]

Testing airbrake via "rake airbrake:test". If you can see this, it works.

Any ideas?

ActiveRecord::RecordNotUnique , inserts id when creating user

Hello All,

I seem to be getting a problem when inserting into the users table. I am not sure why. I know the solution would be to remove adding the id when adding users, but I don't know how and have been trying to find the right file for 30 minutes. The error is below

ActiveRecord::RecordNotUnique in RailsAdmin::MainController#new
Mysql2::Error: Duplicate entry '1' for key 'PRIMARY': INSERT INTO `users`

Any possible solution to this? I am willing to fix if someone just points me to the right file(s). Thanks!

No Providers Error

I don't have any providers defined, so I'm getting:

Showing /Users/me/myapp/app/views/authentications/_providers.html.haml where line #3 raised:

undefined method `after_save' for Authentication:Class

Really confusing error if I'm looking at the "After_save" issue.

Google Analytics isn't reporting

Has anyone else been successful in implementing Google Analytics with the existing code?

I've compared the app/views/layouts/_analytics.html.haml with the code on the Google Developer page, and there's a difference. Where Google's has:

$(document).on('page:change', function(){
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  });

There is only:

$(document).on('page:change', function(){
    _gaq.push(['_trackPageview'])
});

I've added my property's analytics code as an environmental variable on Heroku, as I've done with many other sites, but this doesn't seem to be working.

Using gem 'schema_plus'

using gem 'schema_plus' causes several problems while using gems like comfortable-mexican-sofa, ckeditor etc during migration. Is schema_plus really required ? It seems the functionality provided by it to easily add indexes etc is easier to implement then to debug the errors caused by it during migration.

Debugging very difficult

Given a few things I'm not familiar with: This app is really hard to debug. I don't get good errors due to airbrake. I remove airbrake and things crash. I'm wanting to port this over for mongoid, but finding it not worth my time.

Please advise.

ConstraintException: PRIMARY KEY must be unique:

Hello
When I update an existing user in the User model, I am getting this error message. Could you please help?

ActiveRecord::StatementInvalid (SQLite3::ConstraintException: PRIMARY KEY must be unique: UPDATE "users" SET "confirmation_token" = ?, "current_sign_in_at" = ?, "id" = ?, "is_admin" = ?, "last_sign_in_at" = ?, "unconfirmed_email" = ?, "unlock_token" = ?, "updated_at" = ? WHERE "users"."id" = 3):

Thank you

ActionController::InvalidAuthenticityToken in Users::SessionsController#create

I like the starter kit. However, when I tried to sign up I received an error saying -> ActionController::InvalidAuthenticityToken in Users::SessionsController#create
I tried to solve this problem by adding ;

app/controllers/users/registrations_controller.rb

class RegistrationsController < Devise::RegistrationsController
skip_before_filter :verify_authenticity_token, :only => :create
end

But, then it gives an error in the forgot password screen. And also when I try to log in it redirects me automatically to sign in page. Not like in your demo

Thank you

RailsAdmin cannot edit multiple users.

Setup Rails4-Starterkit, sign up as a user. Then signup as another User. When I go to RailsAdmin, click Users, editing the first user, click save. Everything is fine so far. but when I try to edit the second user in RailsAdmin, click save, this error appears:

PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "users_pkey" DETAIL: Key (id)=(1) already exists. : UPDATE "users" SET "confirmation_token" = $1, "current_sign_in_at" = $2, "first_name" = $3, "id" = $4, "image_url" = $5, "is_admin" = $6, "last_name" = $7, "last_sign_in_at" = $8, "unconfirmed_email" = $9, "unlock_token" = $10, "updated_at" = $11 WHERE "users"."id" = 2

Can you let me know how to fix this?
Thanks,

Rails admin doesn't work on clean install

Forked rails4-starterkit
Created a user
Set user is_admin to true
Go to http://0.0.0.0:3000/admin
Get the following error

Asset depends on 'rails_admin/bootstrap/glyphicons-halflings.png' to generate properly but has not declared the dependency
Please add: //= depend_on_asset "rails_admin/bootstrap/glyphicons-halflings.png" to '/Users/alex/.rvm/gems/ruby-2.1.1/gems/rails_admin-0.6.2/app/assets/stylesheets/rails_admin/rails_admin.scss.erb'
(in /Users/alex/.rvm/gems/ruby-2.1.1/gems/rails_admin-0.6.2/app/assets/stylesheets/rails_admin/rails_admin.scss.erb)

Rails 5?

Will you be releasing a Rails 5 Starter Kit?

StarterKit with Themes: Bootswatch-sass + Font Awesome

I've made some changes that I'd like to commit but I'm not able to add a Pull Request to my fork of this repository. Please kindly look into this.

My changes are not just cosmetic (see attached screenshot), but essentially leverages other bits of packages like "Bootswatch-sass" - a version of the bootswatch themes packaged as scss - and Font Awesome to make the work on a new site even more faster with StarterKit. When this commit is implemented, StarterKit will now have a templating system for the views. Other minor changes were made on the home.html.haml page.

starterkit_screenshot

How to use additional FB permissions

The social Login with this starter app works great. Many thanks.

I want to request a little more info about my users which requires two things:

  1. I need to add a couple items to the FB request
  2. I need to load the provided data into the db.

From my looking at the code it looks like this is handled in models/concerns/omniauth_concern.rb. Any direction you can provide would be super helpful as I am new to this stuff.

gemfile requires ruby 2.1.0

Since I am using windows 8 platform, there is no rubyinstaller support for ruby 2.1.0. Similarly no rvm for windows. I don't know other options to upgrade to 2.1. Please show me the workaround. currently I have ruby 2.0.0 installed.

DB going to production instead of development with Sidekiq?

Hi,

Thanks for this starterkit. I'm trying it out at the moment but am running into a problem.

When I try to register I see a job is created in Sidekiq but it's failing because of:

ActiveRecord::NoDatabaseError: FATAL: database "project_production" does not exist Run $ bin/rake db:create db:migrate to create your database

The rest of the application seems working. database.yml is configured correctly.

Foundation 6?

Hi, just wondering if anyone is working on porting the foundation branch to foundation 6?
Currently it throws a number of issues related to the sprockets assets which assume foundation 5 is present.

"Production Ready" oxymoron in README

Being able to run rails4-starterkit on Heroku's free tier is GREAT for prototyping, but I wouldn't consider it "production ready" if you want to have "free hosting". Production and free should never be in the same sentence.

Just to clarify for newcomers, the README should include information about how to actually get your application ready for production on Heroku's servers:

  • Scaling up Dyno's
  • Upgrading to a production PostgreSQL database
  • Setting up HTTPS

Or if anything, just link to another document explaining everything.

un-permitted parameters

Where would you recommend adding additional user params on signup. I am adding a few fields to the users/registrations/_form view and getting a un-permitted parameters error on submission.

Many thanks for the help and the great starter app.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.