forest_liana 7.7.0 → 7.7.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4f2e246fbfde70dc193c1ff1f71b97d5bb02c5c9ecee0a52073c5909b792e7b6
4
- data.tar.gz: f267f5d490e264b288a0d0136c34f2e15d185760a2c4849bb7359a457ffb5ce2
3
+ metadata.gz: 255e08fe3efa55b4d3e45bfaefd39c354dcc3d75e4c131516c878250504b53e1
4
+ data.tar.gz: a933bd8d54b97eb3358d94ee091f43c9962a9b471290f07368e5d01213ab8049
5
5
  SHA512:
6
- metadata.gz: 449ecf89de01cfb538b57ac9768989d753e911f2ba67995290307d770a5bca72605e5766f83962d45e12d7052d7878b15a14402c0256687203d0107dc0b17669
7
- data.tar.gz: eddb63f55196bbbea363d280a2610a0d42150ca554e55b6fcfaf998575041143346e7693bef6442dbd895d24981a185c35d4950f1950fa53cbd35d69aefebe13
6
+ metadata.gz: c9c31d5e836eb231b293c61ba924c06d97a32c3b9d53e6bc9c9e70cc1f08a1693d8711fb207e911cb4bea3afa6a887ee90ade10100ad29aa7c55a5d1694476c4
7
+ data.tar.gz: f44ec6f5110b04548904f438433df70a4f1be6f09d5bd6b448174168a8535ff46b74f649d11233921c482a223be4da36f14e376d416b698120e0a7ee5d13b9c2
@@ -369,7 +369,6 @@ module ForestLiana
369
369
 
370
370
  def attributes(active_record_class)
371
371
  return [] if @is_smart_collection
372
-
373
372
  active_record_class.column_names.select do |column_name|
374
373
  !association?(active_record_class, column_name)
375
374
  end
@@ -410,7 +409,7 @@ module ForestLiana
410
409
 
411
410
  def foreign_keys(active_record_class)
412
411
  begin
413
- SchemaUtils.associations(active_record_class).map(&:foreign_key)
412
+ SchemaUtils.belongs_to_associations(active_record_class).map(&:foreign_key)
414
413
  rescue => err
415
414
  # Association foreign_key triggers an error. Put the stacktrace and
416
415
  # returns no foreign keys.
@@ -18,6 +18,12 @@ module ForestLiana
18
18
  end
19
19
  end
20
20
 
21
+ def self.belongs_to_associations(active_record_class)
22
+ self.associations(active_record_class).select do |x|
23
+ [:belongs_to].include?(x.macro)
24
+ end
25
+ end
26
+
21
27
  def self.many_associations(active_record_class)
22
28
  self.associations(active_record_class).select do |x|
23
29
  [:has_many, :has_and_belongs_to_many].include?(x.macro)
@@ -1,3 +1,3 @@
1
1
  module ForestLiana
2
- VERSION = "7.7.0"
2
+ VERSION = "7.7.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: forest_liana
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.7.0
4
+ version: 7.7.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sandro Munda
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-09-14 00:00:00.000000000 Z
11
+ date: 2022-11-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -168,30 +168,30 @@ dependencies:
168
168
  name: json-jwt
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
- - - ">="
171
+ - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: '0'
173
+ version: 1.15.0
174
174
  type: :runtime
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
- - - ">="
178
+ - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: '0'
180
+ version: 1.15.0
181
181
  - !ruby/object:Gem::Dependency
182
182
  name: openid_connect
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
- - - ">="
185
+ - - '='
186
186
  - !ruby/object:Gem::Version
187
- version: '0'
187
+ version: 1.4.2
188
188
  type: :runtime
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
- - - ">="
192
+ - - '='
193
193
  - !ruby/object:Gem::Version
194
- version: '0'
194
+ version: 1.4.2
195
195
  description: Forest is a modern admin interface that works on all major web frameworks.
196
196
  forest_liana is the gem that makes Forest admin work on any Rails application (Rails
197
197
  >= 4.0).
@@ -528,188 +528,188 @@ signing_key:
528
528
  specification_version: 4
