The netstandard2.0 public surface and dependencies are checked by nothing
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 55/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- csharp
- Domaine
- build-system, testing
Piste de recherche
Commencez par Sources/AngouriMath/AngouriMath.csproj et la configuration du framework cible de UnitTests, puis lisez PublicApi.txt et KernelDependenciesTest pour comprendre les vérifications actuelles pour un seul TFM. Comparez les legs netstandard2.0 et net actuels, en utilisant EverythingBuild.yml comme contexte. Le travail est terminé lorsque l’API publique et les dépendances du kernel de chaque TFM sélectionné sont vérifiées, avec une couverture distincte de PublicApi.txt.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
UnitTests targets net10.0 only, so everything asserted about the public surface and about the
kernel's dependencies is asserted about one of the three target frameworks.
Sources/AngouriMath/AngouriMath.csproj builds netstandard2.0;net8.0;net10.0, and the legs differ
by construction:
Core/Serializationis#if NET8_0_OR_GREATERGenericMathisCompile Removed below net7netstandard2.0carriesSystem.Memoryas a package rather than a framework reference
So PublicApi.txt records the net10.0 surface, and the netstandard2.0 public surface is checked by
nothing. A member could be added to, or removed from, that leg without any test noticing.
This is #783's own objection — "unbuilt configurations rot silently" — arriving through the one
construct that issue permits. It closed as adopted; this is the piece it did not cover.
KernelDependenciesTest (#1181) has the same bound and says so in its own remarks: it asserts the
referenced assemblies of whichever framework UnitTests builds, which is why System.Memory appears
there as a framework reference and the netstandard2.0 package reference is invisible to it.
What would close this
A per-TFM check, and the cheap version is probably enough: multi-target UnitTests (or a small
second test project) at least across netstandard2.0 and the current net, and record one
PublicApi.txt per leg. That also gives KernelDependenciesTest its second column for free.
What is not being claimed
No defect has been observed on the netstandard2.0 leg. The point is that one could not be observed —
EverythingBuild.yml compiles it, which catches a build break, and nothing checks its surface or
its dependencies. Filed because two separate checks have now hit the same bound and both had to
record it as a limitation rather than test it.
- Langage dominant
- C#
- Étoiles
- 831
- Forks
- 79
- Merge moyen
- 1 h 12 min
- PR mergées (30 j)
- 518
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de ASC-Community/AngouriMath
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
ASC-Community/AngouriMath#2220 · 4 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
Opinions wanted
Difficulté 4/5 Plus d'une semaine Accessibilité débutants 15/100
ASC-Community/AngouriMath#2319 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 18/100
ASC-Community/AngouriMath#2298 ·
Les mainteneurs répondent en général sous 1 jour
-
The kernel under WebAssembly: 1.26 MB Brotli over the bare runtime, and 0.2 s to the first SimplifyOuverte
Difficulté 3/5 Une demi-journée Accessibilité débutants 48/100
ASC-Community/AngouriMath#2296 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
ASC-Community/AngouriMath#2293 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de ASC-Community/AngouriMath
Issues similaires
-
effort:S P3 refactor
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
nightscout/nocturne#3243 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
dasher-project/Dasher-Windows#84 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
libnativeapi/nativeapi#21 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 3 jours
-
enhancement P3 performance
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
thomhurst/TUnit#7380 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour