Skip to content

Commit 808cbf9

Browse files
Make the build commands in CONTRIBUTING.md ones that run (#1010)
`dotnet build -p AngouriMath` cannot work: `-p` is short for `--property`, not for a project, so all three lines fail with MSB1003 and a new contributor's first command is the one that does not work. `dotnet build` takes a path. Two more things in the file describe a repository that is not this one. The architecture diagram has an `AngouriMath.Experimental` project, where `MathS.Experimental` is a class inside the kernel; and the issue section points at /projects, which GitHub now answers with a 400. Added the three expectations of a pull request that are not visible from the code -- the changed-answer entry, the corpus gate, and reading the thread -- pointing at AGENTS.md rather than restating it, since a second copy is a second thing to go stale. Every command in the file was run before and after. Claude-Session: https://claude.ai/code/session_011emtnRT6EWTrxXNtqDVK3e Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent 6b93b40 commit 808cbf9

1 file changed

Lines changed: 25 additions & 7 deletions

File tree

‎CONTRIBUTING.md‎

Lines changed: 25 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@ If you are not on Windows, static analyzers and some samples might not be built.
1313
cd Sources
1414
dotnet build
1515
```
16-
This will build your solution successfully, if you are on Windows. Otherwise, you might need to build projects separately:
16+
This will build your solution successfully, if you are on Windows. Otherwise, you might need to build projects separately -- `dotnet build` takes a path, since `-p` is short for `--property` and not for a project:
1717
```
1818
cd Sources
19-
dotnet build -p AngouriMath
19+
dotnet build AngouriMath/AngouriMath.csproj
2020
cd Wrappers
21-
dotnet build -p AngouriMath.FSharp
22-
dotnet build -p AngouriMath.Interactive
21+
dotnet build AngouriMath.FSharp/AngouriMath.FSharp.fsproj
22+
dotnet build AngouriMath.Interactive/AngouriMath.Interactive.fsproj
2323
```
2424

2525
Running tests is no more complicated:
@@ -68,14 +68,29 @@ git push --set-upstream origin my-branch
6868

6969
### Closing an issue
7070

71-
One of the most valuable ways to contribute to the project is to close tickets from from [projects](https://github.com/asc-community/AngouriMath/projects) or [issues](https://github.com/asc-community/AngouriMath/issues). If you wish to work on a card, ping one of the maintaintainers, for example, @WhiteBlackGoose, and ask for assigning the issue to you.
71+
One of the most valuable ways to contribute to the project is to close tickets from [issues](https://github.com/asc-community/AngouriMath/issues). If you wish to work on a card, ping one of the maintaintainers, for example, @WhiteBlackGoose, and ask for assigning the issue to you.
7272

7373
Then, when you started working on it, we highly recommend opening a draft pull request as soon as possible. This will help everybody see your changes and potentially help you. Then, once PR is ready, open it and wait for a review.
7474

7575
### Adding your feature or fixing a bug
7676

7777
It is highly encouraged to open an issue first. Once opened, follow the approach described above.
7878

79+
Three things are expected of a pull request here that are not obvious from the code, and all three
80+
are set out at length in [AGENTS.md](AGENTS.md), which applies to humans too:
81+
82+
- **If the same input now gives a different answer, it goes in
83+
[BREAKING-CHANGES.md](BREAKING-CHANGES.md)** -- including when the old answer was wrong -- with the
84+
old value, the new one and why, measured on a build of each version rather than read off the diff.
85+
A test you had to change is the usual sign that you owe an entry.
86+
- **The corpus gate runs on every commit.** `Sources/Tests/UnitTests/Corpus` reports solved, wrong,
87+
error and timeout counts, and it fails both when the library gets worse *and* when it gets better
88+
without the record being updated to say so. The second is not a nuisance: an improvement nobody
89+
wrote down is an improvement nobody can tell from a fluke later.
90+
- **Read your pull request's own thread before it merges.** Comments arrive after the checks go
91+
green, so a PR that was clear when it was opened need not still be, and the thread and the
92+
comments left on the diff are two separate places.
93+
7994
### Types of issues
8095

8196
Issues marked with `Proposal` are those suggesting ideas. If the idea is a good one and is going to be implemented, it is marked as `Accepted`. If an idea cannot be implemented any time soon, it is marked as `Not now`.
@@ -94,9 +109,12 @@ You might have some questions about the way you should write your code, or how y
94109

95110
There are a few projects the repository contains:
96111
```
97-
+-> AngouriMath.Experimental
98-
|
99112
AngouriMath --+-> AngouriMath.FSharp --> AngouriMath.Interactive --> AngouriMath.Terminal
100113
|
101114
+-> AngouriMath.CPP
102115
```
116+
117+
Four of those are published to NuGet: `AngouriMath`, `AngouriMath.FSharp`,
118+
`AngouriMath.Interactive` and `AngouriMath.Terminal`. The C++ wrapper builds and is tested but is
119+
not packaged, and there is no `AngouriMath.Experimental` project -- `MathS.Experimental` is a class
120+
inside the kernel.

0 commit comments

Comments
 (0)