Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
dotNET Platform
fsharp
提交
af018f8b
F
fsharp
项目概览
dotNET Platform
/
fsharp
12 个月 前同步成功
通知
0
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
fsharp
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
af018f8b
编写于
10月 12, 2018
作者:
D
Don Syme
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of
http://github.com/Microsoft/visualfsharp
into anon-1
上级
836d7d27
e42cea2d
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
142 addition
and
142 deletion
+142
-142
.vsts-pr.yaml
.vsts-pr.yaml
+29
-27
.vsts-signed.yaml
.vsts-signed.yaml
+85
-89
src/fsharp/IlxGen.fs
src/fsharp/IlxGen.fs
+22
-15
src/scripts/scriptlib.fsx
src/scripts/scriptlib.fsx
+6
-6
vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj
vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj
+0
-5
vsintegration/tests/UnitTests/SemanticColorizationServiceTests.fs
...ation/tests/UnitTests/SemanticColorizationServiceTests.fs
+0
-0
vsintegration/tests/UnitTests/SyntacticColorizationServiceTests.fs
...tion/tests/UnitTests/SyntacticColorizationServiceTests.fs
+0
-0
未找到文件。
.vsts-pr.yaml
浏览文件 @
af018f8b
phases
:
-
phase
:
Linux
queue
:
name
:
Hosted Linux Preview
timeoutInMinutes
:
90
parallel
:
2
jobs
:
-
job
:
Linux
pool
:
vmImage
:
ubuntu-16.04
timeoutInMinutes
:
90
strategy
:
maxParallel
:
2
matrix
:
release_default
:
_command
:
./mono/cibuild.sh
...
...
@@ -13,20 +14,21 @@ phases:
# _command: ./fcs/build.sh
# _args: Build
steps
:
-
script
:
$(_command) $(_args)
-
task
:
PublishBuildArtifacts@1
inputs
:
PathtoPublish
:
'
$(Build.SourcesDirectory)/tests/TestResults'
ArtifactName
:
'
Linux
$(_command)
$(_args)'
publishLocation
:
Container
continueOnError
:
true
condition
:
failed()
-
script
:
$(_command) $(_args)
-
task
:
PublishBuildArtifacts@1
inputs
:
PathtoPublish
:
'
$(Build.SourcesDirectory)/tests/TestResults'
ArtifactName
:
'
Linux
$(_command)
$(_args)'
publishLocation
:
Container
continueOnError
:
true
condition
:
failed()
-
phase
:
Windows
queue
:
name
:
Hosted VS2017
timeoutInMinutes
:
90
parallel
:
7
-
job
:
Windows
pool
:
vmImage
:
vs2017-win2016
timeoutInMinutes
:
90
strategy
:
maxParallel
:
7
matrix
:
ci_part1
:
_command
:
build.cmd
...
...
@@ -50,11 +52,11 @@ phases:
_command
:
fcs\build.cmd
_args
:
TestAndNuget
steps
:
-
script
:
$(_command) $(_args)
-
task
:
PublishBuildArtifacts@1
inputs
:
PathtoPublish
:
'
$(Build.SourcesDirectory)\tests\TestResults'
ArtifactName
:
'
Windows
$(_command)
$(_args)'
publishLocation
:
Container
continueOnError
:
true
condition
:
failed()
-
script
:
$(_command) $(_args)
-
task
:
PublishBuildArtifacts@1
inputs
:
PathtoPublish
:
'
$(Build.SourcesDirectory)\tests\TestResults'
ArtifactName
:
'
Windows
$(_command)
$(_args)'
publishLocation
:
Container
continueOnError
:
true
condition
:
failed()
.vsts-signed.yaml
浏览文件 @
af018f8b
queue
:
name
:
VSEng-MicroBuildVS2017
jobs
:
-
job
:
Full_Signed
pool
:
name
:
VSEng-MicroBuildVS2017
timeoutInMinutes
:
300
demands
:
-
visualstudio
-
DotNetFramework
-
msbuild
variables
:
MSBuildConfiguration
:
'
Release'
steps
:
# Install Signing Plugin
-
task
:
ms-vseng.MicroBuildTasks.30666190-6959-11e5-9f96-f56098202fef.MicroBuildSigningPlugin@1
displayName
:
Install Signing Plugin
inputs
:
signType
:
real
condition
:
and(succeeded(), in(variables['PB_SignType'], 'test', 'real'))
variables
:
MSBuildConfiguration
:
'
Release'
# Install Swix Plugin
-
task
:
ms-vseng.MicroBuildTasks.32f78468-e895-4f47-962c-58a699361df8.MicroBuildSwixPlugin@1
displayName
:
Install Swix Plugin
steps
:
# Install Signing Plugin
-
task
:
ms-vseng.MicroBuildTasks.30666190-6959-11e5-9f96-f56098202fef.MicroBuildSigningPlugin@1
displayName
:
Install Signing Plugin
inputs
:
signType
:
real
condition
:
and(succeeded(), in(variables['PB_SignType'], 'test', 'real'))
# Run build.cmd
-
task
:
CmdLine@1
displayName
:
Run build.cmd
inputs
:
filename
:
build.cmd
arguments
:
microbuild
# Install Swix Plugin
-
task
:
ms-vseng.MicroBuildTasks.32f78468-e895-4f47-962c-58a699361df8.MicroBuildSwixPlugin@1
displayName
:
Install Swix Plugin
# Publish nightly package to MyGet
-
task
:
PowerShell@1
displayName
:
Publish nightly package to MyGet
inputs
:
scriptName
:
'
setup\publish-assets.ps1'
arguments
:
'
-binariesPath
$(MSBuildConfiguration)
-branchName
$(Build.SourceBranch)
-apiKey
$(FSharp.MyGetApiKey)'
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'myget'))
# Run build.cmd
-
task
:
CmdLine@1
displayName
:
Run build.cmd
inputs
:
filename
:
build.cmd
arguments
:
microbuild
# Publish packages to Azure Blob Storage
-
task
:
MSBuild@1
displayName
:
Publish packages to Azure Blob Storage
inputs
:
solution
:
PublishToBlob.proj
msbuildArguments
:
'
/t:Build
/p:ExpectedFeedUrl=$(PB_PublishBlobFeedUrl)
/p:AccountKey=$(PB_PublishBlobFeedKey)
/p:ManifestBranch=$(SourceBranch)
/p:ManifestCommit=$(SourceVersion)
/p:ManifestBuildId=$(OfficialBuildId)'
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'blob'))
# Publish nightly package to MyGet
-
task
:
PowerShell@1
displayName
:
Publish nightly package to MyGet
inputs
:
scriptName
:
'
setup\publish-assets.ps1'
arguments
:
'
-binariesPath
$(MSBuildConfiguration)
-branchName
$(Build.SourceBranch)
-apiKey
$(FSharp.MyGetApiKey)'
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'myget'))
# Create static drop
-
task
:
PublishBuildArtifacts@1
displayName
:
Create static drop
inputs
:
PathtoPublish
:
'
$(MSBuildConfiguration)'
ArtifactName
:
'
$(Build.BuildNumber)'
publishLocation
:
FilePath
TargetPath
:
'
$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)'
Parallel
:
true
ParallelCount
:
64
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'drop'))
# Publish packages to Azure Blob Storage
-
task
:
MSBuild@1
displayName
:
Publish packages to Azure Blob Storage
inputs
:
solution
:
PublishToBlob.proj
msbuildArguments
:
'
/t:Build
/p:ExpectedFeedUrl=$(PB_PublishBlobFeedUrl)
/p:AccountKey=$(PB_PublishBlobFeedKey)
/p:ManifestBranch=$(SourceBranch)
/p:ManifestCommit=$(SourceVersion)
/p:ManifestBuildId=$(OfficialBuildId)'
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'blob'))
# Publish symbols
-
task
:
PublishSymbols@1
displayName
:
Publish symbols
inputs
:
SymbolsPath
:
'
$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)\$(Build.BuildNumber)\Symbols'
SearchPattern
:
'
**\*.dll;**\*.exe;**\*.pdb'
SymbolsFolder
:
'
$(Build.SourcesDirectory)\$(MSBuildConfiguration)'
TreatNotIndexedAsWarning
:
true
SymbolsProduct
:
'
$(Build.DefinitionName)'
SymbolsVersion
:
'
$(Build.BuildNumber)'
continueOnError
:
true
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'symbols'))
# Create static drop
-
task
:
PublishBuildArtifacts@1
displayName
:
Create static drop
inputs
:
PathtoPublish
:
'
$(MSBuildConfiguration)'
ArtifactName
:
'
$(Build.BuildNumber)'
publishLocation
:
FilePath
TargetPath
:
'
$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)'
Parallel
:
true
ParallelCount
:
64
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'drop'))
# Upload VSTS Drop
-
task
:
ms-vseng.MicroBuildTasks.4305a8de-ba66-4d8b-b2d1-0dc4ecbbf5e8.MicroBuildUploadVstsDropFolder@1
displayName
:
Upload VSTS Drop
inputs
:
DropFolder
:
'
$(Build.SourcesDirectory)\$(MSBuildConfiguration)\insertion'
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'vsts'))
# Publish symbols
-
task
:
PublishSymbols@1
displayName
:
Publish symbols
inputs
:
SymbolsPath
:
'
$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)\$(Build.BuildNumber)\Symbols'
SearchPattern
:
'
**\*.dll;**\*.exe;**\*.pdb'
SymbolsFolder
:
'
$(Build.SourcesDirectory)\$(MSBuildConfiguration)'
TreatNotIndexedAsWarning
:
true
SymbolsProduct
:
'
$(Build.DefinitionName)'
SymbolsVersion
:
'
$(Build.BuildNumber)'
continueOnError
:
true
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'symbols'))
# Execute cleanup tasks
-
task
:
ms-vseng.MicroBuildTasks.521a94ea-9e68-468a-8167-6dcf361ea776.MicroBuildCleanup@1
displayName
:
Execute cleanup tasks
condition
:
succeededOrFailed()
# Upload VSTS Drop
-
task
:
ms-vseng.MicroBuildTasks.4305a8de-ba66-4d8b-b2d1-0dc4ecbbf5e8.MicroBuildUploadVstsDropFolder@1
displayName
:
Upload VSTS Drop
inputs
:
DropFolder
:
'
$(Build.SourcesDirectory)\$(MSBuildConfiguration)\insertion'
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'vsts'))
# Publish Artifact: MicroBuildOutputs
-
task
:
PublishBuildArtifacts@1
displayName
:
'
Publish
Artifact:
MicroBuildOutputs'
inputs
:
PathtoPublish
:
'
$(Build.StagingDirectory)\MicroBuild\Output'
ArtifactName
:
MicroBuildOutputs
publishLocation
:
Container
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'microbuild'))
# Execute cleanup tasks
-
task
:
ms-vseng.MicroBuildTasks.521a94ea-9e68-468a-8167-6dcf361ea776.MicroBuildCleanup@1
displayName
:
Execute cleanup tasks
condition
:
succeededOrFailed()
# Publish Artifact: MicroBuildOutputs
-
task
:
PublishBuildArtifacts@1
displayName
:
'
Publish
Artifact:
MicroBuildOutputs'
inputs
:
PathtoPublish
:
'
$(Build.StagingDirectory)\MicroBuild\Output'
ArtifactName
:
MicroBuildOutputs
publishLocation
:
Container
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'microbuild'))
# Publish Symbols to Symweb
-
task
:
ms-vscs-artifact.build-tasks.artifactSymbolTask-1.artifactSymbolTask@0
displayName
:
Publish symbols to SymWeb
inputs
:
symbolServiceURI
:
'
https://microsoft.artifacts.visualstudio.com/DefaultCollection'
sourcePath
:
'
$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)\$(Build.BuildNumber)\Symbols'
usePat
:
false
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'symweb'))
# Publish Symbols to Symweb
-
task
:
ms-vscs-artifact.build-tasks.artifactSymbolTask-1.artifactSymbolTask@0
displayName
:
Publish symbols to SymWeb
inputs
:
symbolServiceURI
:
'
https://microsoft.artifacts.visualstudio.com/DefaultCollection'
sourcePath
:
'
$(DropRoot)\$(Build.DefinitionName)\$(Build.SourceBranchName)\$(Build.BuildNumber)\Symbols'
usePat
:
false
condition
:
and(succeeded(), contains(variables['PB_PublishType'], 'symweb'))
src/fsharp/IlxGen.fs
浏览文件 @
af018f8b
...
...
@@ -5279,25 +5279,32 @@ and ComputeFlagFixupsForMemberBinding cenv (v:Val,memberInfo:ValMemberInfo) =
let
otcref
=
tcrefOfAppTy
cenv
.
g
oty
let
tcref
=
v
.
MemberApparentEntity
let
useMethodImpl
=
// REVIEW: it would be good to get rid of this special casing of Compare and GetHashCode during code generation
let
isCompare
=
(
Option
.
isSome
tcref
.
GeneratedCompareToValues
&&
typeEquiv
cenv
.
g
oty
cenv
.
g
.
mk_IComparable_ty
)
||
(
Option
.
isSome
tcref
.
GeneratedCompareToValues
&&
tyconRefEq
cenv
.
g
cenv
.
g
.
system_GenericIComparable_tcref
otcref
)
let
isGenericEquals
=
(
Option
.
isSome
tcref
.
GeneratedHashAndEqualsWithComparerValues
&&
tyconRefEq
cenv
.
g
cenv
.
g
.
system_GenericIEquatable_tcref
otcref
)
let
isStructural
=
(
Option
.
isSome
tcref
.
GeneratedCompareToWithComparerValues
&&
typeEquiv
cenv
.
g
oty
cenv
.
g
.
mk_IStructuralComparable_ty
)
||
(
Option
.
isSome
tcref
.
GeneratedHashAndEqualsWithComparerValues
&&
typeEquiv
cenv
.
g
oty
cenv
.
g
.
mk_IStructuralEquatable_ty
)
isInterfaceTy
cenv
.
g
oty
&&
not
isCompare
&&
not
isStructural
&&
not
isGenericEquals
let
useMethodImpl
=
// REVIEW: it would be good to get rid of this special casing of Compare and GetHashCode during code generation
isInterfaceTy
cenv
.
g
oty
&&
(
let
isCompare
=
Option
.
isSome
tcref
.
GeneratedCompareToValues
&&
(
typeEquiv
cenv
.
g
oty
cenv
.
g
.
mk_IComparable_ty
||
tyconRefEq
cenv
.
g
cenv
.
g
.
system_GenericIComparable_tcref
otcref
)
not
isCompare
)
&&
(
let
isGenericEquals
=
Option
.
isSome
tcref
.
GeneratedHashAndEqualsWithComparerValues
&&
tyconRefEq
cenv
.
g
cenv
.
g
.
system_GenericIEquatable_tcref
otcref
not
isGenericEquals
)
&&
(
let
isStructural
=
(
Option
.
isSome
tcref
.
GeneratedCompareToWithComparerValues
&&
typeEquiv
cenv
.
g
oty
cenv
.
g
.
mk_IStructuralComparable_ty
)
||
(
Option
.
isSome
tcref
.
GeneratedHashAndEqualsWithComparerValues
&&
typeEquiv
cenv
.
g
oty
cenv
.
g
.
mk_IStructuralEquatable_ty
)
not
isStructural
)
let
nameOfOverridingMethod
=
GenNameOfOverridingMethod
cenv
(
useMethodImpl
,
slotsig
)
(
if
useMethodImpl
then
fixupMethodImplFlags
>>
renameMethodDef
nameOfOverridingMethod
else
fixupVirtualSlotFlags
>>
renameMethodDef
nameOfOverridingMethod
))
if
useMethodImpl
then
fixupMethodImplFlags
>>
renameMethodDef
nameOfOverridingMethod
else
fixupVirtualSlotFlags
>>
renameMethodDef
nameOfOverridingMethod
)
and
ComputeMethodImplAttribs
cenv
(_
v
:
Val
)
attrs
=
let
implflags
=
...
...
src/scripts/scriptlib.fsx
浏览文件 @
af018f8b
...
...
@@ -60,15 +60,15 @@ module Scripting =
let
(++)
a
b
=
Path
.
Combine
(
a
,
b
)
let
getBasename
a
=
Path
.
GetFileNameWithoutExtension
a
let
getFullPath
a
=
Path
.
GetFullPath
a
let
getFilename
a
=
Path
.
GetFileName
a
let
getDirectoryName
a
=
Path
.
GetDirectoryName
a
let
getBasename
(
a
:
string
)
=
Path
.
GetFileNameWithoutExtension
(
a
)
let
getFullPath
a
=
Path
.
GetFullPath
(
a
)
let
getFilename
(
a
:
string
)
=
Path
.
GetFileName
(
a
)
let
getDirectoryName
(
a
:
string
)
=
Path
.
GetDirectoryName
(
a
)
let
copyFile
source
dir
=
let
dest
=
if
not
(
Directory
.
Exists
dir
)
then
Directory
.
CreateDirectory
dir
|>
ignore
let
result
=
Path
.
Combine
(
dir
,
Path
.
GetFileN
ame
source
)
let
result
=
Path
.
Combine
(
dir
,
getFilen
ame
source
)
result
//printfn "Copy %s --> %s" source dest
File
.
Copy
(
source
,
dest
,
true
)
...
...
@@ -96,7 +96,7 @@ module Scripting =
let
processExePath
baseDir
exe
=
if
Path
.
IsPathRooted
(
exe
)
then
exe
else
match
Path
.
GetDirectoryName
(
exe
)
with
match
getDirectoryName
exe
with
|
""
->
exe
|
_
->
Path
.
Combine
(
baseDir
,
exe
)
|>
Path
.
GetFullPath
...
...
vsintegration/Vsix/VisualFSharpFull/VisualFSharpFull.csproj
浏览文件 @
af018f8b
...
...
@@ -22,11 +22,6 @@
<Link>
License.txt
</Link>
<IncludeInVSIX>
true
</IncludeInVSIX>
</Content>
<Content
Include=
"$(FSharpSourcesRoot)\..\packages\System.ValueTuple.4.4.0\System.ValueTuple.4.4.0.nupkg"
>
<CopyToOutputDirectory>
PreserveNewest
</CopyToOutputDirectory>
<Link>
packages\System.ValueTuple.4.4.0.nupkg
</Link>
<IncludeInVSIX>
true
</IncludeInVSIX>
</Content>
<Content
Include=
"$(FSharpSourcesRoot)\..\packages\Microsoft.VisualFSharp.Type.Providers.Redist\$(MicrosoftVisualFSharpTypeProvidersRedistPackageVersion)\content\4.3.0.0\FSharp.Data.TypeProviders.dll"
>
<CopyToOutputDirectory>
PreserveNewest
</CopyToOutputDirectory>
<Link>
FSharp.Data.TypeProviders.dll
</Link>
...
...
vsintegration/tests/
unitt
ests/SemanticColorizationServiceTests.fs
→
vsintegration/tests/
UnitT
ests/SemanticColorizationServiceTests.fs
浏览文件 @
af018f8b
文件已移动
vsintegration/tests/
unitt
ests/SyntacticColorizationServiceTests.fs
→
vsintegration/tests/
UnitT
ests/SyntacticColorizationServiceTests.fs
浏览文件 @
af018f8b
文件已移动
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录