Skip to content

6.0.0

Compare
Choose a tag to compare
@Rickedb Rickedb released this 31 May 04:25
· 37 commits to master since this release
9799caa

The main purpose of this version is to reorganize the project to the defaults of C# and the OpenProtocol itself

Breaking changes

  • Default revision is always Revision 1, using the last revision is not normal and it would cause many breaking changes as well
  • revision optional parameter of MIDs constructors is no longer optional since the default is always 1, if a revision is desired you should pass it as parameter
  • Validate() method that existed in some Mids were removed.
  • Constructors that fill properties are no longer available, it will only define header parameters, all the datafield must be set directly.
  • All Datafields enum are now protected, since it belongs only to the mid itself, you should not use externally.
  • Removed inner PowerMacsStatuses enum from Mid0107 and now uses the PowerMacsStatus enum
  • All enums format were updated to PascalCase and not SNAKE_CASE (however - characters are interpreted as _)
  • Moved OpenEndData class outside of Mid0041
  • ToolType enum changed accordingly with documentation, IPT refers to code 30 in place of QSHIELD_C
  • Converters and IValueConverter<T> was removed and converted to static functions at OpenProtocolConvert or a protected virtual method at the unique mid that needs it
  • PaddingOrientations enum is no longer inside DataField class and changed to PaddingOrientation

Improvements

  • Project now targets .net standard 2.0 and the latest LTS version .NET 6
  • Enforce padding to specified size if truncated
  • Revision by field are now null safe

New Features

  • Added Mid0009
  • Added Mid0702
  • Added Mid0703
  • Added Mid2505
  • Added PIDs' enums in categories
  • Updated AutoSelect enum
  • Updated JobTighteningStatus enum
  • Updated ResultType enum
  • Updated SystemType enum

Fixes

  • Fixed Mid1201 (#90)
  • Fixed Mid1202 to consider header length instead o package length to avoid NUL (#94)
  • Use header length instead of package length to mids:
    • Mid0006
    • Mid0008
    • Mid0091
    • Mid0106
    • Mid0107
    • Mid0215
    • Mid0240
    • Mid0242
    • Mid0251

Related issues

Related pull requests