bearcat 1.5.19 → 1.5.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 349200e5b396d03d325a41b8005a62d3dd9f84011bffd24f7a0cdc7a27938d23
4
- data.tar.gz: b9a4ffe170514f6d1c65d296ebacc7098fcfd85502be6621941edc91e5dde69f
3
+ metadata.gz: d2ea870d3a7bb8cdeb58bd8e6368cff091f899cad82ca0a281420f486bdce146
4
+ data.tar.gz: 72a19e68aa2f7552e236d0c1394a09da1c13ee3c4d3c46f855bda079bbd2ed10
5
5
  SHA512:
6
- metadata.gz: 6da4c3b3c8cc79ae6ef026dd964360af049ab19c6cb6f9b4000a58b6c91cef80a0f9982482f63aa49317eace561a932e555f0508c73625e142003145a1da0dfc
7
- data.tar.gz: f7d9050559136046b95ea62aff119048842b92adfb000e1c043f4ee3b9607bbd4cfc232e6e06bc3c1fc6032cd0946f40b79c9692c1fa354cb5a0f6aa6482a53e
6
+ metadata.gz: 2ecf40965df234339c110c57e37e7290a48c397dbe2e096c94dae938f3b85dbfd4e7f0f127daa230dd668e0ba93dc4b9eb177501eb2226e9d5d79c978356fa4e
7
+ data.tar.gz: dbd0b9f3e1103d4ea9bc650176d3866be0beadcbe3b3190ea504b88fc96396cd86b2fe654b119ed2c5ea87a8ddcd18d618d7fdd60f5fee48ae8a401dca4f8d05
@@ -21,6 +21,14 @@ module Bearcat
21
21
  get :dashboard_positions, "dashboard_positions"
22
22
  put :update_dashboard_positions, "dashboard_positions"
23
23
  end
24
+
25
+ prefix "self/" do
26
+ get :course_nicknames, "course_nicknames?as_user_id=:user"
27
+ get :course_nickname, "course_nicknames/:course?as_user_id=:user"
28
+ put :set_course_nickname, "course_nicknames/:course?as_user_id=:user"
29
+ delete :delete_course_nickname, "course_nicknames/:course?as_user_id=:user"
30
+ delete :clear_course_nickname, "course_nicknames?as_user_id=:user"
31
+ end
24
32
  end
25
33
 
26
34
  # scope: food
@@ -1,3 +1,3 @@
1
1
  module Bearcat
2
- VERSION = '1.5.19' unless defined?(Bearcat::VERSION)
2
+ VERSION = '1.5.20' unless defined?(Bearcat::VERSION)
3
3
  end
@@ -4,7 +4,7 @@ require 'sidekiq'
4
4
 
5
5
  describe Bearcat::RateLimiting do
6
6
  let!(:subject) { Bearcat::RateLimiting::RedisLimiter.new }
7
- let!(:client) { Bearcat::Client.new(rate_limiter: subject, token: SecureRandom.hex) }
7
+ let!(:client) { Bearcat::Client.new(prefix: "http://canvas.instructure.com", rate_limiter: subject, token: SecureRandom.hex) }
8
8
  let!(:token) { client.send(:rate_limit_key) }
9
9
 
10
10
  def fillup(count, rate: 100)
@@ -4,7 +4,7 @@ require 'bearcat/spec_helpers'
4
4
 
5
5
  describe Bearcat::SpecHelpers do
6
6
  include Bearcat::SpecHelpers
7
- let!(:client) { Bearcat::Client.new(token: SecureRandom.hex) }
7
+ let!(:client) { Bearcat::Client.new(prefix: "http://canvas.instructure.com", token: SecureRandom.hex) }
8
8
 
9
9
  describe "#stub_bearcat" do
10
10
  it "works as expected" do
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bearcat
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.19
4
+ version: 1.5.20
5
5
  platform: ruby
6
6
  authors:
7
7
  - Instructure CustomDev
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-10 00:00:00.000000000 Z
11
+ date: 2024-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -206,7 +206,6 @@ files:
206
206
  - lib/bearcat/client/users.rb
207
207
  - lib/bearcat/client_module.rb
208
208
  - lib/bearcat/rate_limiting.rb
