Skip to content
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

⬆️ Bump files with dotnet-file sync #1

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,34 @@ updates:
directory: /
schedule:
interval: daily
groups:
Azure:
patterns:
- "Azure*"
- "Microsoft.Azure*"
Identity:
patterns:
- "System.IdentityModel*"
- "Microsoft.IdentityModel*"
System:
patterns:
- "System*"
exclude-patterns:
- "System.IdentityModel*"
Extensions:
patterns:
- "Microsoft.Extensions*"
Web:
patterns:
- "Microsoft.AspNetCore*"
Tests:
patterns:
- "Microsoft.NET.Tests*"
- "xunit*"
- "coverlet*"
ThisAssembly:
patterns:
- "ThisAssembly*"
ProtoBuf:
patterns:
- "protobuf-*"
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ TestResults
.vs
.vscode
.idea
local.settings.json

*.suo
*.sdf
Expand All @@ -31,5 +32,6 @@ node_modules
_site
.jekyll-metadata
.jekyll-cache
.sass-cache
Gemfile.lock
package-lock.json
16 changes: 8 additions & 8 deletions .netconfig
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@
weak
[file ".github/dependabot.yml"]
url = https://github.com/devlooped/oss/blob/main/.github/dependabot.yml
sha = 4f070a477b4162a280f02722ae666376ae4fcc71
etag = 35f2134fff3b0235ff8dac8618a76198c8ef533ad2f29628bbb435cd1134d638
sha = 35ca3f3405452465058d89005f8a88a65847c377
etag = f8080f8f04d87529e90d9a66751d304a7141196fb9734aa2d110784e52e66898
weak
[file ".github/workflows/build.yml"]
url = https://github.com/devlooped/oss/blob/main/.github/workflows/build.yml
Expand All @@ -32,8 +32,8 @@
weak
[file ".gitignore"]
url = https://github.com/devlooped/oss/blob/main/.gitignore
sha = b87a8a795a4c2b6830602225c066c11108552a99
etag = 96e0860052044780f1fc9e3bdfbee09d82d5dddb8b1217d67460fc7330a64dd8
sha = 4bd702593c10df189cd4a0f6e6fb72e55de02198
etag = f11dcc8c057bd2f526aa9c7090c9568d1656fafaaedc6719da42a00283018ffa
weak
[file "Directory.Build.rsp"]
url = https://github.com/devlooped/oss/blob/main/Directory.Build.rsp
Expand All @@ -52,13 +52,13 @@
weak
[file "src/Directory.Build.props"]
url = https://github.com/devlooped/oss/blob/main/src/Directory.Build.props
sha = 6ae80a175a8f926ac5d9ffb0f6afd55d85cc9320
etag = 69d4b16c14d5047b3ed812dbf556b0b8d77deb86f73af04b9bd3640220056fa8
sha = b1d14c6379e5820eb2c30e08bedbdf6e9c8e8cb2
etag = 33cd19e0f599f444c320406da3452e9e84d28c3bb13c09e9190d9d2e7f129545
weak
[file "src/Directory.Build.targets"]
url = https://github.com/devlooped/oss/blob/main/src/Directory.Build.targets
sha = 1514d15399a7d545ad92a0e9d57dc8295fdd6af8
etag = 428f80b0786ff17b836c7a5b0640948724855d17933e958642b22849ac00dadb
sha = 1bf1eacc7ac3920d52c8e7045bfa34abc7c05302
etag = 7cb1421f00d9f6f4c00f0ca98e485dcadb927cfa6b3f0b5d4fb212525d2ce9c0
weak
[file ".github/workflows/changelog.yml"]
url = https://github.com/devlooped/oss/blob/main/.github/workflows/changelog.yml
Expand Down
147 changes: 147 additions & 0 deletions src/Directory.Build.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
<Project>
<!-- To extend/change the defaults, create a Directory.props alongside this file -->

<PropertyGroup Label="CI" Condition="'$(CI)' == ''">
<CI>false</CI>
<!-- GH, CircleCI, GitLab and BitBucket already use CI -->
<CI Condition="'$(TF_BUILD)' == 'true' or
'$(TEAMCITY_VERSION)' != '' or
'$(APPVEYOR)' != '' or
'$(BuildRunner)' == 'MyGet' or
'$(JENKINS_URL)' != '' or
'$(TRAVIS)' == 'true' or
'$(BUDDY)' == 'true'">true</CI>
</PropertyGroup>

