Rails by defaults loads all its railties and engines, the current app does not use neither ActiveStorage, nor ActionCable nor TestUnit.
We can, hence, dispense of them.
* Enable all Rails 5.0 defaults, except for CSRF mitigations
* Enable all Rails 5.1 defaults
* Enable per_form_csrf_tokens
* Enable forgery_protection_origin_check
* Avoid replacing the CSRF in the comment form
Each form now has its own CSRF in addition to the global one.
I've left in place the setInterval
* Restore per_form_csrf_tokens to false
* Add API endpoints for analytics
* Remove comment and spacing
* Use proper time formatting
* Refactor and clean up some logic
* Add pro and org member traits
* Use shared examples for analytics API spec
* Add analytics authorization specs
* Remove accidental include Pundit
* Raise not_authorized for invalid requests
* Make attributes and time methods private
* Add custom UnauthorizedError
* Raise and use rescue_from to handle 4xx requests
* Enforce date parameters to follow a specific format
* Use current user to allow same origin requests
* Use custom headers and not params for token auth
* Default to current user for same origin requests
* Use correct boolean for choosing user
* Update tests to use request headers and add stricter tests
* Replace Flipflop with Sail
* Address PR comments
* Bump sail version to latest
* Bump Sail to latest version
* Move setting creation to config/sail.yml
* Bump Sail to latest version
* Use correct limit for cast_type in schema
* Update Sail's route
* Initial automatic cleanup with rubocop
* Fix syntax error introduced by rubocop
* Cleanup seeds file
* Cleanup lib folder
* Exclude bin folder because it contains auto generated files
* Make Rubocop a little bit more chatty
* Block length should not include comments in the count
* Cleanup config folder
* Cleanup specs
* Updated Rubocop version and generated a todo file
* Fix broken ArticlesApi spec
* Fix tests
* Restored rubocop pre-commit hook
* Lint and clean up github issue styles
* Use heredoc HTML for easier formatting
* Add better error handling for 404 github issues
* Use custom sanitizer for markdown render
* Refactor unless to ternary
* Rename file and tighten up sanitization
* Fix codepen and instagram tag styling