...
- Ignite uses TeamCity-based continuous integration: http://ci.ignite.apache.org/
- If you do .NET-only development, you are interested only in test suites having "Platform.NET" in the name
- Create an account to be able to start new runs
- .NET NuGet suite can be used to produce release NuGet binaries (see Artifacts tab of a finished build)
General Guidelines
- Do not break public APIs
- Do not rename or change existing public APIs in any way - users should be able to upgrade to a new minor version (see SemVer) and their app should keep working
- Be very careful when adding new public APIs. Public API changes must go through a review by maintainer
- Pay attention to access modifiers
- All types within Impl folder should be internal
- All other types are public and, therefore, are part of public API
- Tests are required. We strive to cover all imaginable use cases:
- Happy path: test that API works as expected when provided with good input
- Bad user input: test that bad method arguments result in ArgumentException, use IgniteArgumentCheck class
- Other illegal state situations (e.g. get a cache that does not exist): test that resulting exceptions are user-friendly and contain information on how to fix the issue
Coding Guidelines
- Ignite.NET follows standard MSDN Framework Design Guidelines in regards to naming, project and namespace structure, type design, etc.
- Private fields should be _underscoreCamelCase (this is not covered by guidelines above)
- Non-private instance fields are not allowed
- Line length should not exceed 120 characters (use Editor Guidelines extension https://marketplace.visualstudio.com/items?itemName=PaulHarrington.EditorGuidelines)
...
{"serverDuration": 115, "requestCorrelationId": "600e48f34cddcdf9"}