Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dyn 3598 #11800

Merged
merged 12 commits into from
Jun 30, 2021
Merged

Dyn 3598 #11800

merged 12 commits into from
Jun 30, 2021

Conversation

mjkkirschner
Copy link
Member

@mjkkirschner mjkkirschner commented Jun 29, 2021

Purpose

Because GD will continue to use %programData%/Dynamo for the time being - we want to address continuing package issues that users have encountered when this directory somehow becomes the user's default download location, or is somehow repointed or removed.
Issues include:

  • new packages failing to load because they do not have certificates
  • new upload packages failing to load because they do not have certificates.
  • GD failing to load

To accomplish this the PR does the following:

  • UI edit and delete buttons in package search view are disabled if the path is the commonData/ProgramData path.
  • obsoletes PackageLoader.DefaultPackagesDirectory and tries to replace its use with PathManager.DefaultPackagesDirectory - so there is a single source of truth. I've noticed these can be made out of sync with pathologically bad test cases, and I think it would be good to give PackageLoader access to PathManager and centralize all paths in `PathManager ( (⚠️ look out of potential refactor followup).
  • Adds some todos hinting at that refactor
  • adds some tests, including one that deliberately asserts the wrong thing - I've marked it techDebt and not failure because it should start to fail after PackageLoader.DefaultPackagesDirectory is made to be consistent with PathManager - and should be updated then.

Screen Shot 2021-06-24 at 1 31 14 PM

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

Copy link
Contributor

@sm6srw sm6srw left a comment

Choose a reason for hiding this comment

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

Looks good and things are moving in the right direction.

var programDataPath = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
var programDataPackagePath = RootLocations.Where(x => x.StartsWith(programDataPath)).FirstOrDefault();
var programDataPackagePathIndex = RootLocations.IndexOf(programDataPackagePath);
return programDataPackagePathIndex;
Copy link
Contributor

Choose a reason for hiding this comment

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

We are only tracking the first program data directory found and I guess a user could add an additional program data location themselves? That could mess things up big time (even without the changes in this PR) but is not very likely to happen I think. And we are hopefully removing program data directory soon.

Copy link
Member Author

Choose a reason for hiding this comment

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

hey @sm6srw are you suggesting this method should return a list of ints?

@mjkkirschner
Copy link
Member Author

mjkkirschner commented Jun 30, 2021

@sm6srw thanks for review - there are 6 test failures on this branch - I will look into them ASAP and if they require big changes I will ask for another review:

Dynamo.PackageManager.Tests.PackageLoaderCustomTest.LoadFromMultipleLocationTest
Dynamo.PackageManager.Tests.PackageLoaderTests.HasValidStandardLibraryAndDefaultPackagesPath
Dynamo.PackageManager.Tests.PackageLoaderTests.HasValidStandardLibraryAndDefaultPackagesPathWhenStandardLibraryTokenIsAddedFirst
Dynamo.PackageManager.Tests.PackageLoaderTests.HasValidStandardLibraryAndDefaultPackagesPathWhenStandardLibraryTokenIsAddedLast
DynamoCoreWpfTests.PythonNodeCustomizationTests.OnTextAreaTextEnteringEventTest
DynamoCoreWpfTests.PythonNodeCustomizationTests.TabWithSpacesMatchesEngine

I'm especially confused by the python ones...

@mjkkirschner
Copy link
Member Author

mjkkirschner commented Jun 30, 2021

Self serve and parallel tests are passing now, not sure what was up with Python tests, could be previous failures somehow effected test teardown/cleanup...

@mjkkirschner mjkkirschner merged commit ce29111 into DynamoDS:master Jun 30, 2021
@mjkkirschner mjkkirschner deleted the DYN-3598 branch June 30, 2021 19:08
QilongTang pushed a commit that referenced this pull request Jul 7, 2021
* DYN-3767 PopupWindow

The changes are basically the creation of the PopupWindow UI, also I included some classes that will be needed later for supporting the Step hierarchy in which the child classes are Survey, Tooltip, Welcome and ExitTour.

One of the functionalities included is that when you press the close button the popup is closed (as expected).

Three buttons were added in the PopupWindow but for Welcome screen just the "Start Tour" button is shown, the popup pointer is hidden. For Tooltips the navigation controls and the pointer are shown.
Also the CustomRichTextBox class was added to enable adding a TextBox in a Tooltip/Welcome screen with functionalities like showing hyperlinks, text in bold, bullet point and images.

* DYN-3767 PopupWindow

Moving colors to DynamoModern.xaml and replacing some hardcoded values and colors.

* Squashed commit of the following:

