-
-
Notifications
You must be signed in to change notification settings - Fork 20.8k
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
Fix the Python type error when creating the .sln
file
#75309
Conversation
Does this fix also work with scons 4.4.0? (downgrading to that is the current workaround in #74725) It probably should, just checking to ensure this fix doesn't break currently working setups / when or if scons fixes this on their end. |
This can solve the problem. I compiled and generated |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be fine for now as a workaround.
I see the SCons devs are discussing further changing CPPDEFINES
to make sure it's properly coerced into list
whenever it's being accessed, regardless of whether it's a list
or deque
internally.
So hopefully in a future 4.5.x or 4.6 release this workaround shouldn't be needed anymore. But it doesn't hurt to have it until then, and for some time to keep 4.5.0-4.5.2 working.
Thanks! And congrats for your first merged Godot contribution 🎉 |
Cherry-picked for 4.0.3. |
The fix worked with SCons v4.5.2. Thanks! |
.sln
file
Cherry-picked for 3.6. |
Cherry-picked for 3.5.3. |
Fix: #74725
The error occurs at the statement
env["CPPDEFINES"] + defines
, whereenv["CPPDEFINES"]
is of type<class 'collections.deque'>
anddefines
is of type<class 'list'>
.Since the two types cannot be added together,
list()
function is used to convert deque to list.After the modification, it can be compiled and generate the .sln file normally.