Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release/v3.1.0 #129

Merged
merged 12 commits into from
Nov 18, 2024
18 changes: 10 additions & 8 deletions .rubocop_gradual.lock
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
{
"README.md:517414065": [
"README.md:1323834265": [
[232, 3, 100, "Style/ClassMethodsDefinitions: Use `class << self` to define a class method.", 3592044714]
],
"lib/omniauth/identity/model.rb:3893215304": [
[26, 7, 310, "Style/ClassMethodsDefinitions: Use `class << self` to define a class method.", 2741399784],
[51, 11, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525],
[52, 11, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525],
[52, 40, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525],
[52, 54, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525],
[54, 11, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525]
"bin/bundle:247448467": [
[64, 5, 20, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 2485198147]
],
"lib/omniauth/identity/model.rb:1162570792": [
[53, 11, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525],
[54, 11, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525],
[54, 40, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525],
[54, 54, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525],
[56, 11, 9, "ThreadSafety/ClassInstanceVariable: Avoid class instance variables.", 4045031525]
],
"lib/omniauth/identity/models/active_record.rb:1552301885": [
[19, 9, 113, "Style/ClassMethodsDefinitions: Use `class << self` to define a class method.", 2104861380],
Expand Down
163 changes: 109 additions & 54 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,125 +1,123 @@
# Changelog

All notable changes to this project will be documented in this file.
All notable changes to this project since v2.0 will be documented in this file.


The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
The format is based on [Keep a Changelog v1](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning v2](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [3.0.9] - 2021-06-16

### Added
### Changed
### Fixed
### Removed

## [3.1.0] - 2024-11-18 ([tag][3.1.0t])
- COVERAGE: 91.98% -- 344/374 lines in 15 files
- BRANCH COVERAGE: 80.26% -- 61/76 branches in 15 files
- 44.44% documented
### Added
- [PR #123][123] Improve readability in #identity method of OmniAuth::Strategies::Identity by @Xeragus
- [PR #124][124] Modernized gem structure, and updated dependencies for development by @pboling
- Gem releases are now cryptographically signed
- All ORM adapters (except NoBrainer) are tested in CI
- [PR #127][127] Improved documentation by @pboling
- [PR #128][128] Instructions for contributing by @pboling
### Changed
- Deprecate `require 'omniauth/identity'` by @pboling
- in favor of `require omniauth-identity` (matching the gem name)
### Fixed
- [PR #120][120] Fix: handling of SCRIPT_NAME for registration_path by @btalbot
- [PR #122][122] Compatibility with rack v3.1+: use `req.params[]` instead of `req[]` by @emon
- See: https://github.com/rack/rack/pull/2183

[128]: https://github.com/omniauth/omniauth-identity/pull/128
[127]: https://github.com/omniauth/omniauth-identity/pull/127
[124]: https://github.com/omniauth/omniauth-identity/pull/124
[123]: https://github.com/omniauth/omniauth-identity/pull/123
[122]: https://github.com/omniauth/omniauth-identity/pull/122
[120]: https://github.com/omniauth/omniauth-identity/pull/120

## [3.0.9] - 2021-06-16 ([tag][3.0.9t])
### Fixed
- \[Sequel\] Fixes loading the Sequel adapter, issue reported as [#112](https://github.com/omniauth/omniauth-identity/issues/112)

### Added

- 📝 Document the Database adapters and drivers the gem currently works with

## [3.0.8] - 2021-03-24

## [3.0.8] - 2021-03-24 ([tag][3.0.8t])
### Fixed

- \[Model\] Fixes 2 issues raised in a comment on PR [#108](https://github.com/omniauth/omniauth-identity/pull/108#issuecomment-804456604)
- When `options[:on_validation]` is set `new`/`save`/`persisted?` logic is used.
- When `options[:on_validation]` is not set `create`/`persisted?` logic is used.

## [3.0.7] - 2021-03-23

## [3.0.7] - 2021-03-23 ([tag][3.0.7t])
### Fixed

- \[ActiveRecord\] Fixed [#110](https://github.com/omniauth/omniauth-identity/issues/110) which prevented `OmniAuth::Identity::Models::ActiveRecord`-based records from saving.
- \[CouchPotato\] Fixed `OmniAuth::Identity::Models::CouchPotato`'s `#save`.
- \[Sequel\] Fixed `OmniAuth::Identity::Models::Sequel`'s `#save`.
- \[Model\] Only define `::create`, `#save`, and `#persisted?` when not already defined.
- \[Model\] Restore original `info` functionality which set `name` based on `first_name`, `last_name`, or `nickname`

### Changed

- Upgraded to a newer `OmniAuth::Identity::SecurePassword` ripped from [Rails 6-1-stable](https://github.com/rails/rails/blob/6-1-stable/activemodel/lib/active_model/secure_password.rb)
- Aeons ago the original was ripped from Rails 3.1, and frozen in time.
While writing specs, it was discovered to be incompatible with this gem's Sequel adapter.
- Specs validate that the new version does work.
In any case, the ripped version is only used when the `has_secure_password` macro is not yet defined in the class.

### Added

- New specs to cover real use cases and implementations of each ORM model adapter that ships with the gem:
- ActiveRecord (Polyglot - Many Relational Databases)
- Sequel (Polyglot - Many Relational Databases)
- CouchPotato (CouchDB)
- Mongoid (MongoDB)
- NoBrainer (RethinkDB)

## [3.0.6] - 2021-03-20

## [3.0.6] - 2021-03-20 ([tag][3.0.6t])
### Fixed

- Fix breaking changes introduced by [#108](https://github.com/omniauth/omniauth-identity/pull/108) which prevented `:on_validation` from firing

### Added

- New (or finally documented) options:
- `:create_identity_link_text` defaults to `'Create an Identity'`
- `:registration_failure_message` defaults to `'One or more fields were invalid'`
- `:validation_failure_message` defaults to `'Validation failed'`
- `:title` defaults to `'Identity Verification'`
- `:registration_form_title` defaults to `'Register Identity'`

## [3.0.5] - 2021-03-19

## [3.0.5] - 2021-03-19 ([tag][3.0.5t])
### Fixed

- Fix breaking changes introduced by [#86's](https://github.com/omniauth/omniauth-identity/pull/86) introduction of `:on_validation`

### Added

- Define `#save`, `#persisted?` and `::create` on `Omniauth::Identity::Model`
- Add `@since` YARD tags to interface methods
- Refactor `Omniauth::Strategies::Identity.registration_phase` to support `Omniauth::Identity::Model`-inheriting classes that do not define `#save`.
- This support will be dropped in v4.0.

## [3.0.4] - 2021-02-14

## [3.0.4] - 2021-02-14 ([tag][3.0.4t])
### Added

- Add support for [sequel ORM](http://sequel.jeremyevans.net/)

## [3.0.3] - 2021-02-14

## [3.0.3] - 2021-02-14 ([tag][3.0.3t])
### Added

- Add option `:on_validation`, which can be used to add a Captcha
- See [example here](https://github.com/omniauth/omniauth-identity/pull/86#issue-63225122)
- Add support for nobrainer, an ORM for RethinkDB
- Validation error message on invalid registration form submission

### Removed

- ruby-head build... simply too slow

## [3.0.2] - 2021-02-14

## [3.0.2] - 2021-02-14 ([tag][3.0.2t])
### Fixed

- Github Actions CI Build for Ruby 2.4, 3.0 and ruby-head
- Updated copyright
- Code style cleanup
- Added Code Climate "Quality"
- Updated Readme

## [3.0.1] - 2021-02-14

## [3.0.1] - 2021-02-14 ([tag][3.0.1t])
### Fixed

- Github Actions CI Build for various Rubies

## [3.0] - 2021-02-13

## [3.0.0] - 2021-02-13 ([tag][3.0.0t])
### Added

- Compatibility with Ruby 3
- Add option `:enable_login` to bypass OmniAuth disabling of GET method (default `true`)
- NOTE: This restores compatibility between this gem and the current, core, omniauth gem!
Expand All @@ -130,22 +128,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Minimum Ruby version = 2.4
- Automatically adds "provider" => "identity" when "provider" column is detected
- Documentation in README.md

### Removed

- Support for Rubies < 2.4
- Support for DataMapper, which died long ago.
- Unwanted git artifacts

## [2.0] - 2020-09-01

## [2.0.0] - 2020-09-01 ([tag][2.0.0t])
### Added

- CHANGELOG to maintain a history of changes.
- Include mongoid-rspec gem.

### Changed

- Fix failing Specs
- Update Spec syntax to RSpec 3
- Fix deprecation Warnings
Expand All @@ -154,7 +146,70 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Dependency version limits so that the most up-to-date gem dependencies are used. (rspec 3+, mongo 2+, mongoid 7+, rake 13+, rack 2+, json 2+)
- Updated copyright information.
- Updated MongoMapper section of README to reflect its discontinued support.

### Removed
- Gemfile.lock file
- MongoMapper support; unable to satisfy dependencies of both MongoMapper and Mongoig now that MongoMapper is no longer actively maintained.
- MongoMapper support; unable to satisfy dependencies of both MongoMapper and Mongoid now that MongoMapper is no longer actively maintained.

[Unreleased]: https://github.com/omniauth/omniauth-identity/compare/v3.1.0...HEAD
[3.1.0]: https://github.com/omniauth/omniauth-identity/compare/v3.0.9...v3.1.0
[3.1.0t]: https://github.com/omniauth/omniauth-identity/tags/v3.1.0
[3.0.9]: https://github.com/omniauth/omniauth-identity/compare/v3.0.8...v3.0.9
[3.0.9t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.9
[3.0.8]: https://github.com/omniauth/omniauth-identity/compare/v3.0.7...v3.0.8
[3.0.8t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.8
[3.0.7]: https://github.com/omniauth/omniauth-identity/compare/v3.0.6...v3.0.7
[3.0.7t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.7
[3.0.6]: https://github.com/omniauth/omniauth-identity/compare/v3.0.5...v3.0.6
[3.0.6t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.6
[3.0.5]: https://github.com/omniauth/omniauth-identity/compare/v3.0.4...v3.0.5
[3.0.5t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.5
[3.0.4]: https://github.com/omniauth/omniauth-identity/compare/v3.0.3...v3.0.4
[3.0.4t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.4
[3.0.3]: https://github.com/omniauth/omniauth-identity/compare/v3.0.2...v3.0.3
[3.0.3t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.3
[3.0.2]: https://github.com/omniauth/omniauth-identity/compare/v3.0.1...v3.0.2
[3.0.2t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.2
[3.0.1]: https://github.com/omniauth/omniauth-identity/compare/v3.0.0...v3.0.1
[3.0.1t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.1
[3.0.0]: https://github.com/omniauth/omniauth-identity/compare/v2.0.0...v3.0.0
[3.0.0t]: https://github.com/omniauth/omniauth-identity/tags/v3.0.0
[2.0.0]: https://github.com/omniauth/omniauth-identity/compare/v1.1.1...v2.0.0
[2.0.0t]: https://github.com/omniauth/omniauth-identity/tags/v2.0.0
[1.1.1]: https://github.com/omniauth/omniauth-identity/compare/v1.1.0...v1.1.1
[1.1.1t]: https://github.com/omniauth/omniauth-identity/tags/v1.1.1
[1.1.0]: https://github.com/omniauth/omniauth-identity/compare/v1.0.0...v1.1.0
[1.1.0t]: https://github.com/omniauth/omniauth-identity/tags/v1.0.0
[1.0.0]: https://github.com/omniauth/omniauth-identity/compare/v0.3.0...v1.0.0
[1.0.0t]: https://github.com/omniauth/omniauth-identity/tags/v1.0.0
[0.3.0]: https://github.com/omniauth/omniauth-identity/compare/v0.2.6...v0.3.0
[0.3.0t]: https://github.com/omniauth/omniauth-identity/tags/v0.3.0
[0.2.6]: https://github.com/omniauth/omniauth-identity/compare/v0.2.5...v0.2.6
[0.2.6t]: https://github.com/omniauth/omniauth-identity/tags/v0.2.6
[0.2.5]: https://github.com/omniauth/omniauth-identity/compare/v0.2.4...v0.2.5
[0.2.5t]: https://github.com/omniauth/omniauth-identity/tags/v0.2.5
[0.2.4]: https://github.com/omniauth/omniauth-identity/compare/v0.2.3...v0.2.4
[0.2.4t]: https://github.com/omniauth/omniauth-identity/tags/v0.2.5
[0.2.3]: https://github.com/omniauth/omniauth-identity/compare/v0.2.2...v0.2.3
[0.2.3t]: https://github.com/omniauth/omniauth-identity/tags/v0.2.3
[0.2.2]: https://github.com/omniauth/omniauth-identity/compare/v0.2.1...v0.2.2
[0.2.2t]: https://github.com/omniauth/omniauth-identity/tags/v0.2.2
[0.2.1]: https://github.com/omniauth/omniauth-identity/compare/v0.2.0...v0.2.1
[0.2.1t]: https://github.com/omniauth/omniauth-identity/tags/v0.2.1
[0.2.0]: https://github.com/omniauth/omniauth-identity/compare/v0.1.6...v0.2.0
[0.2.0t]: https://github.com/omniauth/omniauth-identity/tags/v0.2.0
[0.1.6]: https://github.com/omniauth/omniauth-identity/compare/v0.1.5...v0.1.6
[0.1.6t]: https://github.com/omniauth/omniauth-identity/tags/v0.1.6
[0.1.5]: https://github.com/omniauth/omniauth-identity/compare/v0.1.4...v0.1.5
[0.1.5t]: https://github.com/omniauth/omniauth-identity/tags/v0.1.5
[0.1.4]: https://github.com/omniauth/omniauth-identity/compare/v0.1.3...v0.1.4
[0.1.4t]: https://github.com/omniauth/omniauth-identity/tags/v0.1.4
[0.1.3]: https://github.com/omniauth/omniauth-identity/compare/v0.1.1...v0.1.3
[0.1.3t]: https://github.com/omniauth/omniauth-identity/tags/v0.1.3
[0.1.1]: https://github.com/omniauth/omniauth-identity/compare/v0.0.4...v0.1.1
[0.1.1t]: https://github.com/omniauth/omniauth-identity/tags/v0.1.1
[0.0.4]: https://github.com/omniauth/omniauth-identity/compare/v0.0.3...v0.0.4
[0.0.4t]: https://github.com/omniauth/omniauth-identity/tags/v0.0.4
[0.0.3]: https://github.com/omniauth/omniauth-identity/compare/v0.0.1...v0.0.3
[0.0.3t]: https://github.com/omniauth/omniauth-identity/tags/v0.0.3
[0.0.1]: https://github.com/omniauth/omniauth-identity/compare/be7b50aafea590caae6dc9dce550a96b997773cd...v0.0.1
[0.0.1t]: https://github.com/omniauth/omniauth-identity/tags/v0.0.1
Loading
Loading