Major changes in Seafile version 11.0

We are excited to share an early preview of some major enhancements coming in Seafile 11.0. This release focuses on streamlining Seafile’s architecture and paving the way for richer collaboration features.

Change of user identity

Previous Seafile versions directly used a user’s email address or SSO identity as their internal user ID.

Seafile 11.0 introduces virtual user IDs - random, internal identifiers like “adc023e7232240fcbb83b273e1d73d36@auth.local”. For new users, a virtual ID will be generated instead of directly using their email. A mapping between the email and virtual ID will be stored in the “profile_profile” database table.

For SSO users, in the old version, the identify from the SSO provider will be stored directly.

In the new version, for SSO users, a virtual ID will be generated instead of using the SSO identity directly. The mapping between SSO ID and virtual ID is stored in the “social_auth_usersocialauth” table.

The benefits of this change:

  • Users can change their external email or SSO ID more easily. Only the mapping table needs to be updated, not every instance of their ID across the system.
  • Allows a single user to login via multiple methods, by mapping their different external IDs to a single internal virtual ID.

Overall this brings more flexibility to handle user accounts and identity changes. Existing users will use the same old ID.

Reimplementation of LDAP Integration

Previous Seafile versions handled LDAP authentication in the ccnet-server component. In Seafile 11.0, LDAP is reimplemented within the Seahub Python codebase.

LDAP configuration has been moved from ccnet.conf to seahub_settings.py. The ccnet_db.LDAPImported table is no longer used - LDAP users are now stored in ccnet_db.EmailUsers along with other users.

Benefits of this new implementation:

  • Improved compatibility across different systems. Python code is more portable than the previous C implementation.
  • Consistent handling of users whether they login via LDAP or other methods like email/password.

File Activities Now Enabled in Community Edition

Previous Seafile Professional editions included the seaf-events component for tracking file activities and metadata. This has now been incorporated into the community edition in Seafile 11.0.

With seaf-events, the community edition gains several powerful features:

  • File activities - See historical changes, edits on files.
  • Smart links - Links to files are preserved even if the file is renamed or moved.
  • Improved versioning - Better handling of revisions, especially for Office documents.
  • Notification emails - Option to periodically send emails about unread notifications.

Bringing seaf-events into the Community server aligns the feature set across both editions. Users benefit from having robust activity tracking and metadata management available in all Seafile deployments.

A New Collaborative Online Editor - SeaDoc (alpha)

Seafile 11.0 introduces a powerful new collaborative document editor - SeaDoc (alpha version).

SeaDoc enables seamless co-editing and workflow management for documents stored in Seafile. Key features include:

  • Intuitive editing - An expressive editor optimized for productivity
  • Content workflows - Review and approve changes to control document evolution
  • Inter-document linking - Connect related documents together
  • AI integrations - Harness AI for content generation, summarization and management
  • APIs - Automate document creation and processing via comprehensive APIs

SeaDoc excels at:

  • Authoring in-depth technical/product manuals and documentation
  • Creating and managing knowledge base articles and wikis
  • Building internal documentation portals

With SeaDoc you can co-author, manage and publish high-quality documents directly from Seafile. Streamline your content creation and digitize your organization’s knowledge base.

The main editing interface:

Histories and changes:

Tables:

Block level operations:

Compared to OnlyOffice/CollaboraOnline, SeaDoc is optimized for lightweight text documents like meeting notes, wiki pages, technical docs etc. The focus is on simplicity, speed, and seamless knowledge management within Seafile. SeaDoc introduces capabilities like backlinks, and document networking on top of collaborative editing.

SQLite Database Support is dropped

Seafile 11.0 dropped using SQLite as the database. There are several reasons driving this change:

  • Focus on collaborative features - SQLite’s limitations make advanced concurrency and locking difficult, which collaborative editing requires. Different Seafile components need simultaneous database access.
  • Docker deployments - Our official Docker images do not support SQLite. MySQL is the preferred option.
  • Migration difficulties - Migrating SQLite databases to MySQL via SQL translation is unreliable.

By removing SQLite support, we can concentrate development efforts on enabling robust real-time collaboration. We suggest sites currently on SQLite to plan an upgrade to MySQL before upgrading to version 11.0.

Enhancing the Seafile User Interface

Early 11.x maintenance releases will include various UI refinements to enhance consistency and usability:

  • Cleaning up legacy interface elements
  • Standardizing fonts, icons, and branding
  • Improving mobile responsiveness
  • Adding animations and microinteractions

These changes lay the groundwork for a major UI upgrade planned for Seafile 12.0.

Final

A beta version will be available in September within a few weeks.

