apsmir / custom_field_sql

redmine sql custom field
14 stars 8 forks source link

Error when installing plugin #17

Closed madmoe00 closed 2 months ago

madmoe00 commented 1 year ago

Hello, I'm getting the following error when installing the plugin. Can anyone advise? Redmine 5

redmine@ibcopenproject:~$ cd plugins/ redmine@ibcopenproject:~/plugins$ git clone https://github.com/apsmir/custom_field_sql.git Cloning into 'custom_field_sql'... remote: Enumerating objects: 256, done. remote: Counting objects: 100% (256/256), done. remote: Compressing objects: 100% (116/116), done. remote: Total 256 (delta 79), reused 219 (delta 60), pack-reused 0 Receiving objects: 100% (256/256), 27.41 KiB | 400.00 KiB/s, done. Resolving deltas: 100% (79/79), done. redmine@ibcopenproject:~/plugins$ cd .. redmine@ibcopenproject:~$ bundle exec rake redmine:plugins:migrate RAILS_ENV=production --trace Invoke redmine:plugins:migrate (first_time) Invoke environment (first_time) ** Execute environment rake aborted! LoadError: cannot load such file -- custom_field_sql/custom_fields/formats/sql /var/lib/gems/3.0.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in require' /var/lib/gems/3.0.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:inrequire' /var/lib/gems/3.0.0/gems/zeitwerk-2.6.8/lib/zeitwerk/kernel.rb:38:in require' /opt/redmine/plugins/custom_field_sql/init.rb:2:inblock in <top (required)>' /opt/redmine/lib/redmine/plugin.rb:96:in instance_eval' /opt/redmine/lib/redmine/plugin.rb:96:inregister' /opt/redmine/plugins/custom_field_sql/init.rb:1:in <top (required)>' /opt/redmine/lib/redmine/plugin_loader.rb:31:inload' /opt/redmine/lib/redmine/plugin_loader.rb:31:in run_initializer' /opt/redmine/lib/redmine/plugin_loader.rb:108:ineach' /opt/redmine/lib/redmine/plugin_loader.rb:108:in block in load' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:427:ininstance_exec' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:427:in block in make_lambda' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:198:inblock (2 levels) in halting' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:604:in block (2 levels) in default_terminator' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:603:incatch' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:603:in block in default_terminator' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:199:inblock in halting' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:512:in block in invoke_before' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:512:ineach' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:512:in invoke_before' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/callbacks.rb:105:inrun_callbacks' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/reloader.rb:88:in prepare!' /var/lib/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/application/finisher.rb:124:inblock in ' /var/lib/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/initializable.rb:32:in instance_exec' /var/lib/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/initializable.rb:32:inrun' /var/lib/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/initializable.rb:61:in block in run_initializers' /usr/lib/ruby/3.0.0/tsort.rb:228:inblock in tsort_each' /usr/lib/ruby/3.0.0/tsort.rb:350:in block (2 levels) in each_strongly_connected_component' /usr/lib/ruby/3.0.0/tsort.rb:431:ineach_strongly_connected_component_from' /usr/lib/ruby/3.0.0/tsort.rb:349:in block in each_strongly_connected_component' /usr/lib/ruby/3.0.0/tsort.rb:347:ineach' /usr/lib/ruby/3.0.0/tsort.rb:347:in call' /usr/lib/ruby/3.0.0/tsort.rb:347:ineach_strongly_connected_component' /usr/lib/ruby/3.0.0/tsort.rb:226:in tsort_each' /usr/lib/ruby/3.0.0/tsort.rb:205:intsort_each' /var/lib/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/initializable.rb:60:in run_initializers' /var/lib/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/application.rb:391:ininitialize!' /opt/redmine/config/environment.rb:16:in <top (required)>' /var/lib/gems/3.0.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:inrequire' /var/lib/gems/3.0.0/gems/polyglot-0.3.5/lib/polyglot.rb:65:in require' /var/lib/gems/3.0.0/gems/zeitwerk-2.6.8/lib/zeitwerk/kernel.rb:38:inrequire' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/dependencies.rb:332:in block in require' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/dependencies.rb:299:inload_dependency' /var/lib/gems/3.0.0/gems/activesupport-6.1.7.2/lib/active_support/dependencies.rb:332:in require' /var/lib/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/application.rb:367:inrequire_environment!' /var/lib/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/application.rb:533:in block in run_tasks_blocks' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:281:inblock in execute' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:281:in each' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:281:inexecute' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:219:in block in invoke_with_call_chain' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:199:insynchronize' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:199:in invoke_with_call_chain' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:243:inblock in invoke_prerequisites' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:241:in each' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:241:ininvoke_prerequisites' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:218:in block in invoke_with_call_chain' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:199:insynchronize' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:199:in invoke_with_call_chain' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/task.rb:188:ininvoke' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/application.rb:160:in invoke_task' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/application.rb:116:inblock (2 levels) in top_level' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/application.rb:116:in each' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/application.rb:116:inblock in top_level' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/application.rb:125:in run_with_threads' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/application.rb:110:intop_level' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/application.rb:83:in block in run' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/application.rb:186:instandard_exception_handling' /usr/share/rubygems-integration/all/gems/rake-13.0.6/lib/rake/application.rb:80:in run' /opt/redmine/bin/rake:4:in<top (required)>' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/cli/exec.rb:58:in load' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/cli/exec.rb:58:inkernel_load' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/cli/exec.rb:23:in run' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/cli.rb:492:inexec' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/command.rb:27:in run' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/invocation.rb:127:ininvoke_command' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor.rb:392:in dispatch' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/cli.rb:34:indispatch' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/vendor/thor/lib/thor/base.rb:485:in start' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/cli.rb:28:instart' /var/lib/gems/3.0.0/gems/bundler-2.4.13/exe/bundle:45:in block in <top (required)>' /var/lib/gems/3.0.0/gems/bundler-2.4.13/lib/bundler/friendly_errors.rb:117:inwith_friendly_errors' /var/lib/gems/3.0.0/gems/bundler-2.4.13/exe/bundle:33:in <top (required)>' /opt/redmine/bin/bundle:4:inload' /opt/redmine/bin/bundle:4:in `

