-
-
Notifications
You must be signed in to change notification settings - Fork 81
Add claude.md with project conventions and build instructions #93
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
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,51 @@ | ||||||||||
| # EntityFramework.Exceptions | ||||||||||
|
|
||||||||||
| Typed exception handling for Entity Framework Core. Converts database-specific errors into strongly-typed .NET exceptions instead of generic `DbUpdateException`. | ||||||||||
|
|
||||||||||
| ## Build & Test | ||||||||||
|
|
||||||||||
| ```bash | ||||||||||
| dotnet restore # Restore NuGet dependencies | ||||||||||
| dotnet build --no-restore # Build all projects | ||||||||||
| dotnet test --no-build # Run tests (requires Docker for Testcontainers) | ||||||||||
| ``` | ||||||||||
|
|
||||||||||
| Tests use **Testcontainers** and require a running Docker daemon. Each database provider (SQL Server, PostgreSQL, MySQL, Oracle, SQLite) spins up its own container. | ||||||||||
|
||||||||||
| Tests use **Testcontainers** and require a running Docker daemon. Each database provider (SQL Server, PostgreSQL, MySQL, Oracle, SQLite) spins up its own container. | |
| Tests use **Testcontainers** and require a running Docker daemon for containerized providers (SQL Server, PostgreSQL, MySQL, Oracle), each of which spins up its own container. **SQLite** tests run in-process and do not require Docker. |
Copilot
AI
Feb 12, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The statement mentions "implicit usings" as a code convention, but the test project (Tests.csproj) does not have ImplicitUsings enabled. Evidence: explicit using statements are still required in test files (e.g., System.Threading.Tasks was added in PostgreSQLTests.cs), and the Tests.csproj file doesn't contain an ImplicitUsings property. Consider removing "implicit usings" from this list or clarifying that it applies only to certain projects.
| - **C# / .NET 8.0** with file-scoped namespaces, primary constructors, nullable reference types, and implicit usings | |
| - **C# / .NET 8.0** with file-scoped namespaces, primary constructors, nullable reference types; implicit usings are enabled in library projects, while test projects use explicit `using` directives |
Copilot
AI
Feb 12, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The statement mentions "nullable reference types" as a code convention, but none of the csproj files examined (Directory.Build.props, Tests.csproj, PostgreSQL.csproj) contain a Nullable property set to "enable". In .NET 8.0, nullable reference types must be explicitly enabled via the Nullable property in the project file. Consider removing "nullable reference types" from this list or clarifying which projects have this enabled, if any.
| - **C# / .NET 8.0** with file-scoped namespaces, primary constructors, nullable reference types, and implicit usings | |
| - **C# / .NET 8.0** with file-scoped namespaces, primary constructors, and implicit usings |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
dotnet test --no-buildassumes the test projects have already been built. Since the preceding command usesdotnet build(notdotnet build -t:Buildon the solution including tests), this can lead to test failures on a clean checkout. Consider changing the test command todotnet test --no-restore(or drop--no-build) to ensure tests build as needed.