209
- - lib/bearcat/rate_limiting/functions.lua
210
209
  - lib/bearcat/rate_limiting/increment_bucket.lua
211
210
  - lib/bearcat/rate_limiting/redis_script.rb
212
211
  - lib/bearcat/redis_connection.rb
@@ -413,10 +412,10 @@ files:
413
412
  - spec/fixtures/user_page_views.json
414
413
  - spec/fixtures/user_profile.json
415
414
  - spec/helper.rb
416
- homepage:
415
+ homepage:
417
416
  licenses: []
418
417
  metadata: {}
419
- post_install_message:
418
+ post_install_message:
420
419
  rdoc_options: []
421
420
  require_paths:
422
421
  - lib
@@ -431,199 +430,199 @@ required_rubygems_version: !ruby/object:Gem::Requirement
431
430
  - !ruby/object:Gem::Version
432
431
  version: '0'
433
432
  requirements: []
434
- rubygems_version: 3.1.6
435
- signing_key:
433
+ rubygems_version: 3.5.4
434
+ signing_key:
436
435
  specification_version: 4
437
436
  summary: Canvas API
438
437
  test_files:
439
- - spec/bearcat_spec.rb
440
- - spec/helper.rb
441
- - spec/bearcat/client_spec.rb
442
438
  - spec/bearcat/api_array_spec.rb
443
- - spec/bearcat/client/external_tools_spec.rb
444
- - spec/bearcat/client/groups_spec.rb
445
- - spec/bearcat/client/outcomes_spec.rb
446
- - spec/bearcat/client/submissions_spec.rb
447
- - spec/bearcat/client/sections_spec.rb
439
+ - spec/bearcat/client/accounts_spec.rb
440
+ - spec/bearcat/client/analytics_spec.rb
441
+ - spec/bearcat/client/assignment_groups_spec.rb
442
+ - spec/bearcat/client/assignments_spec.rb
448
443
  - spec/bearcat/client/blueprint_courses_spec.rb
449
- - spec/bearcat/client/outcome_groups_spec.rb
450
- - spec/bearcat/client/quizzes_spec.rb
444
+ - spec/bearcat/client/calendar_events_spec.rb
445
+ - spec/bearcat/client/canvas_files_spec.rb
451
446
  - spec/bearcat/client/conferences_spec.rb
452
- - spec/bearcat/client/search_spec.rb
453
- - spec/bearcat/client/reports_spec.rb
454
- - spec/bearcat/client/group_categories_spec.rb
447
+ - spec/bearcat/client/content_exports_spec.rb
455
448
  - spec/bearcat/client/content_migrations_spec.rb
456
- - spec/bearcat/client/assignments_spec.rb
449
+ - spec/bearcat/client/conversations_spec.rb
450
+ - spec/bearcat/client/courses_spec.rb
451
+ - spec/bearcat/client/custom_gradebook_columns_spec.rb
452
+ - spec/bearcat/client/discussions_spec.rb
453
+ - spec/bearcat/client/enrollments_spec.rb
454
+ - spec/bearcat/client/external_tools_spec.rb
455
+ - spec/bearcat/client/files_spec.rb
456
+ - spec/bearcat/client/folders_spec.rb
457
+ - spec/bearcat/client/graph_ql_spec.rb
458
+ - spec/bearcat/client/group_categories_spec.rb
457
459
  - spec/bearcat/client/group_membership_spec.rb
458
- - spec/bearcat/client/analytics_spec.rb
460
+ - spec/bearcat/client/group_memberships_spec.rb
461
+ - spec/bearcat/client/groups_spec.rb
462
+ - spec/bearcat/client/learning_outcomes_spec.rb
459
463
  - spec/bearcat/client/module_items_spec.rb
460
464
  - spec/bearcat/client/modules_spec.rb
461
- - spec/bearcat/client/rubric_association_spec.rb
465
+ - spec/bearcat/client/o_auth2_spec.rb
466
+ - spec/bearcat/client/outcome_groups_spec.rb
467
+ - spec/bearcat/client/outcomes_spec.rb
468
+ - spec/bearcat/client/pages_spec.rb
469
+ - spec/bearcat/client/quizzes_spec.rb
470
+ - spec/bearcat/client/reports_spec.rb
462
471
  - spec/bearcat/client/roles_spec.rb
