Dynamicweb 9.8

Release date: January 28th 2020

Dynamicweb 9.8 requires .NET Framework 4.7.2. This is a necessary step towards .NET Core compatibility. Please ensure that all custom code can be compiled against .NET 4.7.2 before upgrading.

The product and product list view models have been completely rewritten - and are not backwards compatible. Any features using templates built on the old view models must be rewritten to use the new model - such as the Product Catalog for ViewModels app, PIM Channels, PIM Feeds, and templates using the Ecommerce web api (/dwapi).

Dynamicweb 9.8 has been released with the following headline features:

Ecommerce has been improved with several new features and quality-of-life improvements to existing functionality:

  • Order drafts & cart management
    • Work with multiple carts from frontend before finalizing orders
    • View and manage carts from the backend
    • Show a list of open carts in the customer center app
    • New cart commands – copyarchiveset as active, and name carts
    • New setdiscount cart command for setting custom discounts from frontend on carts where you have impersonation rights
  • Shared favorite lists & improved favorite list management
    • View & create favorite lists from backend
    • Share favorite lists between all members of a group
    • Manage favorite lists on behalf of others
  • Product view model rewrite:
    • Complete rewrite – not backwards compatible
    • WidthHeightDepth and EAN product fields now included
    • Product group membership is now included
    • Paths added to the root of the site, for each group the product is in, where a valid path exists, is now included in the model
    • Support for PIM Asset Categories added
    • VariantInfo added – a new way of structuring variant information and e.g. to get max/min price of all RED variants under a master product, that varies on size and color
    • Numerous fixes to data not being presented correctly

When it comes to Discounts & Offers, they are now grouped by shop – this makes it possible to control access to discounts in a more granular manner using the permissions model. A new notification – AfterDiscountCalculation – has also been made available. The Payment & Shipping area has also seen minor improvements; all payment gateways should now be correctly named, and the DIBS Flexwin & Stripe payment gateways are now SCA compliant. A new shipping provider add-in – for Consignor – has been released. A setting for calculating VAT for gift cards has been added to comply with current EU regulations.

Dynamicweb PIM has been improved with some much-requested features and improvements:

  • Integration to online data pools – auto-update products with data from the Icecat.biz.
  • Reach hundreds of channels by connecting to channable.com – a service integrating with channels such as AmazoneBayGoogle ShopPriceRunnerGoogle AdvertsFacebook, and more. This means you can now leave the burden of creating and maintaining complex integration to specialists and focus on your core competences.
  • Asset management – image categories extended to support multiple additional types of assets, e.g. documentslinks, or videos. Control how assets are inherited across product families & variants. NB: This comes with a name change from Image categories to asset categories.
  • Completeness improvements – set rules on groups, restrict the publication of incomplete products, and more.
  • Import/Export improvements – the import/export tool is not based on the Ecom provider and supports defining primary keys and other advanced features
  • Various quality of life improvements to Queries, Bulk-edit and Navigation

The Content & Marketing areas have also been improved:

  • You can now improve your email automation setups by defining email marketing flows – sets of emails sent to groups of users in a fixed order and with a fixed delay. Combine with dynamic user groups or index queries for maximum effect.
  • Paragraphs may now be saved as content templates and reused across a solution with preconfigured content & settings – this greatly simplifies content creation on solutions with complicated item-based content, e.g. on Rapido
  • You can now dynamically convert images to the webP format via the Image Handler GetImage.ashx – this format offers better quality using less bandwidth. A fallback exists for non-Chromium-based browsers.
  • Minor improvement s to Tracking & Reporting

