Skip to content

Releases: iTwin/pcf

PCF with BIS modeling

09 Sep 18:41
6fe5f0f
Compare
Choose a tag to compare
PCF with BIS modeling Pre-release
Pre-release

What's new

BIS modeling

PCF now supports two additional ways to model elements in an iModel.

  1. Parent-child modeling
  2. Modeled elements

In fact, these are the only two ways to model elements in an iModel, but prior versions of PCF only supported the least specific models available in BIS: those that establish a modeling perspective for a subject. If you're interested in the details, the partition of these models is the modeled element, so ModelNode in PCF is actually a special case of (2).

These changes allow PCF to get closer to expressing the full set of models available in BIS, which is good for teams that require this complexity from their iModels and want a complete, declarative solution to writing a connector.

We did our best to add this complexity without straying from PCF's core value of making infrastructure modeling with BIS and digital twins accessible to newcomers. The new API is compatible with prior versions of PCF.

Here's what you need to know: element nodes can now have a parent, and ModeledElementNode creates modeled elements. You can put elements in the modeled element's model using that same parent property so you can forget that the sub-model is even there.

Unique aspects

PCF now has a gentler API for making unique aspects with ElementAspectNode. Just like the parent property of ElementNode, ElementAspectNode now has an element property, which is the element to which the aspect attaches.

Documentation

We've written a new page in the PCF wiki that explains how to use all the nodes in PCF and their design if you're interested.

We're slowly transitioning to JSDoc comments in the PCF source code. You can browse the API documentation locally by cloning us and issuing npm run docs in the core directory. This will generate a folder called docs. Open the index.html file in your browser with a file explorer or something like sensible-browser docs/index.html.

We're discussing how to best host PCF's documentation on iTwin.

Support

Written by @jackson-at-bentley. For support, please reach out to @jchick-bentley or @akshay-madhukar.

v0.3.0-3

07 Sep 23:40
7b2ab58
Compare
Choose a tag to compare
v0.3.0-3 Pre-release
Pre-release

What's new

  • PCF now supports non-interactive authentication with iModelHub using @itwin/service-authorization. To learn how to configure your HubArgs to use non-interactive authentication, see the Bentley OAuth documentation.
  • Add flags to JobArgs that stop PCF from initializing the iModel backend or authenticating with iModelHub. If the application must make multiple synchronization passes these tasks add time to the synchronization jobs. A better solution in the future is to enable the connector to accept a queue of jobs.

Support

Authored by @akshay-madhukar and @jchick-bentley.

0.2.0-2 Release

28 Dec 20:26
Compare
Choose a tag to compare
0.2.0-2 Release Pre-release
Pre-release

What's Changed

  • Fixes for deletion-detect algorithm by @zachzhu2016 in #16

Full Changelog: v0.2.0-1...v0.2.0-2

0.2.0-1 Release

14 Dec 15:00
Compare
Choose a tag to compare
0.2.0-1 Release Pre-release
Pre-release

What's Changed

  • Handle ElementUniqueAspect by @zachzhu2016 in #15

Full Changelog: v0.2.0-0...v0.2.0-1

0.2.0-0 Release

08 Dec 16:29
Compare
Choose a tag to compare
0.2.0-0 Release Pre-release
Pre-release

What's Changed

  • Upgrade to iTwin.js 3.0 part 1 by @zachzhu2016 in #11
  • Add tutorial by @zachzhu2016 in #14

Full Changelog: v0.1.2...v0.2.0-0

0.1.2 Release

07 Sep 16:27
Compare
Choose a tag to compare
0.1.2 Release Pre-release
Pre-release
  • PCF currently supports file connection but does not have the semantics for API connection where a source file is not present.
  • Fixed the bug that caused PCF to synchronize all Nodes regardless of current channel root.
  • Due to the fix for ^, we must force each relationship node to reference a particular subject node, though not manifested in the iModel.
  • Changed SearchKey to Locator.
  • Locator used to only work for relationships with target element being ECEntity.

0.1.1 Release

18 Aug 13:27
Compare
Choose a tag to compare
0.1.1 Release Pre-release
Pre-release
  • Improved package.json settings so that more info are displayed on npm.
  • Removed redundant retry wrapper calls. They are no longer needed.
  • You no longer have to install oidc-signin-tool.
  • pcf-cli improvements & fixes.

0.1.0 Release

17 Aug 19:00
18c19ac
Compare
Choose a tag to compare
0.1.0 Release Pre-release
Pre-release

Initial Release