doorkeeper 5.3.3 → 5.5.0.rc2

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of doorkeeper might be problematic. Click here for more details.

Files changed (233) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +125 -7
  3. data/README.md +6 -4
  4. data/app/controllers/doorkeeper/applications_controller.rb +4 -4
  5. data/app/controllers/doorkeeper/authorizations_controller.rb +46 -16
  6. data/app/controllers/doorkeeper/authorized_applications_controller.rb +2 -2
  7. data/app/controllers/doorkeeper/tokens_controller.rb +67 -22
  8. data/app/views/doorkeeper/applications/_form.html.erb +1 -1
  9. data/app/views/doorkeeper/applications/show.html.erb +35 -14
  10. data/app/views/doorkeeper/authorizations/form_post.html.erb +11 -0
  11. data/config/locales/en.yml +6 -2
  12. data/lib/doorkeeper.rb +111 -79
  13. data/lib/doorkeeper/config.rb +148 -94
  14. data/lib/doorkeeper/config/abstract_builder.rb +28 -0
  15. data/lib/doorkeeper/config/option.rb +26 -14
  16. data/lib/doorkeeper/config/validations.rb +53 -0
  17. data/lib/doorkeeper/engine.rb +1 -1
  18. data/lib/doorkeeper/grant_flow.rb +45 -0
  19. data/lib/doorkeeper/grant_flow/fallback_flow.rb +15 -0
  20. data/lib/doorkeeper/grant_flow/flow.rb +44 -0
  21. data/lib/doorkeeper/grant_flow/registry.rb +50 -0
  22. data/lib/doorkeeper/grape/helpers.rb +1 -1
  23. data/lib/doorkeeper/helpers/controller.rb +8 -4
  24. data/lib/doorkeeper/models/access_grant_mixin.rb +21 -18
  25. data/lib/doorkeeper/models/access_token_mixin.rb +110 -47
  26. data/lib/doorkeeper/models/application_mixin.rb +5 -4
  27. data/lib/doorkeeper/models/concerns/resource_ownerable.rb +47 -0
  28. data/lib/doorkeeper/models/concerns/revocable.rb +1 -1
  29. data/lib/doorkeeper/models/concerns/scopes.rb +5 -1
  30. data/lib/doorkeeper/models/concerns/secret_storable.rb +1 -3
  31. data/lib/doorkeeper/oauth/authorization/code.rb +19 -6
  32. data/lib/doorkeeper/oauth/authorization/context.rb +5 -5
  33. data/lib/doorkeeper/oauth/authorization/token.rb +18 -16
  34. data/lib/doorkeeper/oauth/authorization/uri_builder.rb +4 -4
  35. data/lib/doorkeeper/oauth/authorization_code_request.rb +17 -14
  36. data/lib/doorkeeper/oauth/base_request.rb +12 -20
  37. data/lib/doorkeeper/oauth/client.rb +1 -1
  38. data/lib/doorkeeper/oauth/client/credentials.rb +2 -4
  39. data/lib/doorkeeper/oauth/client_credentials/creator.rb +27 -8
  40. data/lib/doorkeeper/oauth/client_credentials/issuer.rb +4 -2
  41. data/lib/doorkeeper/oauth/client_credentials/validator.rb +4 -2
  42. data/lib/doorkeeper/oauth/client_credentials_request.rb +8 -7
  43. data/lib/doorkeeper/oauth/code_request.rb +3 -3
  44. data/lib/doorkeeper/oauth/code_response.rb +22 -12
  45. data/lib/doorkeeper/oauth/error_response.rb +6 -7
  46. data/lib/doorkeeper/oauth/helpers/scope_checker.rb +2 -8
  47. data/lib/doorkeeper/oauth/hooks/context.rb +21 -0
  48. data/lib/doorkeeper/oauth/invalid_token_response.rb +2 -2
  49. data/lib/doorkeeper/oauth/password_access_token_request.rb +24 -7
  50. data/lib/doorkeeper/oauth/pre_authorization.rb +63 -32
  51. data/lib/doorkeeper/oauth/refresh_token_request.rb +31 -22
  52. data/lib/doorkeeper/oauth/token.rb +5 -6
  53. data/lib/doorkeeper/oauth/token_introspection.rb +4 -8
  54. data/lib/doorkeeper/oauth/token_request.rb +3 -3
  55. data/lib/doorkeeper/oauth/token_response.rb +1 -1
  56. data/lib/doorkeeper/orm/active_record.rb +14 -7
  57. data/lib/doorkeeper/orm/active_record/mixins/access_grant.rb +8 -3
  58. data/lib/doorkeeper/orm/active_record/mixins/access_token.rb +7 -3
  59. data/lib/doorkeeper/orm/active_record/mixins/application.rb +6 -3
  60. data/lib/doorkeeper/orm/active_record/redirect_uri_validator.rb +5 -0
  61. data/lib/doorkeeper/rails/routes.rb +14 -20
  62. data/lib/doorkeeper/rails/routes/abstract_router.rb +35 -0
  63. data/lib/doorkeeper/rails/routes/mapper.rb +2 -2
  64. data/lib/doorkeeper/rails/routes/registry.rb +45 -0
  65. data/lib/doorkeeper/request.rb +49 -12
  66. data/lib/doorkeeper/request/refresh_token.rb +2 -1
  67. data/lib/doorkeeper/request/strategy.rb +2 -2
  68. data/lib/doorkeeper/server.rb +4 -4
  69. data/lib/doorkeeper/stale_records_cleaner.rb +4 -4
  70. data/lib/doorkeeper/version.rb +3 -7
  71. data/lib/generators/doorkeeper/confidential_applications_generator.rb +1 -1
  72. data/lib/generators/doorkeeper/enable_polymorphic_resource_owner_generator.rb +39 -0
  73. data/lib/generators/doorkeeper/templates/add_owner_to_application_migration.rb.erb +3 -1
  74. data/lib/generators/doorkeeper/templates/add_previous_refresh_token_to_access_tokens.rb.erb +2 -0
  75. data/lib/generators/doorkeeper/templates/enable_pkce_migration.rb.erb +2 -0
  76. data/lib/generators/doorkeeper/templates/enable_polymorphic_resource_owner_migration.rb.erb +17 -0
  77. data/lib/generators/doorkeeper/templates/initializer.rb +48 -10
  78. data/lib/generators/doorkeeper/templates/migration.rb.erb +14 -5
  79. metadata +30 -300
  80. data/Appraisals +0 -40
  81. data/CODE_OF_CONDUCT.md +0 -46
  82. data/CONTRIBUTING.md +0 -49
  83. data/Dangerfile +0 -67
  84. data/Dockerfile +0 -29
  85. data/Gemfile +0 -25
  86. data/NEWS.md +0 -1
  87. data/RELEASING.md +0 -11
  88. data/Rakefile +0 -28
  89. data/SECURITY.md +0 -15
  90. data/UPGRADE.md +0 -2
  91. data/bin/console +0 -16
  92. data/doorkeeper.gemspec +0 -42
  93. data/gemfiles/rails_5_0.gemfile +0 -18
  94. data/gemfiles/rails_5_1.gemfile +0 -18
  95. data/gemfiles/rails_5_2.gemfile +0 -18
  96. data/gemfiles/rails_6_0.gemfile +0 -18
  97. data/gemfiles/rails_master.gemfile +0 -18
  98. data/spec/controllers/application_metal_controller_spec.rb +0 -64
  99. data/spec/controllers/applications_controller_spec.rb +0 -274
  100. data/spec/controllers/authorizations_controller_spec.rb +0 -608
  101. data/spec/controllers/protected_resources_controller_spec.rb +0 -361
  102. data/spec/controllers/token_info_controller_spec.rb +0 -50
  103. data/spec/controllers/tokens_controller_spec.rb +0 -498
  104. data/spec/dummy/Rakefile +0 -9
  105. data/spec/dummy/app/assets/config/manifest.js +0 -2
  106. data/spec/dummy/app/controllers/application_controller.rb +0 -5
  107. data/spec/dummy/app/controllers/custom_authorizations_controller.rb +0 -9
  108. data/spec/dummy/app/controllers/full_protected_resources_controller.rb +0 -14
  109. data/spec/dummy/app/controllers/home_controller.rb +0 -18
  110. data/spec/dummy/app/controllers/metal_controller.rb +0 -13
  111. data/spec/dummy/app/controllers/semi_protected_resources_controller.rb +0 -13
  112. data/spec/dummy/app/helpers/application_helper.rb +0 -7
  113. data/spec/dummy/app/models/user.rb +0 -7
  114. data/spec/dummy/app/views/home/index.html.erb +0 -0
  115. data/spec/dummy/app/views/layouts/application.html.erb +0 -14
  116. data/spec/dummy/config.ru +0 -6
  117. data/spec/dummy/config/application.rb +0 -49
  118. data/spec/dummy/config/boot.rb +0 -7
  119. data/spec/dummy/config/database.yml +0 -15
  120. data/spec/dummy/config/environment.rb +0 -5
  121. data/spec/dummy/config/environments/development.rb +0 -31
  122. data/spec/dummy/config/environments/production.rb +0 -64
  123. data/spec/dummy/config/environments/test.rb +0 -45
  124. data/spec/dummy/config/initializers/backtrace_silencers.rb +0 -9
  125. data/spec/dummy/config/initializers/doorkeeper.rb +0 -166
  126. data/spec/dummy/config/initializers/secret_token.rb +0 -10
  127. data/spec/dummy/config/initializers/session_store.rb +0 -10
  128. data/spec/dummy/config/initializers/wrap_parameters.rb +0 -16
  129. data/spec/dummy/config/locales/doorkeeper.en.yml +0 -5
  130. data/spec/dummy/config/routes.rb +0 -13
  131. data/spec/dummy/db/migrate/20111122132257_create_users.rb +0 -11
  132. data/spec/dummy/db/migrate/20120312140401_add_password_to_users.rb +0 -7
  133. data/spec/dummy/db/migrate/20151223192035_create_doorkeeper_tables.rb +0 -69
  134. data/spec/dummy/db/migrate/20151223200000_add_owner_to_application.rb +0 -9
  135. data/spec/dummy/db/migrate/20160320211015_add_previous_refresh_token_to_access_tokens.rb +0 -13
  136. data/spec/dummy/db/migrate/20170822064514_enable_pkce.rb +0 -8
  137. data/spec/dummy/db/migrate/20180210183654_add_confidential_to_applications.rb +0 -13
  138. data/spec/dummy/db/schema.rb +0 -68
  139. data/spec/dummy/public/404.html +0 -26
  140. data/spec/dummy/public/422.html +0 -26
  141. data/spec/dummy/public/500.html +0 -26
  142. data/spec/dummy/public/favicon.ico +0 -0
  143. data/spec/dummy/script/rails +0 -9
  144. data/spec/factories.rb +0 -30
  145. data/spec/generators/application_owner_generator_spec.rb +0 -28
  146. data/spec/generators/confidential_applications_generator_spec.rb +0 -29
  147. data/spec/generators/install_generator_spec.rb +0 -36
  148. data/spec/generators/migration_generator_spec.rb +0 -28
  149. data/spec/generators/pkce_generator_spec.rb +0 -28
  150. data/spec/generators/previous_refresh_token_generator_spec.rb +0 -44
  151. data/spec/generators/templates/routes.rb +0 -4
  152. data/spec/generators/views_generator_spec.rb +0 -29
  153. data/spec/grape/grape_integration_spec.rb +0 -137
  154. data/spec/helpers/doorkeeper/dashboard_helper_spec.rb +0 -26
  155. data/spec/lib/config_spec.rb +0 -809
  156. data/spec/lib/doorkeeper_spec.rb +0 -27
  157. data/spec/lib/models/expirable_spec.rb +0 -61
  158. data/spec/lib/models/reusable_spec.rb +0 -40
  159. data/spec/lib/models/revocable_spec.rb +0 -59
  160. data/spec/lib/models/scopes_spec.rb +0 -53
  161. data/spec/lib/models/secret_storable_spec.rb +0 -135
  162. data/spec/lib/oauth/authorization/uri_builder_spec.rb +0 -39
  163. data/spec/lib/oauth/authorization_code_request_spec.rb +0 -170
  164. data/spec/lib/oauth/base_request_spec.rb +0 -224
  165. data/spec/lib/oauth/base_response_spec.rb +0 -45
  166. data/spec/lib/oauth/client/credentials_spec.rb +0 -90
  167. data/spec/lib/oauth/client_credentials/creator_spec.rb +0 -134
  168. data/spec/lib/oauth/client_credentials/issuer_spec.rb +0 -112
  169. data/spec/lib/oauth/client_credentials/validation_spec.rb +0 -59
  170. data/spec/lib/oauth/client_credentials_integration_spec.rb +0 -27
  171. data/spec/lib/oauth/client_credentials_request_spec.rb +0 -107
  172. data/spec/lib/oauth/client_spec.rb +0 -38
  173. data/spec/lib/oauth/code_request_spec.rb +0 -46
  174. data/spec/lib/oauth/code_response_spec.rb +0 -32
  175. data/spec/lib/oauth/error_response_spec.rb +0 -64
  176. data/spec/lib/oauth/error_spec.rb +0 -21
  177. data/spec/lib/oauth/forbidden_token_response_spec.rb +0 -20
  178. data/spec/lib/oauth/helpers/scope_checker_spec.rb +0 -110
  179. data/spec/lib/oauth/helpers/unique_token_spec.rb +0 -21
  180. data/spec/lib/oauth/helpers/uri_checker_spec.rb +0 -262
  181. data/spec/lib/oauth/invalid_request_response_spec.rb +0 -73
  182. data/spec/lib/oauth/invalid_token_response_spec.rb +0 -53
  183. data/spec/lib/oauth/password_access_token_request_spec.rb +0 -190
  184. data/spec/lib/oauth/pre_authorization_spec.rb +0 -223
  185. data/spec/lib/oauth/refresh_token_request_spec.rb +0 -177
  186. data/spec/lib/oauth/scopes_spec.rb +0 -146
  187. data/spec/lib/oauth/token_request_spec.rb +0 -157
  188. data/spec/lib/oauth/token_response_spec.rb +0 -84
  189. data/spec/lib/oauth/token_spec.rb +0 -156
  190. data/spec/lib/request/strategy_spec.rb +0 -54
  191. data/spec/lib/secret_storing/base_spec.rb +0 -60
  192. data/spec/lib/secret_storing/bcrypt_spec.rb +0 -49
  193. data/spec/lib/secret_storing/plain_spec.rb +0 -44
  194. data/spec/lib/secret_storing/sha256_hash_spec.rb +0 -48
  195. data/spec/lib/server_spec.rb +0 -49
  196. data/spec/lib/stale_records_cleaner_spec.rb +0 -89
  197. data/spec/models/doorkeeper/access_grant_spec.rb +0 -161
  198. data/spec/models/doorkeeper/access_token_spec.rb +0 -622
  199. data/spec/models/doorkeeper/application_spec.rb +0 -482
  200. data/spec/requests/applications/applications_request_spec.rb +0 -259
  201. data/spec/requests/applications/authorized_applications_spec.rb +0 -32
  202. data/spec/requests/endpoints/authorization_spec.rb +0 -91
  203. data/spec/requests/endpoints/token_spec.rb +0 -75
  204. data/spec/requests/flows/authorization_code_errors_spec.rb +0 -79
  205. data/spec/requests/flows/authorization_code_spec.rb +0 -525
  206. data/spec/requests/flows/client_credentials_spec.rb +0 -166
  207. data/spec/requests/flows/implicit_grant_errors_spec.rb +0 -46
  208. data/spec/requests/flows/implicit_grant_spec.rb +0 -91
  209. data/spec/requests/flows/password_spec.rb +0 -316
  210. data/spec/requests/flows/refresh_token_spec.rb +0 -233
  211. data/spec/requests/flows/revoke_token_spec.rb +0 -157
  212. data/spec/requests/flows/skip_authorization_spec.rb +0 -66
  213. data/spec/requests/protected_resources/metal_spec.rb +0 -16
  214. data/spec/requests/protected_resources/private_api_spec.rb +0 -83
  215. data/spec/routing/custom_controller_routes_spec.rb +0 -133
  216. data/spec/routing/default_routes_spec.rb +0 -41
  217. data/spec/routing/scoped_routes_spec.rb +0 -47
  218. data/spec/spec_helper.rb +0 -54
  219. data/spec/spec_helper_integration.rb +0 -4
  220. data/spec/support/dependencies/factory_bot.rb +0 -4
  221. data/spec/support/doorkeeper_rspec.rb +0 -22
  222. data/spec/support/helpers/access_token_request_helper.rb +0 -13
  223. data/spec/support/helpers/authorization_request_helper.rb +0 -43
  224. data/spec/support/helpers/config_helper.rb +0 -11
  225. data/spec/support/helpers/model_helper.rb +0 -78
  226. data/spec/support/helpers/request_spec_helper.rb +0 -110
  227. data/spec/support/helpers/url_helper.rb +0 -62
  228. data/spec/support/orm/active_record.rb +0 -5
  229. data/spec/support/shared/controllers_shared_context.rb +0 -133
  230. data/spec/support/shared/hashing_shared_context.rb +0 -36
  231. data/spec/support/shared/models_shared_examples.rb +0 -54
  232. data/spec/validators/redirect_uri_validator_spec.rb +0 -183
  233. data/spec/version/version_spec.rb +0 -17
