Commit 007cfaf
authored
DO NOT SQUASH: Consolidate repository layout under src, samples, tests, tools, docs, and fuzzing (#4010)
# Description
Consolidates the repository into conventional lowercase source roots:
- flattens `Stack/` and `Libraries/` into `src/`;
- moves `Applications/` to `samples/`;
- moves the MCP tool to `tools/Opc.Ua.Mcp`;
- renames `Tests/`, `Tools/`, `Docs/`, and `Fuzzing/` to lowercase;
- updates all project references, solutions, CI pipelines, scripts,
Dockerfiles, package documentation, and repository links.
The final tree contains the same projects, package identities,
assemblies, and runtime behavior as before.
> [!IMPORTANT]
> Merge this PR with a merge commit; do not squash it. Git stores trees
rather than rename metadata, and 115 files share duplicate blobs. The
four commits temporarily disambiguate those files, preserve all 4,580
exact old-to-new path mappings, and then restore the final content.
## Related Issues
- Fixes #3907
## Validation
- Windows `net10.0`: 45 test projects, 42,485 passed and 683 skipped.
One timing-sensitive History project was rerun in isolation and passed.
- Windows `net48`: 45 test projects, 40,651 passed and 706 skipped.
- Linux case-sensitive `net10.0` build and path-sensitive integration
tests passed.
- NativeAOT publish and all 115 published AOT tests passed.
- Full preview solution restore/pack completed across all target
frameworks and produced 81 packages.
- The packaged MCP tool installed and returned `--help` successfully.
- All 10 Dockerfile paths and all 6 compose files validated. Full image
builds were attempted but Docker Desktop's Linux daemon was unavailable
locally.
## Checklist
- [ ] I have signed the
[CLA](https://opcfoundation.org/license/cla/ContributorLicenseAgreementv1.0.pdf)
and read the
[CONTRIBUTING](https://github.com/OPCFoundation/UA-.NETStandard/blob/master/CONTRIBUTING.md)
doc.
- [ ] I have added tests that prove my fix is effective or that my
feature works and increased code coverage.
- [x] I have added all necessary documentation.
- [x] I have verified that my changes do not introduce (new) build or
analyzer warnings.
- [x] I ran **all** tests locally using the **UA.slnx** solution against
at least .net **framework** and .net **10**, and all passed.
- [ ] I fixed **all** failing and flaky tests in the CI pipelines and
**all** CodeQL warnings.
- [ ] I have addressed **all** PR feedback received.
This is a repository-layout-only change, so no new behavioral tests were
added.4,621 files changed
Lines changed: 1696 additions & 1700 deletions
File tree
- .agents/skills/opcua-v20-migration
- references
- .azurepipelines
- .github
- agents
- workflows
- Applications/ConsoleReferenceServer
- Tests/Opc.Ua.Aot.Tests
- docs
- Images
- migrate/2.0.x
- fuzzing
- Common
- Fuzz.Tests
- Fuzz.Tools
- Fuzz
- Dictionaries
- Opc.Ua.Certificates.Fuzz.Corpus
- Testcases.ASN1
- Testcases.PEM
- Testcases.X509CRL
- Testcases.X509CSR
- Testcases.X509Cert
- Opc.Ua.Certificates.Fuzz.Tests
- Properties
- Opc.Ua.Certificates.Fuzz.Tools
- Properties
- Opc.Ua.Certificates.Fuzz
- Properties
- Opc.Ua.Encoders.Fuzz.Corpus
- Testcases.Binary
- Testcases.BuiltInTypes
- Binary
- Json
- Xml
- Testcases.Json
- Testcases.Parsers
- Testcases.Xml
- Opc.Ua.Encoders.Fuzz.Tests
- Assets
- Properties
- Opc.Ua.Encoders.Fuzz.Tools
- Properties
- Opc.Ua.Encoders.Fuzz
- Properties
- Opc.Ua.Network.Fuzz.Corpus
- Testcases.Chunks
- Testcases.Keys
- Testcases.Tcp.Ack
- Testcases.Tcp.AsymHdr
- Testcases.Tcp.Err
- Testcases.Tcp.Hello
- Testcases.Tcp.Rhe
- Testcases.Tcp
- Opc.Ua.Network.Fuzz.Tests
- Properties
- Opc.Ua.Network.Fuzz.Tools
- Properties
- Opc.Ua.Network.Fuzz
- Properties
- Opc.Ua.PubSub.Fuzz
- Corpus
- JsonNetworkMessage
- UadpChunkReassembly
- UadpNetworkMessage
- Properties
- Scripts
- nuget
- plans
- samples
- ConsoleLdsServer
- Properties
- ConsoleReferenceClient
- Properties
- ConsoleReferencePubSubClient
- Properties
- ConsoleReferenceServer
- Properties
- MinimalBoilerServer
- Model
- Properties
- MinimalCalcServer
- Model
- Properties
- PumpDeviceIntegrationServer
- Model
- Properties
- Quickstarts.Servers
- Alarms
- AlarmControllers
- AlarmHolders
- Boiler
- Generated
- DurableSubscription
- MemoryBuffer
- Generated
- Properties
- ReferenceServer
- SampleNodeManager
- TestData
- Generated
- RedundantClient
- Properties
- RedundantPubSub
- Properties
- RedundantServer
- LoadDirection
- Properties
- Scale
- Transparent
- src
- Opc.Ua.Bindings.Https
- Authentication
- DependencyInjection
- Https
- Properties
- Tcp
- WebApi
- Endpoints
- Opc.Ua.Client.ComplexTypes
- Properties
- TypeBuilder
- Types
- Opc.Ua.Client
- Alarms
- AliasNames
- PubSub
- Refresh
- ComplexTypes
- Discovery
- Documentation
- FileSystem
- Fluent
- Historian
- Identity
- ModelChange
- NodeCache
- Properties
- Roles
- Session
- Reconnect
- Redundancy
- Subscription
- StateMachines
- Subscription
- Classic
- Streaming
- Utils
- WebApi
- Opc.Ua.Configuration
- Properties
- Opc.Ua.Core.Diagnostics
- Audit
- Bindings
- Capture
- Sources
- DependencyInjection
- Dissection
- Formats
- Frame
- KeyLog
- Models
- Properties
- Replay
- Opc.Ua.Core.Schema
- Bsd
- ComplexTypes
- Json
- Properties
- Resolution
- Xsd
- Opc.Ua.Core.Types
- Client
- Constants
- Properties
- State
- Types
- Extensions
- Opc.Ua.Core
- Documentation
- Properties
- Redundancy
- Schema
- Security
- Certificates
- CertificateManager
- X509CertificateStore
- Extensions
- Internal
- Constants
- Identity
- Defaults
- Secrets
- Stack
- Bindings
- Client
- Channels
- Internal
- Configuration
- Diagnostics
- Https
- Nodes
- Server
- State
- Tcp
- Transport
- Types
- WebApi
- Types
- BuiltIn
- Redaction
- Utils
- ValueTask
- Utils
- Opc.Ua.Di.Client
- Hosting
- Properties
- Opc.Ua.Di.Server
- Builders
- Hosting
- Locking
- Properties
- SoftwareUpdate
- Topology
- Transfer
- Opc.Ua.Di
- Design
- Properties
- Opc.Ua.Gds.Client.Common
- Properties
- Opc.Ua.Gds.Common
- Design
- Properties
- Opc.Ua.Gds.Server.Common
- ApplicationsDatabase
- Diagnostics
- Hosting
- Identity
- Onboarding
- Properties
- RoleBasedUserManagement
- Opc.Ua.Lds.Server
- Hosting
- Properties
- Opc.Ua.PubSub.Adapter
- Actions
- DependencyInjection
- Diagnostics
- Properties
- Publisher
- Session
- Subscriber
- Opc.Ua.PubSub.Diagnostics
- Capture
- DependencyInjection
- Dissection
- Formats
- KeyLog
- Properties
- Opc.Ua.PubSub.Eth
- Channels
- DependencyInjection
- Properties
- Opc.Ua.PubSub.Kafka
- DependencyInjection
- Internal
- Properties
- Opc.Ua.PubSub.Mqtt
- DependencyInjection
- Internal
- Properties
- Opc.Ua.PubSub.Schema
- DependencyInjection
- Properties
- Opc.Ua.PubSub.Server
- DependencyInjection
- Hosting
- Internal
- Properties
- Opc.Ua.PubSub.Udp
- DependencyInjection
- Dtls
- Properties
- Opc.Ua.PubSub
- Application
- Configuration
- Connections
- DataSets
- DependencyInjection
- Diagnostics
- Encoding
- Json
- Uadp
- Groups
- MetaData
- Properties
- Redundancy
- Scheduling
- Security
- Internal
- Policies
- Sks
- StateMachine
- Transcoding
- Configuration
- Transports
- Opc.Ua.Redundancy.Client
- Properties
- Opc.Ua.Redundancy.Kubernetes
- Client
- Health
- LeaderElection
- PeerDiscovery
- Properties
- Opc.Ua.Redundancy.PubSub
- Properties
- Opc.Ua.Redundancy.Server
- Discovery
- Properties
- Redundancy
- LoadDirection
- Security
- Sessions
- State
- Subscriptions
- Values
- Opc.Ua.Redundancy
- Properties
- Raft
- Opc.Ua.Security.Certificates
- CertificateManager
- Common
- Documentation
- Extensions
- Org.BouncyCastle
- PEM
- PKCS10
- Properties
- X509Certificate
- X509Crl
- Opc.Ua.Server
- Aggregates
- Alarms
- AliasNames
- PubSub
- ComplexTypes
- Configuration
- Diagnostics
- Documentation
- FileSystem
- Fluent
- Historian
- InMemory
- Hosting
- Identity/Authenticators
- KeyCredential
- NodeManager
- Adapters
- MonitoredItem
- Properties
- RateLimiting
- RoleBasedUserManagement
- Authenticators
- UserDatabase
- UserManagement
- RuntimeNodeSet
- Schema
- Server
- Session
- Persistence
- StateMachines
- Subscription
- MonitoredItem
- QueueHandler
- Queue
- Persistence
- Opc.Ua.Types
- Attributes
- BuiltIn
- Diagnostics
- Encoders
- Internal
- Nodes
- Polyfills
- Properties
- Schema
- State
- Utils
- Buffers
- FileSystem
- Opc.Ua.WotCon.Client
- Hosting
- Properties
- Opc.Ua.WotCon.Server
- Assets
- Hosting
- Properties
- Providers
- ThingDescriptions
- Opc.Ua.WotCon
- Design
- Properties
- tests
- Common
- Opc.Ua.Aot.Tests
- Properties
- Opc.Ua.Bindings.Https.WebApi.Tests
- Authentication
- Codec
- DependencyInjection
- Endpoints
- WebApi
- Opc.Ua.Client.ComplexTypes.Tests
- Hosting
- Properties
- Types
- Opc.Ua.Client.TestFramework
- Properties
- Opc.Ua.Client.Tests
- Alarms
- AliasNames
- PubSub
- Refresh
- Channels
- Obsolete
- ClientBuilder
- FileSystem
- Historian
- Identity
- ModelChange
- NodeCache
- Properties
- Roles
- Session
- Stack/Client
- StateMachines
- Streaming
- Subscription
- Classic
- Fakes
- Utils
- WebApi
- Opc.Ua.Configuration.Tests
- Properties
- Opc.Ua.Core.Diagnostics.Tests
- Audit
- Bindings
- Capture
- DependencyInjection
- Dissection
- Formats
- Frame
- KeyLog
- McpServerTools
- Properties
- Replay
- Stack
- TestSupport
- Opc.Ua.Core.Encoders.Tests
- Properties
- Opc.Ua.Core.Schema.Tests
- Properties
- Opc.Ua.Core.Security.Tests
- Properties
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
22 | | - | |
| 22 | + | |
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| |||
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
56 | | - | |
| 56 | + | |
57 | 57 | | |
58 | | - | |
| 58 | + | |
59 | 59 | | |
60 | 60 | | |
61 | | - | |
| 61 | + | |
62 | 62 | | |
63 | 63 | | |
64 | 64 | | |
65 | | - | |
| 65 | + | |
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | | - | |
46 | | - | |
| 45 | + | |
| 46 | + | |
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
64 | 64 | | |
65 | 65 | | |
66 | | - | |
| 66 | + | |
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
| |||
153 | 153 | | |
154 | 154 | | |
155 | 155 | | |
156 | | - | |
| 156 | + | |
157 | 157 | | |
158 | 158 | | |
159 | 159 | | |
| |||
287 | 287 | | |
288 | 288 | | |
289 | 289 | | |
290 | | - | |
| 290 | + | |
291 | 291 | | |
292 | 292 | | |
293 | 293 | | |
| |||
336 | 336 | | |
337 | 337 | | |
338 | 338 | | |
339 | | - | |
340 | | - | |
341 | | - | |
342 | | - | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
365 | 365 | | |
366 | 366 | | |
367 | 367 | | |
368 | | - | |
| 368 | + | |
369 | 369 | | |
370 | 370 | | |
371 | 371 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
66 | | - | |
| 66 | + | |
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
698 | 698 | | |
699 | 699 | | |
700 | 700 | | |
701 | | - | |
| 701 | + | |
702 | 702 | | |
703 | 703 | | |
704 | 704 | | |
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
75 | 75 | | |
76 | 76 | | |
77 | 77 | | |
78 | | - | |
| 78 | + | |
79 | 79 | | |
80 | 80 | | |
81 | 81 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
47 | | - | |
| 47 | + | |
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
| |||
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
92 | 92 | | |
93 | 93 | | |
94 | 94 | | |
95 | | - | |
| 95 | + | |
96 | 96 | | |
97 | 97 | | |
98 | 98 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
10 | | - | |
| 9 | + | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
30 | 30 | | |
31 | 31 | | |
32 | 32 | | |
33 | | - | |
| 33 | + | |
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
46 | | - | |
| 46 | + | |
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
101 | 101 | | |
102 | 102 | | |
103 | 103 | | |
104 | | - | |
105 | | - | |
106 | | - | |
107 | | - | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
108 | 108 | | |
109 | 109 | | |
110 | 110 | | |
| |||
127 | 127 | | |
128 | 128 | | |
129 | 129 | | |
130 | | - | |
| 130 | + | |
131 | 131 | | |
132 | 132 | | |
133 | 133 | | |
| |||
0 commit comments