Skip to content

Commit 3fcc393

Browse files
Merge remote-tracking branch 'upstream/master'
2 parents dcfd9f8 + 52ff100 commit 3fcc393

File tree

5 files changed

+59
-26
lines changed

5 files changed

+59
-26
lines changed

README.md

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ F# Compiler Service
33

44
The F# compiler services package contains a custom build of the F# compiler that
55
exposes additional functionality for implementing F# language bindings, additional
6-
tools based on the compiler or refactoring tools. The package also includes F#
6+
tools based on the compiler or refactoring tools. The package also includes F#
77
interactive service that can be used for embedding F# scripting into your applications.
88

99
Documentation
@@ -12,7 +12,6 @@ Documentation
1212
For more information about the project, see:
1313

1414
* [F# Compiler Service documentation](http://fsharp.github.io/FSharp.Compiler.Service/)
15-
* [FSharp.Compiler.Service package on NuGet](https://www.nuget.org/packages/FSharp.Compiler.Service)
1615
* [Developer notes explain the project structure](http://fsharp.github.io/FSharp.Compiler.Service/devnotes.html)
1716

1817
Build Status
@@ -22,6 +21,32 @@ Head (branch ``master``), Mono 3.x, OSX + unit tests (Travis) [![Build Status](h
2221

2322
Head (branch ``master``), Windows Server 2012 R2 + unit tests (AppVeyor) [![Build status](https://ci.appveyor.com/api/projects/status/3yllu2qh19brk61d)](https://ci.appveyor.com/project/fsgit/fsharp-compiler-service)
2423

24+
NuGet Feed
25+
------------
26+
27+
Stable builds are available in the NuGet Gallery:
28+
[https://www.nuget.org/packages/FSharp.Compiler.Service](https://www.nuget.org/packages/FSharp.Compiler.Service)
29+
30+
All AppVeyor builds are available using the NuGet feed: https://ci.appveyor.com/nuget/fsgit-fsharp-compiler-service
31+
32+
If using Paket, add the source at the top of `paket.dependencies`.
33+
34+
```
35+
source https://www.nuget.org/api/v2
36+
source https://ci.appveyor.com/nuget/fsgit-fsharp-compiler-service
37+
```
38+
39+
See the build history for a list of available versions: https://ci.appveyor.com/project/fsgit/fsharp-compiler-service/history
40+
41+
Here are some options for specifying the dependency:
42+
43+
```
44+
nuget FSharp.Compiler.Service
45+
nuget FSharp.Compiler.Service prerelease
46+
nuget FSharp.Compiler.Service 1.3.1.0
47+
nuget FSharp.Compiler.Service 1.3.1.1-b402
48+
```
49+
2550
Dev Guide
2651
----------
2752

RELEASE_NOTES.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
#### 1.3.1.1 -
2+
13
#### 1.3.1.0 -
24
* simplified source indexing with new SourceLink
35
* Add noframework option in AST compiler methods

appveyor.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@ init:
33
build_script:
44
- cmd: build.cmd Release
55
test: off
6-
version: 0.0.49.{build}
6+
version: '{build}'
77
artifacts:
88
- path: bin\*.nupkg

build.fsx

Lines changed: 27 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
#r "packages/FAKE/tools/FakeLib.dll"
77
#load "packages/SourceLink.Fake/tools/SourceLink.fsx"
88
open System
9-
open Fake
9+
open Fake.AppVeyor
10+
open Fake
1011
open Fake.Git
1112
open Fake.ReleaseNotesHelper
1213
open Fake.AssemblyInfoFile
@@ -38,21 +39,35 @@ let netFrameworks = ["v4.0"; "v4.5"]
3839

3940
// Read release notes & version info from RELEASE_NOTES.md
4041
let release = LoadReleaseNotes "RELEASE_NOTES.md"
41-
let isAppVeyorBuild = environVar "APPVEYOR" <> null
42-
let nugetVersion =
43-
if isAppVeyorBuild then sprintf "%s-a%s" release.NugetVersion (DateTime.UtcNow.ToString "yyMMddHHmm")
44-
else release.NugetVersion
42+
let isAppVeyorBuild = buildServer = BuildServer.AppVeyor
43+
let isVersionTag tag = Version.TryParse tag |> fst
44+
let hasRepoVersionTag = isAppVeyorBuild && AppVeyorEnvironment.RepoTag && isVersionTag AppVeyorEnvironment.RepoTagName
45+
let assemblyVersion = if hasRepoVersionTag then AppVeyorEnvironment.RepoTagName else release.NugetVersion
46+
let buildDate = DateTime.UtcNow
47+
let buildVersion =
48+
if hasRepoVersionTag then assemblyVersion
49+
else if isAppVeyorBuild then sprintf "%s-b%s" assemblyVersion AppVeyorEnvironment.BuildNumber
50+
else sprintf "%s-a%s" assemblyVersion (buildDate.ToString "yyMMddHHmm")
4551

4652
Target "BuildVersion" (fun _ ->
47-
Shell.Exec("appveyor", sprintf "UpdateBuild -Version \"%s\"" nugetVersion) |> ignore
53+
Shell.Exec("appveyor", sprintf "UpdateBuild -Version \"%s\"" buildVersion) |> ignore
4854
)
4955

5056
// Generate assembly info files with the right version & up-to-date information
5157
Target "AssemblyInfo" (fun _ ->
52-
let fileName = "src/assemblyinfo/assemblyinfo.shared.fs"
53-
CreateFSharpAssemblyInfo fileName
54-
[ Attribute.Version release.AssemblyVersion
55-
Attribute.FileVersion release.AssemblyVersion]
58+
let fileName = "src/assemblyinfo/assemblyinfo.shared.fs"
59+
// add json info to the informational version
60+
let iv = Text.StringBuilder() // json
61+
iv.Appendf "{\\\"buildVersion\\\":\\\"%s\\\"" buildVersion
62+
iv.Appendf ",\\\"buildDate\\\":\\\"%s\\\"" (buildDate.ToString "yyyy'-'MM'-'dd'T'HH':'mm':'sszzz")
63+
if isAppVeyorBuild then
64+
iv.Appendf ",\\\"gitCommit\\\":\\\"%s\\\"" AppVeyor.AppVeyorEnvironment.RepoCommit
65+
iv.Appendf ",\\\"gitBranch\\\":\\\"%s\\\"" AppVeyor.AppVeyorEnvironment.RepoBranch
66+
iv.Appendf "}"
67+
CreateFSharpAssemblyInfo fileName
68+
[ Attribute.Version assemblyVersion
69+
Attribute.FileVersion assemblyVersion
70+
Attribute.InformationalVersion iv.String ]
5671
)
5772

5873
// --------------------------------------------------------------------------------------
@@ -136,7 +151,7 @@ Target "NuGet" (fun _ ->
136151
Project = project
137152
Summary = summary
138153
Description = description
139-
Version = nugetVersion
154+
Version = buildVersion
140155
ReleaseNotes = release.Notes |> toLines
141156
Tags = tags
142157
OutputPath = "bin"
@@ -167,7 +182,7 @@ Target "ReleaseDocs" (fun _ ->
167182
fullclean tempDocsDir
168183
CopyRecursive "docs/output" "temp/gh-pages" true |> printfn "%A"
169184
StageAll tempDocsDir
170-
Commit tempDocsDir (sprintf "Update generated documentation for version %s" release.NugetVersion)
185+
Commit tempDocsDir (sprintf "Update generated documentation for version %s" buildVersion)
171186
Branches.push "temp/gh-pages"
172187
)
173188

docs/tools/generate.fsx

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,18 +20,9 @@ let info =
2020
// For typical project, no changes are needed below
2121
// --------------------------------------------------------------------------------------
2222

23-
#I "../../packages/FSharpVSPowerTools.Core/lib/net45"
24-
#I "../../packages/FSharp.Formatting/lib/net40"
25-
#I "../../packages/FSharp.Compiler.Service/lib/net45"
23+
#load "../../packages/FSharp.Formatting/FSharp.Formatting.fsx"
2624
#I "../../packages/FAKE/tools"
27-
#r "FSharpVSPowerTools.Core.dll"
28-
#r "System.Web.Razor.dll"
29-
#r "FakeLib.dll"
30-
#r "FSharp.Compiler.Service.dll"
31-
#r "RazorEngine.dll"
32-
#r "FSharp.Literate.dll"
33-
#r "FSharp.CodeFormat.dll"
34-
#r "FSharp.MetadataFormat.dll"
25+
#r "../../packages/FAKE/tools/FakeLib.dll"
3526
open Fake
3627
open System.IO
3728
open Fake.FileHelper

0 commit comments

Comments
 (0)