At the Platform level the following improvements have been made:

  • The Indexing framework has been updated with some requested features:
    • Improved logging
    • Support for “Did you mean?”-suggestions
    • Support for synonyms
    • Prices are now indexed and grouped by currency
    • File metatags are now properly indexed
    • Item relation list content is now indexed in the Page items content and Paragraph content fields
  • Technical
    • Improvements to the Navigation view model – now accounts for permissions, device type, and publish state as well as InPath, IsActive and IsClickable.
    • Minor improvements to various deployment providers
    • Canonicals are now absolute and always generated when a product is being shown, even if the product is shown using the canonical link
    • All projects have been moved to .NET Framework 4.7.2 – please make sure your custom code compiles against 4.7.2 before upgrading
    • Major rewrite of Ecommerce contexts

Looking to upgrade? Consult the bug fixes list before upgrade.

In the area of integration, the Dynamicweb 9.8 development cycle has had a special focus on Microsoft Dynamics 365 Business Central. The key change being that – despite all the new NAV/Business Central features added in 9.6 and 9.7 – we’re aware that we will never be able to develop standard solutions to all customer- and project-specific needs.

For this reason, we have made it possible to extend the Dynamicweb Plug-In Unit for Dynamics 365 Business Central by subscribing to more than 70 different Events on the ERP side. We have a video guide and a full Visual Studio Code example project ready for you to write your own AL extensions. Extending the plugin-unit in this manner empowers our ERP partners to create customer and project-specific code, whilst ensuring that you can always run the latest version of Dynamicweb Plug-In Unit on the latest version of Dynamics 365 Business Central.

Please note, that as of Dynamicweb 9.8 our Plug-In Unit for Business Central is made available as runtime packages only. You must pay an add-on license to use them. The source code is no longer available, so any customizations must be made as extensions. Our Plug-In Units for NAV 2013 to 2018 cannot be extended, but source code is still available. You must pay an add-on license to use them - customizations are done in source code and recompiled.

All the above is done with one overall goal in mind: Maintain the flexibility for which Dynamicweb is known, while always guaranteeing support for the latest continuous update from Microsoft Dynamics.

