Skip to content

Compile include with \* symbol will not work responsively #2169

Description

@Sorrow-Scarlet

Describe the bug

Compile include with * symbol will not work responsively

Steps to reproduce

  1. init a new fsproject with dotnet new
  2. add multiple fs source file
  3. change your compile include into this:
<Compile Include="..\Source\*" />
<!-- if posix, change \ into /-->
  1. write any legal f# code and compile. Except Program.fs, other fs file has no lsp hints
  2. ILSPY the dll and see all source modules compiled correctly and display well
  3. Check ionide project manager, you'll only see Program.fs (or Class1.fs if you use classlib example)
  4. Add exsisting file (e.g.: Lib1.fs) and compile, you will get a warning of repeated include
  5. remove compile include for Lib1.fs, and project manager display well, lsp function act normal with hints available...

Expected behaviour

  1. With <Compile Include="..\Source\*" />, there should automatically include all source file
  2. The compile success and ILSPY result indicate that this is a feature available for F#
  3. The project manager's final response(add and remove Lib1.fs's compile include won't affect it is already included.) indicate that this feature has been supported on ionide, but not that perfect.

Screenshots

Ionide project manager:

Image

fsproj file:
Image

Machine infos

  • OS: Windows
  • .NET SDK version: 10 and 4.8 framework
  • Ionide version: 7.31.1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions