Skip to content

8.0.0-beta.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@JammingBen JammingBen released this 12 Dec 10:54

Changelog for ownCloud Web 8.0.0 (2023-12-12)

Summary

  • Bugfix - Filter out shares without display name: #9257
  • Bugfix - PDF loading Safari: #9483
  • Bugfix - Set or remove expiration date on group share not possible: #9513
  • Bugfix - Shared with action menu label alignment: #9529
  • Bugfix - Internal public link resolving: #9587
  • Bugfix - Audio- & video-loading on Shared with me page: #9593
  • Bugfix - Add project space filter: #9649
  • Bugfix - Respect the open-in-new-tab-config for external apps: #9663
  • Bugfix - Tiles view accessibility: #9670
  • Bugfix - Special characters in username: #9694
  • Bugfix - Create .space folder if it does not exist: #9788
  • Bugfix - Link resolving into default app: #9799
  • Bugfix - Copy quicklinks for webkit navigator: #9832
  • Bugfix - Fix display path on resources: #9843
  • Bugfix - Upload space image: #9844
  • Bugfix - Duplicated file search request: #9861
  • Bugfix - Tags are no longer editable for a locked file: #9873
  • Bugfix - Prevent rendering of old/wrong set of resources in search list: #9881
  • Bugfix - Keep both folders conflict in same-named folders: #9915
  • Bugfix - Enabling "invite people" for password-protected folder/file: #9931
  • Bugfix - Displaying full video in their dimensions: #10010
  • Bugfix - Icon extension mapping: #10031
  • Bugfix - Logout page after token expiry: #10065
  • Bugfix - Disable expiration date for alias link (internal): #10083
  • Bugfix - Allow empty search query in "in-here" search: #10092
  • Bugfix - Remove password buttons on input if disabled: #10096
  • Change - Theme handling: #2404
  • Change - Remove deprecated code: #7338
  • Change - Keyword Query Language (KQL) search syntax: #9653
  • Change - DavProperties without namespace: #9709
  • Enhancement - Make login url configurable: #7317
  • Enhancement - Permission checks for shares and favorites: #7497
  • Enhancement - Scroll to newly created folder: #7600
  • Enhancement - Application unification: #9302
  • Enhancement - Show local loading spinner in sharing button: #9423
  • Enhancement - File versions tooltip with absolute date: #9441
  • Enhancement - Disabling extensions: #9441
  • Enhancement - Add SSE to get notifications instantly: #9451
  • Enhancement - Tags form improved: #9525
  • Enhancement - Don't display confirmation dialog on file deletion: #9527
  • Enhancement - Personal shares can be shown and hidden: #9531
  • Enhancement - Upload preparation time: #9552
  • Enhancement - Indicate processing state: #9561
  • Enhancement - Display locking information: #9566
  • Enhancement - Moving share's "set expiration date" function: #9584
  • Enhancement - Add keyboard navigation to spaces overview: #9625
  • Enhancement - Add batch actions to spaces: #9627
  • Enhancement - OcModal set buttons to same width: #9671
  • Enhancement - Add password policy compatibility: #9682
  • Enhancement - Password generator for public links: #9691
  • Enhancement - Added app banner for mobile devices: #9696
  • Enhancement - Unify sharing expiration date menu items: #9706
  • Enhancement - New WebDAV implementation in web-client: #9709
  • Enhancement - Show error if password is on a banned password list: #9727
  • Enhancement - Embed mode: #9768
  • Enhancement - Handle postprocessing state via Server Sent Events: #9771
  • Enhancement - Registering search providers as extension: #9794
  • Enhancement - Preview image presentation: #9806
  • Enhancement - Add editors to the application menu: #9809
  • Enhancement - Registering nav items as extension: #9814
  • Enhancement - Add new portal into runtime to include footer: #9815
  • Enhancement - Last modified filter chips: #9831
  • Enhancement - Provide vendor neutral file icons: #9847
  • Enhancement - Search query term linking: #9854
  • Enhancement - Add permission to delete link passwords when password is enforced: #9857
  • Enhancement - Remove settings icon from searchbar: #9858
  • Enhancement - Search tags filter chips style aligned: #9864
  • Enhancement - Enable dark theme on importer: #9884
  • Enhancement - Create shortcuts: #9890
  • Enhancement - Manage tags in details panel: #9905
  • Enhancement - Reorganize "New" menu: #9906
  • Enhancement - Add media type filter chip: #9912
  • Enhancement - Display error message for upload to locked folder: #9940
  • Enhancement - Support more audio formats with correct icon: #9966
  • Enhancement - Additional languages: #10007
  • Enhancement - Shared by filter: #10013
  • Enhancement - Share search filter: #10014
  • Enhancement - Duplicate space: #10024
  • Enhancement - Default link permission: #10037
  • Enhancement - Add explaining contextual helper to spaces overview: #10047
  • Enhancement - Folder tree creation during upload: #10057
  • Enhancement - Show webdav information in details view: #10062
  • Enhancement - Support mandatory filter while listing users: #10099
  • Enhancement - Registering quick actions as extension: #10102
  • Enhancement - Create link modal: #10104
  • Enhancement - Registering right sidebar panels as extension: #10111
  • Enhancement - File sidebar in viewer and editor apps: #10111

