Changelog 6.2 - 6.2.1

From Sense/Net Wiki
Jump to: navigation, search

This page contains the changes in Sense/Net between versions 6.2.0.4731 and 6.2.1.5043.

Download Sense/Net ECM 6.2 Community Edition: http://www.sensenet.com/download

Please note that version 6.2.1 is an alpha release that may contain errors or lack certain features that you would need. Here is a list of known issues that will be resolved in the next stable release.

  • Office documents: Edit in Microsoft Office feature does not work in Chrome.
  • OData $filter support is limited, e.g.:
    • Currently it is not possible to filter for content type.

Features

  • New OData features
    • $expand, $select and $filter system query options were added.
    • $metadata document on service root added. ($metadata contains EntityTypes, ComplexTypes (with recursive type exploration), EnumTypes, Associations, without EntityContainer.)
    • $metadata for content instances and collections. We have made the service root standard OData $metadata request available on any Sense/Net path.
    • We handle properties according to standard now (there is no '.' character before the property name any more).
    • Autofilters are always disabled in OData requests. Currently it is not possible to switch the filters on.
    • New built-in OData actions added
      • Permission API: HasPermission, GetPermission, SetPermissions (with break and unbreak inheritance)
      • CopyTo, MoveTo, Delete, CopyBatch, MoveBatch, DeleteBatch
    • OData error message are localized now. The language code is the CurrentUICulture.
  • You can store Sense/Net files in the filesystem from this version.
    • SQL FILESTREAM feature support is added. It is switched off by default, it can be switched on by executing an SQL script. File size limit can be configured in web.config.
  • Custom permissions are allowed now
    • Number of permissions is extended to 32, which means that you have 17 custom permissions (Custom01-Custom17) you can use above the built-in 15.
    • PermissionEditor: builders can set VisiblePermissionCount in PermissionEditor.ascx to adjust the number of permission types shown in acl editor.
  • Authentication from custom tools
    • From now on command line tools are allowed to authenticate via BASIC authentication, it is not restricted to WebDav or office protocol.
  • New HTML5 based Upload with drag and drop multi file upload in modern browsers.
    • Flash based upload control was removed, jquery file upload is added. Sense/Net runs on pure HTML now.
    • Chunk upload API: BinaryData.SaveChunk and CommitChunk lets developers upload large files in chunks, without using too much server memory.
    • New saving mode added: KeepVersionAndLock. It allows saving a new content that will be locked by the current user. Only new content can be saved using this method.
    • Staging upload: during chunk upload process the node is locked and the latest version is accessible by anybody with the appropriate permissions. No unnecessary versions are created.
  • New events were added for permission changes.
    • PermissionChanging and PermissionChanged events were added to node instance events and node observer events. EventArgs parameter contains the previous/new ACL.
  • The system is able to recognize compressed content types and serve them with the necessary response header. First one is svgz.
  • Node.Exists now checks the cache before hitting the database.
  • Export and import tools will now print to stderr when they are unsuccessful.

Configuration changes

  • Performace counter feature is switched off by default.
  • formsauthenticationfromAD: defining domain name in web.config was case sensitive. From now it is case independent.
  • web.config setting for disabling Webpages probing requests, removed unnecessary workaround for cshtml/vbhtml requests.
  • authentication: office protocol did not work with default installation via basic. from now on default authentication for a newly installed site will be 'anonymous' and nothing else thus office protocol/WebDav will work with basic auth without further configuration.
  • Add handler and upload content type for svgz extension.
  • Compressed file types were missing from the static file handler section of the web.config. Now it is possible to download zip and rar files.
  • Standard StaticFileHandler has been replaced by a custom SenseNet static file handler that is able to stream binaries directly onto the response stream, thus not consuming too much server memory.

