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

Add CONTRIBUTING, rename to ShapeSifter #5

Merged
merged 5 commits into from
May 28, 2024
Merged
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
11 changes: 6 additions & 5 deletions .github/workflows/dotnet.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,12 @@ jobs:
- run: echo "All required checks complete."

# This does not gate release, because external dependencies may be flaky.
markdown-link-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: gaurav-nelson/github-action-markdown-link-check@v1
# Disabled while the repo is private
# markdown-link-check:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4
# - uses: gaurav-nelson/github-action-markdown-link-check@v1

# nuget-publish:
# runs-on: ubuntu-latest
Expand Down
49 changes: 41 additions & 8 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,30 @@
# On your first checkout
# Contributing

The main project fork lives [on GitHub](https://github.com/G-Research/ShapeSifter).

Please note that while we do accept contributions, this library is primarily built and maintained to serve the needs of G-Research, and our main priorities are to ensure that it continues to do so.
We provide the library in the hope that it will be useful, but we can't sink unlimited amounts of effort into its maintenance, so please forgive us if we choose not to accept some particular contribution you propose.
We will try to address issues and review incoming pull requests, but we do so on a [best-effort](https://en.wikipedia.org/wiki/Best-effort_delivery) basis.

In practice, this means that we are more likely to accept correctness fixes, but we may be more conservative about accepting new features, and we can't promise to take every contribution; and if you have encountered an issue which we ourselves do not encounter, we may or may not choose to fix it.
(For such problems, we are much more likely to review and accept a pull request that proposes a fix, than to create a fix from scratch.)

## Issues

Please raise bug reports and feature requests as Issues on [the main GitHub project](https://github.com/G-Research/ShapeSifter/issues).

## Pull requests

Before embarking on a large change, we strongly recommend checking via a GitHub Issue first that we are likely to accept it.

You may find that the following guidelines will help you produce a change that we accept:

* Keep your change as small and focused as is practical.
* Ensure that your change is thoroughly tested.
* Document any choices you make which are not immediately obvious.
* Explain why your change is necessary or desirable.

## On your first checkout

There are pull request checks on this repo, enforcing [Fantomas](https://github.com/fsprojects/fantomas/)-compliant formatting.
After checking out the repo, you may wish to add a pre-push hook to ensure locally that formatting is complete, rather than having to wait for the CI checks to tell you that you haven't formatted your code.
Expand All @@ -11,11 +37,18 @@ Before your first push (but only once), you will need to install the [.NET local
dotnet tool restore
```

Some commits (such as big-bang formatting commits) are recorded for convenience in `.git-blame-ignore-revs`.
Consider performing the following command to have `git blame` ignore these commits:
```bash
git config blame.ignoreRevsFile .git-blame-ignore-revs
```
## Dependencies

For maximum compatibility, this project targets the earliest version of `FSharp.Core` that is practical (see the [Notes and Guidance on FSharp.Core](https://fsharp.github.io/fsharp-compiler-docs/fsharp-core-notes.html) for more details).
It targets `netstandard2.0` so that it can be used in the legacy .NET Framework.

We try to keep `ShapeSifter`'s dependency footprint small.

## Branch strategy

Releases are made from the `main` branch.

## License

This project is licensed with the MIT license, a copy of which you can find at the repository root.

# License
This project is licensed under the MIT licence, a copy of which you can find at the repository root.
4 changes: 2 additions & 2 deletions ShapeSifter.Test/Attribute.fs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
namespace TeqCrate.Test
namespace ShapeSifter.Test

open TeqCrate
open ShapeSifter

[<RequireQualifiedAccess>]
module Attribute =
Expand Down
13 changes: 4 additions & 9 deletions ShapeSifter.Test/ShapeSifter.Test.fsproj
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,10 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="ApiSurface" Version="4.0.8" />
<PackageReference Include="FsUnit" Version="4.2.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.3.0" />
<PackageReference Include="xunit" Version="2.4.1" />
<PackageReference Include="xunit.runner.visualstudio" Version="2.4.1">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
<DotNetCliToolReference Include="dotnet-xunit" Version="2.3.1" />
<PackageReference Include="ApiSurface" Version="4.0.40" />
<PackageReference Include="FsUnit" Version="6.0.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0" />
<PackageReference Include="NUnit" Version="4.1.0" />
</ItemGroup>

<ItemGroup>
Expand Down
Loading