boocs / ue4-intellisense-fixes

Automatically fixes VSCode/Unreal Engine Intellisense Config bugs on startup
MIT License
162 stars 9 forks source link

Stuck on "Attempting to fix the json of launch.json..." #27

Closed beogivaljr closed 1 year ago

beogivaljr commented 1 year ago

Apparently mine got stuck on Attempting to fix the json launch.json. I'm on a M1 Pro Mac.

Searching with fast-glob found nothing. (Sometimes isn't bug)
*.uproject file was found!

Extension "UE Intellisense Fixes" 3.5.0 is now active!

Found Unreal Engine v5.1.0

Fixing compiler paths in compile commands.

[...]

Attempting to fix UE workspace(Add empty tag parser).
UE's tag parser includes are set to empty array for performance.
The setting limitSymbolsToIncludedHeaders is already set to true.
End fix UE workspace(Add empty tag parser).

Attempting to fix wrong cppStandard.
Info : UE4 should be default c++14 (it can be c++17 with some special configuration)
Info : UE5 should be c++17
Extension's cppStandard setting was set to empty string.
Intellisense will use cpptools cppStandard setting instead of this extension's setting.
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
End fix wrong cppStandard.

Fixing launch.json.

Attempting to fix the json of launch.json...
boocs commented 1 year ago

Updated extension. Let me know if it fixes the problem!

beogivaljr commented 1 year ago

Unfortunately it did not, also was it suppose to modify my c_cpp_properties.json? Because it didn't. Maybe I'm doing something wrong.

boocs commented 1 year ago

Nope, it should be fixing launch.json in your project's .vscode folder.

Actually I should've been paying more attention to the log. You're on UE 5.1 and using a Mac m1. You shouldn't have to fix anything in launch.json so it should just check and skip over everything in the launch fix. Strange...

I'll have to create an update, with detailed logs, to see exactly where it stops. I'll do that later today.

boocs commented 1 year ago

I decided to not do detailed logs, yet.

I did go through all my code and found/fixed more async/await errors. Hopefully this is the reason for your errors.

Let me know if it fixes it or what the logs show now.

beogivaljr commented 1 year ago

Still not working. Here is the full log in case it helps:

Searching for *.uproject file...
Searching with fast-glob found nothing. (Sometimes isn't bug)
*.uproject file was found!

Extension "UE Intellisense Fixes" 3.5.2 is now active!

Found Unreal Engine v5.1.0

Fixing compiler paths in compile commands.
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_MyProject.json
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_Default.json
Done fixing compiler paths.

Fixing compiler path in c_cpp_properties.json.
End fix c_cpp_properties compiler path.

Fixing invalid paths in response files.
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
End fixing invalid paths in response files.

Fixing *.generated.h files!
Searching with fast-glob found nothing. (Sometimes isn't bug)
Correct *.generated.h files are found! Note: This extension doesn't test if all *.generated.h files have been created.
For Intellisense, you'll need to Build any newly created project files with the 'Editor' suffix config (e.g. MyProjectNameEditor (platform) Development Build).
All response files have the correct *.generated.h path!
End fixing *.generated.h

Fixing missing compile command files.
No missing file paths found. No fixes needed.
No missing file paths found. No fixes needed.
End fix missing compile commands.

Warning about Public/Private directory
Searching with fast-glob found nothing. (Sometimes isn't bug)

** Warning **: Public/Private folders found in your Source directory.
*** Make sure to reset(Generate Project Files) your project, only once, to add these folders to the correct config files.
End warn Public/Private Directory

Attempting to fix UE workspace(Add empty tag parser).
UE's tag parser includes are set to empty array for performance.
The setting limitSymbolsToIncludedHeaders is already set to true.
End fix UE workspace(Add empty tag parser).

Attempting to fix wrong cppStandard.
Info : UE4 should be default c++14 (it can be c++17 with some special configuration)
Info : UE5 should be c++17
Extension's cppStandard setting was set to empty string.
Intellisense will use cpptools cppStandard setting instead of this extension's setting.
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
End fix wrong cppStandard.

Fixing launch.json.

Attempting to fix the json of launch.json...
beogivaljr commented 1 year ago

And here is the log when I delete the launch.json file from my project:

Searching for *.uproject file...
Searching with fast-glob found nothing. (Sometimes isn't bug)
*.uproject file was found!

Extension "UE Intellisense Fixes" 3.5.2 is now active!

Found Unreal Engine v5.1.0

Fixing compiler paths in compile commands.
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_MyProject.json
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_Default.json
Done fixing compiler paths.

Fixing compiler path in c_cpp_properties.json.
End fix c_cpp_properties compiler path.

Fixing invalid paths in response files.
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
End fixing invalid paths in response files.

Fixing *.generated.h files!
Searching with fast-glob found nothing. (Sometimes isn't bug)
Correct *.generated.h files are found! Note: This extension doesn't test if all *.generated.h files have been created.
For Intellisense, you'll need to Build any newly created project files with the 'Editor' suffix config (e.g. MyProjectNameEditor (platform) Development Build).
All response files have the correct *.generated.h path!
End fixing *.generated.h

Fixing missing compile command files.
No missing file paths found. No fixes needed.
No missing file paths found. No fixes needed.
End fix missing compile commands.

Warning about Public/Private directory
Searching with fast-glob found nothing. (Sometimes isn't bug)

** Warning **: Public/Private folders found in your Source directory.
*** Make sure to reset(Generate Project Files) your project, only once, to add these folders to the correct config files.
End warn Public/Private Directory

Attempting to fix UE workspace(Add empty tag parser).
UE's tag parser includes are set to empty array for performance.
The setting limitSymbolsToIncludedHeaders is already set to true.
End fix UE workspace(Add empty tag parser).

Attempting to fix wrong cppStandard.
Info : UE4 should be default c++14 (it can be c++17 with some special configuration)
Info : UE5 should be c++17
Extension's cppStandard setting was set to empty string.
Intellisense will use cpptools cppStandard setting instead of this extension's setting.
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
End fix wrong cppStandard.

Fixing launch.json.

** Error **: Error reading /Users/admin/Projects/MyProject/.vscode/launch.json. Message: Unable to read file '/Users/admin/Projects/MyProject/.vscode/launch.json' (Error: Unable to resolve nonexistent file '/Users/admin/Projects/MyProject/.vscode/launch.json')

** Error **: Could not read launch.json, path: /Users/admin/Projects/MyProject/.vscode/launch.json
End fix launch.json.

Start fix wrong intellisense mode
Cpu: Apple M1 Pro

** Error **: Couldn't update extension setting intellisenseMode!
End fix wrong intellisense mode.

Attempting to fix UE workspace optimization.

** Warning **: Optimization of UE is enabled!
Enabling UE optimization disables red squiggle compiling for the Unreal Engine source code.
This does not affect your project's source code (it still can have red squiggles).
You can disable this optimization in this extension's settings.
End fix UE optimization.

No need to write MyProject CCppProperties. It was unchanged.

Writing /Users/Shared/Epic Games/UE_5.1/.vscode/c_cpp_properties.json to file.

*** Number of error messages: 3
*** Number of warning messages: 16
If you get any errors you can try restarting VSCode to check if they've been fixed.

Extension is done.
beogivaljr commented 1 year ago

I get the same error on UE4.27.

boocs commented 1 year ago

Alright thanks for testing. Pretty strange as it seems like a async/await bug. I'll get out a logging update soon.

boocs commented 1 year ago

Oh and you do need a launch.json. That's the config that lets you debug your project with breakpoints when you need to.

boocs commented 1 year ago

I updated the extension to 3.6.0 because along with more logs I changed the way reading/writing of files worked.

Let me know!

beogivaljr commented 1 year ago

It ran all the way this time, but with some errors. Not sure if they are suppose to happened.

Searching for *.uproject file...
Searching with fast-glob found nothing. (Sometimes isn't bug)
*.uproject file was found!

Extension "UE Intellisense Fixes" 3.6.0 is now active!

Found Unreal Engine v5.1.0

Fixing compiler paths in compile commands.
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_MyProject.json
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_Default.json
Done fixing compiler paths.

Fixing compiler path in c_cpp_properties.json.
End fix c_cpp_properties compiler path.

Fixing invalid paths in response files.
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
End fixing invalid paths in response files.

Fixing *.generated.h files!
Searching with fast-glob found nothing. (Sometimes isn't bug)
Correct *.generated.h files are found! Note: This extension doesn't test if all *.generated.h files have been created.
For Intellisense, you'll need to Build any newly created project files with the 'Editor' suffix config (e.g. MyProjectNameEditor (platform) Development Build).
All response files have the correct *.generated.h path!
End fixing *.generated.h

Fixing missing compile command files.
No missing file paths found. No fixes needed.
No missing file paths found. No fixes needed.
End fix missing compile commands.

Warning about Public/Private directory
Searching with fast-glob found nothing. (Sometimes isn't bug)

** Warning **: Public/Private folders found in your Source directory.
*** Make sure to reset(Generate Project Files) your project, only once, to add these folders to the correct config files.
End warn Public/Private Directory

Attempting to fix UE workspace(Add empty tag parser).
UE's tag parser includes are set to empty array for performance.
The setting limitSymbolsToIncludedHeaders is already set to true.
End fix UE workspace(Add empty tag parser).

Attempting to fix wrong cppStandard.
Info : UE4 should be default c++14 (it can be c++17 with some special configuration)
Info : UE5 should be c++17
Extension's cppStandard setting was set to empty string.
Intellisense will use cpptools cppStandard setting instead of this extension's setting.
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
End fix wrong cppStandard.

Fixing launch.json.

Attempting to fix the json of launch.json...

** Error **: Replace all exception!

** Error **: e.replace is not a function

** Error **: Will use original launch file string...
No fixes need for malformed json!
Checking for deprecated external console...
There was nothing to fix!
End fix launch.json.

Start fix wrong intellisense mode
Cpu: Apple M1 Pro

** Error **: Couldn't update extension setting intellisenseMode!
End fix wrong intellisense mode.

Attempting to fix UE workspace optimization.

** Warning **: Optimization of UE is enabled!
Enabling UE optimization disables red squiggle compiling for the Unreal Engine source code.
This does not affect your project's source code (it still can have red squiggles).
You can disable this optimization in this extension's settings.
End fix UE optimization.

No need to write MyProject CCppProperties. It was unchanged.
No need to write UE5 CCppProperties. It was unchanged.

*** Number of error messages: 4
*** Number of warning messages: 16
If you get any errors you can try restarting VSCode to check if they've been fixed.

Extension is done.
boocs commented 1 year ago

Updated to 3.7.0

You also have another bug in there with the updating of intellisenseMode. I added log messages and reworked where the setting is stored. Let me know if this bug is fixed or the improved error message it gives.

beogivaljr commented 1 year ago

Nice, now It ran with no errors. Only some warnings.

Searching for *.uproject file...
Searching with fast-glob found nothing. (Sometimes isn't bug)
*.uproject file was found!

Extension "UE Intellisense Fixes" 3.7.0 is now active!

Found Unreal Engine v5.1.0

Fixing compiler paths in compile commands.
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_MyProject.json
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_Default.json
Done fixing compiler paths.

Fixing compiler path in c_cpp_properties.json.
End fix c_cpp_properties compiler path.

Fixing invalid paths in response files.
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
End fixing invalid paths in response files.

Fixing *.generated.h files!
Searching with fast-glob found nothing. (Sometimes isn't bug)
Correct *.generated.h files are found! Note: This extension doesn't test if all *.generated.h files have been created.
For Intellisense, you'll need to Build any newly created project files with the 'Editor' suffix config (e.g. MyProjectNameEditor (platform) Development Build).
All response files have the correct *.generated.h path!
End fixing *.generated.h

Fixing missing compile command files.
No missing file paths found. No fixes needed.
No missing file paths found. No fixes needed.
End fix missing compile commands.

Warning about Public/Private directory
Searching with fast-glob found nothing. (Sometimes isn't bug)

** Warning **: Public/Private folders found in your Source directory.
*** Make sure to reset(Generate Project Files) your project, only once, to add these folders to the correct config files.
End warn Public/Private Directory

Attempting to fix UE workspace(Add empty tag parser).
UE's tag parser includes are set to empty array for performance.
The setting limitSymbolsToIncludedHeaders is already set to true.
End fix UE workspace(Add empty tag parser).

Attempting to fix wrong cppStandard.
Info : UE4 should be default c++14 (it can be c++17 with some special configuration)
Info : UE5 should be c++17
Extension's cppStandard setting was set to empty string.
Intellisense will use cpptools cppStandard setting instead of this extension's setting.
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
End fix wrong cppStandard.

Fixing launch.json.

Attempting to fix the json of launch.json...
Returning fixed launch file string.
No fixes need for malformed json!
Checking for deprecated external console...
There was nothing to fix!
End fix launch.json.

Start fix wrong intellisense mode
Cpu: Apple M1 Pro
End fix wrong intellisense mode.

Attempting to fix UE workspace optimization.

** Warning **: Optimization of UE is enabled!
Enabling UE optimization disables red squiggle compiling for the Unreal Engine source code.
This does not affect your project's source code (it still can have red squiggles).
You can disable this optimization in this extension's settings.
End fix UE optimization.

No need to write MyProject CCppProperties. It was unchanged.

Writing /Users/Shared/Epic Games/UE_5.1/.vscode/c_cpp_properties.json to file.

*** Number of error messages: 0
*** Number of warning messages: 16
If you get any errors you can try restarting VSCode to check if they've been fixed.

Extension is done.
beogivaljr commented 1 year ago

I closed the project and opened again and it gave me a different log:

Searching for *.uproject file...
Searching with fast-glob found nothing. (Sometimes isn't bug)
*.uproject file was found!

Extension "UE Intellisense Fixes" 3.7.0 is now active!

Found Unreal Engine v5.1.0

Fixing compiler paths in compile commands.
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_MyProject.json
Below is the compile commands first entry command. (WARNING) If getting errors and the compiler path is unexpected reset your UE project.
command/arguments[0]: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
File write: /Users/admin/Projects/MyProject/.vscode/compileCommands_Default.json
Done fixing compiler paths.

Fixing compiler path in c_cpp_properties.json.
End fix c_cpp_properties compiler path.

Fixing invalid paths in response files.
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 6 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 203 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 8 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 12 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 14 paths that don't exist. Is this on purpose?
No invalid paths returned. No fixes needed.

** Warning **: Epic Games has included 201 paths that don't exist. Is this on purpose?
End fixing invalid paths in response files.

Fixing *.generated.h files!
Searching with fast-glob found nothing. (Sometimes isn't bug)
Correct *.generated.h files are found! Note: This extension doesn't test if all *.generated.h files have been created.
For Intellisense, you'll need to Build any newly created project files with the 'Editor' suffix config (e.g. MyProjectNameEditor (platform) Development Build).
All response files have the correct *.generated.h path!
End fixing *.generated.h

Fixing missing compile command files.
No missing file paths found. No fixes needed.
No missing file paths found. No fixes needed.
End fix missing compile commands.

Warning about Public/Private directory
Searching with fast-glob found nothing. (Sometimes isn't bug)

** Warning **: Public/Private folders found in your Source directory.
*** Make sure to reset(Generate Project Files) your project, only once, to add these folders to the correct config files.
End warn Public/Private Directory

Attempting to fix UE workspace(Add empty tag parser).
UE's tag parser includes are set to empty array for performance.
The setting limitSymbolsToIncludedHeaders is already set to true.
End fix UE workspace(Add empty tag parser).

Attempting to fix wrong cppStandard.
Info : UE4 should be default c++14 (it can be c++17 with some special configuration)
Info : UE5 should be c++17
Extension's cppStandard setting was set to empty string.
Intellisense will use cpptools cppStandard setting instead of this extension's setting.
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current VSCode/cpptools cppStandard is:  (Can be blank)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
Current c_cpp_properties.json's cppStandard is: c++17 (Overrides VSCode/cpptools if not undefined)
End fix wrong cppStandard.

Fixing launch.json.

Attempting to fix the json of launch.json...
Returning fixed launch file string.
No fixes need for malformed json!
Checking for deprecated external console...
There was nothing to fix!
End fix launch.json.

Start fix wrong intellisense mode
Cpu: Apple M1 Pro
This extension set MAIN workspace c_cpp_properties.json's intellisenseMode to macos-clang-arm64
This extension set MAIN workspace c_cpp_properties.json's intellisenseMode to macos-clang-arm64
This extension set UE workspace c_cpp_properties.json's intellisenseMode to macos-clang-arm64
This extension set UE workspace c_cpp_properties.json's intellisenseMode to macos-clang-arm64
End fix wrong intellisense mode.

Attempting to fix UE workspace optimization.

** Warning **: Optimization of UE is enabled!
Enabling UE optimization disables red squiggle compiling for the Unreal Engine source code.
This does not affect your project's source code (it still can have red squiggles).
You can disable this optimization in this extension's settings.
End fix UE optimization.

Writing /Users/admin/Projects/MyProject/.vscode/c_cpp_properties.json to file.

Writing /Users/Shared/Epic Games/UE_5.1/.vscode/c_cpp_properties.json to file.

*** Number of error messages: 0
*** Number of warning messages: 16
If you get any errors you can try restarting VSCode to check if they've been fixed.

Extension is done.
beogivaljr commented 1 year ago

These are the diffs after the first and the second time I opened the project. The ones I didn't print were only whitespaces. https://ibb.co/0J7y6zn https://ibb.co/zbrtysM https://ibb.co/nPBJsQ5

boocs commented 1 year ago

Updated to 3.7.1 to fix the small bug that made you have to restart.

Intellisense should work now with 0 errors (red squiggles).

If not you can check 2 things:

  1. In this extension's compiler.path setting it explains about Macs and what to set the setting to if you're getting errors. /usr/bin/clang++
  2. You maybe accidently using the wrong cpptools extension version. You can download the native m1 version manually and install it like you installed this extension here. https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools On the right is Download Extension and you want the MacOS Apple Silicon version. Make sure to uninstall the current cpptools extension first.
beogivaljr commented 1 year ago

It work flawlessly now, no more squigly lines! Thanks a lot! The only thins is that the auto complete is very slow, it takes about 10 seconds to show up. But I suppose this is standard with the combo VSCode + Unreal, right?

boocs commented 1 year ago

It'll be slow in header files but should be decently fast in source files once it loads.

I'm currently creating a clangd/unreal project creator extension. Its intellisense is decently fast in both header and source. Not sure how good it is though but I was going to thoroughly test it after I finished the extension. UE 5.1 made it a little easier since they fixed a lot of bugs they had in the clang database that unreal creates (at least for Windows). Still has a small bug, that needs to be fixed by my extension, but works nicely.

beogivaljr commented 1 year ago

Nice, I'll be checking this one out too. Let me now if there is anything I can help you with. Again, thanks a lot for the fixes!