Resolved bugs

  • OData
    • error handling is corrected.
    • Incremental modifying with PATCH or MERGE instead of PUT. PUT: resetting all writeable fields and setting fields from request.
    • mediaresource link wasn't consistent. Now it is always refers via binaryhandler.ashx.
    • url of the current site was an empty string in the __metadata and __deferred. The correct form is the site's full path after "/OData.svc".
    • reference fields can be set by providing a path (as string) or paths (as array of strings)
    • image field imageurl uses bound referencefield propertyname and not self propertyname
    • Rename with overwriting name (PUT and PATCH).
  • SNScriptLoader is now usable in non-WebForms scenarios.
  • Resource editor threw an error when an unknown language came from the client (when client-based culture was enabled on the site). From now on Resource editor supports client-based languages only if the particular language and its parent is also missing from the Site CTD. If the parent is there, the user will be able to edit resources only for the parent culture.
  • It was impossible to delete a content type. The old Delete page was present as the Delete action for content types and the controller was unable to work with content types too.
  • if a skin element was modified (e.g. a js file), the system set the wrong MIME type for the response. From now on we change the mime type only when the request has no application name other than Browse.
  • required permission type names are localized
  • Action API fix: Getting actions: in previous versions when you wanted the list of actions in a particular scenario, you had to get the scenario first and then the actions. From now on the API is consistent: you are able to get actions through ActionFramework, with or without a scenario.
  • Main pages and feature pages width has been fixed.
  • Gallery: image gallery handles folder, png/jpg/jpeg/gif/svg and other image types too.
  • if the user did not have permissions for one of the parent content, New scenario threw an exception on the Wall.
  • Office protocol
    • older office version could not open document via basic authentication, because the GET request was not identified as a WebDav request. User agent processing now handles these situations.
    • csv files were also prompted to be opened in office, however this option is not supported. Csv files now can only be downloaded and not edited in-place with office.
  • a user profile domain was created in the name of the current user instead of an administrator. Now the Administrator is the Creator.
  • user site link: browser cached redirect url and showed 404 for deleted profiles instead of regenerating profiles and redirecting. From now we use a temporary redirect and always check if profile exists or not.
  • basic authentication: if forms authentication from AD was switched on, it still used password from repository. Now basic authentication logic uses the same membershipprovider as the usual login procedure.
  • approvalworkflowtask: user received an error if he didn't have rights to save the task (for setting the status). From now on setting the status on the task after approve/reject is a system procedure and carried out with systemaccount.
  • SingleContent portlet checks content expiration not only for Visitors but also for logged in users. Only administrators (defined by the AdminGroupPathsForLoggedInUserCache web.config setting) will be able to see the content regardless of its expiration date.
  • virtual path provider supports tilde (~) character
  • scripts produced by ResourceScripter are now generated using JSON.NET so they are escaped properly
  • when the repository start fails at StartManagers(), shut down the cluster channel. this will make the tools not hang in certain cases.
  • the portal can now find the index folder even if launched with a path starting with \\
  • multiple content query settings (e.g. multiple SORT) are handled correctly.
  • Schema and Content Types system folder explore page Items portlet title was hard-coded in Hungarian.
  • Content Picker: ie threw exception at "class"
  • webdav: webfolder was always opened via http even on https site. Correct protocol is used.
  • wiki article browse control error has been fixed
  • allowed child types english resource was missing
  • It is not allowed to undo ckeck out a content that has a single locked version.
  • breadcrumb rendered a wrong link in case of the first element if the breadcrumb root (not binding root) of the portlet was set to other than the current site.
  • if a content template was or contained a SmartFolder, its query results were also copied to the target location when new content was created from the template. From now on only those children are copied from the template that are actually under the source template content.
  • loading binary property returns a RepositoryStream instead of reading all the data into memory. Binary data clone stream takes stream type into account: in case of our internal streams cloning won't copy the whole stream, just the metadata.
  • SenseNetGlobal: Application_Start will load all assemblies

Breaking changes

  • OData IsContainer property is renamed to IsFolder.
  • Binary checksum is not used anymore. From now on we use the timestamp of the binary row to determine if the binary has changed.
  • Binary table got a new nullable boolean column called Staging
  • We have upgraded to MVC 4. Some pre OData funcionality still uses MVC.

Related links