Changelog
All notable changes to the viktor SDK will be documented in this file, categorized by version number.
The changes can be categorized further in the following headers:
- Action Required: when a backwards incompatible change is made, which requires actions in the application code. This header will only be present in major releases, on Beta features, or when a Python version is dropped.
- Added: when a functionality is added, without breaking compatibility with older versions.
- Deprecated: when an existing functionality will be removed in upcoming releases. You will find a reference to the upgrade instructions in this change.
- Docs: when the change involves SDK documentation, docstring, and/or type hinting.
- Fixed: when the change fixes a bug/error.
- Security: when a vulnerability is fixed.
Each change consists of a tag to annotate which VIKTOR module is involved. If the change encompasses multiple modules,
the viktor
tag is used.
v14
v14.19.0 - 08/01/2025
Added
core
Appoint top-level entity as starting page withInitialEntity
use_as_start_page
argument
v14.18.0 - 03/01/2025
Added
parametrization
Support 'name' on DynamicArrayparametrization
Removed [BETA] status from GeometrySelectField and GeometryMultiSelectFieldutils
Increased expiration of memoization results from 1 hour to 24 hoursutils
Increased amount of locally stored memoization results from 10 to 50 items
Fixed
core
Remove newly created file key from storage in case subsequent Storage.set failsparametrization
Warning regarding numeric option value within a table is not triggered for AutocompleteField and MultiSelectFieldparametrization
Fixed typehint of default argument in GeometryMultiSelectField
v14.17.0 - 03/12/2024
Added
external
DynamoAnalysisexternal
ETABSAnalysisexternal
MatlabAnalysisexternal
PlaxisAnalysisexternal
PythonAnalysisexternal
RevitAnalysisexternal
SAP2000Analysisexternal
TeklaAnalysis
v14.16.2 - 30/10/2024
Added
external
Serialized SCIA model is compressed to allow for large input models
v14.16.1 - 15/10/2024
Fixed
api_v1
Fixed several Entity methods that did not work when using a Personal Access Token
v14.16.0 - 08/10/2024
Action Required
viktor
Removed support for Python 3.8
Added
viktor
Support for Python 3.13
Deprecated
viktor
Support for Python 3.9 will be removed (U91)
Docs
viktor
Fixed that public classes/functions not in all were excluded from the docs
v14.15.2 - 04/09/2024
Fixed
views
Fixed TableView from pandas Styler object crashing on unsupported formatviktor
Requests now use the user's system certificates to solve SSL cert verification errors
v14.15.1 - 26/08/2024
Fixed
viktor
Lazy import of theexternal
modules which fixes a potential ImportError and improves import speedviews
Lazy import of pandas to improve import speed of theviews
module
v14.15.0 - 22/08/2024
Added
viktor
Support for single import (e.g.import viktor as vkt; vkt.NumberField(...)
)core
Make 'label' on ViktorController optionalviews
Make 'duration_guess' on all Views optional
Fixed
views
Fix bug with usingTableView
withpandas
showing data incorrectly in certain casesviews
Fix small typo inSummaryItem
suffix docstringexternal
Fix error mapping for spreadsheet calculation (SpreadsheetCalculation) so more error information is shownexternal
Fix error mapping for spreadsheet renderer (SpreadsheetTemplate / render_spreadsheet) so more error information is showncore
External services (e.g.convert_word_to_pdf
,render_jinja_template
, etc.) now show more error information
v14.14.0 - 07/08/2024
Added
utils
render_jinja_template
now validates identifiers before filling templateexternal
render_word_file
andWordFileTemplate.render()
now validate identifiers before filling templateexternal
Addedfile
property toSpreadsheetCalculation
andSpreadsheetResult
Fixed
parametrization
Removed distracting warning when Controller contains an empty parametrizationcore
Delete temp file from disk after closing aFile.from_url
v14.13.0 - 10/07/2024
Added
views
AddedTableView
for easy creation of output tables
v14.12.0 - 01/07/2024
Added
api_v1
Addedentity_compute
method for doing computations via the API
Fixed
external
Updated polling interval of external integrations to make short duration external computations more responsive
v14.11.0 - 18/06/2024
Added
api_v1
Added retries in relevant API callsparametrization
Added support for disabling aStep
v14.10.1 - 17/06/2024
Fixed
viktor
Mark numpy v2 as incompatible with viktor
v14.10.0 - 15/05/2024
Added
parametrization
Added GeometrySelectField and GeometryMultiSelectFieldgeometry
Addedidentifier
to geometrical objects
Fixed
viktor
Fix command to also function forapp.py
v14.9.0 - 04/04/2024
Added
api_v1
AddedAPI().get_workspace
andAPI().get_workspaces
api_v1
Support to use the API module from outside of a VIKTOR app
v14.8.0 - 28/02/2024
Added
parametrization
Define dynamic option lists per dynamic array rowviews
GeometryView
x_axis_to_right
setting to set the initial x-axis orientationexternal
GrasshopperAnalysis
Deprecated
views
GeometryView
initial x-axis orientation will be to the right by default (U90)
Fixed
parametrization
Fix incorrect or failing serialization when using non-native objects (e.g. Color, GeoPoint, etc.) in DynamicArray default
v14.7.1 - 06/02/2024
Added
parametrization
Addedworkspace_id
in signature of controller methods and callback functions
v14.7.0 - 10/01/2024
Added
viktor
Support for Python 3.12parametrization
Support for (dynamic) visibility onPage
,Tab
, andSection
parametrization
Support to specifywidth
on a Page and Step to adjust the width-ratio between input and output of an editorexternal
SCIA binding: general cross-sections (polygon + openings only)
Deprecated
parametrization
Removedalways_available
from buttons (U88)viktor
Support for Python 3.8 will be removed (U89)
Fixed
viktor
Upgrade vendored trimesh to resolve numpy deprecation
v14.6.1 - 16/10/2023
Added
views
Added the possibility to use a FileResource as input for the IFCResult and IFCAndDAtaResult
Fixed
external
Dynamoconvert_geometry_to_glb
crashes due to incorrect parsing of line strips
v14.6.0 - 03/10/2023
Added
external
IDEA binding: added support to set name of design memberexternal
IDEA binding: added support to set description of extremeexternal
IDEA binding: added support to set project data propertiesviews
IFCView and IFCAndDataView
Fixed
geo
Fixed error caused by deprecated matplotlib style 'seaborn-whitegrid'viktor
Removed upper bounds of VIKTOR dependencies ('pandas' and 'munch')
v14.5.0 - 05/09/2023
Added
geometry
Metalness and roughness of defaultMaterial
updated to 0.5 and 1.0 respectivelygeometry
Material
properties can now be set on the instance (e.g.mat.opacity = 0.3
)views
Support marker size of aMapPoint
by specifying thesize
argument
Deprecated
geometry
Threejs properties renamed / removed fromMaterial
(U87)
v14.4.0 - 25/07/2023
Added
views
Addgeometry_type
toGeometryResult
andGeometryAndDataResult
to support alternative geometry file formats (e.g. 3DM)
v14.3.0 - 11/07/2023
Added
external
SCIA binding: create averaging strips (POINT type only)parametrization
Image
field that can be used to display a static image
v14.2.1 - 15/06/2023
Fixed
api_v1
Regression inlen(entity.revisions())
causing an error
v14.2.0 - 13/06/2023
Added
parametrization
ChildEntityManager
field that can be used to manage child entities
v14.1.0 - 23/05/2023
Added
external
SCIA binding: create selections
v14.0.0 - 12/04/2023
Action Required
viktor
Upgrade instructions U76 - U86 have been applied
Added
parametrization
ColorField
which allow users to select from a color palettecore
Non-breaking user messages usingUserMessage
testing
Allow forParametrization
class inmock_params
Docs
testing
SimplifiedMockedEntity
example
Fixed
viktor
Fixedmatplotlib
dependency range set too strict
v13
v13.8.0 - 16/02/2023
Added
viktor
Support for Python 3.11
v13.7.2 - 08/02/2023
Docs
views
Added info about "id" attribute for interaction to docstring of GeoJSONResultresult
Fixed example inOptimizationResult
docstring
Fixed
external
Dynamoconvert_geometry_to_glb
now correctly implements transparencygeometry
Fixed rotation bug in Cone geometry when oriented in (0, -1, 0) direction
v13.7.1 - 16/01/2023
Fixed
errors
FixedUserError
to accept multiple messages of any type, in line withUserException
v13.7.0 - 16/12/2022
Added
result
Support 'Munch' type in aSetParamsResult
views
NewImageView
andImageAndDataView
that accept 'svg', 'jpeg', 'png', 'gif' filesparametrization
Validation of aStep
using theon_next
callback functionerrors
UserError
to show an error to the user and mark fields invalid in the interfacecore
Show/hide top-level entities on the dashboard withInitialEntity
show_on_dashboard
argument
Deprecated
views
SVGView
,JPGView
,PNGView
are replaced byImageView
(U82)views
SVGResult
,JPGResult
,PNGResult
are replaced byImageResult
(U82)views
SVGAndDataView
,JPGAndDataView
,PNGAndDataView
are replaced byImageAndDataView
(U82)views
SVGAndDataResult
,JPGAndDataResult
,PNGAndDataResult
are replaced byImageAndDataResult
(U82)parametrization
Violated field constraints will block actions (U83)viktor
UserException
will be replaced byUserError
(U84)
v13.6.2 - 05/12/2022
Fixed
geometry
Regression inCircularExtrusion
causing incorrect positioning
v13.6.1 - 17/11/2022
Fixed
views
Regression in SVGAndDataResult causing StringIO image to crash with UnicodeEncodeError in certain cases (e.g. matplotlib)
v13.6.0 - 7/11/2022
Added
viktor
Show progress messages in terminalgeometry
Specifyshell_thickness
on aCircularExtrusion
to create a hollow extrusion
Deprecated
geometry
Removeopen_ends
fromCircularExtrusion
(U81)
Fixed
codemod
Fixed codemods failing on f-string with unparenthesized tuplesviktor
Ignore errors in sending progress messagesviews
Regression in SVGResult causing StringIO image to crash with UnicodeEncodeError in certain cases (e.g. matplotlib)
v13.5.1 - 18/10/2022
Fixed
external
Dynamoconvert_geometry_to_glb
fix colors
v13.5.0 - 11/10/2022
Added
external
Added repr function to spreadsheet input classesexternal
Various analysis classes and functions now accept aFile
object, or return aFile
object if as_file=Trueviews
All image results (PNGResult
, etc...) allow for image of typeFile
geo
gef_visualization
returnsFile
object if as_file=Trueviews
WebResult
allows forhtml
of typeFile
andstr
geometry
Support visualization ofArc
,Line
, andPolyline
in aGeometryView
testing
Variousmock_*Analysis
classes to facilitate easier testing of analysis classes
Deprecated
geometry
Removehex_to_rgb
andrgb_to_hex
from geometry module (U79)parametrization
Removemin_message
andmax_message
fromNumberField
/IntegerField
(U80)
v13.4.0 - 12/09/2022
Added
external
Upload inputs ofrender_word_file
andWordFileTemplate.render
to s3 to prevent payload errorsexternal
Added torsion and interaction results toRcsOutputFileParser
Fixed
codemod
U77 incorrectly includes yaml-comments in welcome_textexternal
Dynamoconvert_geometry_to_glb
now generates double-sided facescodemod
U78 unintentionally removes comments from viktor.config.toml
v13.3.1 - 24/08/2022
Fixed
api_v1
Incorrectly settinglast_saved_params
equal to None for old entity revisionsexternal
Fix type-error in fill-spreadsheet helpergeometry
get_lowest_or_highest_profile_x
sometimes returns the incorrect profileparametrization
Raise a warning when using anOptionField
with anint
value in aTable
v13.3.0 - 10/08/2022
Added
parametrization
Increased character limit onText
element from 500 to 1800testing
mock_API
decorator to mock theAPI
class in teststesting
mock_params
function to convert a JSON/dict to the (deserialized) paramstesting
mock_View
decorator to mockView
decorators in teststesting
mock_SciaAnalysis
to mockSciaAnalysis.execute
and analysis returns in testsapi_v1
CompareEntityType
s orUser
s with "=="geometry
CompareGeoPoint
s,GeoPolyline
s, orGeoPolygon
s with "=="