Changelog-Framework
(Updating changelog)
(Updating changelog)
Line 80: Line 80:
<div class="changelogs">
<div class="changelogs">
=== April 2024 ===
=== April 2024 ===
* '''Revision 15584''' (Modified on 2024-04-18): Checksum issues - cannot use all TV's and must include derivation OCL
* '''Revision 15583''' (Modified on 2024-04-18): Checksum issue with Methods; skipping types since it proved to hard to be consistent with collection, nullability,enums,modeltypes,systemtypes in permutations
* '''Revision 15582''' (Modified on 2024-04-18): Checksum issue with Enum types - they will either be DynamicStringEnum or real codegen type - will put ENUM for all
* '''Revision 15581''' (Modified on 2024-04-18): Checksum issue with Enum types - they will either be DynamicStringEnum or real codegen type - will put ENUM for all
* '''Revision 15580''' (Modified on 2024-04-18): Method Checksum issues
* '''Revision 15578''' (Modified on 2024-04-18): Method checksum , types sometimes included namespace. fixed
* '''Revision 15577''' (Modified on 2024-04-18): Null check in turnkey type check
* '''Revision 15576''' (Modified on 2024-04-18): Checksum for methods was off - making the codegen based on checksum a bit sketchy - fixed
* '''Revision 15565''' (Modified on 2024-04-11): Problem with hardcoded backslash for unix - Path.DirectorySeparatorChar
* '''Revision 15565''' (Modified on 2024-04-11): Problem with hardcoded backslash for unix - Path.DirectorySeparatorChar
* '''Revision 15564''' (Modified on 2024-04-11): WPF issue of dragging from debugger to app had stopped working. Turned out to be a Yearlong issue that I now cleaned up by removing unnecessary parameters
* '''Revision 15564''' (Modified on 2024-04-11): WPF issue of dragging from debugger to app had stopped working. Turned out to be a Yearlong issue that I now cleaned up by removing unnecessary parameters
Line 178: Line 186:
* '''Revision 15363''' (Modified on 2024-01-23): Build issues fixed
* '''Revision 15363''' (Modified on 2024-01-23): Build issues fixed
* '''Revision 15362''' (Modified on 2024-01-23): Illegal uses for .net6 removed
* '''Revision 15362''' (Modified on 2024-01-23): Illegal uses for .net6 removed
* '''Revision 15359''' (Modified on 2024-01-21): Fix issue with double-click on buttons inside tables.
* '''Revision 15353''' (Modified on 2024-01-19): Several small annoying misses and unhelpful-acts while writing expressions in OCL editor addressed
* '''Revision 15352''' (Modified on 2024-01-19): Safeguarding against negative sizes in WPF flexpanel
* '''Revision 15351''' (Modified on 2024-01-18): Found two comparisons of unboxed objects and changed them to object.Equals
* '''Revision 15350''' (Modified on 2024-01-18): Cleaned comparison
* '''Revision 15349''' (Modified on 2024-01-18): OperationHelpString moved from OclEditor to OclSemantix to provide better exceptions in OclEditor
* '''Revision 15346''' (Modified on 2024-01-18): TextWrapping bug in FlexPanel when using row and no wrap - Fixed! Check that Label pos is never negative
* '''Revision 15345''' (Modified on 2024-01-18): Updates of versions to remove vulnerabilities

Revision as of 00:00, 19 April 2024

Release Notes
MDRIVEN: CHANGELOG - FRAMEWORK
All the latest MDriven Fixes and Updates
ChangeLog - MDriven Framework