data/Appraisals DELETED
@@ -1,40 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- appraise "rails-5-0" do
4
- gem "rails", "~> 5.0.0"
5
- gem "sqlite3", "~> 1.3", "< 1.4", platform: %i[ruby mswin mingw x64_mingw]
6
- end
7
-
8
- appraise "rails-5-1" do
9
- gem "rails", "~> 5.1.0"
10
- gem "sqlite3", "~> 1.3", "< 1.4", platform: %i[ruby mswin mingw x64_mingw]
11
- end
12
-
13
- appraise "rails-5-2" do
14
- gem "rails", "~> 5.2.0"
15
- gem "sqlite3", "~> 1.3", "< 1.4", platform: %i[ruby mswin mingw x64_mingw]
16
- end
17
-
18
- appraise "rails-6-0" do
19
- gem "rails", "~> 6.0.0"
20
- gem "sqlite3", "~> 1.4", platform: %i[ruby mswin mingw x64_mingw]
21
-
22
- # TODO: Remove when rspec-rails 4.0 released
23
- gem "rspec-core", github: "rspec/rspec-core"
24
- gem "rspec-expectations", github: "rspec/rspec-expectations"
25
- gem "rspec-mocks", github: "rspec/rspec-mocks"
26
- gem "rspec-rails", github: "rspec/rspec-rails", branch: "4-0-maintenance"
27
- gem "rspec-support", github: "rspec/rspec-support"
28
- end
29
-
30
- appraise "rails-master" do
31
- gem "rails", git: "https://github.com/rails/rails"
32
- gem "sqlite3", "~> 1.4", platform: %i[ruby mswin mingw x64_mingw]
33
-
34
- # TODO: Remove when rspec-rails 4.0 released
35
- gem "rspec-core", github: "rspec/rspec-core"
36
- gem "rspec-expectations", github: "rspec/rspec-expectations"
37
- gem "rspec-mocks", github: "rspec/rspec-mocks"
38
- gem "rspec-rails", github: "rspec/rspec-rails", branch: "4-0-maintenance"
39
- gem "rspec-support", github: "rspec/rspec-support"
40
- end
@@ -1,46 +0,0 @@
1
- # Contributor Covenant Code of Conduct
2
-
3
- ## Our Pledge
4
-
5
- In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
6
-
7
- ## Our Standards
8
-
9
- Examples of behavior that contributes to creating a positive environment include:
10
-
11
- * Using welcoming and inclusive language
12
- * Being respectful of differing viewpoints and experiences
13
- * Gracefully accepting constructive criticism
14
- * Focusing on what is best for the community
15
- * Showing empathy towards other community members
16
-
17
- Examples of unacceptable behavior by participants include:
18
-
19
- * The use of sexualized language or imagery and unwelcome sexual attention or advances
20
- * Trolling, insulting/derogatory comments, and personal or political attacks
21
- * Public or private harassment
22
- * Publishing others' private information, such as a physical or electronic address, without explicit permission
23
- * Other conduct which could reasonably be considered inappropriate in a professional setting
24
-
25
- ## Our Responsibilities
26
-
27
- Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
28
-
29
- Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
30
-
31
- ## Scope
32
-
33
- This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
34
-
35
- ## Enforcement
36
-
37
- Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team members or current maintainer email, specified in gemspec. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
38
-
39
- Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
40
-
41
- ## Attribution
42
-
43
- This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
44
-
45
- [homepage]: http://contributor-covenant.org
46
- [version]: http://contributor-covenant.org/version/1/4/
@@ -1,49 +0,0 @@
1
- # Contributing
2
-
3
- We love pull requests from everyone. By participating in this project, you agree
4
- to abide by the [code of conduct](CODE_OF_CONDUCT.md).
5
-
6
- Fork, then clone the repo:
7
-
8
- git clone git@github.com:your-username/doorkeeper.git
9
-
10
- ### Docker Setup
11
-
12
- Build the container image with: `docker build --pull -t doorkeeper:test .`
13
- Run the tests with: `docker run -it --rm doorkeeper:test`
14
-
15
- ### Local Setup
16
-
17
- Set up Ruby dependencies via Bundler
18
-
19
- bundle install
20
-
21
- Make sure the tests pass:
22
-
23
- rake
24
-
25
- Make your change.
26
- Write tests.
27
- Follow our [style guide](.rubocop.yml).
28
- Make the tests pass:
29
-
30
- rake
31
-
32
- Add notes on your change to the `CHANGELOG.md` file.
33
-
34
- Write a [good commit message][commit].
35
- Push to your fork.
36
- [Submit a pull request][pr].
37
-
38
- [commit]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
39
- [pr]: https://github.com/doorkeeper-gem/doorkeeper/compare/
40
-
41
- If [Hound] catches style violations, fix them.
42
-
43
- [hound]: https://houndci.com
44
-
45
- Wait for us.
46
- We try to at least comment on pull requests within one business day.
47
- We may suggest changes.
48
-
49
- Thank you for your contribution!
data/Dangerfile DELETED
@@ -1,67 +0,0 @@
1
- CHANGELOG_FILE = 'CHANGELOG.md'
2
- GITHUB_REPO = 'https://github.com/doorkeeper-gem/doorkeeper'
3
-
4
- def changelog_changed?
5
- git.modified_files.include?(CHANGELOG_FILE) || git.added_files.include?(CHANGELOG_FILE)
6
- end
7
-
8
- def changelog_entry_example
9
- pr_number = github.pr_json['number']
10
- pr_title = github.pr_title
11
- .sub(/[?.!,;]?$/, '')
12
- .capitalize
13
-
14
- "- [##{pr_number}] #{pr_title}."
15
- end
16
-
17
- # --------------------------------------------------------------------------------------------------------------------
18
- # Has any changes happened inside the actual library code?
19
- # --------------------------------------------------------------------------------------------------------------------
20
- has_app_changes = !git.modified_files.grep(/lib|app/).empty?
21
- has_spec_changes = !git.modified_files.grep(/spec/).empty?
22
-
23
- # --------------------------------------------------------------------------------------------------------------------
24
- # You've made changes to lib, but didn't write any tests?
25
- # --------------------------------------------------------------------------------------------------------------------
26
- if has_app_changes && !has_spec_changes
27
- warn("There're library changes, but not tests. That's OK as long as you're refactoring existing code.", sticky: false)
28
- end
29
-
30
- # --------------------------------------------------------------------------------------------------------------------
31
- # You've made changes to specs, but no library code has changed?
32
- # --------------------------------------------------------------------------------------------------------------------
33
- if !has_app_changes && has_spec_changes
34
- message('We really appreciate pull requests that demonstrate issues, even without a fix. That said, the next step is to try and fix the failing tests!', sticky: false)
35
- end
36
-
37
- # Mainly to encourage writing up some reasoning about the PR, rather than
38
- # just leaving a title
39
- if github.pr_body.length < 10
40
- fail "Please provide a summary in the Pull Request description"
41
- end
42
-
43
- # --------------------------------------------------------------------------------------------------------------------
44
- # Have you updated CHANGELOG.md?
45
- # --------------------------------------------------------------------------------------------------------------------
46
- # Add a CHANGELOG entry for app changes
47
- if has_app_changes && !changelog_changed?
48
- markdown <<-MARKDOWN
49
- Here's an example of a #{CHANGELOG_FILE} entry:
50
- ```markdown
51
- #{changelog_entry_example}
52
- ```
53
- MARKDOWN
54
-
55
- warn(
56
- "Please include a changelog entry. \nYou can find it at [#{CHANGELOG_FILE}](#{GITHUB_REPO}/blob/master/#{CHANGELOG_FILE})." +
57
- "You can skip this warning only if you made some typo fix or other small changes that didn't affect the API."
58
- )
59
- end
60
-
61
- if git.commits.any? { |commit| commit.message =~ /^Merge branch '#{github.branch_for_base}'/ }
62
- warn('Please rebase to get rid of the merge commits in this PR')
63
- end
64
-
65
- if git.commits.length > 1
66
- warn('Please squash all your commits to a single one')
67
- end
data/Dockerfile DELETED
@@ -1,29 +0,0 @@
1
- FROM ruby:2.6.3-alpine3.9
2
-
3
- RUN apk add --no-cache \
4
- ca-certificates \
5
- wget \
6
- openssl \
7
- bash \
8
- build-base \
9
- git \
10
- sqlite-dev \
11
- tzdata
12
-
13
- ENV LANG en_US.UTF-8
14
- ENV LANGUAGE en_US:en
15
- ENV LC_ALL en_US.UTF-8
16
-
17
- ENV BUNDLER_VERSION 2.0.1
18
- RUN gem install bundler -v ${BUNDLER_VERSION} -i /usr/local/lib/ruby/gems/$(ls /usr/local/lib/ruby/gems) --force
19
-
20
- WORKDIR /srv
21
-
22
- COPY Gemfile doorkeeper.gemspec /srv/
23
- COPY lib/doorkeeper/version.rb /srv/lib/doorkeeper/version.rb
24
-
25
- RUN bundle install
26
-
27
- COPY . /srv/
28
-
29
- CMD ["rake"]
data/Gemfile DELETED
@@ -1,25 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- source "https://rubygems.org"
4
- git_source(:github) { |repo| "https://github.com/#{repo}.git" }
5
-
6
- gemspec
7
-
8
- gem "rails", "~> 6.0.0"
9
-
10
- # TODO: Remove when rspec-rails 4.0 released
11
- gem "rspec-core", github: "rspec/rspec-core"
12
- gem "rspec-expectations", github: "rspec/rspec-expectations"
13
- gem "rspec-mocks", github: "rspec/rspec-mocks"
14
- gem "rspec-rails", "4.0.0.beta3"
15
- gem "rspec-support", github: "rspec/rspec-support"
16
-
17
- gem "rubocop", "~> 0.75"
18
- gem "rubocop-performance"
19
-
20
- gem "bcrypt", "~> 3.1", require: false
21
-
22
- gem "activerecord-jdbcsqlite3-adapter", platform: :jruby
23
- gem "sqlite3", "~> 1.4", platform: %i[ruby mswin mingw x64_mingw]
24
-
25
- gem "tzinfo-data", platforms: %i[mingw mswin x64_mingw]
data/NEWS.md DELETED
@@ -1 +0,0 @@
1
- Document moved [here](CHANGELOG.md)
@@ -1,11 +0,0 @@
1
- # Releasing Doorkeeper
2
-
3
- How to release Doorkeeper in five easy steps!
4
-
5
- 1. Update `lib/doorkeeper/version.rb` file accordingly.
6
- 2. Update `CHANGELOG.md` to reflect the changes since last release.
7
- 3. Commit changes: `git commit -am 'Bump to vVERSION'`.
8
- 4. Build and publish the gem.
9
- 4. Create GitHub release.
10
- 5. Announce the new release, making sure to say “thank you” to the contributors
11
- who helped shape this version!
data/Rakefile DELETED
@@ -1,28 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "bundler/setup"
4
- require "rspec/core/rake_task"
5
-
6
- desc "Default: run specs."
7
- task default: :spec
8
-
9
- desc "Run all specs"
10
- RSpec::Core::RakeTask.new(:spec) do |config|
11
- config.verbose = false
12
- end
13
-
14
- namespace :doorkeeper do
15
- desc "Install doorkeeper in dummy app"
16
- task :install do
17
- cd "spec/dummy"
18
- system "bundle exec rails g doorkeeper:install --force"
19
- end
20
-
21
- desc "Runs local test server"
22
- task :server do
23
- cd "spec/dummy"
24
- system "bundle exec rails server"
25
- end
26
- end
27
-
28
- Bundler::GemHelper.install_tasks
@@ -1,15 +0,0 @@
1
- # Reporting security issues in Doorkeeper
2
-
3
- Hello! Thank you for wanting to disclose a possible security
4
- vulnerability within the Doorkeeper gem! Please follow our disclosure
5
- policy as outlined below:
6
-
7
- 1. Do NOT open up a GitHub issue with your report. Security reports
8
- should be kept private until a possible fix is determined.
9
- 2. Send an email to Nikita Bulai at bulaj.nikita AT gmail.com or one of
10
- the others Doorkeeper maintainers listed in gemspec. You should receive
11
- a prompt response.
12
- 3. Be patient. Since Doorkeeper is in a stable maintenance phase, we want to
13
- do as little as possible to rock the boat of the project.
14
-
15
- Thank you very much for adhering for these policies!
data/UPGRADE.md DELETED
@@ -1,2 +0,0 @@
1
- See [Upgrade Guides](https://github.com/doorkeeper-gem/doorkeeper/wiki/Migration-from-old-versions)
2
- in the project Wiki.
@@ -1,16 +0,0 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- require "bundler/setup"
5
- require "rails/all"
6
- require "doorkeeper"
7
-
8
- # You can add fixtures and/or initialization code here to make experimenting
9
- # with your gem easier. You can also use a different console, if you like.
10
-
11
- # (If you use this, don't forget to add pry to your Gemfile!)
12
- # require "pry"
13
- # Pry.start
14
-
15
- require "irb"
16
- IRB.start(__FILE__)
@@ -1,42 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- $LOAD_PATH.push File.expand_path("lib", __dir__)
4
-
5
- require "doorkeeper/version"
6
-
7
- Gem::Specification.new do |gem|
8
- gem.name = "doorkeeper"
9
- gem.version = Doorkeeper.gem_version
10
- gem.authors = ["Felipe Elias Philipp", "Tute Costa", "Jon Moss", "Nikita Bulai"]
11
- gem.email = %w[bulaj.nikita@gmail.com]
12
- gem.homepage = "https://github.com/doorkeeper-gem/doorkeeper"
13
- gem.summary = "OAuth 2 provider for Rails and Grape"
14
- gem.description = "Doorkeeper is an OAuth 2 provider for Rails and Grape."
15
- gem.license = "MIT"
16
-
17
- gem.files = `git ls-files`.split("\n").reject { |file| file.start_with?(".") }
18
- gem.test_files = `git ls-files -- spec/*`.split("\n")
19
- gem.require_paths = ["lib"]
20
-
21
- gem.metadata = {
22
- "homepage_uri" => "https://github.com/doorkeeper-gem/doorkeeper",
23
- "changelog_uri" => "https://github.com/doorkeeper-gem/doorkeeper/blob/master/CHANGELOG.md",
24
- "source_code_uri" => "https://github.com/doorkeeper-gem/doorkeeper",
25
- "bug_tracker_uri" => "https://github.com/doorkeeper-gem/doorkeeper/issues",
26
- "documentation_uri" => "https://doorkeeper.gitbook.io/guides/",
27
- }
28
-
29
- gem.add_dependency "railties", ">= 5"
30
- gem.required_ruby_version = ">= 2.4"
31
-
32
- gem.add_development_dependency "appraisal"
33
- gem.add_development_dependency "capybara"
34
- gem.add_development_dependency "coveralls"
35
- gem.add_development_dependency "danger", "~> 6.0"
36
- gem.add_development_dependency "database_cleaner", "~> 1.6"
37
- gem.add_development_dependency "factory_bot", "~> 5.0"
38
- gem.add_development_dependency "generator_spec", "~> 0.9.3"
39
- gem.add_development_dependency "grape"
40
- gem.add_development_dependency "rake", ">= 11.3.0"
41
- gem.add_development_dependency "rspec-rails"
42
- end
@@ -1,18 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails", "~> 5.0.0"
6
- gem "rspec-core", git: "https://github.com/rspec/rspec-core.git"
7
- gem "rspec-expectations", git: "https://github.com/rspec/rspec-expectations.git"
8
- gem "rspec-mocks", git: "https://github.com/rspec/rspec-mocks.git"
9
- gem "rspec-rails", "4.0.0.beta3"
10
- gem "rspec-support", git: "https://github.com/rspec/rspec-support.git"
11
- gem "rubocop", "~> 0.75"
12
- gem "rubocop-performance"
13
- gem "bcrypt", "~> 3.1", require: false
14
- gem "activerecord-jdbcsqlite3-adapter", platform: :jruby
15
- gem "sqlite3", "~> 1.3", "< 1.4", platform: [:ruby, :mswin, :mingw, :x64_mingw]
16
- gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw]
17
-
18
- gemspec path: "../"
@@ -1,18 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails", "~> 5.1.0"
6
- gem "rspec-core", git: "https://github.com/rspec/rspec-core.git"
7
- gem "rspec-expectations", git: "https://github.com/rspec/rspec-expectations.git"
8
- gem "rspec-mocks", git: "https://github.com/rspec/rspec-mocks.git"
9
- gem "rspec-rails", "4.0.0.beta3"
10
- gem "rspec-support", git: "https://github.com/rspec/rspec-support.git"
11
- gem "rubocop", "~> 0.75"
12
- gem "rubocop-performance"
13
- gem "bcrypt", "~> 3.1", require: false
14
- gem "activerecord-jdbcsqlite3-adapter", platform: :jruby
15
- gem "sqlite3", "~> 1.3", "< 1.4", platform: [:ruby, :mswin, :mingw, :x64_mingw]
16
- gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw]
17
-
18
- gemspec path: "../"
@@ -1,18 +0,0 @@
1
- # This file was generated by Appraisal
2
-
3
- source "https://rubygems.org"
4
-
5
- gem "rails", "~> 5.2.0"
6
- gem "rspec-core", git: "https://github.com/rspec/rspec-core.git"
7
- gem "rspec-expectations", git: "https://github.com/rspec/rspec-expectations.git"
8
- gem "rspec-mocks", git: "https://github.com/rspec/rspec-mocks.git"
9
- gem "rspec-rails", "4.0.0.beta3"
10
- gem "rspec-support", git: "https://github.com/rspec/rspec-support.git"
11
- gem "rubocop", "~> 0.75"
12
- gem "rubocop-performance"
13
- gem "bcrypt", "~> 3.1", require: false
14
- gem "activerecord-jdbcsqlite3-adapter", platform: :jruby
15
- gem "sqlite3", "~> 1.3", "< 1.4", platform: [:ruby, :mswin, :mingw, :x64_mingw]
16
- gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw]
17
-
18
- gemspec path: "../"