commit 7b74464
Author: Jorgen Dahl <[email protected]>
Date:   Thu Jul 1 09:56:05 2021 -0400

    Remove old installed packages view (#11791)

    * update

    * update

    * update

    * update

    * Update InstalledPackagesControl.xaml

    * Update icons and icon sizes.

    * More tweaking..

    * More tweaking.
    Remove delete button.
    Restore delete button in context menu.

    * More tweaking

    * MergeFixes

    * Some more tweaks

    * Add contest menu style

    * update colors

    * More context menu tweaking.

    * One small tweak.

    * add mark for uninstall label

    * simplify control

    * Update DynamoModern.xaml

    * Change ListBox to ItemsControl

    * More tweaks

    * More tweaks

    * Restore Scollbar

    * Remove unused icon

    * align content with header and remove border

    * update

    * update menu icon

    * Remove old Installed packages view.

    * Update InstalledPackagesControl.xaml.cs

    * Fix Colors

    * Move style

    * Use FlatIconButtonStyle

    * Update comment and use nameof()

    * Fix merge error.

    * Update comment.

    * Fix tests

    * Keep ManagePackage tracking

    * Fix project file

    * Fix command

    * Update track implementation

    * More command tweaks

    Co-authored-by: pinzart <[email protected]>
    Co-authored-by: pinzart90 <[email protected]>

commit ce29111
Author: Michael Kirschner <[email protected]>
Date:   Wed Jun 30 15:07:57 2021 -0400

    Dyn 3598 (#11800)

    * small adjustment

    * align titles

    * add names to buttons for ui automation tests

    * missing button name

    * disable program data in ui
    add some todos to try to eliminate properties that are redudant
    some name changes I hope help

    * add some todos for reducing use of package loader defaultpackagesdir
    spelling
    use pathmanager instead of package loder at package man extension startup
    test that both defautldirectories are the same

    * create failing test...

    * remove todo

    * fix package tests - this check is already done in tech debt test

    Co-authored-by: michael kirschner <[email protected]>

commit 3c700d9
Author: Aaron (Qilong) <[email protected]>
Date:   Tue Jun 29 09:05:52 2021 -0700

    CopyFile Improvement (#11798)

    * CopyFile Improvement

    * Use resource string

    * Update validation condition

commit 0a18bfa
Author: Sylvester Knudsen <[email protected]>
Date:   Tue Jun 29 14:24:26 2021 +0100

    Dynamo UI visual status of issues (#11776)

    * initial commit

    * Update DynamoViewModelDelegates.cs

    * Update Dynamo.All.sln

    * update test

    * event updates

    * test update

    * initial commit

    * Update DynamoViewModel.cs

    * add open linter view to issue count

    * Update Resources.en-US.resx

    * initial commit

    * initial commit

    * Update DynamoViewModelDelegates.cs

    * Update Dynamo.All.sln

    * test update

    * add open linter view to issue count

    * remove duplicated OnRequestOpenLinterView

    * revert assembly info changes

    * LinterManager null checks

    * comment updates

    * move linter count converter

    * Update NotificationsControl.xaml.cs

    * Update NotificationsControl.xaml.cs

commit 04da16e
Author: Michael Kirschner <[email protected]>
Date:   Mon Jun 28 14:56:43 2021 -0400

    py migration test for imaginary change type (#11795)

    * small adjustment

    * align titles

    * add names to buttons for ui automation tests

    * missing button name

    * add test for imaginary diff change type

    Co-authored-by: michael kirschner <[email protected]>

commit 2fbc0da
Author: pinzart90 <[email protected]>
Date:   Mon Jun 28 10:43:35 2021 -0400

    Add installed package UI in Preferences TAB (#11750)

    * update

    * update

    * update

    * update

    * Update InstalledPackagesControl.xaml

    * Update icons and icon sizes.

    * More tweaking..

    * More tweaking.
    Remove delete button.
    Restore delete button in context menu.

    * More tweaking

    * MergeFixes

    * Some more tweaks

    * Add contest menu style

    * update colors

    * More context menu tweaking.

    * One small tweak.

    * add mark for uninstall label

    * simplify control

    * Update DynamoModern.xaml

    * Change ListBox to ItemsControl

    * More tweaks

    * More tweaks

    * Restore Scollbar

    * Remove unused icon

    * align content with header and remove border

    * update

    * update menu icon

    * Update InstalledPackagesControl.xaml.cs

    * Fix Colors

    * Move style

    * Use FlatIconButtonStyle

    * Update comment and use nameof()

    * Update comment.

    Co-authored-by: pinzart <[email protected]>
    Co-authored-by: Jorgen Dahl <[email protected]>

commit 66818b7
Author: Michael Kirschner <[email protected]>
Date:   Mon Jun 28 10:41:59 2021 -0400

    don't do anything if line is imaginary (#11794)

commit beb408e
Author: Sylvester Knudsen <[email protected]>
Date:   Mon Jun 28 14:23:16 2021 +0100

    [DYN-3774] selected graph type in properties view (#11777)

    * initial commit

    * Update DynamoViewModelDelegates.cs

    * Update Dynamo.All.sln

    * update test

    * event updates

    * test update

    * Update DynamoViewModel.cs

    * Update Resources.en-US.resx

    * comment updates

    * Fix the crash when opening Preferences dialog. (#11749)

    * DYN-3780 : fix modified flag for default home workspace (#11761)

    * fix modified flag for default home workspace

    * add reg test

    * handle modified flag for graph type change (#11754)

    * initial commit

    * updates

    * implement OpenLinterView

    * open OnRequestOpenLinterView switches tab if it exists

    * Update LintingViewExtension.cs

    * Remove dependency on DynamoWindow DataContext

    * Update GraphMetadataView.xaml

    * comment updates

    * make converters internal

    Co-authored-by: reddyashish <[email protected]>
    Co-authored-by: Bogdan Zavu <[email protected]>
    Co-authored-by: Craig Long <[email protected]>

commit 1d85e29
Author: Ashish Aggarwal <[email protected]>
Date:   Mon Jun 28 02:33:44 2021 -0400

    Fix Publish Locally button in publish package dialog box (#11783)

    * DYN-3753 Adjust btn width

    * Update margin instead

commit 56b9e57
Author: Michael Kirschner <[email protected]>
Date:   Fri Jun 25 16:10:11 2021 -0400

    Packagepaths issues (#11793)

    * small adjustment

    * align titles

    * add names to buttons for ui automation tests

    * missing button name

    * add dispose to packagepathview
    remove unused constructor
    raise can execute change when paths are shifted to update icons
    give pathview a name
    dispose package paths on prefs window close

    Co-authored-by: michael kirschner <[email protected]>

commit 56fc0bd
Author: aparajit-pratap <[email protected]>
Date:   Fri Jun 25 15:20:43 2021 -0400

    fix setting preferences view owner (#11792)

commit ab8b5a1
Author: aparajit-pratap <[email protected]>
Date:   Fri Jun 25 12:16:07 2021 -0400

    Fix for crash in host due to Preferences dialog (#11790)

    * fix for crash due to Preferences dialog

    * cleanup

    * removed unused usings

commit 4125985
Author: Aaron (Qilong) <[email protected]>
Date:   Thu Jun 24 21:08:13 2021 -0700

    Enable NTML Authenticator (#11385)

    * Initial Commit

    * Revert "Initial Commit"

    This reverts commit eb9e271.

    * Update Greg reference

commit 4ad5255
Author: Ashish Aggarwal <[email protected]>
Date:   Fri Jun 25 00:06:45 2021 -0400

    Properly align nodes placed after using autocomplete on output ports (#11782)

    * Update PortModel.cs

    * Add unit test

    * add out nodes to selection

commit fc7f47f
Author: Ashish Aggarwal <[email protected]>
Date:   Thu Jun 24 17:14:55 2021 -0400

    Fix node autocomplete documentation alignment issues (#11781)

    DYN-3754

commit 0130703
Author: aparajit-pratap <[email protected]>
Date:   Thu Jun 24 16:10:11 2021 -0400

    add name to UI control for UI automation tests (#11789)

commit 843e4bd
Author: Michael Kirschner <[email protected]>
Date:   Thu Jun 24 11:24:53 2021 -0400

    Add button names to package path item template. (#11787)

    * small adjustment

    * align titles

    * add names to buttons for ui automation tests

    * missing button name

    Co-authored-by: michael kirschner <[email protected]>

commit 04faeaf
Author: Craig Long <[email protected]>
Date:   Thu Jun 24 09:46:47 2021 -0400

    Add Modified to the LinterExtensionBase notification infrastructure (#11774)

    Co-authored-by: Craig Long <[email protected]>

commit bac165b
Author: aparajit-pratap <[email protected]>
Date:   Thu Jun 24 02:37:13 2021 -0400

    fix duplicate protogeom reference in dynamocorewpf.csproj (#11785)

commit da3628b
Author: Michael Kirschner <[email protected]>
Date:   Thu Jun 24 00:03:07 2021 -0400

    small adjustment to package paths ui (#11784)

    * small adjustment

    * align titles

    Co-authored-by: michael kirschner <[email protected]>

* DYN-3657 - Code Review 1

- Deleted the CustomRichTextBox constructor because is not needed (by default .net will create a public one).
- Renamed the HostInfo property to HostControlInfo-
- Also moving several styles from the PopupWindow.xaml to the DynamoModern.xaml

* DYN-3657 - Code Review 1

Forgot to rename the filename from HostInfo to HostControlInfo.
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.

3 participants