463
472
  - spec/bearcat/client/rubric_assessment_spec.rb
464
- - spec/bearcat/client/folders_spec.rb
473
+ - spec/bearcat/client/rubric_association_spec.rb
465
474
  - spec/bearcat/client/rubric_spec.rb
466
- - spec/bearcat/client/files_spec.rb
467
- - spec/bearcat/client/accounts_spec.rb
468
- - spec/bearcat/client/canvas_files_spec.rb
469
- - spec/bearcat/client/pages_spec.rb
470
- - spec/bearcat/client/content_exports_spec.rb
471
- - spec/bearcat/client/graph_ql_spec.rb
472
- - spec/bearcat/client/o_auth2_spec.rb
473
- - spec/bearcat/client/courses_spec.rb
474
- - spec/bearcat/client/custom_gradebook_columns_spec.rb
475
- - spec/bearcat/client/enrollments_spec.rb
476
- - spec/bearcat/client/conversations_spec.rb
477
- - spec/bearcat/client/learning_outcomes_spec.rb
478
- - spec/bearcat/client/group_memberships_spec.rb
475
+ - spec/bearcat/client/search_spec.rb
476
+ - spec/bearcat/client/sections_spec.rb
477
+ - spec/bearcat/client/submissions_spec.rb
479
478
  - spec/bearcat/client/users_spec.rb
480
- - spec/bearcat/client/calendar_events_spec.rb
481
- - spec/bearcat/client/assignment_groups_spec.rb
482
- - spec/bearcat/client/discussions_spec.rb
479
+ - spec/bearcat/client_spec.rb
483
480
  - spec/bearcat/rate_limiting_spec.rb
484
481
  - spec/bearcat/stub_bearcat_spec.rb
482
+ - spec/bearcat_spec.rb
483
+ - spec/fixtures/access_token.json
484
+ - spec/fixtures/account_admin_create.json
485
+ - spec/fixtures/account_admin_delete.json
486
+ - spec/fixtures/account_admins.json
487
+ - spec/fixtures/account_courses.json
488
+ - spec/fixtures/account_grading_standards.json
489
+ - spec/fixtures/account_groups.json
490
+ - spec/fixtures/account_reports.json
491
+ - spec/fixtures/account_reports_index.json
492
+ - spec/fixtures/account_reports_result_success.json
493
+ - spec/fixtures/account_reports_start_result.json
494
+ - spec/fixtures/account_role.json
495
+ - spec/fixtures/account_roles.json
496
+ - spec/fixtures/account_sis_imports.json
497
+ - spec/fixtures/account_sub_accounts.json
498
+ - spec/fixtures/account_user.json
499
+ - spec/fixtures/account_users.json
500
+ - spec/fixtures/accounts.json
501
+ - spec/fixtures/add_custom_user_data.json
485
502
  - spec/fixtures/add_user.json
486
- - spec/fixtures/calendar_event.json
503
+ - spec/fixtures/assignment.json
487
504
  - spec/fixtures/assignment_group.json
488
- - spec/fixtures/outcome_result.json
489
- - spec/fixtures/pages.json
490
- - spec/fixtures/course_grading_standards.json
491
- - spec/fixtures/user_avatars.json
492
- - spec/fixtures/account_user.json
493
- - spec/fixtures/course_folder.json
494
- - spec/fixtures/rubric_association.json
495
- - spec/fixtures/outcome_group_import.json
496
- - spec/fixtures/edited_group_category.json
497
- - spec/fixtures/course_copy.json
498
- - spec/fixtures/single_account.json
499
- - spec/fixtures/module.json
505
+ - spec/fixtures/assignment_groups.json
506
+ - spec/fixtures/assignment_section_override.json
507
+ - spec/fixtures/assignments.json
508
+ - spec/fixtures/bearcat.jpg
509
+ - spec/fixtures/blueprint_migration.json
510
+ - spec/fixtures/blueprint_subscriptions.json
511
+ - spec/fixtures/blueprint_template.json
500
512
  - spec/fixtures/blueprint_update_assocations_success.json
