Skip to content

Conversation

@ZeeWanderer
Copy link
Contributor

@ZeeWanderer ZeeWanderer commented Jul 17, 2025

This makes it compile on Windows and work from the command line, but still can't get it to work properly with Windows VS Code extension.

[2025-07-17T18:47:44.619Z] [ERROR elp_ide_db::docs] Unknown application - could not load app_data to determine whether file is on OTP
[2025-07-17T18:47:44.619Z] [ERROR elp_ide_db::docs] No corresponding appdata found for file, so no docs can be loaded
[Error - 9:47:44 PM] [elp_ide_db::docs] Unknown application - could not load app_data to determine whether file is on OTP
[Error - 9:47:44 PM] [elp_ide_db::docs] No corresponding appdata found for file, so no docs can be loaded
[2025-07-17T19:06:47.466Z] [ERROR elp_ide_db::docs] Unknown application - could not load app_data to determine whether file is on OTP
[2025-07-17T19:06:47.466Z] [ERROR elp_ide_db::docs] No corresponding appdata found for file, so no docs can be loaded
[Error - 10:06:47 PM] [elp_ide_db::docs] Unknown application - could not load app_data to determine whether file is on OTP
[Error - 10:06:47 PM] [elp_ide_db::docs] No corresponding appdata found for file, so no docs can be loaded

and when running elp shell Turns out watchman was not installed. Haven't seen it in setup docs.

Could not find project. Are you in an Erlang project directory, or is one specified using --project?

build_info.json and project_imfo.json for the newly generated rebar3 project

#26

@meta-cla
Copy link

meta-cla bot commented Jul 17, 2025

Hi @ZeeWanderer!

Thank you for your pull request and welcome to our community.

Action Required

In order to merge any pull request (code, docs, etc.), we require contributors to sign our Contributor License Agreement, and we don't seem to have one on file for you.

Process

In order for us to review and merge your suggested changes, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA.

Once the CLA is signed, our tooling will perform checks and validations. Afterwards, the pull request will be tagged with CLA signed. The tagging process may take up to 1 hour after signing. Please give it that time before contacting us about it.

If you have received this in error or have any questions, please contact us at [email protected]. Thanks!

@meta-cla
Copy link

meta-cla bot commented Jul 17, 2025

Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Meta Open Source project. Thanks!

@meta-cla meta-cla bot added the cla signed label Jul 17, 2025
@ZeeWanderer
Copy link
Contributor Author

ZeeWanderer commented Jul 17, 2025

i am thinking it's the \\?\ on most of the paths, if you can point me where that is resolved, i probably could get it working. This might also require either changing approach to spawning rebar or using something like https://github.com/ZeeWanderer/rebar3_wrapper so that it can actually be spawned as an executable unix style

@ZeeWanderer
Copy link
Contributor Author

Well, i still get...

[{
	"resource": "/e:/Projects/Erlang_Learning/my_first_app/src/my_first_app_sup.erl",
	"owner": "_generated_diagnostic_collection_name_#7",
	"code": {
		"value": "L0003",
		"target": {
			"$mid": 1,
			"path": "/erlang-language-platform/docs/erlang-error-index/l/L0003",
			"scheme": "https",
			"authority": "whatsapp.github.io"
		}
	},
	"severity": 8,
	"message": "Unknown application",
	"source": "elp",
	"startLineNumber": 1,
	"startColumn": 1,
	"endLineNumber": 1,
	"endColumn": 1,
	"origin": "extHost3"
},{
	"resource": "/e:/Projects/Erlang_Learning/my_first_app/src/my_first_app_sup.erl",
	"owner": "_generated_diagnostic_collection_name_#7",
	"code": {
		"value": "W0017",
		"target": {
			"$mid": 1,
			"path": "/erlang-language-platform/docs/erlang-error-index/w/W0017",
			"scheme": "https",
			"authority": "whatsapp.github.io"
		}
	},
	"severity": 4,
	"message": "Function 'supervisor:start_link/3' is undefined.",
	"source": "elp",
	"startLineNumber": 14,
	"startColumn": 5,
	"endLineNumber": 14,
	"endColumn": 26,
	"origin": "extHost3"
}]

any ideas?

build_info.json
project_info.txt

@ZeeWanderer
Copy link
Contributor Author

ZeeWanderer commented Jul 18, 2025

Ok now linting sort of works. Is there a good centralized point to refactor normalize_abs_path into? I am not yet familiar enough with the project to identify one.

@ZeeWanderer ZeeWanderer marked this pull request as ready for review July 19, 2025 16:53
@ZeeWanderer
Copy link
Contributor Author

ZeeWanderer commented Jul 20, 2025

OTP 28 is now generally availalbe, so compiling edb for windows is trivial now. I did have some problems with erlfmt plugin, rebar3 would simply hang after downloading it or getting it from cache. Removing that escriptized smoothly. With this PR, if you do accept it, ELP now compiles for windows and is capable of using rebar3 without any trouble.

Adding a windows pipeline would then be simple right?

@ZeeWanderer
Copy link
Contributor Author

I have a really strange issue with elp_ide_db::eqwalizer, but other that that linting seems to work
elp.log

@facebook-github-bot
Copy link
Contributor

@alanz has imported this pull request. If you are a Meta employee, you can view this in D78658932.

@alanz
Copy link
Member

alanz commented Jul 21, 2025

@ZeeWanderer can you run cargo fmt on this diff to update it. Our internal linters complain otherwise.

@facebook-github-bot
Copy link
Contributor

@alanz has imported this pull request. If you are a Meta employee, you can view this in D78658932.

@alanz
Copy link
Member

alanz commented Jul 21, 2025

Thanks for formatting. I think it makes sense to land this as a step in the right direction, and then start focusing on getting the github CI to run windows as well, based on it.

I am also making some changes internally to document the need for watchman

@facebook-github-bot
Copy link
Contributor

@alanz merged this pull request in e49ff32.

facebook-github-bot pushed a commit that referenced this pull request Aug 23, 2025
Summary:
Given preliminary Windows support was introduced via #111, it sounds reasonable to add a Windows pipeline to CI.

Tests are currently omitted, since failing. The next step would be to figure out why.

The pipeline could use some refactoring, which can be done separately.

Reviewed By: TD5

Differential Revision: D80716715

fbshipit-source-id: c07eb94e94efa2079880c0507e255ec659a1904d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants