Skip to content
Closed
  •  
  •  
  •  
8 changes: 4 additions & 4 deletions .github/workflows/dynamo_bin_diff.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,11 @@ jobs:
uses: microsoft/setup-msbuild@v2
- name: Install dependencies for windows runtime
run: |
dotnet restore ${{ github.workspace }}\Dynamo\src\Dynamo.All.sln /p:Configuration=Release --runtime=win-x64 -p:DotNet=net8.0
dotnet restore ${{ github.workspace }}\Dynamo\src\Dynamo.All.sln /p:Configuration=Release --runtime=win-x64 -p:DotNet=net10.0
- name: Build Dynamo with MSBuild
run: |
Write-Output "***Continue with the build, Good luck developer!***"
msbuild ${{ github.workspace }}\Dynamo\src\Dynamo.All.sln /p:Configuration=Release /p:DotNet=net8.0
msbuild ${{ github.workspace }}\Dynamo\src\Dynamo.All.sln /p:Configuration=Release /p:DotNet=net10.0
- name: Look for DynamoCLI.exe
run: |
Write-Output "***Locating DynamoCLI.exe!***"
Expand Down Expand Up @@ -67,11 +67,11 @@ jobs:
uses: microsoft/setup-msbuild@v2
- name: Install dependencies for windows runtime
run: |
dotnet restore ${{ github.workspace }}\master\src\Dynamo.All.sln /p:Configuration=Release --runtime=win-x64 -p:DotNet=net8.0
dotnet restore ${{ github.workspace }}\master\src\Dynamo.All.sln /p:Configuration=Release --runtime=win-x64 -p:DotNet=net10.0
- name: Build Dynamo with MSBuild
run: |
Write-Output "***Continue with the build, Good luck developer!***"
msbuild ${{ github.workspace }}\master\src\Dynamo.All.sln /p:Configuration=Release /p:DotNet=net8.0
msbuild ${{ github.workspace }}\master\src\Dynamo.All.sln /p:Configuration=Release /p:DotNet=net10.0
- name: Look for DynamoCLI.exe
run: |
Write-Output "***Locating DynamoCLI.exe!***"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/issue_type_predicter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ jobs:
if: env.analysis_response == 'Valid'
run: |
dotnet build ./IssuesTypePredicter/IssuesTypePredicter.sln --configuration Release
cp ./IssuesTypePredicter/IssuesTypePredicterML.ConsoleApp/bin/Release/net8.0/MLModel.zip .
cp ./IssuesTypePredicter/IssuesTypePredicterML.ConsoleApp/bin/Release/net10.0/MLModel.zip .

# Execute the IssuesTypePredicter program and pass 'issue_json_string' as a parameter
- name: Run Issues Type Predicter
Expand Down
2 changes: 1 addition & 1 deletion src/Config/CS_SDK.props
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<PlatformTarget >x64</PlatformTarget>
<!--Use the property DotNet to set TargetFramework from commandline without forcing it on all projects-->
<!--Ex. DynamoServices uses TargetFramework netstandard2.0 -->
<DotNet>net8.0</DotNet>
<DotNet>net10.0</DotNet>
<!--Use LibGVer to tell the CI/CD pipeline what the prefered LIBG version is for testing-->
<LIBGVer>libg_231_0_0</LIBGVer>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">16.0</VisualStudioVersion>
Expand Down
884 changes: 118 additions & 766 deletions src/DynamoCore/BuiltInAndOperators/BuiltInImages.resx

Large diffs are not rendered by default.

5,044 changes: 58 additions & 4,986 deletions src/DynamoCore/BuiltInAndOperators/OperatorsImages.resx

Large diffs are not rendered by default.

652 changes: 20 additions & 632 deletions src/DynamoCore/DynamoCoreImages.resx

Large diffs are not rendered by default.

Binary file added src/DynamoCore/Resources/BuiltIn/Apply.Large.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/DynamoCore/Resources/BuiltIn/Apply.Small.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/DynamoCore/Resources/BuiltIn/ApplyList.Small.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/DynamoCore/Resources/BuiltIn/Concat.Large.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/DynamoCore/Resources/BuiltIn/Concat.Small.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/DynamoCore/Resources/BuiltIn/Count.Large.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/DynamoCore/Resources/BuiltIn/Count.Small.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/DynamoCore/Resources/BuiltIn/Ellipse.Small.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added src/DynamoCore/Resources/BuiltIn/List.Rank.Large.png
Binary file added src/DynamoCore/Resources/BuiltIn/List.Rank.Small.png
Binary file added src/DynamoCore/Resources/BuiltIn/ToString.Small.png
Binary file added src/DynamoCore/Resources/DefaultCustomNode.Small.png
Binary file added src/DynamoCore/Resources/DefaultIcon.png
Binary file added src/DynamoCore/Resources/Operators/Not.Large.png
Binary file added src/DynamoCore/Resources/Operators/Not.Small.png
Binary file added src/DynamoCore/Resources/Operators/add.Large.png
Binary file added src/DynamoCore/Resources/Operators/add.Small.png
Binary file added src/DynamoCore/Resources/Operators/and.Large.png
Binary file added src/DynamoCore/Resources/Operators/and.Small.png
Binary file added src/DynamoCore/Resources/Operators/div.Large.png
Binary file added src/DynamoCore/Resources/Operators/div.Small.png
Binary file added src/DynamoCore/Resources/Operators/eq.Large.png
Binary file added src/DynamoCore/Resources/Operators/eq.Small.png
Binary file added src/DynamoCore/Resources/Operators/ge.Small.png
Binary file added src/DynamoCore/Resources/Operators/gt.Large.png
Binary file added src/DynamoCore/Resources/Operators/gt.Small.png
Binary file added src/DynamoCore/Resources/Operators/le.Large.png
Binary file added src/DynamoCore/Resources/Operators/le.Small.png
Binary file added src/DynamoCore/Resources/Operators/lt.Large.png
Binary file added src/DynamoCore/Resources/Operators/lt.Small.png
Binary file added src/DynamoCore/Resources/Operators/mod.Large.png
Binary file added src/DynamoCore/Resources/Operators/mod.Small.png
Binary file added src/DynamoCore/Resources/Operators/mul.Large.png
Binary file added src/DynamoCore/Resources/Operators/mul.Small.png
Binary file added src/DynamoCore/Resources/Operators/nq.Large.png
Binary file added src/DynamoCore/Resources/Operators/nq.Small.png
Binary file added src/DynamoCore/Resources/Operators/or.Large.png
Binary file added src/DynamoCore/Resources/Operators/or.Small.png
Binary file added src/DynamoCore/Resources/Operators/sub.Small.png
21 changes: 17 additions & 4 deletions src/DynamoCoreWpf/Services/IconServices.cs
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
using Dynamo.Engine;
using Dynamo.Interfaces;
using Dynamo.Utilities;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Resources;
using System.Windows.Media;
using Dynamo.Engine;
using Dynamo.Interfaces;
using Dynamo.Utilities;

