GridCal 5.3.38__tar.gz → 5.3.40__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ExecuteGridCal.py +5 -3
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_segment.py +1 -1
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Model/objects.py +1 -1
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/io.py +24 -12
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/__version__.py +1 -1
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/update.py +30 -18
- {gridcal-5.3.38 → gridcal-5.3.40}/PKG-INFO +1 -1
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/AboutDialogue/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/AboutDialogue/about_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/AboutDialogue/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/AboutDialogue/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/AboutDialogue/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Analysis/AnalysisDialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Analysis/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Analysis/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Analysis/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Analysis/object_plot_analysis.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Analysis/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/CascadingSteps/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/CascadingSteps/cascading_steps.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/CascadingSteps/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/CascadingSteps/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ContingencyPlanner/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ContingencyPlanner/contingency_planner_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ContingencyPlanner/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ContingencyPlanner/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ContingencyPlanner/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/CoordinatesInput/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/CoordinatesInput/coordinates_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/CoordinatesInput/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/CoordinatesInput/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/CoordinatesInput/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/Editors/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/Editors/controllable_shunt_editor.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/Editors/generator_editor.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/Editors/line_editor.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/Editors/new_line_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/Editors/transformer3w_editor.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/Editors/transformer_editor.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/Editors/transformer_taps_editor.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/line_location_graphic_item.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/map_ac_line.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/map_dc_line.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/map_fluid_path.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/map_hvdc_line.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_container.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Substation/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Substation/node_template.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Substation/substation_graphic_item.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Substation/voltage_level_graphic_item.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/blue_marble.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/cartodb.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/base_tiles.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/default_tile_data.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/pycacheback.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/tile_worker.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/tiles_cache.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/grid_map_widget.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/map_widget.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics_template.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/series_reactance_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer2w_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/transformer3w_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_turbine_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/battery_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/controllable_shunt_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/current_injection_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/external_grid_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/generator_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/injections_template_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/static_generator_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Substation/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Substation/busbar_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Substation/cn_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/matplotlibwidget.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/schematic_widget.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/terminal_item.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/base_diagram_widget.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/diagrams_model.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/generic_graphics.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/graphics_manager.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridGenerator/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridGenerator/grid_generator_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridGenerator/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridGenerator/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridGenerator/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/build_diff_tree.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/demo_code.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/demo_code2.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/demo_code3.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/demo_code4.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/grid_diff.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/grid_diff_gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/grid_merge.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/grid_merge_gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/GridMerge/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadCatalogue/SelectComponents.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadCatalogue/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadCatalogue/catalogue_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadCatalogue/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadCatalogue/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadDesigner/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadDesigner/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadDesigner/load_designer.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadDesigner/load_designer_ui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/LoadDesigner/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/ConsoleLog.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/ConsoleLogController.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/GridCalMain.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/MainWindow.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Model/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Model/compiled_arrays.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Model/diagrams.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Model/time_events.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/README.txt +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Results/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Results/results.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Scripting/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Scripting/scripting.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Server/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Server/server.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Settings/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/Settings/configuration.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/base_gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/SubClasses/simulations.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/object_select_window.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Main/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ProfilesInput/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ProfilesInput/excel_dialog.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ProfilesInput/excel_sheet_selection.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ProfilesInput/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ProfilesInput/models_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ProfilesInput/profile_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ProfilesInput/profiles_from_data_gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ProfilesInput/profiles_from_models_gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ProfilesInput/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/RosetaExplorer/MainWindow.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/RosetaExplorer/RosetaExplorer.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/RosetaExplorer/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/RosetaExplorer/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/RosetaExplorer/roseta_objects_model.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/RosetaExplorer/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SigmaAnalysis/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SigmaAnalysis/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SigmaAnalysis/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SigmaAnalysis/sigma_analysis_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SigmaAnalysis/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SolarPowerWizard/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SolarPowerWizard/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SolarPowerWizard/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SolarPowerWizard/solar_power_wizzard.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SolarPowerWizard/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SubstationDesigner/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SubstationDesigner/substation_designer.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SubstationDesigner/substation_designer_gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SubstationDesigner/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SyncDialogue/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SyncDialogue/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SyncDialogue/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SyncDialogue/sync_dialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SyncDialogue/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SystemScaler/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SystemScaler/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SystemScaler/system_scaler.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SystemScaler/system_scaler_ui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/SystemScaler/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TowerBuilder/LineBuilderDialogue.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TowerBuilder/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TowerBuilder/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TowerBuilder/table_models.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TowerBuilder/tower_builder.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TowerBuilder/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TreeModelViewer/MainWindow.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TreeModelViewer/TreeModelViewer.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TreeModelViewer/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TreeModelViewer/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/TreeModelViewer/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Visualization/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Visualization/visualization.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Widgets/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Widgets/custom_qrangeslider.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Widgets/matplotlibwidget.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/WindPowerWizard/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/WindPowerWizard/gui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/WindPowerWizard/icons_rc.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/WindPowerWizard/update_gui_file.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/WindPowerWizard/wind_power_wizzard.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/associations_model.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/general_dialogues.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/gui_functions.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/messages.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/object_model.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/pandas_model.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/plot_config.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/profiles_model.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/python_console.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/python_highlighter.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/results_model.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/table_view_header_wrap.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/themes.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/toast_widget.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/update_gui_all.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/update_gui_common.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/wrappable_table_model.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/LICENSE.txt +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Session/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Session/export_results_driver.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Session/file_handler.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Session/server_driver.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Session/session.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Session/synchronization_driver.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_color.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_icon/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_icon/icon_engine.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_icon/svg.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_main.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_os_appearance/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_os_appearance/_accent/_mac_detect.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_os_appearance/listener.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_proxy_style.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_resources/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_resources/colors.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_resources/palette.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_resources/standard_icons.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_resources/stylesheets.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_resources/svg.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_style_loader.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_template/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_template/engine.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_template/filter.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/_util.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/qtpy/QtCore/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/qtpy/QtGui/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/qtpy/QtSvg/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/qtpy/QtWidgets/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/qtpy/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/qtpy/qt_compat.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/qtpy/qt_version.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/widget_gallery/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/widget_gallery/__main__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/dock_ui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/frame_ui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/icons_ui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/mdi_ui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/widget_gallery/_ui/widgets_ui.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/ThirdParty/qdarktheme/widget_gallery/main_window.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/data/GridCal.ico +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/data/GridCal.svg +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/data/__init__.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/data/cables.csv +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/data/sequence_lines.csv +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/data/transformers.csv +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/data/wires.csv +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/plugins.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/GridCal/templates.py +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/setup.cfg +0 -0
- {gridcal-5.3.38 → gridcal-5.3.40}/setup.py +0 -0
@@ -10,10 +10,13 @@ PACKAGE_PARENT = '..'
|
|
10
10
|
SCRIPT_DIR = os.path.dirname(os.path.realpath(os.path.join(os.getcwd(), os.path.expanduser(__file__))))
|
11
11
|
sys.path.append(os.path.normpath(os.path.join(SCRIPT_DIR, PACKAGE_PARENT)))
|
12
12
|
from GridCal.__version__ import about_msg
|
13
|
+
|
14
|
+
# NOTE: For some reason I cannot begin to comprehend, the activation fails on windows if called before the GUI...
|
15
|
+
import GridCalEngine.Utils.ThirdParty.gslv.gslv_activation
|
16
|
+
|
13
17
|
from GridCal.Gui.Main.GridCalMain import runGridCal
|
14
|
-
import platform
|
15
18
|
|
16
|
-
|
19
|
+
import platform
|
17
20
|
|
18
21
|
if platform.system() == 'Windows':
|
19
22
|
# this makes the icon display properly under windows
|
@@ -29,4 +32,3 @@ if __name__ == "__main__":
|
|
29
32
|
# os.environ["QT_QPA_PLATFORMTHEME"] = "qt5ct" # this forces QT-only menus and look and feel
|
30
33
|
|
31
34
|
runGridCal()
|
32
|
-
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_segment.py
RENAMED
@@ -317,7 +317,7 @@ class MapLineSegment(QGraphicsLineItem):
|
|
317
317
|
x, y = scene_pos.x(), scene_pos.y()
|
318
318
|
lat, lon = self.editor.to_lat_lon(x=x, y=y)
|
319
319
|
add_menu_entry(menu=menu,
|
320
|
-
text="Open in
|
320
|
+
text="Open in Street view",
|
321
321
|
function_ptr=lambda: open_street_view(lat, lon),
|
322
322
|
icon_path=":/Icons/icons/map.svg")
|
323
323
|
|
@@ -833,7 +833,7 @@ class ObjectsTableMain(DiagramsMain):
|
|
833
833
|
elif elm_type == DeviceType.WireDevice.value:
|
834
834
|
|
835
835
|
name = f'Wire {len(self.circuit.wire_types) + 1}'
|
836
|
-
obj = dev.Wire(name=name
|
836
|
+
obj = dev.Wire(name=name)
|
837
837
|
self.circuit.add_wire(obj)
|
838
838
|
|
839
839
|
elif elm_type == DeviceType.TransformerTypeDevice.value:
|
@@ -26,6 +26,7 @@ from GridCalEngine.Devices.multi_circuit import MultiCircuit
|
|
26
26
|
from GridCalEngine.Compilers.circuit_to_newton_pa import NEWTON_PA_AVAILABLE
|
27
27
|
from GridCalEngine.Compilers.circuit_to_pgm import PGM_AVAILABLE
|
28
28
|
from GridCalEngine.Compilers.circuit_to_data import compile_numerical_circuit_at
|
29
|
+
from GridCalEngine.IO.cim.cgmes.cgmes_export import get_available_cgmes_profiles
|
29
30
|
from GridCalEngine.enumerations import CGMESVersions, SimulationTypes
|
30
31
|
from GridCalEngine.IO.gridcal.contingency_parser import import_contingencies_from_json, export_contingencies_json_file
|
31
32
|
from GridCalEngine.IO.cim.cgmes.cgmes_enums import cgmesProfile
|
@@ -61,15 +62,9 @@ class IoMain(ConfigurationMain):
|
|
61
62
|
CGMESVersions.v3_0_0]}
|
62
63
|
self.ui.cgmes_version_comboBox.setModel(gf.get_list_model(list(self.cgmes_version_dict.keys())))
|
63
64
|
|
64
|
-
self.cgmes_profiles_dict = {
|
65
|
-
|
66
|
-
|
67
|
-
cgmesProfile.TP,
|
68
|
-
cgmesProfile.SV,
|
69
|
-
cgmesProfile.SSH,
|
70
|
-
cgmesProfile.DY,
|
71
|
-
cgmesProfile.DL,
|
72
|
-
cgmesProfile.GL]}
|
65
|
+
self.cgmes_profiles_dict = {key: cgmesProfile(key) for key, val in
|
66
|
+
get_available_cgmes_profiles(cgmes_version=CGMESVersions.v2_4_15).items()}
|
67
|
+
|
73
68
|
self.ui.cgmes_profiles_listView.setModel(gf.get_list_model(list(self.cgmes_profiles_dict.keys()),
|
74
69
|
checks=True, check_value=True))
|
75
70
|
|
@@ -95,6 +90,9 @@ class IoMain(ConfigurationMain):
|
|
95
90
|
self.ui.exportSimulationDataButton.clicked.connect(self.export_simulation_data)
|
96
91
|
self.ui.loadResultFromDiskButton.clicked.connect(self.load_results_driver)
|
97
92
|
|
93
|
+
# change
|
94
|
+
self.ui.cgmes_version_comboBox.currentTextChanged.connect(self.cgmes_version_change)
|
95
|
+
|
98
96
|
def dragEnterEvent(self, event):
|
99
97
|
"""
|
100
98
|
|
@@ -410,6 +408,11 @@ class IoMain(ConfigurationMain):
|
|
410
408
|
self.rosetta_gui.set_logger(self.open_file_thread_object.cgmes_logger)
|
411
409
|
self.rosetta_gui.update_combo_boxes()
|
412
410
|
self.rosetta_gui.show()
|
411
|
+
else:
|
412
|
+
# else, show the logger if it is necessary
|
413
|
+
if len(self.open_file_thread_object.logger) > 0:
|
414
|
+
dlg = LogsDialogue('Open CGMES file logger', self.open_file_thread_object.logger)
|
415
|
+
dlg.exec()
|
413
416
|
|
414
417
|
else:
|
415
418
|
# else, show the logger if it is necessary
|
@@ -573,8 +576,6 @@ class IoMain(ConfigurationMain):
|
|
573
576
|
else:
|
574
577
|
return
|
575
578
|
|
576
|
-
|
577
|
-
|
578
579
|
def export_circuit_differential(self):
|
579
580
|
"""
|
580
581
|
Prompt to export a diff of this circuit and a base one
|
@@ -594,7 +595,6 @@ class IoMain(ConfigurationMain):
|
|
594
595
|
dlg = GridDiffDialogue(grid=self.circuit)
|
595
596
|
dlg.exec()
|
596
597
|
|
597
|
-
|
598
598
|
# def post_create_circuit_differential(self):
|
599
599
|
# """
|
600
600
|
#
|
@@ -1152,3 +1152,15 @@ class IoMain(ConfigurationMain):
|
|
1152
1152
|
self.setup_time_sliders()
|
1153
1153
|
self.get_circuit_snapshot_datetime()
|
1154
1154
|
self.change_theme_mode()
|
1155
|
+
|
1156
|
+
def cgmes_version_change(self):
|
1157
|
+
"""
|
1158
|
+
On GUI cgmes version change, display only the supported profiles
|
1159
|
+
"""
|
1160
|
+
cgmes_version = self.cgmes_version_dict[self.ui.cgmes_version_comboBox.currentText()]
|
1161
|
+
|
1162
|
+
self.cgmes_profiles_dict = {key: cgmesProfile(key) for key, val in
|
1163
|
+
get_available_cgmes_profiles(cgmes_version=cgmes_version).items()}
|
1164
|
+
|
1165
|
+
self.ui.cgmes_profiles_listView.setModel(gf.get_list_model(list(self.cgmes_profiles_dict.keys()),
|
1166
|
+
checks=True, check_value=True))
|
@@ -5,30 +5,42 @@
|
|
5
5
|
from __future__ import annotations
|
6
6
|
from typing import Tuple
|
7
7
|
import subprocess
|
8
|
+
import requests
|
8
9
|
import sys
|
9
10
|
import packaging.version as pkg
|
10
11
|
from GridCal.__version__ import __GridCal_VERSION__
|
11
12
|
|
12
13
|
|
13
|
-
def find_latest_version(name: str = 'GridCal') -> str | None:
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
14
|
+
# def find_latest_version(name: str = 'GridCal') -> str | None:
|
15
|
+
# """
|
16
|
+
# Find the latest version of a package
|
17
|
+
# :param name: name of the Package
|
18
|
+
# :return: version string
|
19
|
+
# """
|
20
|
+
# latest_version = str(subprocess.run([sys.executable, '-m', 'pip',
|
21
|
+
# 'install', f'{name}==random',
|
22
|
+
# '--break-system-packages'],
|
23
|
+
# capture_output=True, text=True))
|
24
|
+
# latest_version = latest_version[latest_version.find('(from versions:') + 15:]
|
25
|
+
# latest_version = latest_version[:latest_version.find(')')]
|
26
|
+
# latest_version = latest_version.replace(' ', '').split(',')[-1]
|
27
|
+
#
|
28
|
+
# if latest_version == 'none':
|
29
|
+
# return None
|
30
|
+
#
|
31
|
+
# return latest_version
|
32
|
+
|
33
|
+
|
34
|
+
def find_latest_version(package_name: str = 'GridCal'):
|
35
|
+
try:
|
36
|
+
url = f"https://pypi.org/pypi/{package_name}/json"
|
37
|
+
response = requests.get(url, timeout=5)
|
38
|
+
response.raise_for_status()
|
39
|
+
data = response.json()
|
40
|
+
return data["info"]["version"]
|
41
|
+
except Exception:
|
28
42
|
return None
|
29
43
|
|
30
|
-
return latest_version
|
31
|
-
|
32
44
|
|
33
45
|
def check_version(name: str = 'GridCal') -> Tuple[int, str]:
|
34
46
|
"""
|
@@ -43,7 +55,7 @@ def check_version(name: str = 'GridCal') -> Tuple[int, str]:
|
|
43
55
|
+1: we are behind pipy, we can update
|
44
56
|
"""
|
45
57
|
|
46
|
-
latest_version = find_latest_version(
|
58
|
+
latest_version = find_latest_version(package_name=name)
|
47
59
|
|
48
60
|
# pipy_version = pkg_resources.parse_version(latest_version)
|
49
61
|
# gc_version = pkg_resources.parse_version(__GridCal_VERSION__)
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/ContingencyPlanner/contingency_planner_dialogue.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Branches/map_line_container.py
RENAMED
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Substation/node_template.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/__init__.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/blue_marble.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/MapWidget/Tiles/TileProviders/cartodb.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/dc_line_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/hvdc_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/line_graphics.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/switch_graphics.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/upfc_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/vsc_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Branches/winding_graphics.py
RENAMED
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_node_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_p2x_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_path_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Fluid/fluid_pump_graphics.py
RENAMED
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/load_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Injections/shunt_graphics.py
RENAMED
File without changes
|
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Substation/__init__.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Substation/bus_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Substation/busbar_graphics.py
RENAMED
File without changes
|
{gridcal-5.3.38 → gridcal-5.3.40}/GridCal/Gui/Diagrams/SchematicWidget/Substation/cn_graphics.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|