Open
Conversation
…ned operations and a centralized `ImportPlan` approach. Updated `Controller` and `L5X` integration to support this enhanced system.
…clarity and consistency
- Development of ImportBuilder interface to configure specifics of how the import process will handle components, updates, and dependencies. - Some additional API methods for DataType - Implementation of Dependencies for all components. - Added some initial tests for import builder. - Minor regor of L5X/Controller/LogixInfo. - Made LogixInfo properties read-only and added normalization to that class. - Generic refactor and documentation fixes.
… `ImportTypeBuilder`) and introduced streamlined builders (`ImportBuilder`, `IImportSourceBuilder`, `IImportDefaultBuilder`). Improved handling of operations and dependencies with centralized `Import` model. Enhanced XML documentation and fixed `Scope` and related methods for consistency.
…ethods. - Split out Scope.cs to new classes with a single responsibility (getting scope). - Created new Reference.cs class to represent the XPath to a given entity element. - Replaced LogixScoped.cs with LogixEntity.cs to support both components and code with Reference and Scope property, along with required Usages (was References) and Dependencies methods for getting references in the current Document. - ILogixLookup.cs refinement and rework. - IReferenceBuilder.cs rework. - Import Builder design and testing. - Removal of CrossReference.cs - Actually finished implementations for Dependencies. - Lots of other reorg and updates to fix bugs, improve functionality, and clean up the codebase.
…code cleanup. - Deleted unused Diagram.cs and DiagramElement.cs files. - Removed core components like Line.cs and NeutralText.cs no longer required. - Deleted corresponding tests for eliminated classes. - Cleaned up related project file references. - Streamlined codebase by removing redundant and legacy elements. - Added initial CLI and Model projects.
…nctions on member calls to LogixElement.cs base class which removes reflection needs. Update LogixEnum.cs to not use assembly scanning. Removed LogixIndex.cs and all L5XOptions.cs and corresponding APIs to simplify codebased and functionality (indexing is not super helpful and can easily be accomplished externally from library).
… and making L5X use LogixIndex.cs for main API. Troublleshooting bug with analog data and stack overflow issues.
…g and improved clarity in overriding behavior.
This was
linked to
issues
Dec 12, 2025
…nsistency, replace LINQ `.Count()` with `.Count`, and add new tests for `LogixContent` and `WriteTag`.
…entation for clarity, and enhance `L5XExtensions.Replace` logic. Rename `Find` to `GetOrDefault` in `LogixContainer`. Increment version to `6.0.0-beta.8`.
…ypes to support modification, and add `Clear` functionality for resetting values. Optimize radix formatting and parsing logic.
…ation logic. Optimize exponential and numeric value checks.
…ring and managing PLC tag changes. Refactor `PlcClient` watch methods to return subscription objects. Rename `ReadInterval` to `PollRate` in `PlcOptions` for clarity. Add new utility methods and validation logic for tag handling.
… formats. Simplify `DINT.Update` test logic.
…ot` workflows. Introduce `PollRate` terminology in `PlcOptionsTests`. Enhance `ExtensionTests` to validate tag responses and performance.
…ing redundant metadata.
…r` for improved response handling and monitoring. Replace `ITagSubscription` with `TagMonitor`, and deprecate unused subscription logic. Streamline validation and error aggregation for read/write operations.
…Tag` workflows. Replace deprecated `WatchTag` terminology with `MonitorTag`, and refactor assertions for improved result validation.
…depth-based retrieval, and improve parent-child relationship checks using `IsMemberOf` and `IsMemberOrSelf`.
…andling, improved tag monitoring, and enhanced error aggregation.
…bers` for improved readability and consistency.
…recent terminology changes (`Timestamp`, `Rate`, `Updates`).
…lExtensions`. Update `Tag` methods and rename for improved clarity. Refactor README to fix NuGet install command format.
…rity, enhance error aggregation, streamline read/write operations, and add new `UpdateTag` and `PollTag` overloads.
…n `TagNameTests` and `TagTests`, replace `Slice` with `Members`, align `Tag.Create` with `Tag.Named`, and add new test cases for member depth and parent relationship checks.
…ments for better coverage, including new assertions, new overloads, and additional scenarios like invalid tags and callback validations. Add `BasicClientTests`.
…xibility and reusability. Update tests and README for clarity and consistency with terminology and behavior changes.
…montitor` to `monitor`.
…ty: rename methods (`Member` to `GetMember`, `Update` to `UpdateData`, `Clear` to `ResetData`), add overloads to `RemoveMember` and `UpdateMember`, and introduce the `GetSize` method. Enhance `DataTypeMember` handling for array and structure-based definitions.
…LogixMemberInfo` and `LogixTypeInfo`. Introduce diagnostics for type definition and parsing errors. Update project to version 2.0.0.
…` for method consistency.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overall, a lot of updates but here are the main ones that comes to mind:
ILogixElementswith theLogixSerializerclass. This lets us remove reflection-based deserialization and reflection-based type instantiation so that others can use this library in source generators without compile time errors. This also should improve performance and make the library more extensible.ILogixSerializableorILogixParsable. Move some things to newILogixElementinterface, which is the new base interface for type system. Other base abstract classes also have interface abstractionsILogixObject,ILogixEntityetc. These are kept for pattern matching scenarios, and the abstract class implementation use generic type parameters to make various methds more type safe.ILogixParsableinterface. Most common types still have parse methods.ScopeandReferenceimplementation. Reference is now completely a wrapper aroundXPathExpressionthat allows faster lookup of components in XML tree.