' Tasks: TOP => redmine:plugins:migrate => environment

madmoe00 commented 1 year ago

I have fixed it by replacing require with require_relative in init.rb

Redmine::Plugin.register :custom_field_sql do

name 'Redmine SQL Custom Field Label plugin' author 'Alexey Smirnov' description 'This is a plugin for Redmine which adds SQL type to Custom Fields' version '2.6' url 'https://github.com/apsmir/custom_field_sql'

end

CustomField.safe_attributes( 'sql', 'form_params', 'search_by_click', 'db_config', 'strict_selection', 'strict_error_message' )

require_relative "lib/custom_field_sql/custom_fields/formats/sql" require_relative "lib/custom_sql_search_hook"

devMls commented 9 months ago

same here, thanks for the info..

But after resolve this point i get:

/usr/local/bundle/gems/zeitwerk-2.6.11/lib/zeitwerk/loader/helpers.rb:135:in `const_get': uninitialized constant CustomSqlSearchHook (NameError) parent.const_get(cname, false) ^^^^^^^^^^

pkoevesdi commented 8 months ago

for me, additionally I had to make this change:

diff --git a/lib/custom_sql_search_hook.rb b/lib/custom_sql_search_hook.rb
index 0456bfb..1287824 100644
--- a/lib/custom_sql_search_hook.rb
+++ b/lib/custom_sql_search_hook.rb
@@ -1,4 +1,4 @@
-class CustomSqlSearchHookListener < Redmine::Hook::ViewListener
+class CustomSqlSearchHook < Redmine::Hook::ViewListener

from https://github.com/apsmir/custom_field_sql/issues/12#issue-1265096137

apsmir commented 2 months ago

fixed with commit for redmine 5/x