529
529
  summary: Official Rails Liana for Forest
530
530
  test_files:
531
- - test/test_helper.rb
531
+ - test/fixtures/has_many_field.yml
532
+ - test/fixtures/tree.yml
532
533
  - test/fixtures/owner.yml
533
- - test/fixtures/serialize_field.yml
534
- - test/fixtures/belongs_to_field.yml
535
534
  - test/fixtures/has_one_field.yml
535
+ - test/fixtures/has_many_through_field.yml
536
+ - test/fixtures/serialize_field.yml
536
537
  - test/fixtures/reference.yml
538
+ - test/fixtures/belongs_to_field.yml
537
539
  - test/fixtures/string_field.yml
538
- - test/fixtures/has_many_through_field.yml
539
- - test/fixtures/has_many_field.yml
540
- - test/fixtures/tree.yml
541
- - test/forest_liana_test.rb
540
+ - test/routing/route_test.rb
541
+ - test/test_helper.rb
542
542
  - test/services/forest_liana/operator_date_interval_parser_test.rb
543
543
  - test/services/forest_liana/schema_adapter_test.rb
544
- - test/dummy/public/422.html
545
- - test/dummy/public/favicon.ico
546
- - test/dummy/public/404.html
547
- - test/dummy/public/500.html
548
- - test/dummy/bin/bundle
549
- - test/dummy/bin/setup
550
- - test/dummy/bin/rails
551
- - test/dummy/bin/rake
552
- - test/dummy/db/schema.rb
553
- - test/dummy/db/migrate/20150608150016_create_has_many_field.rb
554
- - test/dummy/db/migrate/20150608131603_create_decimal_field.rb
555
- - test/dummy/db/migrate/20150612112520_create_has_and_belongs_to_many_field.rb
556
- - test/dummy/db/migrate/20181111162121_create_references_table.rb
557
- - test/dummy/db/migrate/20150608133038_create_belongs_to_field.rb
558
- - test/dummy/db/migrate/20150608133044_create_has_one_field.rb
559
- - test/dummy/db/migrate/20150608131430_create_integer_field.rb
560
- - test/dummy/db/migrate/20150616150629_create_polymorphic_field.rb
561
- - test/dummy/db/migrate/20160628173505_add_timestamps.rb
562
- - test/dummy/db/migrate/20150814081918_create_has_many_through_field.rb
563
- - test/dummy/db/migrate/20150609114636_create_belongs_to_class_name_field.rb
564
- - test/dummy/db/migrate/20150608130516_create_date_field.rb
565
- - test/dummy/db/migrate/20160627172810_create_owner.rb
566
- - test/dummy/db/migrate/20150623115554_create_has_many_class_name_field.rb
567
- - test/dummy/db/migrate/20150608132621_create_string_field.rb
568
- - test/dummy/db/migrate/20150608131610_create_float_field.rb
569
- - test/dummy/db/migrate/20170614141921_create_serialize_field.rb
570
- - test/dummy/db/migrate/20150608132159_create_boolean_field.rb
571
- - test/dummy/db/migrate/20160627172951_create_tree.rb
572
- - test/dummy/config/secrets.yml
544
+ - test/forest_liana_test.rb
545
+ - test/dummy/config/environments/test.rb
546
+ - test/dummy/config/environments/development.rb
547
+ - test/dummy/config/environments/production.rb
548
+ - test/dummy/config/environment.rb
549
+ - test/dummy/config/locales/en.yml
550
+ - test/dummy/config/routes.rb
573
551
  - test/dummy/config/database.yml
574
- - test/dummy/config/initializers/backtrace_silencers.rb
575
- - test/dummy/config/initializers/assets.rb
576
- - test/dummy/config/initializers/wrap_parameters.rb
577
- - test/dummy/config/initializers/mime_types.rb
578
552
  - test/dummy/config/initializers/cookies_serializer.rb
579
553
  - test/dummy/config/initializers/filter_parameter_logging.rb
554
+ - test/dummy/config/initializers/backtrace_silencers.rb
580
555
  - test/dummy/config/initializers/inflections.rb