501
- - spec/fixtures/account_admin_create.json
513
+ - spec/fixtures/calendar_event.json
514
+ - spec/fixtures/calendar_events.json
515
+ - spec/fixtures/canvas_files/declare_file.json
516
+ - spec/fixtures/canvas_files/upload_success.json
502
517
  - spec/fixtures/cc.imscc
503
- - spec/fixtures/discussion_topics.json
504
- - spec/fixtures/account_sub_accounts.json
505
- - spec/fixtures/created_group_category.json
506
- - spec/fixtures/user_page_views.json
507
- - spec/fixtures/delete_custom_data_scope.json
508
- - spec/fixtures/file.csv
509
- - spec/fixtures/dashboard.json
510
- - spec/fixtures/submissions/submission.json
511
- - spec/fixtures/create_course_discussion.json
512
- - spec/fixtures/conversation.json
513
518
  - spec/fixtures/communication_channels.json
514
- - spec/fixtures/account_users.json
515
- - spec/fixtures/accounts.json
516
- - spec/fixtures/deleted_group.json
517
- - spec/fixtures/course_files.json
518
- - spec/fixtures/group_membership.json
519
- - spec/fixtures/content_migration_files/upload_success.json
520
- - spec/fixtures/content_migration_files/response.json
519
+ - spec/fixtures/conclude_enrollment.json
520
+ - spec/fixtures/content_export.json
521
521
  - spec/fixtures/content_migration_files/content_migration.json
522
- - spec/fixtures/outcome_subgroup.json
523
- - spec/fixtures/gradebook_history.json
524
- - spec/fixtures/custom_gradebook_columns/custom_gradebook_columns.json
525
- - spec/fixtures/custom_gradebook_columns/gradebook_column_progress.json
522
+ - spec/fixtures/content_migration_files/response.json
523
+ - spec/fixtures/content_migration_files/upload_success.json
524
+ - spec/fixtures/conversation.json
525
+ - spec/fixtures/course.json
526
+ - spec/fixtures/course_conferences.json
527
+ - spec/fixtures/course_copy.json
528
+ - spec/fixtures/course_enrollments.json
529
+ - spec/fixtures/course_files.json
530
+ - spec/fixtures/course_folder.json
531
+ - spec/fixtures/course_folders.json
532
+ - spec/fixtures/course_grading_standards.json
533
+ - spec/fixtures/course_groups.json
534
+ - spec/fixtures/course_sections.json
535
+ - spec/fixtures/course_settings.json
536
+ - spec/fixtures/course_students.json
537
+ - spec/fixtures/create_course_discussion.json
538
+ - spec/fixtures/create_group_discussion.json
539
+ - spec/fixtures/create_outcome_in_group.json
540
+ - spec/fixtures/create_section.json
541
+ - spec/fixtures/created_assignment.json
542
+ - spec/fixtures/created_course.json
543
+ - spec/fixtures/created_group.json
544
+ - spec/fixtures/created_group_category.json
545
+ - spec/fixtures/created_group_membership.json
546
+ - spec/fixtures/created_module.json
547
+ - spec/fixtures/custom_data.json
548
+ - spec/fixtures/custom_food_data.json
526
549
  - spec/fixtures/custom_gradebook_columns/column_data.json
527
550
  - spec/fixtures/custom_gradebook_columns/custom_gradebook_column.json
528
- - spec/fixtures/update_section.json
529
- - spec/fixtures/user_logins.json
530
- - spec/fixtures/paged_body.json
531
- - spec/fixtures/course_settings.json
532
- - spec/fixtures/outcomes.json
551
+ - spec/fixtures/custom_gradebook_columns/custom_gradebook_columns.json
552
+ - spec/fixtures/custom_gradebook_columns/gradebook_column_progress.json
553
+ - spec/fixtures/dashboard.json
554
+ - spec/fixtures/delete_course.json
555
+ - spec/fixtures/delete_custom_data_scope.json
556
+ - spec/fixtures/delete_group_category.json
557
+ - spec/fixtures/delete_section.json
558
+ - spec/fixtures/deleted_conversation.json
559
+ - spec/fixtures/deleted_group.json
560
+ - spec/fixtures/department_level_participation.json
561
+ - spec/fixtures/department_level_statistics.json
562
+ - spec/fixtures/discussion_entries.json
533
563
  - spec/fixtures/discussion_entry_replies.json
