-
Notifications
You must be signed in to change notification settings - Fork 830
Add Reference Assembly support - 'refonly' and 'refout' compiler options #12334
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
Merged
Merged
Changes from all commits
Commits
Show all changes
131 commits
Select commit
Hold shift + click to select a range
2411f75
Adding 'refonly' command line option
TIHan 1b6dc26
Added a simple test, but it needs to fail
TIHan ee89986
We need to emit two kinds of reference assemblies. one with optimizat…
TIHan 9dcdbb0
Passing reference assembly flag to IlxGen
TIHan 84cd6a8
Emit ReferenceAssemblyAttribute
TIHan 3a0a7be
Added ref-assembly rules for private and internal methods
TIHan 5d78b77
use --refonly for now
TIHan 2f1af9b
Use HasFSharpAttribute
TIHan 512743c
Added a failing test
TIHan 4af859b
Test passes
TIHan 6b5c032
Trying to handle anonymous record types
TIHan 84354ba
Cleaning up. Using ILMemberAccess instead of Accessibility due to how…
TIHan 6d93c92
Using notlazy
TIHan c31ce72
Added another comment
TIHan 0d02203
Added mkDummyParameterVal
TIHan 8f5cbf5
Using taccessPublic
TIHan daf1847
More cleanup
TIHan 9d0c7f6
Minor comment update
TIHan 47d3b5a
more cleanup
TIHan 5e4460e
merging
TIHan 3468094
Adding FreeAnonRecdTypeInfos set
TIHan 23d0da7
Adding options
TIHan 8a1504f
Flowing free anonrecdtypeinfos
TIHan d7e491e
Fixing build
TIHan 7ff20d6
Tests pass. Able to emit partial ref assembly with anon recds
TIHan a023c38
Minor rename
TIHan 6801573
Added a failing test
TIHan 91dbaa0
Added failing test
TIHan 4931062
Simpler handling of building lambdas
TIHan e5c1cc8
Trying to figure out default param names
TIHan bb26684
Adding TryEmitReferenceAssembly
TIHan 7415f4a
Merge remote-tracking branch 'remote/main' into ref-assembly-output
TIHan ee33c6d
Moving some reference assembly generation rules to ilwrite
TIHan 180f339
Fixing build
TIHan e36c696
Added new compiler option '--refout:<file>'
TIHan 32044c5
Fixing one of the tests
TIHan 3088747
refonly/refout should only be part of fsc
TIHan f475e58
Merge remote-tracking branch 'remote/main' into ref-assembly-output
TIHan cfa275c
Updating help baseline
TIHan 1604fa0
Merge remote-tracking branch 'remote/main' into ref-assembly-output
TIHan 6f6b2a6
Merging
TIHan f4c9980
fixed build
TIHan 193ba49
Fixing build. Added basic deterministic test
TIHan 4793882
Failing determinism test
TIHan 69fb788
Added DeterministicTests
TIHan 067091b
Adding determinism task for CI
TIHan 5e14bbc
moving yml to pipelines
TIHan 2a9bcf1
Trying to fix determinism CI
TIHan 7a5ba80
quick fix
TIHan cb85986
removing job
TIHan cebcc6c
Trying to fix ci
TIHan e4c046f
Removing this
TIHan 3bdd39d
Turn on determinism for build
TIHan c0c83e4
Trying to fix
TIHan d4984eb
This works
TIHan 1b3fdcf
Determinism
TIHan b6ac933
Building
TIHan 447ab7a
Forgot to run test
TIHan 2e4f679
Adding job
TIHan 6f22cb8
Trying to fix job
TIHan 50a041d
Remove job
TIHan 78f53ac
Trying to figure out jobs
TIHan 222dad3
Updating job
TIHan b22c2e5
Fixing determinism job
TIHan f1f2cc6
Fixing job
TIHan 3c2d413
Update test-determinism.ps1
TIHan 246bcfe
Update FSharp.Profiles.props
TIHan 1da9044
Update test-determinism.ps1
TIHan 9babedc
Update FSharpBuild.Directory.Build.props
TIHan c353628
Merged with main
TIHan 2e6caaa
Merge branch 'ref-assembly-output' of github.com:TIHan/visualfsharp i…
TIHan 62c3254
Merge branch 'main' into ref-assembly-output
vzarytovskii a452cba
Merge branch 'main' into ref-assembly-output
vzarytovskii 19e9ce5
Merged with main
TIHan eac93e3
Trying to fix build
TIHan ee90edc
Merge branch 'ref-assembly-output' of github.com:TIHan/visualfsharp i…
TIHan ee77c70
Trying to fix build
TIHan f868a05
fixing build
TIHan e4b2e1e
Fixing build
TIHan 70c2fb1
fixing build
TIHan a188671
Fixing build
TIHan ddd4103
Remove comment as it is not accurate
TIHan d29ffde
Removed generating metadata assembly for IDEs
TIHan eb998bf
Merged main. Removed metadataOnly changes in IlxGen
TIHan 2284b7c
Fixing build
TIHan 4873683
Removing tests
TIHan 0d453b5
Update ParseAndCheckInputs.fs
TIHan c1bc0f7
Update TypedTree.fs
TIHan a461988
Fixing build
TIHan dca1a16
Update TypedTreeOps.fs
TIHan ed1bdc0
Fixing build
TIHan 9d5c0d2
Fixing build
TIHan 919c100
Fixing build
TIHan 575d38a
Fixing build
TIHan aea1908
Merge branch 'main' into ref-assembly-output-part1
vzarytovskii c124e18
Merged 'upstream/main'
vzarytovskii c90d810
Update baseline for fcs 'help' test
vzarytovskii 18717bc
Merge branch 'ref-assembly-output-part1' of https://github.com/tihan/…
vzarytovskii 460e408
Added a test for '--refout', with outout and IL verification
vzarytovskii 01bf4d9
Added tests to verify that static linking and refassemblies cannot be…
vzarytovskii 42b783d
Add mvid test for refonly + private members. It is failing on purpose…
vzarytovskii 1104455
WIP: Add some more to the tests
vzarytovskii f12e73b
Added more tests for MVID
vzarytovskii 70ffc39
wip
vzarytovskii bafd958
Added some todos + have more readable canGenMethodDef
vzarytovskii 94d29b7
Add some more tests
vzarytovskii 1c39033
Merge remote-tracking branch 'upstream/main' into ref-assembly-output…
vzarytovskii 6ef6eea
[WIP]: ignore properties if we don't have getter/setter, or we don't …
vzarytovskii e701883
Don't generate private types, generate nested internal types only if …
vzarytovskii dad0c8c
Merged upstream/main
vzarytovskii a93d820
Merge fix
vzarytovskii 591cfb6
Another fix after merge + added more internal tests
vzarytovskii ad1e2c0
Fixed test framework after merge (output directory). Add check whethe…
vzarytovskii 00ed291
Merge branch 'main' of https://github.com/dotnet/fsharp into ref-asse…
dsyme 990e09b
Emit fields when the type is struct. Always emit types
vzarytovskii 0e9c3ad
Merge branch 'ref-assembly-output-part1' of https://github.com/tihan/…
vzarytovskii f552651
WIP: added isAttribute to ILTypeRef if type extends Attribute
vzarytovskii 22f89e5
Fix properties generation, fix generating getter/setter for attributes
vzarytovskii 48f91d9
Only check properties to generate if we are emitting reference assembly
vzarytovskii 095987d
Fixed surface area tests
vzarytovskii f204e20
Adjusted baselines for IL tests. Fixed events generation.
vzarytovskii b90c2fd
Merge branch 'ref-assembly-output-part1' of https://github.com/tihan/…
vzarytovskii 7cf2676
Cleanup unused yaml files
vzarytovskii f1a7ff4
Fixed docs for ILMemberAccess
vzarytovskii 2b7a114
Merge 'upstream/main'
vzarytovskii 033a112
Update message + rename property for ILTypeDef to be more clear
vzarytovskii 1b4ff9d
Surface area tests
vzarytovskii 74ff369
Fixed baseline error message
vzarytovskii 7ba8563
Merge remote-tracking branch 'upstream/main' into ref-assembly-output…
vzarytovskii 51e9d5a
After-merge fixes
vzarytovskii 897d9c1
Fix tests
vzarytovskii File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,2 +1,2 @@ | ||
| @echo off | ||
| powershell -noprofile -executionPolicy RemoteSigned -file "%~dp0\test-determinism.ps1" %* | ||
| powershell -noprofile -executionPolicy RemoteSigned -file "%~dp0\test-determinism.ps1" %* |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.