We have also worked on other cool features – here is a list of new features and improvements:

  • An EndPoint Management tool for connecting to our code units directly has been released – it is recommended for cloud hosted ERP systems, where you can’t/won’t use a connector service. Use endpoints in Live Integration and the Import data with custom request add-in.
  • Parameterized Scheduled Tasks – Scheduled batch jobs can now be saved as XML just like data integration activities. This means you can add everything to source control, edit parameters in a text editor and copy from one Dynamicweb project to another.
  • Override parameters of multiple scheduled batch jobs with a config file. This is useful for overriding web service URLs and secrets of multiple scheduled batch jobs as you move from DEV to STAGE to PROD.
  • The Ecom Provider has been refactored to prepare for UI import of products and users in PIM, Ecommerce and User Management – and to improve performance. This is an extensive refactoring and we encourage everyone using the Ecom Provider to double check active batch jobs/scheduled tasks.
  • Microsoft Dynamics 365 Business Central & Dynamics NAV
    • The Business Central plugin unit is now extendable – write your own AL extensions and subscribe to more than 70 different extensibility points.
    • The plugin unit is now guaranteed to be compatible with the most recent release of Business Central. This comes at a cost – all plugin units are now premium features and require an add-on license.
    • Labels of item line discounts and invoice discounts are now two labels instead of one. This makes it possible for frontend users to see which kinds of discounts are applied to a cart.
    • Labels of item line discounts and invoice discounts are ready for localization/translation. This makes it possible for frontend users to read discount labels in their local language.
    • Support for customer-specific price and inventory per Unit of Measure of a product when requesting live prices. If a single product is sold in pieces, boxes and pallets with customer-specific prices for each, frontend users can now get this information.
  • Maintenance:
    • Upgraded Plug-In Unit for Dynamics 365 Business Central Fall Release 2019
    • Upgraded Plug-In Unit for Dynamics 365 Finance and Operations Fall Release 2019
    • Upgraded integration framework for LS Retail 14.02 and LS Omni 4.2
  • Remove Mock from the Dynamicweb.Deployment.Tests
    Cleanup and refac
  • Make it possible to control compression/quality on the webp image
    Content
  • Add image on page template
    Content
  • ItemType API
    Content\Items
    Added an API for getting information about which paragraph types can be created for a given context.
  • Add adornment for pages that have ecommerce navigation and URL settings applied
    Content\Page Tree
  • Change user agent for http downloader in seo namespace
    Content\SEO Express
    User agent for the content integrator module has been changed to a newer browser. Also support for TLS 1.2 has been implemented
  • Add the option to add noindex and nofollow on website like we can on pages
    Content\Websites
  • Change name of url command "Help" to "DWTemplateTags"
    Ecommerce
  • Add groups to productlistviewmodel
    Ecommerce
    Added groups to productlistviewmodel
  • Add values for toplevel properties like DWTemplateTags (not inside loops)
    Ecommerce
    Add values for toplevel properties like DWTemplateTags (not inside loops) to ExcelGenerator
  • Ecommerce : Add Carts node in the tree + permission + Carts list (Part 1)
    Ecommerce
  • Settings: Add carts flow in Settings, which is used in Ecommerce area/Carts (Part 2)
    Ecommerce
  • Setting for handling 0 Quantity orderlines
    Ecommerce
    A Setting has been added to advanced cart settings that allows you to have orderlines with a quantity of 0
  • Changes to fields on productviewmodel
    Ecommerce
    Changes to fields on productviewmodel
  • Make the permissions set on the Carts node in ecom decide if you can use new cartcommands
    Ecommerce
    Made the permissions set on the Carts node in ecom decide if you can use new cartcommands
  • Order drafts: Missing data/functionality
    Ecommerce
  • Change 'delorderline' to receive a ProductId
    Ecommerce
  • Make generic Excel exporter
    Ecommerce
  • Make addproduct support non-current carts
    Ecommerce
  • Create copy cart/order functionality
    Ecommerce
  • Set discount % on an orderline
    Ecommerce
  • Hide wrong warning for Improved Image Patterns
    Ecommerce
  • Create switch quote/cart code
    Ecommerce
  • Add variant option tree to productviewmodel
    Ecommerce
    Added variant option tree to product view model ProductViewModel.Variants -> List<VariantInfoViewModel> VariantInfoViewModel (.ProductID (ProductId - the same in the structure)) .VariantID (Full variant ID of the variant - only for leafs in the structure, i.e. VO1.VO3.VO9) .OptionID (VO1 for first level, VO3 for 2nd leve, VO9 for third level - always just one option ID) .OptionName (Variant name - Red, Green - or Small, Medium. Option name of last option in level - matching the OptionID) .OptionImage (Variant option image - matching the OptionID) .OptionColor (Variant option color - matching the OptionID) .ProductName (Name of the product from the master product - or the product.name if it is an extended variant - only leafs have this value set) .Image (On a leaf the image of the product - further up, firstOrDefault from a leaf in the subtree) .Price (Price of the variant - only leafs – maybe PriceMin if not a leaf?) .PriceMin (Lowest price of all subtree leafs - price if a leaf) .PriceMax (Highest price of all subtree leafs - price if a leaf) .Stock (If a leaf, the stocklevel from product. Otherwise sum of leaf stock levels in sub tree) (.StockUnits (Not now...)) .Variants -> List<VariantInfoViewModel> .Parent<VariantInfoViewModel>
  • Change related groups on productviewmodel
    Ecommerce
    Changes have been made to the ProductViewModel - Groups (rename from RelatedGroups) - DefaultOrPrimaryGroup (New property - returning Product.DefaultOrPrimaryGroup)
  • Include PriceProvider timings to ExecutionTable
    Ecommerce
    Included PriceProvider timings to ExecutionTable
  • Performance issue with prices when "Reverse Charge For Vat" is a enabled
    Ecommerce
    Performance has been improved when using "Reverse charge for VAT"
  • Backend support for Favorite Lists
    Ecommerce
  • Make Smartsearches in Marketing sort by name
    Ecommerce
  • Developer-test of LiveIntegration
    Ecommerce
    Updated live integration to use the new 9.8 ecom api
  • Shared favoritelists for multiple users
    Ecommerce\Customer Center
  • Create CartList in customer center
    Ecommerce\Customer Center
  • Add setting to calculate VAT for gift cards
    Ecommerce\Gift cards
  • Add permissions on the 3 nodes under "Discounts & Offers".
    Ecommerce\Order discounts
  • Add shop folder nodes for each shop under "Discounts & Offers"
    Ecommerce\Order discounts
  • Discounts should be fully versioned for language
    Ecommerce\Order discounts
  • Create an "All Orders" node underneath "Orders"
    Ecommerce\Orders
  • Minor fixes to order UI
    Ecommerce\Orders\Edit order
  • New payment setting: show to specific User Groups
    Ecommerce\Payment
  • Upgrade DIBS Flexwin to be SCA compliant
    Ecommerce\Payment
  • Change name of providers
    Ecommerce\Payment
  • Upgrade Stripe to be SCA compliant
    Ecommerce\Payment
    Strip payment provider has been update to be SCA compliant
  • Update Klarna gateway to version 3
    Ecommerce\Payment\Klarna
  • Add b2b support for klarna
    Ecommerce\Payment\Klarna
  • Add to cart minimum quantity and steps
    Ecommerce\Product Catalog
  • Make it possible to search for "productnumber1, productnumber2" in backend product list search of the catalog
    Ecommerce\Product Catalog
  • New fields for product edit
    Ecommerce\Products
  • Introduce a delete all orderlines cart command
    Ecommerce\Shopping Cart
  • Copy customer field information to delivery fields when empty - new setting in ecommerce
    Ecommerce\Shopping Cart
    New checkbox in Settings - Ecommerce - Advanced - Shopping cart: Copy customer info to delivery info if empty. This means that if ALL delivery fields are empty then the customer fields will be copied to the corresponding delivery fields. If ANY the 3 delivery fields - Address, Zip and Country - hold any value, then no customer info will be copied. It is the last thing that happens before the CheckoutDoneOrderIsComplete notification.
  • Remove checkout Shipping address validation on specific fields
    Ecommerce\Shopping Cart
    In the backend code there was a "forced "requirement of the shipping fields Name, Address and Country which was a very hidden information for the user of the system. Now only country has a "forced" validation. In the shopping cart the shop owner now needs to setup fields validation himself in Ecommerce settings - Order - Validation groups (as other fields that needs to be required.) in order to be sure that the fields are validated.
  • Checkout - Create new user forced to put the email information as the username in frontend
    Ecommerce\Shopping Cart
    Email is now added to user name field when creating user during checkout - because user name is required on a user.
  • Subtotal calculation in checkout Ecom:Order.TotalPriceWithoutFeesAndTaxes
    Ecommerce\Shopping Cart
    Added Subtotal calculation in checkout Ecom:Order.TotalPriceWithoutFeesAndTaxes
  • Add help information to image pattern field
    Ecommerce\Shops
    Added help text to the shop image patterns
  • Change the way variantgroup relations are shown in backend settings
    Ecommerce\Variants
  • Expand the variants view to more than 10 variants
    Ecommerce\Variants
  • Endpoint management page
    Integration
  • Missing functionality in User Provider: Remove duplicates
    Integration
    Added missing remove duplicates functionality to User provider
  • Cache clearing of User Provider improved
    Integration
    Cache clearing of User Provider improved
  • Add ability to select Endpoint in the Live Integration Module
    Integration
    The live integration can now use endpoints from Endpoint managemetn
  • Live integration: Add a license check
    Integration
  • Batch job: When preconfigured endpoint is used, then remove url, secret, request xml
    Integration
    Batch job: When preconfigured endpoint is used, then remove url, secret, request xml
  • Dispose WCF client. Close() is not enough when in a faulty state.
    Integration
    Ensured that WCF clients are disposed of properly in error scenarios
  • Feature: Add logging to Export Orders
    Integration
    Logging was added to order export
  • Live integration: Secret field is overridden by AD password remembered by browser
    Integration
    Live integration: Secret field is no longer overridden by AD password remembered by browser
  • Add visual indication on state of running an integration task
    Integration\Data Integration
    Added visual indication on state of running an integration task
  • Merge Ecom Provider changes to Ecom Provider V2
    Integration\Data Integration
  • Undesired behavior when using Ecom Provider
    Integration\Data Integration
    Implemented support for strict primary key matching
  • JSON Provider
    Integration\Data Integration
    Data integration now features a JSON provider
  • Ecom Provider strict primary key checkbox set by default
    Integration\Data Integration
    Strict primary key adherence has been enabled in the ecom provider as default
  • Run Scheduled Tasks in sequence based on rank/priority and/or dependency
    Integration\Framework\Batch
    A checkbox in scheduled tasks stating 'Only run if previous scheduled task was a success' A priority input on scheduled tasks visible in main page (Settings -> Integration -> Scheduled Tasks) A info button or hover over effect on the Priority rank stating: "Scheduled Tasks with highest priority are processed first. (Number 1 has the highest priority)" When scheduled tasks are scheduled to run "on the same time", then they will be completed based on priority rank. Of course this also applies when one scheduled task is initiated while another task is running. If the new task has higher priority, then current task will be cancelled. The old task will be reinitiated when the new task has completed. If the new task has lower priority, then the current task will complete. The new task will be queued and reinitiated when the old task has completed. If the checkbox 'Only run if previous scheduled task was a success' is true, then the new task will only be initiated if the higher ranked task is 'Success'. If the checbox is false, then proceed regardlessly according to priority.
  • BC OnPrem: Create runtime package
    Integration\NAV Integration
  • BC OnPrem: Example project must use tenant object range 50.000 to 99.999
    Integration\NAV Integration
  • Move 'View type' into GraphProviderBase
    Marketing
    Moved 'View type' into GraphProviderBase
  • Tracking - Improve bot detection - Ping-back JS
    Marketing
  • UI - Show Flow Recipient
    Marketing
  • UI - View Flow
    Marketing
  • UI - Create Flow Step
    Marketing
  • UI - New tree node
    Marketing
  • UI - Change icons for the other system folders
    Marketing
  • API - FlowRecipientProvider
    Marketing
  • Reporting - Predefined report structure and reports
    Marketing
  • UI - Create/edit Flow
    Marketing
  • Reporting - Fix Graph UI
    Marketing
    Fixed the reporting ui
  • Edit and delete Email Flow Steps
    Marketing
  • Prevent data loss from changing visible fields by showing leave page warning
    PIM
  • Add tooltip to field type symbol addon
    PIM
  • Extend warning when deleting structure
    PIM
  • Add Spinner in PIM area
    PIM
  • PimProductEdit - Remove descriptions for standard fields
    PIM
  • Combine - Show name/number of product, when illegal
    PIM
  • BulkEdit - ImageContainer menu, should be the same as before changes
    PIM
  • BulkEdit - Only show ProductCategoryFields relevant for the Group/Product you are in
    PIM
  • Workflow - Check for "Usage", before Workflowstate can be deleted
    PIM
  • Workflow - Disable line "Delete" button, when "In Use" are true
    PIM
  • Improve SQL in 'GetPagedProductsWithCount'
    PIM
    Improved SQL in 'GetPagedProductsWithCount'
  • Feeds - Add information to LINK area
    PIM
    UI optimization of feed links.
  • Combine - Message "The combination is already marked as ....", should be made as tooltip
    PIM
  • Shortcuts - More information and have "Set focus"
    PIM
  • Combine (extract) - rename 'Explode' to 'Extract All'
    PIM
  • Import configuration - Personal XML job, source section must be "flushed", when new file are chosen
    PIM\Export and import data
  • Feed template - Change existing to follow new Field-selections
    PIM\Export and import data
    Changed default feed templates to respect new field selection. In order to obtain them it is necessary to delete your existing templates and rerun the update script
  • Change to "Channable" XSLT
    PIM\Export and import data
    Various changes to the Channable xslt file in /Templates/Feeds/channable_products_transformer.xslt.
  • Channable setup - Refine XML
    PIM\Export and import data
    Refined the setup xml fro channable integration
  • CategoryGroupId wrong
    PIM\Export and import data
  • Data import - Add new column mapping button
    PIM\Export and import data
  • Data Import - Select lookup key setting
    PIM\Export and import data
  • Make 'Channable' XSLT release-ready
    PIM\Export and import data
  • DataImport - Don't ask for name on RUN time
    PIM\Export and import data
  • Data Import - Update related Index after ending Import process
    PIM\Export and import data
  • Set "date" on Product data Import
    PIM\Export and import data
    When importing products through the PIM import, the created date is properly set
  • Make Pim Import able to handle ProductCategoryFields
    PIM\Export and import data
  • Remove the "Source window" on Import Guide
    PIM\Export and import data
  • Add Products import to Ecommerce
    PIM\Export and import data
  • Preview page - Change to UI
    PIM\Export and import data
  • Improve ecom provider in new project
    PIM\Export and import data
  • Import UI - Mappings
    PIM\Export and import data
  • Import UI - Source settings
    PIM\Export and import data
  • CategoryFields - Handle "No existing language" with "no value/DIMMED", similar as ProductFields
    PIM\Product Edit mode
  • Change ImageManager
    PIM\Product Edit mode
  • Change PIM Details UI
    PIM\Product Edit mode
  • Change UI for reset inherited value icon
    PIM\Product Edit mode
  • Remove Icons from Image Categories (Settings)
    PIM\Product Edit mode
  • Change ImageCategory UI
    PIM\Product Edit mode
  • BulkEdit - Add ImageCategory informations to selected Images
    PIM\Product Edit mode
  • Bulk edit - Add search function to DropDown list of Fields selection
    PIM\Product Edit mode
  • Video - Player function should be accessible from backend
    PIM\Product Edit mode
  • Change EcomProduct_Edit Details UI
    PIM\Product Edit mode
  • Implement 'AllowSearch' on SelectPicker control
    PIM\Product Edit mode
    Implemented 'AllowSearch' on SelectPicker control
  • Export/Import - Set "Property TAG" on export, for identifying "DynamicwebExcel" on import
    PIM\Product Edit mode
  • Image - show ImagePattern content in Image Panel
    PIM\Product Edit mode
  • Change icons for validation - Import and Completenessa
    PIM\Product Edit mode
  • Query - ImagesPattern not working correct in Queries & Completeness
    PIM\Product Edit mode
  • Listview - Mark variants with red when inactive.
    PIM\Product View mode
  • Variants are deleted from all copies if you delete copied versions (HCT)
    PIM\Product View mode
  • Query - Permissions on Queries & Query structure
    PIM\Product View mode
  • Query - Add search function to DropDown list of ExpressionsFields
    PIM\Search and Navigation
    Added search to repository query editor field list
  • Query - Expressions fields, show Name's instead of SystemID
    PIM\Search and Navigation
    In Repository query editor Stock group ID, Parent group IDs and Product translated to fields now use term selectors
  • Settings - checkbox for Completenes moved to own section
    PIM\Search and Navigation
  • Completeness - Jump to maintain Fields-values from Completenes-Overview
    PIM\Search and Navigation
  • Completeness - refuse attach to Channel, if it is not 100%
    PIM\Search and Navigation
  • Completeness - Assign to & Used in "Category Group structure"
    PIM\Search and Navigation
  • Previous & Next - should also work in Queries & "All products"
    PIM\Search and Navigation
  • Completeness - Make colors and ranges configurable
    PIM\Search and Navigation
  • Index - Field values do not inherit from "Above groups" to "Parent group" when indexing
    PIM\Search and Navigation
    ProductCategoryFieldValues assigned to groups in a structure are now inherited to the products below when they are indexed using the ProductIndexBuilder.
  • Add feed folder "Delete" action
    PIM\UI - PIM backend
    Folders in PIM feeds can now be deleted (!)
  • Implement Azure AD External Login Provider
    Platform
  • Facets price should be indexed (and magically understand VAT)
    Platform
  • Change canonicals to be absolute and always 'on' in Ecommerce
    Platform
    Changed canonicals to be absolute and always 'on' in Ecommerce
  • Make new image patterns work for viewmodels
    Platform
    New image patterns are now available when using viewmodels
  • Support webP format in getimage
    Platform
  • Support webP format in file browser
    Platform
  • New notification subscriber to allow frontend login
    Platform
    Added a new notification subscriber to allow frontend login
  • Create mobile app for Android and iOS
    Platform
    The Dynamicweb insights app is now available from the Android Play store and iTunes
  • Add options to datetime editor
    Platform\API
    Added option to the datetime ediotr
  • Navigation viewmodel
    Platform\Customized URLs
    It's now possible to render navigaiton through view models
  • Make it possible to control number of columns on widgets
    Platform\Dashboard
  • Creating a user with existing credentials should add consent to existing user
    Platform\GDPR
  • Add groups to navigation viewmodel
    Platform\Navigation
  • Navigation view model - InPath and IsActive
    Platform\Navigation
  • Navigation view model - Custom parameters
    Platform\Navigation
  • "Did you mean" spell checker for free text searches.
    Platform\Searching
  • Add spinner when opening repository
    Platform\Searching\Indexing
  • Content indexing - process item relation list
    Platform\Searching\Indexing
  • Bulk update paragraphs using index
    Platform\Searching\Indexing
  • Make metatags usable in FileIndexBuilder
    Platform\Searching\Indexing
  • Improve logging in indexing
    Platform\Searching\Indexing
    Improved logging in indexing
  • IP ban improvement
    Platform\Security
    Added more sensible default ban values and backend overrides Added a whitelist
  • Tracking - Events - Ecommerce
    Platform\Statistics
    Cart event are now tracked
  • Tracking - Events - Forms for Editors
    Platform\Statistics
    Tracking for form submit and view has been extended
  • Do not send pushpromise on azure web app installations
    Platform\Templates\Razor
    Pushpromise is not sent on Azure web app installations due to a bug in Azure
  • Unit test: Additional tests for Imaging
    Platform\Unit test
  • Remov unused setting to disable cartv2 logging
    Settings
  • Change logfinder to not scan the entire file structure
    Settings
  • Serverside scheduled task runner should support https
    Settings\Scheduled tasks
  • Rename the longest files in the DW Templates
    Solutions
    Updated the Vsix template installer
  • Do not render password in password field in edit user
    Users
  • Deprecate 'Country' field on users
    Users
  • Improve send user details in user management
    Users
  • Do not return default address from address table on new carts
    Users
    New checkbox in Settings - ecommerce - Advanced - Shopping cart: Do not render user address in address loop. When this checkbox is enabled the default alternative address is not rendered ad customer info and cannot be used as billing address. This solve some issues if you import user details. If the checkbox is disabled the default address from my addresses is rendered in custom info (billing).
  • Remove user address from address loop and address list in user management
    Users\Addresses
    Removed user address from address loop and address list in user management
  • Azure b2c provider implementation
    Users\External Authentication
  • Make external login providers support back-end login
    Users\External Authentication
  • Make it possible to impersonate another user without stop impersonation first - reimpersonate
    Users\Impersonation
  • Change how impersonation of a given user is checked to be allowed.
    Users\Impersonation