node-opcua

Unlocking the Full Potential of OPC UA with Typescript and NodeJS - http://node-opcua.github.io/

MIT License

Downloads
6.7M
Stars
1.4K
Committers
79
node-opcua - v2.56.0

Published by erossignon almost 3 years ago

πŸ› fixes

  • [8556f9519f917f207e1134e8939bbb43b592e17f] fix continuation point handling for historyRead

πŸš€ improvements:

  • [c2e0c78b87e5046db5d31132b953d53eb1092dba] refactor continuation point management for historyRead and browse
  • fix lint issues.

πŸ’” API changes

`- ClientSesssion#readHistoryValue now takes an additional optional parameters to provide

export interface ExtraReadHistoryValueParameters {
    numValuesPerNode?: number;
    returnBounds?: boolean;
    isReadModified?: boolean;
    //
    timestampsToReturn?: TimestampsToReturn;
}
node-opcua -

Published by erossignon about 3 years ago

πŸ› fixes

  • custom DataType deriving from namespace0 DataType

βš™οΈ enhancement

  • remove pretty-error module
node-opcua - v2.54.0

Published by erossignon about 3 years ago

  • chore: update packages
  • chore: add missing definition
node-opcua - v2.52.0

Published by erossignon about 3 years ago

  • minor refactoring
node-opcua - v2.51.00 (Preview)

Published by erossignon about 3 years ago

πŸš€ enhancement

  • introduce typescript definition of standard companion specification UAObjects and UAVariables,
  • major refactoring of the node-ocpua-address-space module to use the generated types, including pub-sub types
  • add companions specification modules:
    • node-opcua-nodeset-ua : standard ua
    • node-opcua-nodeset-di : standard device integration
    • node-opcua-nodeset-adi : standard analyser device
    • node-opcua-nodeset-cnc : standard cnc
    • node-opcua-nodeset-machine-vision
    • node-opcua-nodeset-machine-toools
    • node-opcua-nodeset-robotics
    • node-opcua-nodeset-ia

πŸ’” breaking changes

  • ℹ️ this version may introduce slight backward compatibility for typescripts users, as the type definition has been refined in this release. Those issues shall be easily solved by developers.

how to install ?
This version will not be automatically installed on your machine unless you specify the @next suffix.

  • pnpm install node-opcua@next
    Please make sure that all node-opcua related modules share the correct version (it should be 2.51.0)

πŸ‘¬ contributors:

node-opcua - v2.50.0

Published by erossignon about 3 years ago

πŸ› bug fixes

  • [5dd8849] #1038 fixing three dimension matrix variable leading to false warning in nodeopcua serve

πŸ“ documentation

  • [2186294] fix typo
  • [5c1ee9e] documentation: rename endpoint_must_exist to endpointMustExist
  • [ee10e48] Fix Typo in ClientFile

πŸ‘¬ contributors

  • @AndreasHeine @msteiner-cps@bruegth @graos
node-opcua - v2.49.0

Published by erossignon about 3 years ago

πŸš€ enhancement

  • [d9c9930eb0a5a80322393364cdc59e8dbcfc9cf2] add support for DataType definition for modern servers that strictly follows the 1.04 specification and do not provide 1.03 Schema related nodes (DataTypeDescriptionType etc) in the addressSpace anymore. ( related to #1033 )

  • refactor the code around decoding of opaque structure

  • optimize the code to only query the DataTypeDefinition of a DataType to the server on demand.

  • GetMonitoredItems method call to the subscription containing roughly 35 variables results in warning . #1018

πŸ‘­ contributors

  • special kudos to @priyanka01deb who highlighted the issue and her employer to sponsor us fixing this.
  • @graos
node-opcua - v2.48.0

Published by erossignon about 3 years ago

πŸ› bug fix

  • [efac4df27115d2ca9c9c18c045a609a025aeb572] fix bug with KeyValuePair ExtensionObject Variant

πŸ‡ enhancement

  • [c73a0ae3bdc83a8991a570f6964783b735bcddc3] allow objectType/variableType to take place in a custom namespace other that the addressSpace's own namespace. For this feature, we've added a namespace option to the instantiate method.
  • [dd3f567fb4bf00b40356c0018534905870cce83c] improve QualifiedName constructor by allowing a bare string to be passed as constructor's parameter.
  • [208871b28436665b1f653560a9e58427059dadc8] improve the typescript definition of the clone internal methods
node-opcua - v2.47.0

Published by erossignon over 3 years ago

πŸš‘ this release contains a critical hotfix

This release improves the πŸ’ͺ robustness of NodeOPCUA server against rogue connections with altered or invalid tpc message frames,

πŸ› bug fixes

  • [7de8c3938990a41355d608d7024fc3a24dc89847] [Server] fix untrapped exception when received HelloMessage is malformed
  • [84a3a3a7867ef45c2363d01c99558ecf42ad2ffb] [Server] fix untrapped exception when receiving malformed message
  • [bc0fd185f4905cd03c83c7a278365424f2b46bac] [Server] improve robustness handling altered message blocks

πŸ‘¬ Contributors

node-opcua - v2.46.0

Published by erossignon over 3 years ago

πŸ› bug fixes

  • [82eebc317640e2762b10d8638ab185bd6b764157] [SERVER] fix an issue that causes the server to refuse connection when client provides a null policyId in activate session

  • [6adda1a436b5bc8d10c36c15e0710c7078ae6553] prevent NodeCrawler to raise an exception if a reference is unknown.

✨ enhancement

  • [83ba303d591d18693bf22293af81a06e3ca7d669] limits the userNameIdentityToken types to the specifed security modes
node-opcua - v2.45.0

Published by erossignon over 3 years ago

πŸ› Bug fix:

  • [3d820ad94793d01cb39f91adfa98a981ed266312] ensure to not loose data change notifications that are send before the CreateMonitoredItems transaction is completed (Codesys)
  • [4144e81ee3b709b6354746e0c140f9f2937382b7] [CLIENT] fix handling of inconsistent revisedSessionTimeout sent by some servers (SIMACODE)

πŸ’₯ breaking change

  • [27bcd7f9068afe7c472fce5f3d12a2ea9e9bdc81] switch encoding of Binary NodeId string rep from hex to base64 ( as required by specification)

πŸ‘¬ contributors:

  • @treestructure for Binary NodeId string
node-opcua - v2.44.0

Published by erossignon over 3 years ago

πŸ› bug fixes

πŸš€ enhancement:

  • add BaseNode#setAccessRestrictions and BaseNode#isBrowseAccessRestricted

β†˜οΈ deprecation

  • using endpoint_must_exist now produces a warning, please use endpointMustExists instead.
node-opcua - v2.43.0

Published by erossignon over 3 years ago

πŸ› bug fixing

  • #998 fix getBuildInDataType to accomodate DataType with string nodeIds.
  • [e1d9ff9c44ba24fd9102d4b401c9e78b4f6b8d46] refactor client reconnection
  • [6e371e9a7aad1badb952aac27312e24e2e3f25a1] improve LDS unregistration

πŸ‘¬ contributors

  • @aljoshakoecher
node-opcua - v2.42

Published by erossignon over 3 years ago

πŸ› bug fixes

  • fix subscription reconstruction after reconnection [8817c9b0ddf03268c0eb8aabd87de4c083a35062]
  • remove annoying warning message that could appear on the console when connecting to old PLC (requestHandle) [f1f6ad7da4f7c06ff3fddce423a261a851e658c0]
  • replace text-wrapper module with wordwrap [7104db1c736d652ec7b5d5aa6fb994c5f7f431ad]
  • improve client keepalive stop detection [72f02d7f01e404d5312c513b61cb21142b36ca15]

πŸš€ enhancements

  • add accessRestriction support [2a058ab22b8330952f606e2ea4c2ba1c456ba0a8]
  • refactor registration to LDS [f468018004887fbd538c377d6ddf039b51026335]

πŸ’” breaking changes:

The refactoring made in [2a058ab22b8330952f606e2ea4c2ba1c456ba0a8] now enforce that Roles have a valid OPCUA WellKnowRole.

πŸ‘¬ contributors

node-opcua -

Published by erossignon over 3 years ago

πŸ› bug fixes:

  • #985 [711e16d] [5f4cd16] [9cff8c3] [Server] fix server crash when UserIdentityToken is malformed.
  • #982 [9cd41a9] fix toJSON with null fields in ExtensionObject
  • #981 [fdd9669] [Cient] createSession now replace null authentication token with anonymous to prevent crash.

🚧 in progress:

  • improve typescript generation

πŸ‘¬ contributors

  • @paolodenti , @dnnshrrn, @cleancoderocker
node-opcua -

Published by erossignon over 3 years ago

🚧 maintenance:

-[0b9d442] add CommercialKitchenEquipment nodeset

node-opcua -

Published by erossignon over 3 years ago

πŸš€ enhancements

  • [Client] add ClientSubscription#modify [9b4d47a]

πŸ› bugfix:

  • #957 fix error caused by empty certificate …

πŸ‘¬ contributors!

  • @balajitekkiam
node-opcua - v2.40.0

Published by erossignon over 3 years ago

ℹ️ we drop support for **nodejs10 ** from this version onward, as nodeJS is now end of life.

πŸš€ Enhancements:

  • [907ceb0] add ability to trace Hello/Ack messages
  • [179591d] improve trace in secure channel
  • [c6305b7] improve typescript generation
  • [6cf1045] [Server] improve monitored item notification publishing
  • [15d0a86] #971 add global mutex to avoid clashes during certificate generation , when multiple client instances are started simultaneously.
    [d45a920] add support for AccessFlagEx attributes
  • [a7351ce] add accessLevle and PermissionFlags
  • [d11178d] 🀎 Breaking Change implements RoleAndPermission

πŸ› bug fixes:

  • [d5d6cfc] fixes error in Union Encoding found during IoP
  • [1d249f1] expose clientCertificateManager is typescript definition
  • [a3aa99d] fix detection of flagable enum
  • [4317acb] fix DataTypeDefinition attribute being exposed by UADataTypeNode; the DataTypeDefinition shall be self sufficient and describe the ExtensionObject entirely.

πŸ‘­ Contributors

  • @prmdhost (#971)
node-opcua - v2.35.0

Published by erossignon over 3 years ago

node-opcua - v2.34.0

Published by erossignon over 3 years ago

πŸš€ enhancements:

  • [319556fb67e28fde4699c7a69530101703e2cf55] [Server] improve behavior of getComponentByName getProperyByName getMethodByName
  • [a5855dd2e6f2cea6411bdfea3e5c9bbdfca50ebe] [460826d7c531d996c30ba53900986212bd51b2ca] [34a09bdf9904ce42228919771a71041e5577c229] add monitored item triggering
  • [8386210c7044b7e63843d62b81f73c17f57c2609] [0bad27c578d7c82a27ed582b0cb128f1feabbbc6] improve management of indexRange in writing Variant Matrixes.
  • [514ce327274de448cc25f3d023187a26cdf7f26a] added FILTER options in trace

πŸ› bug fixes

  • [e3264db3fdee0e0623b37be7deea0098ccfb429a] fix initialization of Variant in dataStructure
  • [4f91bffc37fb262c51d32664507ad1880b389cf3] [Server] applicationName must have a valid locale => use en by default.