April 2024

  • Revision 15584 (Modified on 2024-04-18): Checksum issues - cannot use all TV's and must include derivation OCL
  • Revision 15583 (Modified on 2024-04-18): Checksum issue with Methods; skipping types since it proved to hard to be consistent with collection, nullability,enums,modeltypes,systemtypes in permutations
  • Revision 15582 (Modified on 2024-04-18): Checksum issue with Enum types - they will either be DynamicStringEnum or real codegen type - will put ENUM for all
  • Revision 15581 (Modified on 2024-04-18): Checksum issue with Enum types - they will either be DynamicStringEnum or real codegen type - will put ENUM for all
  • Revision 15580 (Modified on 2024-04-18): Method Checksum issues
  • Revision 15578 (Modified on 2024-04-18): Method checksum , types sometimes included namespace. fixed
  • Revision 15577 (Modified on 2024-04-18): Null check in turnkey type check
  • Revision 15576 (Modified on 2024-04-18): Checksum for methods was off - making the codegen based on checksum a bit sketchy - fixed
  • Revision 15565 (Modified on 2024-04-11): Problem with hardcoded backslash for unix - Path.DirectorySeparatorChar
  • Revision 15564 (Modified on 2024-04-11): WPF issue of dragging from debugger to app had stopped working. Turned out to be a Yearlong issue that I now cleaned up by removing unnecessary parameters
  • Revision 15562 (Modified on 2024-04-10): ChecksumAttribute attribute added to eco.Interfaces - this is to speed up Codegen with checksum written to code checks Better CodeGenGoverningInfo that now can find codegen diffs regardless if you or someone else forgot to codgen
  • Revision 15561 (Modified on 2024-04-10): Fix for errors introduced in rev 15499.
  • Revision 15560 (Modified on 2024-04-10): Better comment
  • Revision 15543 (Modified on 2024-04-03): Still issues with download of images with GetVMImageUrl when app is under subfolder. Fixed now I hope
  • Revision 15541 (Modified on 2024-04-03): Problem when executing ViewModelAction connected to Button: The turnkey client sends the ViewModelClassName where the Button is placed - but there is no limitation to not place the viewmodel action on any level, and the button on any other level The server first looks in the send ViewModelClass, but now looks in other ViewModelClasses if not found before giving up
  • Revision 15540 (Modified on 2024-04-03): Updating the MySQL driver to 8.3.0 due to reported linux issues
  • Revision 15539 (Modified on 2024-04-03): Issue that if operator returned state attribute - the state attribute seemed to be editable in UI due to StateAttributes not being marked readonly at correct level
  • Revision 15536 (Modified on 2024-04-03): StartUpView constant

March 2024

  • Revision 15530 (Modified on 2024-03-28): null checks
  • Revision 15525 (Modified on 2024-03-27): ReadOnlyMode advanced: when an action that brings up a modal in itself does not change persistent data it would be enabled during ReadOnlyMode - but if the ExpressionAfterModelOK will change persistent data one could argue that the bringing-up of the modal is in vain - since the user will not be able to say ok. ReadOnlyMode now tries to deduce if ExpressionAfterModelOK effects persistent data and if so the bringing up action will also be disabled during readonlymode
  • Revision 15520 (Modified on 2024-03-26): Changing "Excel clip to M1" to "Text clip to M1"
  • Revision 15519 (Modified on 2024-03-26): Now CreateTuple allows for values of parts to be given in array Updates to Debugger "Excel clip to M1" now can take multiple columns and will create tuple, also allows copy from from SQLServer-manager or any text source
  • Revision 15518 (Modified on 2024-03-25): in angular binding you cannot have stringformat - and we applied it and thus broke the binding
  • Revision 15514 (Modified on 2024-03-24): Fix of previous check-in: Changed new feature of min-height/width so that setting the ViewModel's column width or row height of <= 1 signals that no min-height/width style tag should be generated.
  • Revision 15513 (Modified on 2024-03-24): Changed new feature of min-height/width so that col or row -width of 0 signals that no min-height/width should be set.
  • Revision 15511 (Modified on 2024-03-22): Fixed bug that suppressing incorrect unzipping CRC errors left unzipped files open. Prevented local core servers from running.
  • Revision 15504 (Modified on 2024-03-22): Work in progress AutoBlazor
  • Revision 15500 (Modified on 2024-03-21): Important Placingcontainer min-height/min-width change: ViewModelColumn column Span and Row span now is shown even when column is in Placingcontainer If the PC Min-size is NOT set we will use the corresponding column/row-span * viewmodel.ColumWidth/RowHeight and use this as the min-size in the direction (width when PC is row, height when PC is column) Reasons: #1 column span did have effect in Turnkey already (grids max height was controlled by this), #2 span > 1 on textfields also turned textfields into multiline - it was hard to control this AFTER you turned the View to PC #3 The min-size is very pixel focused and using the column/row-span * viewmodel.ColumWidth/RowHeight will quantify the used min-size values in a better way Remaining issues: In WPF even textfields, combos, datepickers etc adhere to min-size, but in web the min-size is controlling the controls outer div - but css does not resize the native control the way one would expect
  • Revision 15499 (Modified on 2024-03-20): _Label subcolumn was not implemented for buttons in grids - fixed
  • Revision 15492 (Modified on 2024-03-17): Webassembly work in progress
  • Revision 15490 (Modified on 2024-03-14): Issue with ReadOnlyMode - ReverseDerived where reported as non persistent and thus made writable - this is now fixed and also the TV WillEffectPersistedDataOverrideValue is checked for Reversederived
  • Revision 15489 (Modified on 2024-03-13): New settings in MDrivenServerOverride ExternalAssetsTK helps with EXT_component dev Check that we dont init ReadOnlyMode while in sync
  • Revision 15486 (Modified on 2024-03-11): Adding IProperty TryGetName(string name) to IPropertyCollection to make checking if property exists easier. Extending turnkey SysOpenAI support : adding Temperature so that it can be controlled via model
  • Revision 15485 (Modified on 2024-03-08): Better focusing of correct thing when clicking error in Model-errors, specially when you have conversion errors that makes further eval impossible
  • Revision 15481 (Modified on 2024-03-08): HideOnDisable introduced on AbstractAction - this will be set automatically on trigger actions when added from statediagram - but is now also available on all actions When abstract action has error and shows in ViewModel error list - it now opens action editor when double clicked When error check has an error on a State it now opens the correct state diagram on click
  • Revision 15479 (Modified on 2024-03-08): Improved error message if there is an exception in class method
  • Revision 15478 (Modified on 2024-03-07): Changed so that virtual path in .net core return empty string, making URLs relative and using basepath in web page
  • Revision 15475 (Modified on 2024-03-06): Improving table rows selection.
  • Revision 15472 (Modified on 2024-03-05): REVERTED non-working feature: Complex issue with vSelected in Turnkey - when you have not checked the SelectedBox - you still want the vCurrent to be part of the vSelected - but then you want it removed from vSelected if the only reason for being in vSelected was that it was vCurrent
  • Revision 15471 (Modified on 2024-03-05): Model upload rewritten to become async to avoid UI lock for large models
  • Revision 15467 (Modified on 2024-03-04): null check, adding Nesting.RendersAsList:bool method
  • Revision 15464 (Modified on 2024-03-03): Fixed bug: External login provider name change caused user creation failure. Two different ways to look up external login records in database, made login middleware fail.
  • Revision 15463 (Modified on 2024-03-01): Complex issue with vSelected in Turnkey - when you have not checked the SelectedBox - you still want the vCurrent to be part of the vSelected - but then you want it removed from vSelected if the only reason for being in vSelected was that it was vCurrent
  • Revision 15461 (Modified on 2024-03-01): To increase the rename-ease and copy-easy of view models we now suggest you use the new vCurrent_Root variable instead of vCurrent_<ViewModelName> This will make a copied/renamed ViewModel stay correct without any changes