556
+ - test/dummy/config/initializers/wrap_parameters.rb
557
+ - test/dummy/config/initializers/mime_types.rb
558
+ - test/dummy/config/initializers/assets.rb
581
559
  - test/dummy/config/initializers/session_store.rb
582
- - test/dummy/config/boot.rb
583
- - test/dummy/config/locales/en.yml
584
- - test/dummy/config/environment.rb
585
560
  - test/dummy/config/application.rb
586
- - test/dummy/config/routes.rb
587
- - test/dummy/config/environments/development.rb
588
- - test/dummy/config/environments/test.rb
589
- - test/dummy/config/environments/production.rb
590
- - test/dummy/app/assets/stylesheets/application.css
591
- - test/dummy/app/assets/config/manifest.js
592
- - test/dummy/app/assets/javascripts/application.js
593
- - test/dummy/app/models/serialize_field.rb
594
- - test/dummy/app/models/decimal_field.rb
561
+ - test/dummy/config/secrets.yml
562
+ - test/dummy/config/boot.rb
563
+ - test/dummy/app/views/layouts/application.html.erb
564
+ - test/dummy/app/models/has_one_field.rb
595
565
  - test/dummy/app/models/has_many_class_name_field.rb
566
+ - test/dummy/app/models/belongs_to_class_name_field.rb
567
+ - test/dummy/app/models/serialize_field.rb
568
+ - test/dummy/app/models/owner.rb
596
569
  - test/dummy/app/models/boolean_field.rb
597
570
  - test/dummy/app/models/date_field.rb
598
571
  - test/dummy/app/models/has_and_belongs_to_many_field.rb
599
- - test/dummy/app/models/owner.rb
572
+ - test/dummy/app/models/float_field.rb
573
+ - test/dummy/app/models/polymorphic_field.rb
574
+ - test/dummy/app/models/has_many_through_field.rb
575
+ - test/dummy/app/models/has_many_field.rb
600
576
  - test/dummy/app/models/integer_field.rb
577
+ - test/dummy/app/models/string_field.rb
578
+ - test/dummy/app/models/decimal_field.rb
601
579
  - test/dummy/app/models/reference.rb
602
580
  - test/dummy/app/models/belongs_to_field.rb
603
- - test/dummy/app/models/float_field.rb
604
581
  - test/dummy/app/models/tree.rb
605
- - test/dummy/app/models/string_field.rb
606
- - test/dummy/app/models/has_many_through_field.rb
607
- - test/dummy/app/models/belongs_to_class_name_field.rb
608
- - test/dummy/app/models/polymorphic_field.rb
609
- - test/dummy/app/models/has_many_field.rb
610
- - test/dummy/app/models/has_one_field.rb
611
- - test/dummy/app/views/layouts/application.html.erb
612
582
  - test/dummy/app/helpers/application_helper.rb
613
583
  - test/dummy/app/controllers/application_controller.rb
614
- - test/dummy/README.rdoc
615
- - test/dummy/config.ru
584
+ - test/dummy/app/assets/config/manifest.js
585
+ - test/dummy/app/assets/javascripts/application.js
586
+ - test/dummy/app/assets/stylesheets/application.css
587
+ - test/dummy/db/schema.rb
588
+ - test/dummy/db/migrate/20170614141921_create_serialize_field.rb
589
+ - test/dummy/db/migrate/20150608130516_create_date_field.rb
590
+ - test/dummy/db/migrate/20150609114636_create_belongs_to_class_name_field.rb
591
+ - test/dummy/db/migrate/20181111162121_create_references_table.rb
592
+ - test/dummy/db/migrate/20160628173505_add_timestamps.rb
593
+ - test/dummy/db/migrate/20150612112520_create_has_and_belongs_to_many_field.rb
594
+ - test/dummy/db/migrate/20150608133044_create_has_one_field.rb
595
+ - test/dummy/db/migrate/20150608150016_create_has_many_field.rb
596
+ - test/dummy/db/migrate/20160627172810_create_owner.rb
597
+ - test/dummy/db/migrate/20150608132159_create_boolean_field.rb
598
+ - test/dummy/db/migrate/20150608131610_create_float_field.rb
599
+ - test/dummy/db/migrate/20150608133038_create_belongs_to_field.rb
600
+ - test/dummy/db/migrate/20150814081918_create_has_many_through_field.rb
601
+ - test/dummy/db/migrate/20150616150629_create_polymorphic_field.rb
602
+ - test/dummy/db/migrate/20150623115554_create_has_many_class_name_field.rb
603
+ - test/dummy/db/migrate/20150608131430_create_integer_field.rb
604
+ - test/dummy/db/migrate/20150608131603_create_decimal_field.rb
605
+ - test/dummy/db/migrate/20150608132621_create_string_field.rb
606
+ - test/dummy/db/migrate/20160627172951_create_tree.rb
616
607
  - test/dummy/Rakefile