Details

  • Bugfix - Filter out shares without display name: #9257

    In rare (legacy) cases, shares can exist without a displayName key, which caused
    trouble in the sharing sidebar section. This has been addressed by filtering out
    shares without a displayName.

    #9257
    #9504

  • Bugfix - PDF loading Safari: #9483

    Loading PDF files with Safari has been fixed.

    #9483
    #9565

  • Bugfix - Set or remove expiration date on group share not possible: #9513

    We've fixed a bug where setting or removing an expiration on a group share
    wasn't possible.

    #8419
    #9513

  • Bugfix - Shared with action menu label alignment: #9529

    Adjusted offset of alignment of label for shared with action menu option in
    Sidebar.

    #9323
    #9529

  • Bugfix - Internal public link resolving: #9587

    An issue where internally resolved public links instantly triggered the default
    file action has been fixed.

    #9578
    #9587

  • Bugfix - Audio- & video-loading on Shared with me page: #9593

    Loading audio and video on the Shared with me page with the preview app has been
    fixed.

    #9593
    #9595

  • Bugfix - Add project space filter: #9649

    We've added the option to search for spaces in the project space overview.

    #9650
    #9649

  • Bugfix - Respect the open-in-new-tab-config for external apps: #9663

    The WEB_OPTION_OPEN_APPS_IN_TAB is now being respected correctly when opening
    files with external apps.

    #9630
    #9663

  • Bugfix - Tiles view accessibility: #9670

    Navigating via tab and enter in the tiles view has been fixed.

    #9633
    #9670

  • Bugfix - Special characters in username: #9694

    Preventing special characters except for . and _ in the username. Matching
    server validation for username

    #9694
    #9703

  • Bugfix - Create .space folder if it does not exist: #9788

    Creating .space folder and README.md in space if folder has been removed by
    user.

    #9788
    #9793

  • Bugfix - Link resolving into default app: #9799

    Internal and public file links now reliably resolve into the default app when
    openLinksWithDefaultApp is enabled.

    #9799
    #9776
    #9821

  • Bugfix - Copy quicklinks for webkit navigator: #9832

    Copying quicklinks didn't work on safari or other webkit based browsers and is
    fixed now.

    #9166
    #9832

  • Bugfix - Fix display path on resources: #9843

    We've fixed a bug, where the display path of a resource was missing parts. For
    example the respective space name or the folder name of a share.

    #9843

  • Bugfix - Upload space image: #9844

    Space image upload failed due to some code changes, this fixed and works as
    expected again.

    #9839
    #9844

  • Bugfix - Duplicated file search request: #9861

    We have fixed a bug where the search was sent unnecessarily twice.

    #9787
    #9861
    #9880

  • Bugfix - Tags are no longer editable for a locked file: #9873

    Tags are no longer editable for files that are currently locked.

    #9789
    #9873
    #9883

  • Bugfix - Prevent rendering of old/wrong set of resources in search list: #9881

    When entering the search, it displayed the resources from the file list for a
    short moment, this has now been fixed and the search always shows the loading
    spinner first.

    After all results have been loaded from the server, the spinner disappears and
    the result is rendered.

    #9790
    #9881

  • Bugfix - Keep both folders conflict in same-named folders: #9915

    Parsing has been adjusted to account for edge case of multiple folders and
    sub-folders with the same name

    #9158
    #9915

  • Bugfix - Enabling "invite people" for password-protected folder/file: #9931

    Enables selecting "invite people" for password-protected folder/file. Selecting
    this permission will drop password protection and expiration date.

    #9922
    #9931

  • Bugfix - Displaying full video in their dimensions: #10010

    We've fixed a bug which set the video width and height to 100% of the screen
    size instead of the actual video size. This bug made it impossible to see the
    full video in 1080x1920, while 1920x1080 might have been slightly cropped.

    #10010
    #10101

  • Bugfix - Icon extension mapping: #10031

    We have simplified the mapping between file extensions and their display in the
    web UI (icon and its color). Now, further formats/extensions
    (.tar.gz,.tar.xz,.bz2, ...) get displayed correctly.

    #10031
    #10059

  • Bugfix - Logout page after token expiry: #10065

    Wrongly showing the logout page after revisiting Web with an expired token has
    been fixed. Users now get redirected to the login page instead.

    #10063
    #10065

  • Bugfix - Disable expiration date for alias link (internal): #10083

    We've disabled the option to set an expiration date on an internal link, since
    it could be misleading and doesn't serve any use.

    #9923
    #10083
    #10085

  • Bugfix - Allow empty search query in "in-here" search: #10092

    Allowing empty search queries in the "in-here" search instead of fallback to
    search "everywhere".

    #9970
    #10092

  • Bugfix - Remove password buttons on input if disabled: #10096

    We've removed the password buttons on an input field which is disabled to not
    confuse the user.

    #10084
    #10096

  • Change - Theme handling: #2404

    The handling of themes has been throughoutly reworked. Themes now feature a
    human-readable title, can specify whether they are suitable as light or dark
    mode themes. If only one theme is provided, this theme will be set. If two
    themes are provided and one is a dark and one is a light mode one, there is a
    light/dark mode switch button in the AppBar. If more than two themes are
    provided or the two provided themes are not a dark and a light mode one
    respectively, the UI features a theme-switch button featuring a dropdown of the
    human-readable names of the available themes

    #2404
    #8424
    #9403
    #9885
    #9939
    #8855
    #9396
    #9401
    #9698

  • Change - Remove deprecated code: #7338

    We have removed the getToken getter from our vuex store and support for the
    deprecated user-management name for the admin-settings app. See linked
    "Deprecations" issue for more information.

    #7338
    #9959

  • Change - Keyword Query Language (KQL) search syntax: #9653

    We've introduced
    KQL
    as our default query language. Previously we used our own simple language for
    queries which is now replaced by kql.

    sample.tx* Tags:important Tags:report Content:annual*

    Becomes

    name:"sample.tx*" AND tag:important AND tag:report AND content:"annual*"

    By default KQL uses AND as property restriction and the query described above
    can also be formulated as follows

    name:"sample.tx*" tag:important tag:report content:"annual*"

    More advanced syntax like grouping combined with boolean property restriction is
    supported too

    (name:"sample*" name:"*txt") tag:important OR tag:report content:"annual*"

    BREAKING CHANGE for developers: the term which will be passed to the search
    method of search providers is now wrapped inside name:"...". If you don't want
    that behaviour you need to strip it out, e.g. via simple regex: const rawTerm = term.match(new RegExp('name:"\\*(.*?)\\*"')).

    #9636
    #9646
    #9653

  • Change - DavProperties without namespace: #9709

    The DavProperties coming from the web-client package don't include their
    namespace anymore. E.g. {http://owncloud.org/ns}fileid has now become
    fileid. This change was part of moving away from the WebDAV implementation of
    the ownCloudSDK in favor of a new implementation in web-client.

    There is a new subset DavProperties.DavNamespace to identify all properties
    living under the default namespace {DAV:}. All other properties live under the
    owncloud namespace {http://owncloud.org/ns}.

    #9709
    #9764

  • Enhancement - Make login url configurable: #7317

    We've added a new configuration option loginUrl to web, this is helpful if you
    use an external IdP and the login is out of web/OCIS context.

    #9707
    owncloud/ocis#7317

  • Enhancement - Permission checks for shares and favorites: #7497

    Permission checks for creating shares and favorites have been added.

    owncloud/ocis#7497
    #9810

  • Enhancement - Scroll to newly created folder: #7600

    After creating a new folder that gets sorted into the currently displayed
    resources but outside of the current viewport, we now scroll to the new folder.

    #7600
    #7601
    https://github.com/owncloud/web/pulls/8145

  • Enhancement - Application unification: #9302

    The existing apps have been refactored and their common functionality has been
    extracted. This enables developers to more easily create custom apps, and brings
    unified behavior like auto-saving, shortcut handling and success/error messages
    across all file viewer/editor apps.

    #9302
    #9303
    #9617
    #9695
    #9485
    #9699

  • Enhancement - Show local loading spinner in sharing button: #9423

    We've added a loading spinner to the share button in the sharing panel to
    indicate that its still processing if action takes longer.

    #9425
    #9423

  • Enhancement - File versions tooltip with absolute date: #9441

    We've added a tooltip with the absolute date for file versions in file details

    #9441

  • Enhancement - Disabling extensions: #9441

    A new configuration disabledExtensions has been added which enables disabling
    specific extensions via their id.

    #8524
    #9441

  • Enhancement - Add SSE to get notifications instantly: #9451

    We've added SSE to the notifications which allows us to be notified about new
    notifications instantly and from the server without polling every few seconds.

    #9434
    #9635
    #9451
    #9654
    #9753

  • Enhancement - Tags form improved: #9525

    We've improved the tags form in various ways, including visual appearance as
    well as usability. Auto save, remove tags on backspace, and contextual helper
    (and more, see issues)

    #9363
    #9356
    #9360
    #9362
    #9416
    #9525
    #9563

  • Enhancement - Don't display confirmation dialog on file deletion: #9527

    We've removed the confirmation dialog while deletion files or folder to enhance
    the user experience. We also show success notifications after the operation.

    This doesn't have impact on the trash bin, confirmation dialog will still be
    displayed there.

    #5974
    #9527

  • Enhancement - Personal shares can be shown and hidden: #9531

    On the shared-with-me page, there is no distinction between pending, accepted
    and rejected shares anymore. Instead, the user can toggle to display either
    shown or hidden shares.

    Furthermore, accepting and rejecting shares has been renamed to "enable
    sync"/"disable sync" to better reflect what's happening on the server and on
    other devices.

    #9531
    #9718
    #10097

  • Enhancement - Upload preparation time: #9552

    The performance of the preparation time before each upload has been improved.

    #9817
    #9552

  • Enhancement - Indicate processing state: #9561

    If a file has been just recently uploaded, it might go trough a processing state
    (e.G virus scan). If so, no actions on this resource is possible, therefore we
    show now the processing state and make the temporary restrictions clear to the
    user.

    #9558
    #9561
    #9585
    #9590
    #9596

  • Enhancement - Display locking information: #9566

    We've added indicators and information in case a file is locked.

    #6682
    #9566
    #9658

  • Enhancement - Moving share's "set expiration date" function: #9584

    Moving "set expiration date" function to a three dots menu to help reduce visual
    load on simple shares in sharing pane

    #9493
    #9584
    #9612

  • Enhancement - Add keyboard navigation to spaces overview: #9625

    In the spaces overview it is now possible to navigate through the individual
    spaces and perform actions using the keyboard

    #9624
    #9625

  • Enhancement - Add batch actions to spaces: #9627

    We've added batch actions to spaces view

    #9626
    #9627

  • Enhancement - OcModal set buttons to same width: #9671

    We've adjusted the button widths for every modal so the options look more equal.

    #9641
    #9671

  • Enhancement - Add password policy compatibility: #9682

    We consume password policy rules from the server and test public link passwords
    against those. Additionally we added a show/hide toggle button to password input
    field

    #9638
    #9657
    #9682
    #9634
    #9686
    #9688
    #9735
    #9736

  • Enhancement - Password generator for public links: #9691

    We've added a new button on the password input field for public links, clicking
    on that button will fill the input with a generated password.

    If a password policy is set, those rules will also be applied.

    #9666
    #9691

  • Enhancement - Added app banner for mobile devices: #9696

    We've added an app banner at the top of the web view for mobile devices asking
    the user whether they want to continue working in the app. By dismissing it, it
    will not show again until a new session is started, e.g. by opening a new tab.

    #9696
    #9872

  • Enhancement - Unify sharing expiration date menu items: #9706

    We've unified the sharing expiration date menu item for links and regular
    user/group shares, the delete expiration date button shows up next to the edit
    expiration date and therefore declutter the UI.

    #9705
    #9706

  • Enhancement - New WebDAV implementation in web-client: #9709

    The WebDAV implementation of the ownCloudSDK has been deprecated in favor of a
    new implementation in the web-client package. For developers this means that
    every WebDAV request should be made using the WebDAV factory provided by the
    ClientService. E.g. to retrieve files: const files = await clientService.webdav.listFiles(space).

    #9709
    #9764

  • Enhancement - Show error if password is on a banned password list: #9727

    We now show a meaningful error if the user tries to set a public link password,
    that's on a server side banned password list.

    #9726
    #9727

  • Enhancement - Embed mode: #9768

    We've introduced a so called "Embed Mode" that allows Web to be consumed by
    another application in a stripped down version. This mode is supposed to be used
    in the context of selecting or sharing resources.

    Please see our documentation for more information and a guide on how to set it
    up.

    #9768
    #9841
    #9853
    #9863
    #9981
    #10113
    #10071
    #10076
    #10082

  • Enhancement - Handle postprocessing state via Server Sent Events: #9771

    We've added the functionality to listen for events from the server that update
    the postprocessing state, this allows the user to see if the postprocessing on a
    file is finished, without reloading the UI.

    #9769
    #9771

  • Enhancement - Registering search providers as extension: #9794

    Search providers can now be registered as an extension via our extension
    registry. They need to be of type search.

    The old way of registering and requesting search providers via the event bus has
    been removed.

    #9794

  • Enhancement - Preview image presentation: #9806

    We've updated the preview app to have a more user friendly image browsing
    experience, image zooming, rotation and movement is smoother, images are no
    longer cropped.

    #7728
    #9806
    owncloud/ocis#7409

  • Enhancement - Add editors to the application menu: #9809

    We've added 'text-editor' and 'draw.io' to the application menu, so the user can
    easily open those apps with a one-click approach.

    #9807
    #9809
    #9843

  • Enhancement - Registering nav items as extension: #9814

    Nav items can now be registered with the new extension type
    SidebarNavExtension, which consists of a AppNavigationItem and optionally
    scopes (a list of app IDs where the nav item should show).

    Also, 2 new optional properties have been added to the AppNavigationItem
    interface:

    handler - a click handler that get executes on click. It takes priority over a
    given route. priority - a number that determines the nav item's position.

    #9239
    #9814

  • Enhancement - Add new portal into runtime to include footer: #9815

    We've added a new portal into the application layout of runtime package. This
    portals allows developers to add new content below the app container. The name
    of the portal is app.runtime.footer.

    #9815

  • Enhancement - Last modified filter chips: #9831

    We've added a "last modified" filter chip in search to narrow down results based
    on last modified date.

    #9779
    #9831

  • Enhancement - Provide vendor neutral file icons: #9847

    We replaced the icons for Document, Spreadsheet, Presentation, Forms and
    Markdown

    #9847
    #9911
    #10037

  • Enhancement - Search query term linking: #9854

    We've added the option to search for multiple terms with the same type, at the
    moment only the tag search benefits from it.

    This makes it possible to search for multiple resources with different tags in
    one query. The UI now empowers the user to perform advanced searches like:

    • all resources with the tags tag1 OR tag2 * all resources with the tags
      tag1 OR tag2 AND containing text content

    As a rule of thumb, if a property appears multiple times (like tag1 OR tag2)
    the search combines the query with an OR and different keys are linked with an
    AND.

    #9829
    #9854

  • Enhancement - Add permission to delete link passwords when password is enforced: #9857

    We've added the ability to allow deleting passwords on public links, even if the
    password is enforced. Therefore, the user needs respective permission, granted
    by the server. This feature is only possible on public links that have the
    viewer role.

    owncloud/ocis#7538
    #9857
    #9866

  • Enhancement - Remove settings icon from searchbar: #9858

    We removed the settings icon from the searchbar.

    #9664
    #9858

  • Enhancement - Search tags filter chips style aligned: #9864

    We've aligned the style of tags filter in search with the tags panel redesign.

    #9834
    #9864

  • Enhancement - Enable dark theme on importer: #9884

    We've enabled the dark theme on our importer, so the user will see a dark-themed
    dialog, whenever they activate the dark mode.

    #9452
    #9884

  • Enhancement - Create shortcuts: #9890

    We've added a new functionality to add to shortcuts to web, those can be created
    via the "+ New" context menu. Users can enter URLs or pick a file via the drop
    down menu and create a '.url' file.

    '.url' files can be opened via web or downloaded and opened on the desktop.

    #9796
    #9887
    #9850
    #9963
    #9969
    #9890
    #9908
    #9936
    #9971

  • Enhancement - Manage tags in details panel: #9905

    We've enhanced the details panel, now tags are viewable and manageable there.
    That change makes it easier for the user to manage tags, as they don't need to
    click an additional context menu action.

    #9783
    #10115
    #10114
    #9905
    #10138

  • Enhancement - Reorganize "New" menu: #9906

    We've reorganized the "new" menu and added optional file extension indicators
    that will show if the user has file extensions enabled in the files view.

    #9847
    #9906

  • Enhancement - Add media type filter chip: #9912

    We've added a new filter option in the search list to filter by media type.

    #9780
    #9978
    #9912
    #9942
    #10030

  • Enhancement - Display error message for upload to locked folder: #9940

    Added error message to indicate that the upload failed due to folder being
    locked.

    #5741
    #9940

  • Enhancement - Support more audio formats with correct icon: #9966

    We've updated our list of supported audio formats, so further formats/extensions
    (.flac,.ogg, among others) get displayed correctly.

    #9966
    #9985

  • Enhancement - Additional languages: #10007

    We've added some items to the list of available languages because of good
    translation coverage in transifex.

    #10007
    #10008
    owncloud/ocis#7754

  • Enhancement - Shared by filter: #10013

    The received shares on the "Shared with me"-page can now be filtered by the
    users that created the share.

    #10013
    #10029

  • Enhancement - Share search filter: #10014

    The received shares on the "Shared with me"-page can now be filtered by their
    names via a text input field.

    #10014
    #10033

  • Enhancement - Duplicate space: #10024

    We've added a new functionality, where users can simply duplicate spaces, via
    the context menu or batch actions. This includes copying the contents, the space
    name, subtitle, description, and image but not metadata like tags or members.

    #10016
    #10123
    #10024
    #10132
    #10139

  • Enhancement - Default link permission: #10037

    When creating a new link, Web now respects the default permissions coming from
    the server.

    #9919
    #10037

  • Enhancement - Add explaining contextual helper to spaces overview: #10047

    #8163
    #10047

  • Enhancement - Folder tree creation during upload: #10057

    The performance of the folder tree creation during upload has been improved.

    #9817
    #10057

  • Enhancement - Show webdav information in details view: #10062

    We've added WebDav path and WebDav url information to the details view, this
    might be usefully when the user wants to add an external WebDav client.

    By default this view option is disabled but can be enabled via
    account->preferences view.

    #9714
    #10062

  • Enhancement - Support mandatory filter while listing users: #10099

    We've added the configuration option WEB_OPTION_USER_LIST_REQUIRES_FILTER. If
    set to true, an active filter is necessary to list users, as well users won't be
    listed initially. This might be necessary for big instances with a lot of users,
    where the server response might take very long or time out while requesting
    users.

    #10088
    #10099

  • Enhancement - Registering quick actions as extension: #10102

    Quick actions can now registered as extension via our extension registry. They
    need to be of type action and have the files.quick-action scope.

    The old way of registering quick actions via the quickaction property of an
    app is now officially deprecated.

    #7338
    #10102

  • Enhancement - Create link modal: #10104

    When creating a link while passwords are enfoced, Web will now display a modal
    that lets the user not only set a password, but also the role and an optional
    expiration date.

    #10104
    #10145

  • Enhancement - Registering right sidebar panels as extension: #10111

    Right sidebar panels can now be registered as extensions via our extension
    registry. They need to be of type sidebarPanel. The benefit of this is that
    any app can register additional panels to be shown in the right sidebar while
    previously the available panels were hardcoded.

    #10111

  • Enhancement - File sidebar in viewer and editor apps: #10111

    Viewer and editor apps now have the same right sidebar available like the
    files app. This makes in place viewing file details, tagging, sharing, and
    much more possible.

    #10111