All Changes in EAV and 2sxc v12
Version 12
Changes Version 12.10
- New Children DataSource
- New Parents DataSource
- New Metadata DataSource
- New MetadataTargets DataSource
- The StreamMerge DataSource got three new out-streams
Distinct
,And
andXor
- Moved IPageService from previously ToSic.Sxc.Web to ToSic.Sxc.Services but preserving compatibility with old code
- Moved IPageService from previously ToSic.Sxc.Web to ToSic.Sxc.Services but preserving compatibility with old code
Breaking Change Version 12.10
- Jquery is completely removed. This shouldn't affect your code, since all old code usually runs in DNN where jQuery is included by default.
Changes Version 12.06 LTS
No relevant changes
Changes Version 12.05
- Introduced IJsonService for json serialize/deserialize
- Introduced IConvertService for simple data-type conversion, also available on the
Convert
property of Razor12 and Api12 - Introduced ToSic.Sxc.Services.ILogService to log messages to the system (Dnn/Oqtane)
- Introduced IMailService to easily send mails cross-platform
- Introduced ISecureDataService to use encrypted settings
- Introduced IRenderService for inner-content rendering (Oqtane code must use this)
- Published ToSic.Eav.DataFormats.EavLight to better document simple eav data
- Published IConvertToEavLight as the new standard way to prepare entities for WebAPI serialization.
This is meant to replace previous code using objects such as
EntitiesToDictionary
orDataToDictionary
which are now marked as obsolete. - New Razor12, Api12 and Code12 Classes now don't support old, obsolete APIs anymore
- Link.Image now also accepts
parameters
as a parameter - Link.Image and Link.To always create safe urls now (spaces are encoded etc.)
- Link.To and Link.Image now have a parameter
type
which can be"full"
to ensure domains are always added to links (for use in APIs generating RSS etc.) - Update to RazorBlade v3.7
- Edit.Toolbar now supports
condition
so that toolbars may or may not be created based on a true/false value - Link.Image now also accepts a
factor
oraspectRatio
which is a string like1:2
or3/4
AsDynamic(...)
now also wraps anonymous objects in quite an amazing way- Bugfix: lots of small ones
Breaking Change Version 12.05
V12 adds new properties to Razor and WebAPI which could result in some surprises: Path
, Convert
, Settings
, Resources
and DevTools
.
Especially the new Path
and Convert
could clash with existing code which had @using System
or @using System.IO
so the code would just read Path.GetFileName(...)
or something.
Because of this, we only give the latest classes Custom.Dnn.Razor12
, Custom.Dnn.Code12
, Custom.Hybrid.Razor12
, Custom.Hybrid.Api12
etc. these properties.
This means that previous base classes do not have these by design, and we encourage you to move to these latest base classes.
Important: 2sxc 12.00 - 12.04 also had some of these properties on
ToSic.Sxc.Dnn.RazorComponent
as well asToSic.Sxc.Dnn.ApiController
. So if you were eager to use these properties but didn't change the base class, you were able to use it. To protect thousands of upgrade-scenarios we had to take them away from the old base classes. Sorry!
Possible Breaking Changes
- We believe nothing broke, but it could be that some commands on
EntitiesToDictionary
orDataToDictionary
were accidentally changed. Pls report so we can fix that. - The
Link.To(...)
now returns safe URLs. This should not be an issue, but in rare cases post-processing of the string returned may expect spaces or something, which are now%20
- We disabled old obsolete APIs on the new Razor12, Api12 and Code12 base classes. In case you were using this (not likely) you'll get an error telling you about this.
Changes Version 12.04 incl 12.03 which was not officially released
- Settings Stack and Resources Stack added, and the
Settings
/Resources
object now have this - Global
Settings.Images.xxx
settings defined for Content, Screen, Lightbox and Section - Global
Settings.Resources.xxx
defined for fancybox3, fancybox4, bootstrap4, bootstrap5 - Link.Image API created to support predefined sizes/resize modes etc.
- Created feature where DynamicEntities can browse to sub-items using their identifier (used for
Settings.Images.Content
whereContent
is actually the title of a sub-entity) - Added debug-feature for DynamicEntity get
- String-Dropdown inputs now have a value-key presets option (instead of the key-value which was flaky) and added support for escaping special characters
- #Oqtane 2.2 support added
- Introduced Monaco (VS-Code online) editor for beta-testing source-editing
Breaking Change Version 12.04
- DynamicEntity now has a property Count because it's a list as well, this could cause issues if a content-type has a property
Count
- DynamicEntity is now always a list. Because of this we removed the
DynamicEntityWithList
object. We believe the type is never referenced in user code, but if it is, this would be a breaking change. - Many parts that prepare Entities returned a
Dictionary<string, object>
and now return anIDictionary<string, object>
.
We believe this shouldn't hurt much, since the result would usually be in avar
or returend directly to the API for streaming, but in case someone had used explicitly typed code, this will require a minor change
Changes Version 12.02
- Formulas feature finalized
- DynamicEntityStack object created
- Hybrid
IPageService
created withActivate
and similar features CmsContext
was enhanced withView
information- Content-Type icons can now be stored in the app with an
[App:Path]/image.jpg
style reference - Enabled view-configuration to configure search behavior incl. not-to-index or what streams should be indexed
turnOn
created / deployed- #Oqtane 2.1 support added in 2sxc 12.02.01