namespace Dynamo.Wpf.Services
{
Expand Down Expand Up @@ -80,8 +81,20 @@ internal ImageSource LoadIconInternal(string iconKey)
ResourceManager rm = new ResourceManager(assemblyName + imagesSuffix, resourceAssembly);

ImageSource bitmapSource = null;
Bitmap source = null;

try
{
using (var ms = new MemoryStream(rm.GetObject(iconKey) as byte[]))
{
source = new Bitmap(ms);
}
}
catch(Exception e)
{
//log the error

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

This is where we can support some logging or alternative loading option for legacy packages

Copilot AI May 30, 2025

Copy link

Choose a reason for hiding this comment

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

Consider logging the exception details within the catch block instead of silently swallowing the error, to facilitate easier debugging in production.

Suggested change
//log the error
System.Diagnostics.Debug.WriteLine($"Error loading icon '{iconKey}': {e.Message}\n{e.StackTrace}");

Copilot uses AI. Check for mistakes.
}

var source = (Bitmap)rm.GetObject(iconKey);
if (source == null)
{
cachedIcons.Add(iconKey, null);
Expand Down
12 changes: 6 additions & 6 deletions src/DynamoCoreWpf/ViewModels/Core/DynamoViewModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1504,26 +1504,26 @@ internal bool CanUpdateAllPythonEngine(object param)
/// <param name="isBinding">Should be set to true, if you require to bind the passed
/// NodeModel engine value with the menu item, works only when a single node is passed in the list.</param>
internal void AddPythonEngineToMenuItems(List<PythonNodeBase> pythonNodeModel,
MenuItem pythonEngineVersionMenu,
System.Windows.Controls.MenuItem pythonEngineVersionMenu,
RoutedEventHandler updateEngineDelegate,
string engineName, bool isBinding = false)
{
//if all nodes in the selection are set to a specific engine, then that engine will be checked in the list.
bool hasCommonEngine = pythonNodeModel.All(x => x.EngineName == engineName);
var currentItem = pythonEngineVersionMenu.Items.Cast<MenuItem>().FirstOrDefault(x => x.Header as string == engineName);
var currentItem = pythonEngineVersionMenu.Items.Cast<System.Windows.Controls.MenuItem>().FirstOrDefault(x => x.Header as string == engineName);
if (currentItem != null)
{
if (pythonNodeModel.Count == 1) return;
currentItem.IsChecked = hasCommonEngine;
return;
}
MenuItem pythonEngineItem = null;
System.Windows.Controls.MenuItem pythonEngineItem = null;
//if single node, then checked property is bound to the engine value, as python node context menu is not recreated
if (pythonNodeModel.Count == 1 && isBinding)
{
var pythonNode = pythonNodeModel.FirstOrDefault(); ;
pythonEngineItem = new MenuItem { Header = engineName, IsCheckable = false };
pythonEngineItem.SetBinding(MenuItem.IsCheckedProperty, new System.Windows.Data.Binding(nameof(pythonNode.EngineName))
pythonEngineItem = new System.Windows.Controls.MenuItem { Header = engineName, IsCheckable = false };
pythonEngineItem.SetBinding(System.Windows.Controls.MenuItem.IsCheckedProperty, new System.Windows.Data.Binding(nameof(pythonNode.EngineName))
{
Source = pythonNode,
Converter = new CompareToParameterConverter(),
Expand All @@ -1534,7 +1534,7 @@ internal void AddPythonEngineToMenuItems(List<PythonNodeBase> pythonNodeModel,
{
//when updating multiple nodes checked value is not bound to any specific node,
//rather takes into account all the selected nodes
pythonEngineItem = new MenuItem { Header = engineName, IsCheckable = true };
pythonEngineItem = new System.Windows.Controls.MenuItem { Header = engineName, IsCheckable = true };
pythonEngineItem.IsChecked = hasCommonEngine;
}
pythonEngineItem.Click += updateEngineDelegate;
Expand Down
Loading