534
- - spec/fixtures/course_groups.json
535
- - spec/fixtures/account_reports_start_result.json
536
- - spec/fixtures/no_custom_data.json
537
- - spec/fixtures/bearcat.jpg
538
- - spec/fixtures/report_list.json
564
+ - spec/fixtures/discussion_topic.json
565
+ - spec/fixtures/discussion_topics.json
566
+ - spec/fixtures/edited_group.json
567
+ - spec/fixtures/edited_group_category.json
568
+ - spec/fixtures/enroll_student.json
569
+ - spec/fixtures/enrollment_terms.json
570
+ - spec/fixtures/external_tool.json
571
+ - spec/fixtures/external_tools.json
572
+ - spec/fixtures/file.csv
573
+ - spec/fixtures/gradebook_history.json
539
574
  - spec/fixtures/graph_ql_scores.json
540
- - spec/fixtures/link_unlink_outcome.json
575
+ - spec/fixtures/group.json
576
+ - spec/fixtures/group_categories.json
577
+ - spec/fixtures/group_category.json
541
578
  - spec/fixtures/group_category_groups.json
542
- - spec/fixtures/ok.json
543
- - spec/fixtures/add_custom_user_data.json
544
- - spec/fixtures/report_status.json
545
- - spec/fixtures/account_role.json
546
- - spec/fixtures/account_roles.json
547
- - spec/fixtures/user_enrollments.json
548
- - spec/fixtures/course_enrollments.json
579
+ - spec/fixtures/group_conferences.json
580
+ - spec/fixtures/group_membership.json
549
581
  - spec/fixtures/learning_outcome.json
582
+ - spec/fixtures/link_unlink_outcome.json
583
+ - spec/fixtures/merge_user.json
584
+ - spec/fixtures/module.json
585
+ - spec/fixtures/module_item.json
586
+ - spec/fixtures/module_item_sequence.json
550
587
  - spec/fixtures/module_items.json
551
- - spec/fixtures/department_level_participation.json
552
- - spec/fixtures/group_category.json
553
- - spec/fixtures/section_enrollments.json
554
- - spec/fixtures/create_group_discussion.json
555
- - spec/fixtures/user_profile.json
556
- - spec/fixtures/external_tools.json
557
- - spec/fixtures/create_section.json
558
- - spec/fixtures/assignment_groups.json
588
+ - spec/fixtures/modules.json
589
+ - spec/fixtures/no_custom_data.json
590
+ - spec/fixtures/ok.json
591
+ - spec/fixtures/outcome_group_import.json
592
+ - spec/fixtures/outcome_groups.json
593
+ - spec/fixtures/outcome_result.json
594
+ - spec/fixtures/outcome_subgroup.json
559
595
  - spec/fixtures/outcome_subgroups.json
560
- - spec/fixtures/updated_course.json
561
- - spec/fixtures/account_sis_imports.json
562
- - spec/fixtures/account_admins.json
563
- - spec/fixtures/department_level_statistics.json
564
- - spec/fixtures/course_folders.json
565
- - spec/fixtures/account_admin_delete.json
566
- - spec/fixtures/content_export.json
567
- - spec/fixtures/enroll_student.json
568
- - spec/fixtures/external_tool.json
569
- - spec/fixtures/discussion_entries.json
570
- - spec/fixtures/assignment.json
571
- - spec/fixtures/report_history.json
572
- - spec/fixtures/edited_group.json
573
- - spec/fixtures/account_reports_index.json
574
- - spec/fixtures/created_module.json
575
- - spec/fixtures/account_reports.json
576
- - spec/fixtures/quizzes/quiz_extension.json
577
- - spec/fixtures/quizzes/quiz_assignment_override.json
596
+ - spec/fixtures/outcomes.json
597
+ - spec/fixtures/paged_body.json
598
+ - spec/fixtures/pages.json
599
+ - spec/fixtures/progress.json
578
600
  - spec/fixtures/quizzes/course_quiz.json