Please let us know your thoughts on the proposed changes and what else you would like to see improved in Seafile!

13 Likes

Are the new ldap and the collaboration editor also available in the community édition ?

Yes, the features will be in the community edition too.

2 Likes

It’s very exciting! Especially the work on user ID and LDAP, and the possibility to link an account to various authentication system.
The new file activities and collaborative editor are also very interesting.

To answer to what I would like to see improved, it’s the ability to make a share link editable anonymously with Collabora in Community Edition (yes, I know it’s in pro edition, in my non-profit organization with a strong free software choice, the pro edition is not an option). In my opinion, it’s the biggest missing feature of the Community Edition. Do you have plan to free this feature in the community edition?

And so I have the same question for the new collaborative editor: creating anonymous editing link for this new editor will it be possible in Community Edition?

Thanks a lot for your work, except this missing feature, Seafile is a very good peace of software!

Hi
will Seafile 11 be compatible with debian 12 “Bookworm” in standalone mode (without using Docker)?
THANKS

Seafile 10 is already working very well with Debian 12 (tested on 2 servers in standalone mode).

Thanks for the feedback. We will consider to add editable share link in community edition.

hi
which python dependency did you use?

sudo pip3 install --timeout=3600 django==3.2.* future==0.18.* mysqlclient==2.1.*
pymysql pillow==9.3.* pylibmc captcha==0.4 markupsafe==2.0.1 jinja2 sqlalchemy==1.4.3
psd-tools django-pylibmc django_simple_captcha==0.5.* djangosaml2==1.5.* pysaml2==7.2.* pycryptodome==3.16.* cffi==1.15.1 lxml

because some can break the system with debian 12

These are some good changes.

Aa for other things, the main two I can think of that are missing are:

  1. Ability to use an SSO provider with accounts that use WebAuthn on Seadrive/Seafile Client, as I mentioned in another thread (currently the WebAuthn prompts are never shown, though I think they can be supported as QtWebEngine supports them).

  2. Web interface dark mode. Even better would be dark mode with automatic adherence to system theme.

I install most python dependencies using apt, if available (try apt install python3-thepackagename). And I installed the missing python3 packages using pip (yes with the --break-system-packages, but there is no system packages for this modules). The only pip installed python dependencies on my system are:

Package                Version
---------------------- -------
captcha                0.4
django-pylibmc         0.6.1
django-ranged-response 0.2.0
django-simple-captcha  0.5.18

All other are installed via apt. And I think you can also make a virtualenv and install dependencies inside it, to avoid the freaking “break-system-packages” message, but you then need to tweak your systemd startup configuration, to activate the virtualenv before starting Seafile (not a big deal).

1 Like

What’s the release strategy? So far we had 1 major version per year, now we get a beta of 11 already at September, but the community version for 10 only has one minor version 10.1. Is that because the community version 10 is stable enough because the issues corrected for the professional version aren’t supported anyway? Or do you fix community version later and assign fixes for the professional version in a single minor version, so 10.1 community corresponds with 10.9 professional?

I also found that the move from 9.x to 10.x forces clients to synchronize again.

The strategy has not been changed. It is still 1 major version per year. We usually publish a beta version before the end of a year. For example, 8.0.0 beta was published in 2021-11-17, 9.0.0 beta was published in 2022-11-11.

We publish a beta version in September (two months early) as there are many changes need to be tested. The stable version will still be in year 2024.

Is that because the community version 10 is stable enough because the issues corrected for the professional version aren’t supported anyway?

Yes. Most of the issues are related to pro edition features only. There are no major problems with the community edition.

This may be a special case in your setup. There is no report for such a problem in general.

Hello Daniel,
Thank you for this great update, especially regarding the inclusion of FILE activities features and the collaboration editor in the CE edition. Do you have an estimated timeframe for when the SEAFILE version 11 beta will be available?

We are still improving some details. A beta version should be available in October.

Thanks for your interesting in the collaboration editor, feedbacks will be welcomed.

The collaborative document, SeaDoc, can now be tested in https://demo.seafile.com/demo . You just need to create a file with suffix .sdoc.

It is still an early alpha version. Many details will be improved soon.

thanks, I will wait for it

This sounds gread, especially the events and collaboration-features for community-edition.

Did you pay attention to accessibility during development? New UI always brings the risc to degrade it. On the other hand, it is a gread chance to improve it.

especially this sounds dangerous …

Will the addition of seafevents to the community edition also include support for elastic search?

Search with ElasticSearch is not supported in community edition.

So as a feature request. Can we add filters on the History page, currently for a directory with alot of activity it is difficult to get to the exact point to revert the changes.