617
- - test/routing/route_test.rb
618
- - spec/requests/authentications_spec.rb
619
- - spec/requests/actions_controller_spec.rb
620
- - spec/requests/resources_spec.rb
608
+ - test/dummy/config.ru
609
+ - test/dummy/README.rdoc
610
+ - test/dummy/public/favicon.ico
611
+ - test/dummy/public/404.html
612
+ - test/dummy/public/500.html
613
+ - test/dummy/public/422.html
614
+ - test/dummy/bin/bundle
615
+ - test/dummy/bin/rails
616
+ - test/dummy/bin/setup
617
+ - test/dummy/bin/rake
618
+ - spec/lib/forest_liana/schema_file_updater_spec.rb
619
+ - spec/lib/forest_liana/bootstrapper_spec.rb
620
+ - spec/spec_helper.rb
621
+ - spec/config/initializers/logger_spec.rb
621
622
  - spec/requests/cors_spec.rb
622
- - spec/requests/test.ru
623
- - spec/requests/count_spec.rb
623
+ - spec/requests/resources_spec.rb
624
624
  - spec/requests/stats_spec.rb
625
- - spec/lib/forest_liana/bootstrapper_spec.rb
626
- - spec/lib/forest_liana/schema_file_updater_spec.rb
627
- - spec/helpers/forest_liana/query_helper_spec.rb
625
+ - spec/requests/count_spec.rb
626
+ - spec/requests/actions_controller_spec.rb
627
+ - spec/requests/authentications_spec.rb
628
+ - spec/requests/test.ru
629
+ - spec/rails_helper.rb
628
630
  - spec/helpers/forest_liana/schema_helper_spec.rb
629
- - spec/config/initializers/logger_spec.rb
630
- - spec/services/forest_liana/filters_parser_spec.rb
631
- - spec/services/forest_liana/line_stat_getter_spec.rb
632
- - spec/services/forest_liana/scope_manager_spec.rb
631
+ - spec/helpers/forest_liana/query_helper_spec.rb
633
632
  - spec/services/forest_liana/permissions_checker_acl_disabled_spec.rb
634
- - spec/services/forest_liana/permissions_getter_spec.rb
635
- - spec/services/forest_liana/permissions_checker_acl_enabled_spec.rb
636
633
  - spec/services/forest_liana/permissions_checker_live_queries_spec.rb
634
+ - spec/services/forest_liana/scope_manager_spec.rb
635
+ - spec/services/forest_liana/permissions_getter_spec.rb
636
+ - spec/services/forest_liana/filters_parser_spec.rb
637
+ - spec/services/forest_liana/value_stat_getter_spec.rb
638
+ - spec/services/forest_liana/has_many_getter_spec.rb
637
639
  - spec/services/forest_liana/permissions_formatter_spec.rb
638
- - spec/services/forest_liana/resources_getter_spec.rb
639
- - spec/services/forest_liana/schema_adapter_spec.rb
640
+ - spec/services/forest_liana/line_stat_getter_spec.rb
641
+ - spec/services/forest_liana/pie_stat_getter_spec.rb
642
+ - spec/services/forest_liana/permissions_checker_acl_enabled_spec.rb
640
643
  - spec/services/forest_liana/smart_action_field_validator_spec.rb
