Seafile Professional Server 6.3 is ready for testing! Major new group functions

Following the release of the beta version of the Community Server 6.3 on May 26, we are pleased to release the Seafile Professional Server 6.3 for testing today. The production version is slated for the end of July.

The redefinition of the role of groups in Seafile is the most notable change in version 6.3. Group-owned libraries and the nesting of groups are completely new features. The support of multiple storage backends and the persistence of public links are two more major improvements introduced in version 6.3. More details about these and the many other improvements are coming up in the rest of this announcement.

Redefined groups: Group-owned libraries & group nesting

Through version 6.2, the ownership of libraries was limited to users. Reacting to feedback from user base, this changes in the current release! Beginning with version 6.3, ownership of a library can lie with a user or with a group. Additionally, groups can be assigned quotas and they can have sub-groups. With this change, we aim to facilitate file and storage management in larger organizations with frequent group entries and exits. Here is just one example of where we think group-owned libraries will be of help: If a user leaves a group, no more libraries must be transferred from this user to another.

Groups able to own libraries are called departments, their sub-groups sub-departments. All libraries created in a department by a department administrator belong to this department and can be accessed by all department members – either with read-only or read-write permission. Of course, commonly-owned libraries can be shared to other groups and users outside the department.

%E5%9B%BE%E7%89%87%201

Departments can be created and managed via the admin panel (see figure). An unlimited number of admins and users can be named as members. In a future release, we will add the ability to transfer ownership from a user to a department.

More storage options: Support for multiple storage backends

With Seafile Professional 6.3, different local storage backends (e.g., local disk and Ceph storage) can be combined and used together for one Seafile server instance. To use this feature, all data need to be sent to the Seafile server which then determines where to store the data based on the individual configuration.

Besides increasing general storage flexibility, multiple storage backend support also opens up new application areas for Seafile. In one implementation scenario, which we deem attractive, fast disk storage is operated side-by-side with slow, high-density optical storage. When a new library is created, the user chooses whether to make the library hot access and to store the library in the disk array or on the optical storage for long-term archiving.

Reliable URL-file access: Persistent public links

Did you know: A sharing link was rendered unusable when the file or its folder was moved or renamed? We did know and we did not like it! This is why Seafile Professional 6.3 does away with it!

Beginning with version 6.3, public links are persistent and immune to file transactions such as renaming or moving. Public links also stay intact when library ownership changes. Only deleting a library, this you can’t do without harming the public link.

Faster document previews: PDF and office file preview with pdf.js

Good news for all those that use Seahub without Collabora or OnlyOffice integration: Seafile’s built-in document file preview is a great deal faster now. Instead of rendering office documents in HTML, they are converted into PDF format and displayed as such. pdf.js, which Seafile uses for that purpose, has also been updated.

New markdown editor and updates: Shared improvements with the Seafile Community Server
Seafile Professional Server 6.3 inherits all improvements and updates that the earlier released Seafile Community Server 6.3 features – for which a production version was made available since the beginning of the week. Below a summary of the three most important shared improvements.

WYSIWYG Markdown editor

Seafile Community Server 6.3 introduces a brand new, Seafile-made WYSIWYG markdown editor. The new editor provides two important features so far missing from (almost all) other markdown editors: WYSIWYG table-editing and image inserting.

It replaces the old non-WYSIWIG editor which – unfit for extensions – proved to have reached the end of its lifetime.

A new table is added by clicking on the table icon in the menu bar. Rows and columns can be added/removed and alignment changed quickly by means of context-sensitive menu buttons (see figure).

Images can be inserted by simply dragging&dropping the files form the file manager into the editor, through the clipboard or the image icon in the menu bar. Similarly, links to other files in the same library can also be easily added by drag and drop. Another boon of the new editor: It supports markdown shortcuts. For example, * + space at the beginning of a line inserts a list.

WYSIWYG is enabled in the Rich Text Editor. The lovers of MD code’s clarity can switch to the Plain Text Editor by clicking on the three dots button.

Django and jQuery Update

Django 1.8, which was used since Seafile version 5.1, was deprecated in April 2018. Both Seafile Server editions have now been updated to Django 1.11. The long-term support of Django 1.11 runs until mid-2020. As a consequence of the upgrade, the FastCGI mode is no longer supported. Seafile behind Nginx/Apache must be configured in WSGI mode as of now.

jQuery was also updated to version 3.3.1

Minor Seahub redesign

Version 6.3 introduces a slight modification of Seahub’s navigation bar. In an attempt to make the positioning of the action buttons more consistent across pages, the buttons moved to the top bar (see figure).