<PropertyGroup>
<!-- The Microsoft.Managed.Core.targets use this property to use deterministic source paths in CI builds -->
<ContinuousIntegrationBuild>$(CI)</ContinuousIntegrationBuild>
</PropertyGroup>

<PropertyGroup Label="NuGet">
<Authors>Daniel Cazzulino</Authors>
<Copyright>Copyright (C) Daniel Cazzulino and Contributors. All rights reserved.</Copyright>
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance>
<PackageLicenseExpression>MIT</PackageLicenseExpression>

<!-- Pick src-level readme+icon automatically -->
<PackageIcon Condition="Exists('$(MSBuildThisFileDirectory)icon.png')">icon.png</PackageIcon>
<PackageReadmeFile Condition="'$(PackReadme)' != 'false' and Exists('$(MSBuildThisFileDirectory)readme.md')">readme.md</PackageReadmeFile>
<!-- Pick project-level readme+icon overrides automatically -->
<PackageIcon Condition="Exists('$(MSBuildProjectDirectory)\icon.png')">icon.png</PackageIcon>
<PackageReadmeFile Condition="'$(PackReadme)' != 'false' and Exists('$(MSBuildProjectDirectory)\readme.md')">readme.md</PackageReadmeFile>

<PublishRepositoryUrl>true</PublishRepositoryUrl>
<GenerateRepositoryUrlAttribute>true</GenerateRepositoryUrlAttribute>

<PackageOutputPath Condition="'$(PackageOutputPath)' == ''">$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\bin'))</PackageOutputPath>

<!-- Use Directory.Packages.props if possible. NOTE: other MSBuild SDKs (i.e. NoTargets/Traversal) do not support central packages -->
<ManagePackageVersionsCentrally Condition="Exists('$(MSBuildThisFileDirectory)Directory.Packages.props')">true</ManagePackageVersionsCentrally>
<CentralPackageFloatingVersionsEnabled>true</CentralPackageFloatingVersionsEnabled>

<!-- Ensure MSBuild tooling can access package artifacts always via PKG_[PackageId] -->
<GeneratePathProperty>true</GeneratePathProperty>
</PropertyGroup>

<PropertyGroup Label="Build">
<Configuration Condition="'$(Configuration)' == '' and $(CI)">Release</Configuration>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<GenerateDocumentationFile Condition="$(MSBuildProjectName.Contains('Tests'))">false</GenerateDocumentationFile>
<LangVersion>Latest</LangVersion>

<!-- See https://docs.microsoft.com/en-us/dotnet/standard/assembly/reference-assemblies -->
<ProduceReferenceAssembly>false</ProduceReferenceAssembly>
<!-- Because they are small and super useful and supported everywhere -->
<DebugType>embedded</DebugType>
<DebugSymbols>true</DebugSymbols>
<Nullable>enable</Nullable>
<!-- See https://www.meziantou.net/csharp-compiler-strict-mode.htm -->
<Features>strict</Features>

<!-- Simplify namespaces by defaulting to the single root name -->
<RootNamespace>$(MSBuildProjectName)</RootNamespace>
<RootNamespaceDot>$(MSBuildProjectName.IndexOf('.'))</RootNamespaceDot>
<RootNamespace Condition="'$(RootNamespaceDot)' != '-1'">$(MSBuildProjectName.Substring(0, $(RootNamespaceDot)))</RootNamespace>

<!-- We typically don't want these files shown in the solution explorer -->
<DefaultItemExcludes>$(DefaultItemExcludes);*.binlog;*.zip;*.rsp;*.items;**/TestResults/**/*.*</DefaultItemExcludes>

<EnableSourceLink>true</EnableSourceLink>
<EnableSourceControlManagerQueries>true</EnableSourceControlManagerQueries>
<EmbedUntrackedSources>true</EmbedUntrackedSources>
<UseSourceLink>true</UseSourceLink>

<!-- Generate satellite assemblies using csc.exe to avoid some al.exe issues. See https://github.com/dotnet/msbuild/pull/2726 -->
<GenerateSatelliteAssembliesForCore>true</GenerateSatelliteAssembliesForCore>

<!-- See: https://www.cazzulino.com/project-dependencies-as-project-references.html -->
<AddSyntheticProjectReferencesForSolutionDependencies>false</AddSyntheticProjectReferencesForSolutionDependencies>

<!-- Don't warn for packages using semver 2.0 -->
<NoWarn>NU5105;$(NoWarn)</NoWarn>
<!-- Turn warnings into errors in CI or Release builds -->
<WarningsAsErrors Condition="$(CI) or '$(Configuration)' == 'Release'">true</WarningsAsErrors>

<!-- Preserve transitively copied content in VS: https://github.com/dotnet/msbuild/issues/1054#issuecomment-847959047 -->
<MSBuildCopyContentTransitively>true</MSBuildCopyContentTransitively>

<!-- Global tools should run on whatever latest runtime is installed. See https://docs.microsoft.com/en-us/dotnet/core/versions/selection#framework-dependent-apps-roll-forward -->
<RollForward>LatestMinor</RollForward>
</PropertyGroup>

<PropertyGroup Label="StrongName" Condition="Exists('$(MSBuildThisFileDirectory)kzu.snk')">
<!-- We use a single oss signing key for consumers that need strong-named assemblies -->
<AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)kzu.snk</AssemblyOriginatorKeyFile>
<!-- These properties make it easier to add internals visible to other projects, even when signing is involved.
For example, you can simply add:
<InternalsVisibleTo Include="MyProject.UnitTests" />

and the key will be appended automatically.
-->
<PublicKey>002400000480000094000000060200000024000052534131000400000100010051155fd0ee280be78d81cc979423f1129ec5dd28edce9cd94fd679890639cad54c121ebdb606f8659659cd313d3b3db7fa41e2271158dd602bb0039a142717117fa1f63d93a2d288a1c2f920ec05c4858d344a45d48ebd31c1368ab783596b382b611d8c92f9c1b3d338296aa21b12f3bc9f34de87756100c172c52a24bad2db</PublicKey>
<PublicKeyToken>00352124762f2aa5</PublicKeyToken>
<SignAssembly>true</SignAssembly>
</PropertyGroup>

<PropertyGroup Label="Version">
<!-- Versioning: when building locally, it's always 42.42.42.
This makes it always bigger than any public package version, and
consistent and fixed for dogfooding.
NuGetizer nukes the package cache on build, making this straightforward too.
CI (non-release) builds pass in a VersionSuffix property to append a label
after the fixed prefix. This allows dogfooding a branch build.
The suffix is sanitized and optionally turned into
-->
<VersionPrefix Condition="$(VersionPrefix) == ''">42.42.42</VersionPrefix>
</PropertyGroup>

<PropertyGroup Label="Version" Condition="$(VersionLabel) != ''">
<_VersionLabel>$(VersionLabel.Replace('refs/heads/', ''))</_VersionLabel>
<!-- For PRs, we just need a fixed package version numbered after the PR # itself, so remove the commits # at the end -->
<_VersionLabel Condition="$(_VersionLabel.Contains('refs/pull/'))">$(VersionLabel.TrimEnd('.0123456789'))</_VersionLabel>
<!-- Next replace the prefix for simply 'pr', so we end up with 'pr99/merge' by default -->
<_VersionLabel>$(_VersionLabel.Replace('refs/pull/', 'pr'))</_VersionLabel>
<!-- Remove the /merge now, if present -->
<_VersionLabel>$(_VersionLabel.Replace('/merge', ''))</_VersionLabel>
<!-- Finally sanitize the branch with dashes, so we can build path-separated branches, like rel/v1.0.0 or feature/foo -->
<_VersionLabel>$(_VersionLabel.Replace('/', '-'))</_VersionLabel>

<!-- Set sanitized version to the actual version suffix used in build/pack -->
<VersionSuffix>$(_VersionLabel)</VersionSuffix>
</PropertyGroup>

<ItemGroup Label="ThisAssembly.Project">
<ProjectProperty Include="CI" />

<ProjectProperty Include="Version" />
<ProjectProperty Include="VersionPrefix" />
<ProjectProperty Include="VersionSuffix" />

<ProjectProperty Include="PublicKey" />
<ProjectProperty Include="PublicKeyToken" />
</ItemGroup>

<Import Project="Directory.props" Condition="Exists('Directory.props')"/>
<Import Project="Directory.props.user" Condition="Exists('Directory.props.user')" />
</Project>
Loading