February 2024

  • Revision 15456 (Modified on 2024-02-29): Better error message on failed report
  • Revision 15448 (Modified on 2024-02-27): OclEditor did not correctly provide help on selfVM members due to confusion with ordinary simple types
  • Revision 15446 (Modified on 2024-02-27): Inconsistency in linkobjects: when one inner link was null we used to throw and fail on assert - but we should treat it as any normal inconsistency that can be discovered and cleaned by MDrivenServer
  • Revision 15444 (Modified on 2024-02-26): Fixed problem with deep direct links lacking full redirection URL. Added URL encoding to redirect URL.
  • Revision 15442 (Modified on 2024-02-26): selfVM variable lost in debugger after reload model; Fixed issue MDrivenServer/Admin/Data validation now creates correct EAL scripts for fixing key issues with ocl debugger - so that history db integrity is maintained
  • Revision 15441 (Modified on 2024-02-26): Auto-Inconsistency-Cleaning, Extending Cache mechanism: Dealing with data inconsistencies that arise when 2 systems act simultaneously - one system linking A-B together (embedded link in B) and other system not yet knowing of B deletes A, first system saves without knowing about deletion of A 1. This is discovered when third system reads the B that now links to an nu-existing A, we ghost create an empty A but add it to the Ghost-list. 2. When this third system does a db-update for any reason we also check the Ghostlist and if it holds Ghost objects these are unlinked 3. The effect is that inconsistencies found are auto cleaned when other save operations occur - This strategy is not perfect (since inconsistencies may happen) but good since inconsistencies will eventually get cleaned. There is no active cleaning - but an active cleaning service will be added to MDrivenServer. - The alternative ; to trust referential integrity abilities of DB-brand is complex due to issues with ordering of updates and differences between brands, and will make evolve scripts more complex When load discovered foreign keys that does not have an object it is marked as ExistenceState Deleted, and added to this list On next save (if it happens) we can unlink this from everywhere void RememberGhostFKCreatedUntilNextSave(Locator locator); Used internally in Update - to unlink ghosts so that we get self cleaning of ghost keys List<Locator> GetAllGhostFKCreatedAndClearList();
  • Revision 15440 (Modified on 2024-02-26): Better auto switch to errortab and resulttab in debugger
  • Revision 15439 (Modified on 2024-02-23): Clickable links for operators in the debugger list of available operators
  • Revision 15438 (Modified on 2024-02-21): Improved OCL feedback on things that will never work like 'hello'>=1 (string cannot be compared with number) and '1'.strToInt>DateTime.Now (number cannot be compared with datetime) Better error message when collect has zero arguments
  • Revision 15437 (Modified on 2024-02-21): LeftMenuActions , for Grids in Web , only show if there is a selected object in the grid
  • Revision 15436 (Modified on 2024-02-21): In WPF when a Popup is shown , and that popup executes an AreYouSure question prior to action - the click in the areyousure could initiate popupclose so that vCurrent vars where destroyed prior to action execution - fixed
  • Revision 15435 (Modified on 2024-02-20): Fix typo in styles for InPlacePopup. Add additional CSS class to popup based on the position.
  • Revision 15430 (Modified on 2024-02-18): Several weaknesses when reverse deriving and working with MDrivenServer - that we did not log mapping issues correctly. Fixed/Improved. Several issues with MVC UI and handling of composite keys fixed Improved information from WepAPI PersistenceMapper failed calls in .netcore
  • Revision 15429 (Modified on 2024-02-17): Bad cleaning in GlobalActionAndAccessGroupRuntimeService knocked out MainMenu evaluation of accessgroups after reuse of ecospace - made GlobalMenu sometimes loose actions, sometimes showing too many actions - Fixed!
  • Revision 15427 (Modified on 2024-02-16): AccessGroups did not init fast enough on wpf
  • Revision 15426 (Modified on 2024-02-16): null check on action
  • Revision 15425 (Modified on 2024-02-16): Old bugg hid important info in exceptions from ocl - Fixed issue When decimal division by 0 we get DivideByZeroException - but ocl should not break - it should continue - for example if divide by 0 on a double we get double.positiveinfinity. We are now changing to give decimal.MaxValue (very big number) on division by zero
  • Revision 15424 (Modified on 2024-02-15): More matching types when reversing postgresql Better matching of SQLServerTypes
  • Revision 15423 (Modified on 2024-02-15): Before the evolve detected switch of attribute PMapper as reason for drop of column - I am now removing that - its common to change a pmapper on a attribute - specially in reversed scenarios StringAsChar and StringAsVarChar now converts non string types to strings to help with reversing of odd things in dbs Int32 and Int16 pmappers are extended to tolerate Int16 vs Int32 to help with crappy reversed databases
  • Revision 15421 (Modified on 2024-02-15): Unfortunate change some days ago made TechnicalViewmodels rely on DisplayQueue for update - this lead to ServerSide jobs not seeing the data Probably more issues with clone etc... Fixed
  • Revision 15418 (Modified on 2024-02-14): TableColumnsExcludeNames was null and failed table renderings
  • Revision 15417 (Modified on 2024-02-14): Null check for TaggedValues
  • Revision 15416 (Modified on 2024-02-14): RenderSettings.TableColumnsExcludeNames crashes MDrivenServer - fixed
  • Revision 15414 (Modified on 2024-02-14): Add check for RuntimeName for new TableColumnsExcludeNames setting
  • Revision 15413 (Modified on 2024-02-14): Add check for RuntimeName for new TableColumnsExcludeNames setting
  • Revision 15412 (Modified on 2024-02-13): Add TableColumnsExcludeNames setting, refactoring of table rendering
  • Revision 15409 (Modified on 2024-02-13): Postegresql updates
  • Revision 15408 (Modified on 2024-02-13): Removing tooltip for context action button in advanced tables.
  • Revision 15407 (Modified on 2024-02-13): Issues with ReadOnlyMode and AutoForm
  • Revision 15406 (Modified on 2024-02-13): Fixing issue with context menu button in advanced tables.
  • Revision 15404 (Modified on 2024-02-13): Adding support of width changes for multiselect column in advanced tables. Adding flexible sizing for checkboxes.
  • Revision 15402 (Modified on 2024-02-11): Added missing help texts on operators
  • Revision 15401 (Modified on 2024-02-11): Adding a tab to OCLDebugger that lists all operators seen by OCL. Action and OCLPS languages
  • Revision 15400 (Modified on 2024-02-09): Bug in RuntimeDefaultOnViews and null checks
  • Revision 15398 (Modified on 2024-02-09): Readonly issue with members fixed, readonly is off if selfVM.IsDirty
  • Revision 15396 (Modified on 2024-02-09): IMDrivenMiscSettings service added, covered by optional model class SysMDrivenMiscSettingsSingleton as described here https://wiki.mdriven.net/index.php?title=SysMDrivenMiscSettingsSingleton ViewModelHelper.CreateFromViewModelWithExtendedUIFunctions added - this differs from existing CreateFromViewModel overloads in the way that it checks for RuntimeDefaultOnViews AccessGroup, and the GlobalReadOnlyMode https://wiki.mdriven.net/Per_viewmodel_ReadOnly_mode
  • Revision 15394 (Modified on 2024-02-08): Fixed bug that Windows authentication was unable to find existing users if the username contained backslash and an escape character code, for example \n
  • Revision 15393 (Modified on 2024-02-08): Adding the frameworkaction ReadOnlyModeToogle Adding style for WPF ReadOnlyMode button ReadOnlyModeToogleButton Adding button for ReadOnlyMode in WPF tab Adding button for ReadOnlyMode in Turnkey
  • Revision 15392 (Modified on 2024-02-08): The ReadOnlyMode - if used - will be entered Automatically on new View/root combination, and re-entered on Save or Cancel Long standing issue with LabelOnTop when LabelSpan took effectiveXPos to negative (EffectiveXPos=XPos-PresentationSpan) is now handled the same way in WPF and Web, both changed slightly
  • Revision 15391 (Modified on 2024-02-07): New functionality: ReadOnly mode per view as described here: https://wiki.mdriven.net/index.php?title=Per_viewmodel_ReadOnly_mode
  • Revision 15390 (Modified on 2024-02-07): NavigateUrl issue
  • Revision 15389 (Modified on 2024-02-06): Work with AccessGroup RuntimeDefaultOnViews
  • Revision 15387 (Modified on 2024-02-06): Changes to how ClassActions behave regarding the ViewEnable accessgroup expression New tagged value added WillEffectPersistedDataOverrideValue that allow for override of the automatic deduction connected with ViewEnableExpression Issue with use of stacked AccessGroups where they all counted as true if no explicit expression was set - and this gave wrong result since one true is enough: Fixed
  • Revision 15386 (Modified on 2024-02-05): Fixes for reverse derive of dbs that make use of namespace names (other than dbo) - like AdventureWorks
  • Revision 15384 (Modified on 2024-02-04): Fixes for reverse derive of dbs that make use of namespace names (other than dbo) - like AdventureWorks
  • Revision 15383 (Modified on 2024-02-02): Mistake in avigateUrl(theurl,newtab) fixed
  • Revision 15381 (Modified on 2024-02-01): Bug in ViewModel subcolumns could cause modlr to hang due to never finished When checking Unused vars we cannot check the OnShowExpression from the calling ViewModel context since it depends on vars in the shown ViewModelContext
  • Revision 15380 (Modified on 2024-02-01): Build issues made me change to await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); for VS stuff

January 2024

  • Revision 15379 (Modified on 2024-01-31): Better ocl editor hints on methods that still does not match params selfVM.NavigateUrl overload that takes OpenNewTab boolean parameter
  • Revision 15376 (Modified on 2024-01-29): This was changed to only be in effect in PS-Eval: ->size was allowed on none collections that then was coerced to collection - but in oclPS this turned out really bad - so I will test to deny list coercion on none collections
  • Revision 15375 (Modified on 2024-01-29): ->size was allowed on none collections that then was coerced to collection - but in oclPS this turned out really bad - so I will test to deny list coercion on none collections
  • Revision 15374 (Modified on 2024-01-29):
  • Revision 15370 (Modified on 2024-01-29): Improving Restart logg from MDrivenServer and also catch uncaught excpetions to log DataValidation in A0 - link object tests added Special handling of SQLPassthrough errors to avoid server destabilization
  • Revision 15365 (Modified on 2024-01-24): Updated the Debugger to avoid fetching linked objects and evaluate their asstring when the Exclude-Derived is checked. Turned on Virtualization of Debugger resultgrid (was turned off to get styling for dirty state to work - but we gave up on that)
  • Revision 15363 (Modified on 2024-01-23): Build issues fixed
  • Revision 15362 (Modified on 2024-01-23): Illegal uses for .net6 removed