For more details on the Seafile Community Server 6.3, see the corresponding release statement (Seafile server 6.3 is ready for testing! A WYSIWYG Markdown editor and more).

Changelog

  • Support nested group and group-owned libraries
  • Update Django to version 1.11, remove FastCGI support
  • Update jQuery to version 3.3.1
  • Update pdf.js to version 1.19, use pdf.js for preview pdf files
  • Docx files are converted to PDFs and preview via pdf.js in built-in preview
  • [fix] Fix some bugs with OnlyOffice and CollaboraOffice
  • [fix] Use mobile version of OnlyOffice if viewed via mobile devices
  • Shared sub-folders can be searched
  • Show terms and condition link if terms and condition is enabled
  • Remove login log after delete a user
  • [admin] Support customizable site title, site name, CSS via Web UI
  • [fix] Fix a bug that causing seaf-fsck crash
  • [fix] Cancel Zip download task at the server side when user close zip download dialog
  • [fix] Fix crash when seaf-fsck, seaf-gc receive wrong arguments
  • [fix] Fix a few bugs in realtime backup server
  • [beta] Wiki, users can create public wikis
  • Some other UI improvements.
3 Likes

@daniel.pan the download link is not in the “beta” folder

where can we find the download link

Please check again.

1 Like

Thank You

Following the amount of posts for CE 6.3 there are still many bugs that should be fixed before the corresponding “professional” release. Don’t you think that would be fair in regards to your paying customers?

Storage backend selection is something that end users should never be able to select, as they will most probably always select the “faster” storage, no matter the usecase.
The storage class should be possible to define on a per user/department/orga basis.

It is nice that you improved the office docs preview, but did you finally merge the submitted only office security fix code? (Token auth - from server) This is long overdue.

2 Likes

It is a beta version for testing. And I don’t see there are many issues needed to be fixed in CE.

2 Likes

Beta is good. But it was not announced as beta. :slight_smile: There seem to be many small and some serious bugs that break things during or after upgrade.

This looks good to me …

2 Likes

I am missing the word “beta”. Unfortunately “ready for testing” does not mean the same for all customers. :frowning:
It is similar to “try the new features”.

1 Like

With this it is very clear.

3 Likes

Hi Daniel,

I can’t find the documentation for the multiple storage backends on manual.seafile.com - could you add it there?

Regards,
Moritz

1 Like

Also,
apparently, https://manual.seafile.com/deploy/shibboleth_config.html needs to be updated, too, because the login screen now only uses the /sso url for logging in, right?
Regards,
Moritz

Hi,
Thank you for this beta testing version !

Does it means that all previous link must be rebuild to support persistent feature ?

Regards

I confirm,

I had to change the host config in apache

   #debug 6.3
   #<Location /shib-login>
   <Location /sso>
        AuthType shibboleth
        ShibRequestSetting requireSession true

        ShibUseHeaders On

        Require valid-user
  </Location>

Hi Daniel,

to amend Moritz comment, here the necessary additions to the Apache configuration:

    <Location /sso>
        AuthType shibboleth
        ShibRequestSetting requireSession true
        ShibUseHeaders On
        Require valid-user
    </Location>

Best regards

Thomas

PS: Oh, just relized that gauburtin had posted this information just a few minutes before me.

Hi @daniel.pan,

Just have a look here

Guys,

/shib-login is not changed in 6.3, /sso and /shib-login should be same.

can you please paste logs that /shib-login is not working ?

This is not needed. All existing links automatically become persistent.

1 Like

I can’t get the logs right now, but IIRC the problem is that the login page just has a link to /sso, which, from reading the code (e.g. https://github.com/haiwen/seahub/blob/master/seahub/views/sso.py#L18), does then not reach the /shib_login endpoint.
If I access /shib_login directly, I get logged in and everything works though.

Hi,

Having a look at the link / javascript un Web UI, i see

<a id="sso" href="#" class="normal">Authentification unique</a>

function() {
  window.location = "/sso/?next=/" + encodeURIComponent(document.location.hash);
  return false;
}

Apache access.log traces :

194.254.171.56 - - [29/Jun/2018:13:42:43 +0200] "GET /sso/?next=/ HTTP/1.1" 302 337 "https://seafile-test.domain.fr/accounts/login/?next=/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0"
194.254.171.56 - - [29/Jun/2018:13:42:43 +0200] "GET / HTTP/1.1" 302 359 "https://seafile-test.domain.fr/accounts/login/?next=/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0"
194.254.171.56 - - [29/Jun/2018:13:42:43 +0200] "GET /accounts/login/?next=/ HTTP/1.1" 200 4377 "https://seafile-test.domain.fr/accounts/login/?next=/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0"

Same workaround as @schlarbm.

Regards