Skip to content

Conversation

@dnenov
Copy link
Collaborator

@dnenov dnenov commented Mar 4, 2025

Purpose

The initial code that complements the Package Manager Wizard react interface https://git.autodesk.com/Dynamo/PackagePublishWizard/pull/1.

  • The majority of the code is contained inside the PackageManagerWizard.xaml.cs
  • Using a design pattern similar to the other webView2 projects in Dynamo
  • Controls the visibility of the new UI with a IsNewPMPublishWizardEnabled feature flag
  • A small number of code changes and updates to existing ViewModels, mainly to the PublishPackageViewModel
  • Introduce a new utility class PackageUpdateRequest to support the derealization of the package information - there might be a leaner way of doing that
  • An initial small number of Tests added, more should come

Installation

This section will change after Dynamo starts consuming the Package Publish Wizard directly

  1. Clone and build https://git.autodesk.com/Dynamo/PackagePublishWizard (requires access to Autodesk internal network)
  2. Locate the index.html file inside the dist folder of the project.
  3. Add it under DynamoCoreWpdf\Packages\PackageManagerWizard\build
  4. Adjust the Build Action to Resource
  5. You should be able to build Dynamo at this point and see the new UI under the Package Manager / Publish tab

React

Dynamo

WebView2 2mb limitation

Since we are using weave for the first time, as well as using the bespoke PackageCompatibilityEditor component (created by the awesome Vera team) we have reached 3mb total bundle file size. WebView2 poses a strict 2mb limitation. In order to circumvent this limitation, we are serving the project from single index.html (containing all the js complied code inside) from an absolute file path generated at runtime. For more information https://weblog.west-wind.com/posts/2024/Jul/22/Work-around-the-WebView2-NavigateToString-2mb-Size-Limit

Declarations

Check these if you believe they are true

  • The codebase is in a better state after this PR
  • Is documented according to the standards
  • The level of testing this PR includes is appropriate
  • User facing strings, if any, are extracted into *.resx files
  • All tests pass using the self-service CI.
  • Snapshot of UI changes, if any.
  • Changes to the API follow Semantic Versioning and are documented in the API Changes document.
  • This PR modifies some build requirements and the readme is updated
  • This PR contains no files larger than 50 MB

Release Notes

  • initial code to the Dynamo implementation of the PacMan Wizard

Reviewers

FYIs

@achintyabhat
@deepakanand

dnenov and others added 16 commits February 19, 2025 11:28
- consume PacMan Wizard react project
- add a feature flag to toggle between the old and the new publish UI
- introduced a feature flag to control the show of the new PacMan publish interface
- wired latest changes of front end
- added tests
- new routes added for submit, publish and reset
- publish locally tested, works fine
- added compatibility
- full properties support now
- publish locally working fine
- added support form markdown handling to frontent
- check for null before clear
- added logging and error handling for both front and back end reporting to Dynamo
- error handling
- markdown files cleanup
- send compatibility map from Dynamo
- support for dependencies added
- added all public properties to public API list
- tidy up
@zeusongit zeusongit changed the title Pm publish wizard DYN-8208 Integrate PM Publish Wizard Mar 6, 2025
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See the ticket for this pull request: https://jira.autodesk.com/browse/DYN-8208

Copy link
Contributor

@zeusongit zeusongit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@zeusongit zeusongit merged commit 07d255e into DynamoDS:master Mar 10, 2025
23 of 24 checks passed
@zeusongit zeusongit added this to the 3.5 milestone Mar 19, 2025
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.

2 participants