Skip to content
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

[NEW-FEATURE] Poco types should be rather placed into onlinenamespace.Poco instead of Poco.onlinenamespace #342

Conversation

IX-BOT
Copy link
Contributor

@IX-BOT IX-BOT commented Nov 27, 2024

This is major PR that addresses multiple issues including Poco namespace composition, removal of support of .net7,8 and porting to .net9; updates multiple packages. We also address some of the issue in the pipeline in particular with L3 testing. We bump here to v0.20.x

Description: Closes issue #341.

Changes:

  • Additions: 3,495 lines
  • Deletions: 3,609 lines
  • Changed Files: 208

Key Changes:

  • Refactor to use GetFullyQualifiedPocoName method in various builder classes.
  • Update namespace references for POCO classes to use the global:: prefix.
  • Modify GitHub Actions workflows to include the --framework net9.0 option in build scripts.

Commits:

For more details, view the pull request.
closes #341

IX-BOT and others added 17 commits November 27, 2024 12:59
Introduce GetFullyQualifiedPocoName in CsHelpers class to return fully qualified POCO names. Update using directives to include AXSharp.Compiler.Cs.Helpers. Refactor Create methods in various builder classes to use GetFullyQualifiedPocoName. Update AddToSource method calls to use fully qualified POCO names. Modify CsPlainConstructorBuilder and CsPlainSourceBuilder to use GetFullyQualifiedPocoName. Wrap generated code in Pocos namespace in CsPlainSourceBuilder. Update AddCreatePocoMethod in CsOnlinerSourceBuilder to use GetFullyQualifiedPocoName. Adjust namespace and type declaration methods in CsPlainSourceBuilder to use GetFullyQualifiedPocoName.
Updated namespace references for Pocos classes across multiple files to use the global:: prefix. This change affects methods such as OnlineToPlainAsync, _OnlineToPlainNoacAsync, PlainToOnlineAsync, _PlainToOnlineNoacAsync, ShadowToPlainAsync, PlainToShadowAsync, DetectsAnyChangeAsync, and CreateEmptyPoco. The updates ensure the correct global namespace is used, avoiding potential conflicts and improving code maintainability.
Updated GitVersion.yml to set next-version to 0.20.0 and change mode for main branch. Increased segment sizes in WebApiConnector.cs. Modified AXSharp.Connector.S71500.WebAPITests.csproj to update package references and include new certificates. Replaced WebApiConnector instantiation with TestConnector.TestApiConnector in Exploratory.cs and WebApiConnectorTests.cs. Removed TestConnector class from WebApiPrimitiveTests.cs and added new using directives. Updated GH_PTKu_ix_56.cs, GH_PTKu_ix_59_68.cs, and GH_PTKu_ix_xx.cs to use TestConnector.SecurePlc. Updated apax.yml with new project name, version updates, environment variables, and scripts. Modified go.ps1 to set targetInput and update sld command. Updated Directory.Build.props to target net8.0. Added new TestConnector.cs for handling Web API connections and certificate validation.
…placed_into_onlinenamespace_Poco_instead_of_Poco_onlinenamespace
Modified OnlinerBaseTypeTests.cs to use Is.InstanceOf for more accurate type checking in GetParentTest. Updated test_L10.ps1 and test_L2.ps1 scripts to run with --framework net9.0 and exit with $LASTEXITCODE for improved build and test processes.
Updated `dotnet run` command to use `--framework net9.0` in
`dev.yml`, `master.yml`, `pr-dev.yml`, and `release.yml` to
ensure the project runs with .NET 9.0. Removed the `Test Report`
step using `dorny/test-reporter@v1` from all mentioned YAML
files, which was generating a test report regardless of the
previous steps' outcomes.
Updated the target framework version from .NET 8.0 to .NET 9.0 in multiple files:
- In `BuildContext.cs`, changed `Framework` property of `DotNetRunSettings` from `"net8.0"` to `"net9.0"`.
- In `AXSharp.templates.csproj`, updated `<TargetFramework>` element from `net8.0` to `net9.0`.
- In `axsharpconsole.app.csproj`, updated `<TargetFramework>` element from `net8.0` to `net9.0`.
Updated `TestCollectionOrderer` attribute namespace in `DisplayNameOrderer.cs`. Removed various `Onliner` type properties and `Parent` and `Interpreter` properties across multiple classes and namespaces. Added methods `GetChildren`, `GetKids`, and `GetValueTags` to return collections of children, elements, and value tags. Updated `units.csproj` to target `net9.0` and updated package references.
Modified BuildContext to update ProcessRunner arguments and added new properties. Updated TestsTask to use >= for TestLevel and replaced AX_WEBAPI_TARGET with AXTARGET. Removed AXSharp-L3-tests.slnf. Added conditional compilation in ApaxTests. Updated TestConnector to use environment variables. Updated apax.yml with new targets, dependencies, and scripts. Enhanced Entry.cs with new methods and environment variables. Updated integrated.csproj to include new certificates. Removed conditional delays in PlainersSwappingTests and GH_ISSUE_183. Added new solution filters for integration and WebAPI tests. Added new certificate files.
@PTKu PTKu marked this pull request as ready for review November 28, 2024 13:03
@PTKu PTKu merged commit 4f5e040 into dev Nov 28, 2024
2 checks passed
@PTKu PTKu deleted the 341-_NEW-FEATURE_Poco_types_should_be_rather_placed_into_onlinenamespace_Poco_instead_of_Poco_onlinenamespace branch November 28, 2024 13:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[NEW-FEATURE] Poco types should be rather placed into onlinenamespace.Poco instead of Poco.onlinenamespace
2 participants