rodauth 2.34.0 → 2.35.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +10 -0
- data/README.rdoc +4 -4
- data/doc/guides/render_confirmation.rdoc +1 -1
- data/doc/login.rdoc +2 -2
- data/doc/release_notes/2.35.0.txt +22 -0
- data/lib/rodauth/features/active_sessions.rb +1 -1
- data/lib/rodauth/features/base.rb +5 -1
- data/lib/rodauth/features/internal_request.rb +14 -4
- data/lib/rodauth/version.rb +1 -1
- data/lib/rodauth.rb +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f2b961b8668976f18f46df1c499c1c8f101e75a76527feef460419ad71d7d15b
|
4
|
+
data.tar.gz: 446184720914538cd207b90cb0d6b9e484eadb12559be84f117532aed5d1cf87
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 548c5f50659441297116a0343d2cf2160a8f54ec7c0f7b87867e6377bf9165a53db9b69802f2573343031a26c073ef3e4d0e4358163a97686511b32448f05f5f
|
7
|
+
data.tar.gz: bf33b84dcb33a6f5cb54f4df2f4561d57d74cc91040032d3eee58e72dbdedad618b726daff2341e91f4350a451b816f719c836f6211acfe20ffaecb879e736d5
|
data/CHANGELOG
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
=== 2.35.0 (2025-05-28)
|
2
|
+
|
3
|
+
* Handle internal_request_configuration blocks in superclasses (jeremyevans, bjeanes)
|
4
|
+
|
5
|
+
* Avoid unused block warning on Ruby 3.4 (jeremyevans)
|
6
|
+
|
7
|
+
* Add throw_rodauth_error method to make it possible to throw without setting a field error (jf) (#418)
|
8
|
+
|
9
|
+
* Support logging out all active sessions for a loaded account that is not logged in (such as after resetting password) (enescakir) (#401)
|
10
|
+
|
1
11
|
=== 2.34.0 (2024-03-22)
|
2
12
|
|
3
13
|
* Add remove_all_active_sessions_except_current method for removing current active session (jeremyevans) (#395)
|
data/README.rdoc
CHANGED
@@ -338,10 +338,10 @@ PostgreSQL sets up new tables in the public schema by default.
|
|
338
338
|
If you would like to use separate schemas per user, you can do:
|
339
339
|
|
340
340
|
psql -U postgres -c "DROP SCHEMA public;" ${DATABASE_NAME}
|
341
|
-
psql -U postgres -c "CREATE SCHEMA
|
342
|
-
psql -U postgres -c "CREATE SCHEMA
|
343
|
-
psql -U postgres -c "GRANT USAGE ON SCHEMA ${DATABASE_NAME}
|
344
|
-
psql -U postgres -c "GRANT USAGE ON SCHEMA ${DATABASE_NAME}_password TO ${DATABASE_NAME};"
|
341
|
+
psql -U postgres -c "CREATE SCHEMA AUTHORIZATION ${DATABASE_NAME};" ${DATABASE_NAME}
|
342
|
+
psql -U postgres -c "CREATE SCHEMA AUTHORIZATION ${DATABASE_NAME}_password;" ${DATABASE_NAME}
|
343
|
+
psql -U postgres -c "GRANT USAGE ON SCHEMA ${DATABASE_NAME} TO ${DATABASE_NAME}_password;" ${DATABASE_NAME}
|
344
|
+
psql -U postgres -c "GRANT USAGE ON SCHEMA ${DATABASE_NAME}_password TO ${DATABASE_NAME};" ${DATABASE_NAME}
|
345
345
|
|
346
346
|
You'll need to modify the code to load the extension to specify the schema:
|
347
347
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
= Render confirmation view
|
2
2
|
|
3
|
-
Most Rodauth actions redirect and display a flash notice after they're
|
3
|
+
Most Rodauth actions redirect and display a flash notice after they're successfully performed. However, in some cases you may wish to render a view confirming that the action was successful, for nicer user experience.
|
4
4
|
|
5
5
|
For example, when the user creates an account, you might render a page with a call to action to verify their account. Assuming you've created an +account_created+ view template alongside your other Rodauth templates, you can configure the following:
|
6
6
|
|
data/doc/login.rdoc
CHANGED
@@ -14,9 +14,8 @@ location.
|
|
14
14
|
|
15
15
|
login_additional_form_tags :: HTML fragment containing additional form tags to use on the login form.
|
16
16
|
login_button :: The text to use for the login button.
|
17
|
-
login_error_flash :: The flash error to show for an
|
17
|
+
login_error_flash :: The flash error to show for an unsuccessful login.
|
18
18
|
login_error_status :: The response status to use when using an invalid login or password to login, 401 by default.
|
19
|
-
login_form_footer :: A message to display after the login form.
|
20
19
|
login_form_footer_links :: An array of entries for links to show on the login page. Each entry is an array of three elements, sort order (integer), link href, and link text.
|
21
20
|
login_form_footer_links_heading :: A heading to show before the login form footer links.
|
22
21
|
login_notice_flash :: The flash notice to show after successful login.
|
@@ -33,6 +32,7 @@ use_multi_phase_login? :: Whether to ask for login first, and only ask for passw
|
|
33
32
|
== Auth Methods
|
34
33
|
|
35
34
|
before_login_route :: Run arbitrary code before handling a login route.
|
35
|
+
login_form_footer :: A message to display after the login form.
|
36
36
|
login_response :: Return a response after a successful login. By default, redirects to +login_redirect+ (or the requested location if +login_return_to_requested_location?+ is true).
|
37
37
|
login_return_to_requested_location_path :: If +login_return_to_requested_location?+ is true, the path to use as the requested location. By default, uses the full path of the request for GET requests, and is nil for non-GET requests (in which case the default +login_redirect+ will be used).
|
38
38
|
login_view :: The HTML to use for the login form.
|
@@ -0,0 +1,22 @@
|
|
1
|
+
= New Features
|
2
|
+
|
3
|
+
* A throw_rodauth_error method has been added to make it easier
|
4
|
+
for external extensions to throw the expected error value without
|
5
|
+
setting a field error.
|
6
|
+
|
7
|
+
= Improvements
|
8
|
+
|
9
|
+
* If an account is not currently logged in, but Rodauth knows the
|
10
|
+
related account id, remove_all_active_sessions and related
|
11
|
+
methods in the active_sessions plugin will now remove sessions
|
12
|
+
for the related account.
|
13
|
+
|
14
|
+
* When using the internal_request feature and subclasses,
|
15
|
+
internal_request_configuration blocks in superclasses are now
|
16
|
+
respected when creating the internal request class for a
|
17
|
+
subclass. When creating the internal request in the subclass,
|
18
|
+
this behaves as if all internal_request_configuration blocks
|
19
|
+
were specified directly in the subclass.
|
20
|
+
|
21
|
+
* An ignored block warning on Ruby 3.4 is now avoided by having
|
22
|
+
Rodauth.load_dependencies accept a block.
|
@@ -643,9 +643,13 @@ module Rodauth
|
|
643
643
|
set_response_error_status(status)
|
644
644
|
end
|
645
645
|
|
646
|
+
def throw_rodauth_error
|
647
|
+
throw :rodauth_error
|
648
|
+
end
|
649
|
+
|
646
650
|
def throw_error(field, error)
|
647
651
|
set_field_error(field, error)
|
648
|
-
|
652
|
+
throw_rodauth_error
|
649
653
|
end
|
650
654
|
|
651
655
|
def throw_error_status(status, field, error)
|
@@ -384,16 +384,26 @@ module Rodauth
|
|
384
384
|
|
385
385
|
return if is_a?(InternalRequestMethods)
|
386
386
|
|
387
|
+
superklasses = []
|
388
|
+
superklass = self.class
|
389
|
+
until superklass == Rodauth::Auth
|
390
|
+
superklasses << superklass
|
391
|
+
superklass = superklass.superclass
|
392
|
+
end
|
393
|
+
|
387
394
|
klass = self.class
|
388
395
|
internal_class = Class.new(klass)
|
389
396
|
internal_class.instance_variable_set(:@configuration_name, klass.configuration_name)
|
397
|
+
configuration = internal_class.configuration
|
390
398
|
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
399
|
+
superklasses.reverse_each do |superklass|
|
400
|
+
if blocks = superklass.instance_variable_get(:@internal_request_configuration_blocks)
|
401
|
+
blocks.each do |block|
|
402
|
+
configuration.instance_exec(&block)
|
403
|
+
end
|
395
404
|
end
|
396
405
|
end
|
406
|
+
|
397
407
|
internal_class.send(:extend, InternalRequestClassMethods)
|
398
408
|
internal_class.send(:include, InternalRequestMethods)
|
399
409
|
internal_class.allocate.post_configure
|
data/lib/rodauth/version.rb
CHANGED
data/lib/rodauth.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rodauth
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.35.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeremy Evans
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-05-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: sequel
|
@@ -352,6 +352,7 @@ extra_rdoc_files:
|
|
352
352
|
- doc/release_notes/2.32.0.txt
|
353
353
|
- doc/release_notes/2.33.0.txt
|
354
354
|
- doc/release_notes/2.34.0.txt
|
355
|
+
- doc/release_notes/2.35.0.txt
|
355
356
|
- doc/release_notes/2.4.0.txt
|
356
357
|
- doc/release_notes/2.5.0.txt
|
357
358
|
- doc/release_notes/2.6.0.txt
|
@@ -474,6 +475,7 @@ files:
|
|
474
475
|
- doc/release_notes/2.32.0.txt
|
475
476
|
- doc/release_notes/2.33.0.txt
|
476
477
|
- doc/release_notes/2.34.0.txt
|
478
|
+
- doc/release_notes/2.35.0.txt
|
477
479
|
- doc/release_notes/2.4.0.txt
|
478
480
|
- doc/release_notes/2.5.0.txt
|
479
481
|
- doc/release_notes/2.6.0.txt
|
@@ -634,7 +636,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
634
636
|
- !ruby/object:Gem::Version
|
635
637
|
version: '0'
|
636
638
|
requirements: []
|
637
|
-
rubygems_version: 3.5.
|
639
|
+
rubygems_version: 3.5.9
|
638
640
|
signing_key:
|
639
641
|
specification_version: 4
|
640
642
|
summary: Authentication and Account Management Framework for Rack Applications
|