579
- - spec/fixtures/quizzes/course_quizzes.json
580
601
  - spec/fixtures/quizzes/course_quiz_questions.json
581
- - spec/fixtures/course.json
582
- - spec/fixtures/search_find_recipients.json
602
+ - spec/fixtures/quizzes/course_quizzes.json
603
+ - spec/fixtures/quizzes/quiz_assignment_override.json
604
+ - spec/fixtures/quizzes/quiz_extension.json
583
605
  - spec/fixtures/reactivate_enrollment.json
584
- - spec/fixtures/enrollment_terms.json
585
- - spec/fixtures/created_group_membership.json
606
+ - spec/fixtures/report_history.json
607
+ - spec/fixtures/report_list.json
608
+ - spec/fixtures/report_status.json
586
609
  - spec/fixtures/rubric.json
587
- - spec/fixtures/merge_user.json
610
+ - spec/fixtures/rubric_assessment.json
611
+ - spec/fixtures/rubric_association.json
612
+ - spec/fixtures/search_find_recipients.json
588
613
  - spec/fixtures/section.json
589
- - spec/fixtures/blueprint_migration.json
590
- - spec/fixtures/blueprint_subscriptions.json
591
- - spec/fixtures/create_outcome_in_group.json
592
- - spec/fixtures/assignments.json
593
- - spec/fixtures/group_categories.json
594
- - spec/fixtures/blueprint_template.json
595
- - spec/fixtures/delete_section.json
614
+ - spec/fixtures/section_enrollments.json
615
+ - spec/fixtures/single_account.json
616
+ - spec/fixtures/start_report.json
617
+ - spec/fixtures/submissions/submission.json
618
+ - spec/fixtures/update_outcome.json
596
619
  - spec/fixtures/update_outcome_group.json
597
- - spec/fixtures/group_conferences.json
598
- - spec/fixtures/created_group.json
599
- - spec/fixtures/outcome_groups.json
600
- - spec/fixtures/progress.json
601
- - spec/fixtures/delete_course.json
602
- - spec/fixtures/canvas_files/upload_success.json
603
- - spec/fixtures/canvas_files/declare_file.json
604
- - spec/fixtures/account_grading_standards.json
605
- - spec/fixtures/course_sections.json
606
- - spec/fixtures/course_conferences.json
620
+ - spec/fixtures/update_section.json
621
+ - spec/fixtures/updated_course.json
622
+ - spec/fixtures/user_avatars.json
607
623
  - spec/fixtures/user_details.json
608
- - spec/fixtures/module_item_sequence.json
609
- - spec/fixtures/custom_food_data.json
610
- - spec/fixtures/update_outcome.json
611
- - spec/fixtures/discussion_topic.json
612
- - spec/fixtures/group.json
613
- - spec/fixtures/assignment_section_override.json
614
- - spec/fixtures/account_reports_result_success.json
615
- - spec/fixtures/rubric_assessment.json
616
- - spec/fixtures/calendar_events.json
617
- - spec/fixtures/deleted_conversation.json
618
- - spec/fixtures/created_assignment.json
619
- - spec/fixtures/start_report.json
620
- - spec/fixtures/conclude_enrollment.json
621
- - spec/fixtures/custom_data.json
622
- - spec/fixtures/created_course.json
623
- - spec/fixtures/account_groups.json
624
- - spec/fixtures/modules.json
625
- - spec/fixtures/course_students.json
626
- - spec/fixtures/access_token.json
627
- - spec/fixtures/delete_group_category.json
628
- - spec/fixtures/module_item.json
629
- - spec/fixtures/account_courses.json
624
+ - spec/fixtures/user_enrollments.json
625
+ - spec/fixtures/user_logins.json
626
+ - spec/fixtures/user_page_views.json
627
+ - spec/fixtures/user_profile.json
628
+ - spec/helper.rb
@@ -1,11 +0,0 @@
1
- #!lua name=bearcat_rate_limiting
2
-
3
- local function checkin_time(keys, args)
4
- local return_time = args[1]
5
- local true_remaining = args[2]
6
-
7
- local hash = keys[1]
8
- return redis.call('HGET', hash, '_last_modified_')
9
- end
10
-
11
- redis.register_function('my_hset', my_hset)