fsharp / fsharp/fslang-suggestions

Don't fail if the design time component of a library with Type Providers is missing, just give a warning.

Open
#678 0 comments 19 reactions 0 assignees View on GitHub
approved-in-principle area: type-providers
Dominant language
No language data
Stars
373
Forks
21
PR merge metrics
No merged PRs in 30d

Description

I propose we give a warning instead of failing with an error.

The existing way of approaching this problem in F# is to copy the design time dll but this is unnecessary in cases where you don't use Type Providers at all.

## Pros and Cons

The advantages of making this adjustment to F# are that we won't be required an additional dll in some scenarios.

The disadvantages of making this adjustment to F# might be that we will be transforming an error in a warning, but I can't see anything wrong with it.

## Extra information

XS

Related suggestions: https://github.com/fsharp/FSharp.Data/issues/647

## Affidavit (please submit!)

Please tick this by placing a cross in the box:
* [X] This is not a question (e.g. like one you might ask on [stackoverflow](http://stackoverflow.com)) and I have searched stackoverflow for discussions of this issue
* [X] I have [searched both open and closed suggestions on this site](http://github.com/fsharp/fslang-suggestions/issues) and believe this is not a duplicate
* [X] This is not something which has obviously "already been decided" in previous versions of F#. If you're questioning a fundamental design decision that has obviously already been taken (e.g. "Make F# untyped") then please don't submit it.

Please tick all that apply:
* [X] This is not a breaking change to the F# language design
* [X] I or my company would be willing to help implement and/or test this

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue names no files, tests, or compiler entry points. Start by locating the F# code that loads a library's design-time component for Type Providers, then determine how the missing-component error is reported; done means non-Type Provider scenarios continue with a warning while relevant Type Provider behavior remains covered.

Written by the indexing model from the issue text.

Assessment

Tech stack
fsharp
Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.