641
- - spec/services/forest_liana/apimap_sorter_spec.rb
642
- - spec/services/forest_liana/value_stat_getter_spec.rb
643
644
  - spec/services/forest_liana/resource_updater_spec.rb
644
- - spec/services/forest_liana/pie_stat_getter_spec.rb
645
+ - spec/services/forest_liana/apimap_sorter_spec.rb
645
646
  - spec/services/forest_liana/ip_whitelist_checker_spec.rb
646
- - spec/services/forest_liana/has_many_getter_spec.rb
647
+ - spec/services/forest_liana/schema_adapter_spec.rb
648
+ - spec/services/forest_liana/resources_getter_spec.rb
649
+ - spec/dummy/lib/forest_liana/controllers/owners_controller.rb
650
+ - spec/dummy/lib/forest_liana/controllers/owner_trees_controller.rb
647
651
  - spec/dummy/lib/forest_liana/collections/island.rb
648
- - spec/dummy/lib/forest_liana/collections/user.rb
649
652
  - spec/dummy/lib/forest_liana/collections/location.rb
650
- - spec/dummy/lib/forest_liana/controllers/owner_trees_controller.rb
651
- - spec/dummy/lib/forest_liana/controllers/owners_controller.rb
652
- - spec/dummy/bin/bundle
653
- - spec/dummy/bin/setup
654
- - spec/dummy/bin/rails
655
- - spec/dummy/bin/rake
656
- - spec/dummy/db/schema.rb
657
- - spec/dummy/db/migrate/20210511141752_create_owners.rb
658
- - spec/dummy/db/migrate/20190716130830_add_age_to_tree.rb
659
- - spec/dummy/db/migrate/20190226173051_create_isle.rb
660
- - spec/dummy/db/migrate/20190226172951_create_user.rb
661
- - spec/dummy/db/migrate/20220719094127_create_cars.rb
662
- - spec/dummy/db/migrate/20210326110524_create_references.rb
663
- - spec/dummy/db/migrate/20210526084712_create_products.rb
664
- - spec/dummy/db/migrate/20220719094450_create_drivers.rb
665
- - spec/dummy/db/migrate/20190226174951_create_tree.rb
666
- - spec/dummy/db/migrate/20220727114930_add_columns_to_products.rb
667
- - spec/dummy/db/migrate/20190716135241_add_type_to_user.rb
668
- - spec/dummy/db/migrate/20210326140855_create_locations.rb
669
- - spec/dummy/db/migrate/20220727114450_create_manufacturers.rb
670
- - spec/dummy/config/secrets.yml
653
+ - spec/dummy/lib/forest_liana/collections/user.rb
654
+ - spec/dummy/config/environments/test.rb
655
+ - spec/dummy/config/environments/development.rb
656
+ - spec/dummy/config/environments/production.rb
657
+ - spec/dummy/config/environment.rb
658
+ - spec/dummy/config/routes.rb
671
659
  - spec/dummy/config/database.yml
672
- - spec/dummy/config/initializers/backtrace_silencers.rb
673
- - spec/dummy/config/initializers/assets.rb
674
- - spec/dummy/config/initializers/wrap_parameters.rb
675
- - spec/dummy/config/initializers/mime_types.rb
676
660
  - spec/dummy/config/initializers/cookies_serializer.rb
677
661
  - spec/dummy/config/initializers/filter_parameter_logging.rb
662
+ - spec/dummy/config/initializers/backtrace_silencers.rb
678
663
  - spec/dummy/config/initializers/inflections.rb
664
+ - spec/dummy/config/initializers/wrap_parameters.rb
665
+ - spec/dummy/config/initializers/mime_types.rb
679
666
  - spec/dummy/config/initializers/forest_liana.rb
667
+ - spec/dummy/config/initializers/assets.rb
680
668
  - spec/dummy/config/initializers/session_store.rb
681
- - spec/dummy/config/boot.rb
682
- - spec/dummy/config/environment.rb
683
669
  - spec/dummy/config/application.rb
684
- - spec/dummy/config/routes.rb
685
- - spec/dummy/config/environments/development.rb
686
- - spec/dummy/config/environments/test.rb
687
- - spec/dummy/config/environments/production.rb
688
- - spec/dummy/app/assets/stylesheets/application.css
689
- - spec/dummy/app/assets/config/manifest.js
690
- - spec/dummy/app/assets/javascripts/application.js
670
+ - spec/dummy/config/secrets.yml
671
+ - spec/dummy/config/boot.rb
672
+ - spec/dummy/app/config/routes.rb
673
+ - spec/dummy/app/views/layouts/application.html.erb
674
+ - spec/dummy/app/models/car.rb
675
+ - spec/dummy/app/models/town.rb
676
+ - spec/dummy/app/models/product.rb
691
677
  - spec/dummy/app/models/driver.rb
692
- - spec/dummy/app/models/island.rb
693
- - spec/dummy/app/models/application_record.rb
694
678
  - spec/dummy/app/models/owner.rb
695
- - spec/dummy/app/models/car.rb
696
- - spec/dummy/app/models/garage_record.rb
697
- - spec/dummy/app/models/manufacturer.rb
698
679
  - spec/dummy/app/models/sub_application_record.rb
680
+ - spec/dummy/app/models/island.rb
681
+ - spec/dummy/app/models/location.rb
682
+ - spec/dummy/app/models/garage_record.rb
683
+ - spec/dummy/app/models/user_record.rb
699
684
  - spec/dummy/app/models/user.rb
685
+ - spec/dummy/app/models/application_record.rb
700
686
  - spec/dummy/app/models/reference.rb
701
- - spec/dummy/app/models/product.rb
687
+ - spec/dummy/app/models/manufacturer.rb
702
688
  - spec/dummy/app/models/tree.rb
703
- - spec/dummy/app/models/user_record.rb
704
- - spec/dummy/app/models/town.rb
705
- - spec/dummy/app/models/location.rb
706
- - spec/dummy/app/views/layouts/application.html.erb
707
689
  - spec/dummy/app/helpers/application_helper.rb
708
- - spec/dummy/app/config/routes.rb
709
- - spec/dummy/app/controllers/application_controller.rb
710
690
  - spec/dummy/app/controllers/forest/islands_controller.rb
711
- - spec/dummy/README.rdoc
712
- - spec/dummy/config.ru
691
+ - spec/dummy/app/controllers/application_controller.rb
692
+ - spec/dummy/app/assets/config/manifest.js
693
+ - spec/dummy/app/assets/javascripts/application.js
694
+ - spec/dummy/app/assets/stylesheets/application.css
695
+ - spec/dummy/db/schema.rb
696
+ - spec/dummy/db/migrate/20190716130830_add_age_to_tree.rb
697
+ - spec/dummy/db/migrate/20220719094127_create_cars.rb
698
+ - spec/dummy/db/migrate/20190716135241_add_type_to_user.rb
699
+ - spec/dummy/db/migrate/20210526084712_create_products.rb
700
+ - spec/dummy/db/migrate/20220727114930_add_columns_to_products.rb
701
+ - spec/dummy/db/migrate/20210511141752_create_owners.rb
702
+ - spec/dummy/db/migrate/20190226173051_create_isle.rb
703
+ - spec/dummy/db/migrate/20210326110524_create_references.rb
704
+ - spec/dummy/db/migrate/20210326140855_create_locations.rb
705
+ - spec/dummy/db/migrate/20190226172951_create_user.rb
706
+ - spec/dummy/db/migrate/20190226174951_create_tree.rb
707
+ - spec/dummy/db/migrate/20220719094450_create_drivers.rb
708
+ - spec/dummy/db/migrate/20220727114450_create_manufacturers.rb
713
709
  - spec/dummy/Rakefile
714
- - spec/rails_helper.rb
715
- - spec/spec_helper.rb
710
+ - spec/dummy/config.ru
711
+ - spec/dummy/README.rdoc
712
+ - spec/dummy/bin/bundle
713
+ - spec/dummy/bin/rails
714
+ - spec/dummy/bin/setup
715
+ - spec/dummy/bin/rake