@cratis/fundamentals 7.26.1 → 7.26.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -8
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -48,6 +48,37 @@ The following are prerequisites to work with this repository.
|
|
|
48
48
|
* [Node 16+](https://nodejs.org/en)
|
|
49
49
|
* [Yarn](https://yarnpkg.com)
|
|
50
50
|
|
|
51
|
+
### Running .NET specifications
|
|
52
|
+
|
|
53
|
+
The specifications use Cratis.Specifications 5.0 on the native xUnit v3 runner and require .NET 10.
|
|
54
|
+
Specification projects target net10.0 only; libraries still build and pack for net8.0, net9.0, and net10.0.
|
|
55
|
+
|
|
56
|
+
From the repository root, build once and run the five specification executables in parallel:
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
dotnet build -c Release
|
|
60
|
+
bash .github/scripts/run-specifications.sh Release
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
Logs and TRX results go under `TestResults/`. The script fails if a project is missing, fails, or runs zero tests.
|
|
64
|
+
Use `bash .github/scripts/run-specifications.sh --self-test` to check the runner's failure guards.
|
|
65
|
+
|
|
66
|
+
For a single project, run its executable directly (append `.exe` on Windows):
|
|
67
|
+
|
|
68
|
+
```bash
|
|
69
|
+
Source/DotNET/Fundamentals.Specs/bin/Release/net10.0/Cratis.Fundamentals.Specs
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Use `-method`, `-class`, or `-namespace` with a fully qualified name to filter the executable's tests;
|
|
73
|
+
run it with `-?` to see all options. For example:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
Source/DotNET/Fundamentals.Specs/bin/Release/net10.0/Cratis.Fundamentals.Specs -namespace 'Cratis.Concepts*'
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
`dotnet test -c Release --no-build` and IDE test explorers continue to use the VSTest adapter.
|
|
80
|
+
They do not require Microsoft.Testing.Platform configuration. For Debug, build with `dotnet build` and run `dotnet test --no-build`.
|
|
81
|
+
|
|
51
82
|
### Central Package Management
|
|
52
83
|
|
|
53
84
|
This repository leverages [Central Package Management](https://learn.microsoft.com/en-us/nuget/consume-packages/Central-Package-Management), which
|
|
@@ -86,14 +117,14 @@ In a package, all you need to do is to define the scripts to use the global scri
|
|
|
86
117
|
|
|
87
118
|
This project is part of [Cratis](https://www.cratis.io) — free, MIT-licensed tools for building event-sourced and CQRS applications.
|
|
88
119
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
120
|
+
* **[Chronicle](https://github.com/Cratis/Chronicle)** — event-sourcing database and runtime. Orleans-based kernel, pluggable storage (MongoDB default; PostgreSQL, SQL Server, SQLite, in-memory), language-agnostic gRPC contracts. [Docs](https://www.cratis.io/chronicle/)
|
|
121
|
+
* **Chronicle clients** — first-class [.NET SDK](https://github.com/Cratis/Chronicle), plus [TypeScript](https://github.com/Cratis/Chronicle.TypeScript), [Kotlin/Java](https://github.com/Cratis/Chronicle.Kotlin), and [Elixir](https://github.com/Cratis/Chronicle.Elixir); [Python](https://github.com/Cratis/Chronicle.Python) coming soon (pre-alpha). AI agents connect through the [Chronicle MCP server](https://github.com/Cratis/Chronicle.Mcp).
|
|
122
|
+
* **[Arc](https://github.com/Cratis/Arc)** — opinionated CQRS framework for ASP.NET Core with commands, queries, validation, authorization, and TypeScript proxy generation. Works without event sourcing. [Docs](https://www.cratis.io/arc/)
|
|
123
|
+
* **[Components](https://github.com/Cratis/Components)** — React components aligned with Arc patterns. [Docs](https://www.cratis.io/components/)
|
|
124
|
+
* **[CLI](https://github.com/Cratis/cli) + Workbench** — inspect and diagnose Chronicle from the terminal or the browser. [Docs](https://www.cratis.io/cli/)
|
|
125
|
+
* **Model-first layer (experimental)** — Studio, [Screenplay](https://github.com/Cratis/Screenplay), [Stage](https://github.com/Cratis/Stage), [Scene](https://github.com/Cratis/Scene), [Prologue](https://github.com/Cratis/Prologue)
|
|
126
|
+
* **Supporting** — [Fundamentals](https://github.com/Cratis/Fundamentals), [Specifications](https://github.com/Cratis/Specifications), [Synopsis](https://github.com/Cratis/Synopsis), [Lens](https://github.com/Cratis/Lens), [Narrator](https://github.com/Cratis/Narrator), and free [AI tooling](https://github.com/Cratis/AI) (preview); Ensemble coming soon (pre-release)
|
|
127
|
+
* **[Samples](https://github.com/Cratis/Samples)** — runnable event sourcing and CQRS samples for the whole stack
|
|
97
128
|
|
|
98
129
|
Everything Cratis publishes today is MIT licensed and free to use.
|
|
99
130
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cratis/fundamentals",
|
|
3
|
-
"version": "7.26.
|
|
3
|
+
"version": "7.26.2",
|
|
4
4
|
"description": "The shared building blocks beneath the Cratis stack — GUIDs, concepts, derived-type serialization, property-path proxies, and decorators for TypeScript",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cratis",
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
},
|
|
79
79
|
"devDependencies": {
|
|
80
80
|
"@typescript/native": "npm:typescript@^7.0.2",
|
|
81
|
-
"rollup": "4.
|
|
81
|
+
"rollup": "4.65.0",
|
|
82
82
|
"rollup-plugin-typescript2": "0.37.0",
|
|
83
83
|
"typescript": "npm:@typescript/typescript6@^6.0.2",
|
|
84
84
|
"typescript-programmatic-api": "npm:@typescript/typescript6@^6.0.2"
|