Skip to content

Commit d1f9221

Browse files
authored
Release release-v1.7.3
***PUBLISH_RELEASE***
2 parents b053229 + 5fbfe0e commit d1f9221

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+1383
-3141
lines changed

Diff for: .github/ISSUE_TEMPLATE.md

-2
This file was deleted.

Diff for: .github/PULL_REQUEST_TEMPLATE.md

-36
This file was deleted.

Diff for: .github_changelog_generator

-1
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,4 @@ enhancement_labels=Type: enhancement
1010
bug_labels=Type: bug
1111
merge_prefix=**Documentation and other chores:**
1212
unreleased_label=**Changes available only in 'Preview' NuGet packages:**
13-
issue_line_labels=Breaking-Change,documentation
1413
author=false

Diff for: README.md

+9-3
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,20 @@
55

66
-----
77

8-
### Welcome to the **nanoFramework** Core Library repository!
8+
### Welcome to the **nanoFramework** Base Class Library repository!
99

1010
## Build status
1111

1212
| Component | Build Status | NuGet Package |
1313
|:-|---|---|
14-
| Core Library | [![Build Status](https://dev.azure.com/nanoframework/CoreLibrary/_apis/build/status/nanoframework.lib-CoreLibrary?branchName=develop)](https://dev.azure.com/nanoframework/CoreLibrary/_build/latest?definitionId=24?branchName=master) | [![NuGet](https://img.shields.io/nuget/v/nanoFramework.CoreLibrary.svg?label=NuGet&style=flat&logo=nuget)](https://www.nuget.org/packages/nanoFramework.CoreLibrary/) |
15-
| Core Library (preview) | [![Build Status](https://dev.azure.com/nanoframework/CoreLibrary/_apis/build/status/nanoframework.lib-CoreLibrary?branchName=develop)](https://dev.azure.com/nanoframework/CoreLibrary/_build/latest?definitionId=24?branchName=develop) | [![](https://badgen.net/badge/NuGet/preview/D7B023?icon=https://simpleicons.now.sh/azuredevops/fff)](https://dev.azure.com/nanoframework/feed/_packaging?_a=package&feed=sandbox&package=nanoFramework.CoreLibrary&protocolType=NuGet&view=overview) |
14+
| Base Class Library | [![Build Status](https://dev.azure.com/nanoframework/CoreLibrary/_apis/build/status/nanoframework.lib-CoreLibrary?branchName=develop)](https://dev.azure.com/nanoframework/CoreLibrary/_build/latest?definitionId=24?branchName=master) | [![NuGet](https://img.shields.io/nuget/v/nanoFramework.CoreLibrary.svg?label=NuGet&style=flat&logo=nuget)](https://www.nuget.org/packages/nanoFramework.CoreLibrary/) |
15+
| Base Class Library w/o reflection | [![Build Status](https://dev.azure.com/nanoframework/CoreLibrary/_apis/build/status/nanoframework.lib-CoreLibrary?branchName=develop)](https://dev.azure.com/nanoframework/CoreLibrary/_build/latest?definitionId=24?branchName=master) | [![NuGet](https://img.shields.io/nuget/v/nanoFramework.CoreLibrary.NoReflection.svg?label=NuGet&style=flat&logo=nuget)](https://www.nuget.org/packages/nanoFramework.CoreLibrary.NoReflection/) |
16+
| Base Class Library (preview) | [![Build Status](https://dev.azure.com/nanoframework/CoreLibrary/_apis/build/status/nanoframework.lib-CoreLibrary?branchName=develop)](https://dev.azure.com/nanoframework/CoreLibrary/_build/latest?definitionId=24?branchName=develop) | [![](https://badgen.net/badge/NuGet/preview/D7B023?icon=https://simpleicons.now.sh/azuredevops/fff)](https://dev.azure.com/nanoframework/feed/_packaging?_a=package&feed=sandbox&package=nanoFramework.CoreLibrary&protocolType=NuGet&view=overview) |
17+
| Base Class Library w/o reflection (preview) | [![Build Status](https://dev.azure.com/nanoframework/CoreLibrary/_apis/build/status/nanoframework.lib-CoreLibrary?branchName=develop)](https://dev.azure.com/nanoframework/CoreLibrary/_build/latest?definitionId=24?branchName=develop) | [![](https://badgen.net/badge/NuGet/preview/D7B023?icon=https://simpleicons.now.sh/azuredevops/fff)](https://dev.azure.com/nanoframework/feed/_packaging?_a=package&feed=sandbox&package=nanoFramework.CoreLibrary.NoReflection&protocolType=NuGet&view=overview) |
18+
19+
## BCL Flavours
20+
21+
The **nanoFramework** Base Class Library is provided in two flavours: with or without support for System.Reflection namespace. The reason for this is that the reflection API adds up a significant size to the DLL and image size. For targets with smaller flash this can be prohibitive.
1622

1723
## Feedback and documentation
1824

Diff for: azure-pipelines.yml

+167-47
Original file line numberDiff line numberDiff line change
@@ -24,50 +24,170 @@ resources:
2424
name: nanoframework/nf-tools
2525
endpoint: nanoframework
2626

27-
pool:
28-
vmImage: 'VS2017-Win2016'
29-
30-
variables:
31-
solution: '**/source/*.sln'
32-
buildPlatform: 'Any CPU'
33-
buildConfiguration: 'Release'
34-
nugetPackageName: 'nanoFramework.CoreLibrary'
35-
repoName: 'lib-CoreLibrary'
36-
37-
steps:
38-
39-
# step from template @ nf-tools repo
40-
# all build, update and publish steps
41-
- template: azure-pipelines-templates/class-lib-build.yml@templates
42-
parameters:
43-
sonarCloudProject: 'nanoframework_lib-CoreLibrary'
44-
45-
# update dependencies
46-
- task: UpdatenFDependencies@1
47-
inputs:
48-
gitHubToken: $(GitHubToken)
49-
repositoriesToUpdate: |
50-
lib-nanoFramework.Runtime.Events
51-
lib-nanoFramework.Runtime.Native
52-
lib-Windows.Storage.Streams
53-
lib-Windows.Devices.Adc
54-
lib-Windows.Devices.I2c
55-
lib-Windows.Devices.Pwm
56-
lib-Windows.Devices.Spi
57-
lib-System.Devices.Dac
58-
lib-nanoFramework.Devices.OneWire
59-
lib-nanoFramework.Networking.Sntp
60-
lib-nanoFramework.Hardware.Stm32
61-
lib-nanoFramework.System.Math
62-
lib-nanoFramework.TI.EasyLink
63-
Json.NetMF
64-
condition: or( and( succeeded(), startsWith(variables['Build.SourceBranch'], 'refs/tags/v') ), and( succeeded(), contains(variables['getCommitMessage.COMMIT_MESSAGE'], '***UPDATE_DEPENDENTS***') ), eq(variables['UPDATE_DEPENDENTS'], 'true') )
65-
displayName: Update dependent class libs
66-
67-
# step from template @ nf-tools repo
68-
# report error
69-
- template: azure-pipelines-templates/discord-webhook-task.yml@templates
70-
parameters:
71-
status: 'failure'
72-
webhookUrl: '$(DiscordWebhook)'
73-
message: ''
27+
jobs:
28+
29+
##############################
30+
- job: Build_mscorlib
31+
condition: or( eq(variables['UPDATE_DEPENDENTS'], 'false'), eq(variables['StartReleaseCandidate'], 'true') )
32+
pool:
33+
vmImage: 'VS2017-Win2016'
34+
35+
variables:
36+
solution: '**/source/*.sln'
37+
buildPlatform: 'Any CPU'
38+
buildConfiguration: 'Release'
39+
nugetPackageName: 'nanoFramework.CoreLibrary'
40+
repoName: 'lib-CoreLibrary'
41+
42+
steps:
43+
44+
# step from template @ nf-tools repo
45+
46+
# build steps only
47+
- template: azure-pipelines-templates/class-lib-build-only.yml@templates
48+
parameters:
49+
sonarCloudProject: 'nanoframework_lib-CoreLibrary'
50+
51+
# package steps
52+
- template: azure-pipelines-templates/class-lib-package.yml@templates
53+
parameters:
54+
nugetPackageName: 'nanoFramework.CoreLibrary'
55+
56+
- template: azure-pipelines-templates/class-lib-package.yml@templates
57+
parameters:
58+
nugetPackageName: 'nanoFramework.CoreLibrary.NoReflection'
59+
60+
- template: azure-pipelines-templates/class-lib-publish.yml@templates
61+
62+
# need to push the other package to NuGet because the template above can only push one package (happens on tag builds for any branch)
63+
- task: NuGetCommand@2
64+
inputs:
65+
command: push
66+
nuGetFeedType: external
67+
allowPackageConflicts: true
68+
packagesToPush:
69+
$(Build.ArtifactStagingDirectory)/nanoFramework.CoreLibrary.NoReflection.$(MY_NUGET_VERSION).nupkg
70+
publishFeedCredentials: 'AzureArtifacts-CoreLibrary'
71+
condition: and( succeeded(), ne( variables['StartReleaseCandidate'], true ) )
72+
continueOnError: true
73+
displayName: Push "NoReflection" variant NuGet package to Azure Artifacts
74+
75+
- task: NuGetCommand@2
76+
inputs:
77+
command: push
78+
nuGetFeedType: external
79+
allowPackageConflicts: true
80+
packagesToPush:
81+
$(Build.ArtifactStagingDirectory)/nanoFramework.CoreLibrary.NoReflection.$(MY_NUGET_VERSION).nupkg
82+
publishFeedCredentials: 'NuGet-CoreLibrary'
83+
condition: and( succeeded(), ne( variables['StartReleaseCandidate'], true ) )
84+
continueOnError: true
85+
displayName: Push "NoReflection" variant NuGet package to Azure Artifacts
86+
87+
# create or update GitHub release
88+
- task: GitHubReleasePublish@1
89+
inputs:
90+
githubEndpoint: 'nanoframework'
91+
githubOwner: 'nanoframework'
92+
githubRepositoryName: $(repoName)
93+
githubTag: v$(MY_NUGET_VERSION)
94+
githubReleaseTitle: '$(nugetPackageName) Library v$(MY_NUGET_VERSION)'
95+
githubReleaseNotes: 'Check the [changelog]($(Build.Repository.Uri)/blob/$(Build.SourceBranchName)/CHANGELOG.md).<br><br><h4>Install from NuGet</h4><br>The following NuGet packages are available for download from this release:<br>:package: [.NET](https://www.nuget.org/packages/$(nugetPackageName)/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION).<br>:package: [.NET](https://www.nuget.org/packages/$(nugetPackageName)/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)<br>:package: [.NET](https://www.nuget.org/packages/$(nugetPackageName)/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION).<br>:package: [.NET (without Reflection)](https://www.nuget.org/packages/$(nugetPackageName).NoReflection/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)'
96+
githubTargetCommitsh: $(Build.SourceVersion)
97+
githubReleaseDraft: $(RELEASE_DRAFT)
98+
githubReleasePrerelease: true
99+
githubReuseDraftOnly: false
100+
githubReuseRelease: true
101+
githubEditRelease: true
102+
githubDeleteEmptyTag: true
103+
githubReleaseAsset: '$(Build.ArtifactStagingDirectory)/*.nupkg'
104+
condition: and( succeeded(), not( startsWith(variables['Build.SourceBranch'], 'refs/pull') ), not( startsWith(variables['Build.SourceBranch'], 'refs/tags/v') ), ne( variables['StartReleaseCandidate'], true ) )
105+
displayName: Create/Update GitHub PREVIEW release
106+
107+
# create or update GitHub release ON tags from release or master branches
108+
- task: GitHubReleasePublish@1
109+
inputs:
110+
githubEndpoint: 'nanoframework'
111+
githubOwner: 'nanoframework'
112+
githubRepositoryName: $(repoName)
113+
githubTag: v$(MY_NUGET_VERSION)
114+
githubReleaseTitle: '$(nugetPackageName) Library v$(MY_NUGET_VERSION)'
115+
githubReleaseNotes: 'Check the [changelog]($(Build.Repository.Uri)/blob/$(Build.SourceBranchName)/CHANGELOG.md).<br><br><h4>Install from NuGet</h4><br>The following NuGet packages are available for download from this release:<br>:package: [.NET](https://www.nuget.org/packages/$(nugetPackageName)/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION).<br>:package: [.NET](https://www.nuget.org/packages/$(nugetPackageName)/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)<br>:package: [.NET](https://www.nuget.org/packages/$(nugetPackageName)/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION).<br>:package: [.NET (without Reflection)](https://www.nuget.org/packages/$(nugetPackageName).NoReflection/$(MY_NUGET_VERSION)) v$(MY_NUGET_VERSION)'
116+
githubTargetCommitsh: $(Build.SourceVersion)
117+
githubReleaseDraft: false
118+
githubReleasePrerelease: false
119+
githubReuseDraftOnly: false
120+
githubReuseRelease: true
121+
githubEditRelease: true
122+
githubDeleteEmptyTag: true
123+
githubReleaseAsset: '$(Build.ArtifactStagingDirectory)/*.nupkg'
124+
condition: and( succeeded(), startsWith(variables['Build.SourceBranch'], 'refs/tags/v'), not(contains(variables['Build.SourceBranch'], 'preview') ), ne( variables['StartReleaseCandidate'], true ) )
125+
displayName: Create/Update GitHub stable release
126+
127+
##############################
128+
- job: Update_Dependents
129+
condition: or( and( succeeded(), startsWith(variables['Build.SourceBranch'], 'refs/tags/v'), eq(variables['StartReleaseCandidate'], 'false') ), and( succeeded(), contains(variables['getCommitMessage.COMMIT_MESSAGE'], '***UPDATE_DEPENDENTS***'), eq(variables['StartReleaseCandidate'], 'false') ), eq(variables['UPDATE_DEPENDENTS'], 'true') )
130+
131+
dependsOn:
132+
- Build_mscorlib
133+
134+
pool:
135+
vmImage: 'VS2017-Win2016'
136+
137+
steps:
138+
# need this here in order to persist GitHub credentials
139+
- checkout: self
140+
fetchDepth: 1
141+
142+
- task: NuGetToolInstaller@0
143+
inputs:
144+
versionSpec: '5.4.0'
145+
condition: ne( variables['StartReleaseCandidate'], true )
146+
displayName: 'Install specific version of NuGet'
147+
148+
# update dependents
149+
- task: UpdatenFDependencies@1
150+
inputs:
151+
gitHubToken: $(GitHubToken)
152+
repositoriesToUpdate: |
153+
lib-nanoFramework.Runtime.Events
154+
lib-nanoFramework.Runtime.Native
155+
lib-Windows.Devices.Adc
156+
lib-Windows.Devices.I2c
157+
lib-Windows.Devices.Pwm
158+
lib-Windows.Devices.Spi
159+
lib-System.Devices.Dac
160+
lib-nanoFramework.Devices.OneWire
161+
lib-nanoFramework.Networking.Sntp
162+
lib-nanoFramework.Hardware.Stm32
163+
lib-nanoFramework.System.Math
164+
lib-nanoFramework.TI.EasyLink
165+
lib-nanoFramework.ResourceManager
166+
lib-nanoFramework.System.Collections
167+
lib-nanoFramework.System.Text
168+
lib-nanoFramework.Json
169+
displayName: Update dependent class libs
170+
171+
##################################
172+
# report build failure to Discord
173+
- job: Report_Build_Failure
174+
175+
dependsOn:
176+
- Build_mscorlib
177+
- Update_Dependents
178+
condition: or( failed('Build_mscorlib'), failed('Build_mscorlib_no_reflection'), failed('Update_Dependents'))
179+
180+
pool:
181+
vmImage: 'VS2017-Win2016'
182+
183+
steps:
184+
185+
- checkout: self
186+
187+
# step from template @ nf-tools repo
188+
# report error
189+
- template: azure-pipelines-templates/discord-webhook-task.yml@templates
190+
parameters:
191+
status: 'failure'
192+
webhookUrl: '$(DiscordWebhook)'
193+
message: ''

Diff for: source/nanoFramework.CoreLibrary.NoReflection.nuspec

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
3+
<metadata>
4+
<id>nanoFramework.CoreLibrary.NoReflection</id>
5+
<version>$version$</version>
6+
<title>nanoFramework.CoreLibrary.NoReflection</title>
7+
<authors>nanoFramework project contributors</authors>
8+
<owners>nanoFramework project contributors</owners>
9+
<requireLicenseAcceptance>false</requireLicenseAcceptance>
10+
<license type="expression">Apache-2.0</license>
11+
<releaseNotes></releaseNotes>
12+
<developmentDependency>false</developmentDependency>
13+
<projectUrl>https://github.com/nanoframework/lib-CoreLibrary</projectUrl>
14+
<iconUrl>https://secure.gravatar.com/avatar/97d0e092247f0716db6d4b47b7d1d1ad</iconUrl>
15+
<repository type="git" url="https://github.com/nanoframework/lib-CoreLibrary" commit="$commit$" />
16+
<copyright>Copyright (c) 2019 The nanoFramework project contributors</copyright>
17+
<description>This package includes the nanoFramework.CoreLibrary assembly for nanoFramework C# projects **WITHOUT** the System.Reflection API.&#10;This package requires a target with mscorlib v$nativeVersion$.&#10;There is another version that includes the System.Reflection API.</description>
18+
<summary>This package includes the nanoFramework.CoreLibrary assembly for nanoFramework C# projects **WITHOUT** the System.Reflection API.</summary>
19+
<tags>nanoFramework C# csharp netmf netnf nanoFramework.CoreLibrary</tags>
20+
</metadata>
21+
<files>
22+
<file src="nanoFramework.CoreLibrary\bin\Release\mscorlib.dll" target="lib\mscorlib.dll" />
23+
<file src="nanoFramework.CoreLibrary\bin\Release\mscorlib.pdb" target="lib\mscorlib.pdb" />
24+
<file src="nanoFramework.CoreLibrary\bin\Release\mscorlib.pdbx" target="lib\mscorlib.pdbx" />
25+
<file src="nanoFramework.CoreLibrary\bin\Release\mscorlib.pe" target="lib\mscorlib.pe" />
26+
<file src="nanoFramework.CoreLibrary\bin\Release\mscorlib.xml" target="lib\mscorlib.xml" />
27+
28+
<!-- readme -->
29+
<file src="readme.txt" target="readme.txt" />
30+
</files>
31+
</package>

0 commit comments

Comments
 (0)