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

Cyclic Errors After Autoload of Imported Asset #32165

Closed
paulhocker opened this issue Sep 16, 2019 · 1 comment · Fixed by #67714
Closed

Cyclic Errors After Autoload of Imported Asset #32165

paulhocker opened this issue Sep 16, 2019 · 1 comment · Fixed by #67714

Comments

@paulhocker
Copy link

Godot version: 3.1 (confirmed)

OS/device including version: Windows 10 & Linux

Issue description:

I recently had an Asset approved on the Asset Lib. I was disappointed that trying my new Asset using the Import system produced errors. There is probably another request I want to open regarding having a TEST site for Assets, but for now I want to report this.

After importing my Asset (Godot-Stuff Logging 3.1) and setting up and Autoload global, I receive a number of errors as seen below.

The Workaround is to close your project and reopen it.

 Resource: 'res://gs_logger/logger.gd' is already being loaded. Cyclic reference?
 res://gs_logger/layouts/pattern_layout.gd:13 - Parse Error: Identifier 'Logger' is not declared in the current scope.
 modules/gdscript/gdscript.cpp:580 - Method/Function Failed, returning: ERR_PARSE_ERROR
 res://gs_logger/appender.gd:53 - Parse Error: Class 'PatternLayout' could not be fully loaded (script error or cyclic dependency).
 modules/gdscript/gdscript.cpp:580 - Method/Function Failed, returning: ERR_PARSE_ERROR
 res://gs_logger/logger.gd:268 - Parse Error: Class 'Appender' could not be fully loaded (script error or cyclic dependency).
 modules/gdscript/gdscript.cpp:580 - Method/Function Failed, returning: ERR_PARSE_ERROR
 Script does not inherit a Node: res://gs_logger/logger.gd
 editor/editor_autoload_settings.cpp:448 - Condition ' !info->node ' is true. Continuing..:
Add AutoLoad

Steps to reproduce:

  • create a new project
  • use the assetlib and download and import Godot-Stuff 3.1 Logger
  • create a new Autoload for the script gs_logger/logger.gd and call it "Logger"
  • you will receive the errors above
  • create a new scene and attach a gdscript to it
  • try to access the Logger global object you will receive the following errors
 Resource: 'res://gs_logger/logger.gd' is already being loaded. Cyclic reference?
 res://gs_logger/layouts/pattern_layout.gd:13 - Parse Error: Identifier 'Logger' is not declared in the current scope.
 modules/gdscript/gdscript.cpp:580 - Method/Function Failed, returning: ERR_PARSE_ERROR
 res://gs_logger/appender.gd:53 - Parse Error: Class 'PatternLayout' could not be fully loaded (script error or cyclic dependency).
 modules/gdscript/gdscript.cpp:580 - Method/Function Failed, returning: ERR_PARSE_ERROR
 res://gs_logger/logger.gd:268 - Parse Error: Class 'Appender' could not be fully loaded (script error or cyclic dependency).
 modules/gdscript/gdscript.cpp:580 - Method/Function Failed, returning: ERR_PARSE_ERRO
  • close the project and re-open it
  • the errors disappear

Minimal reproduction project:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment