- Feature: Create/edit linker with GUI
- Improvement: Paging page histories
- Fix: To be able to delete attachment metadata even when the actual data does not exist
- Fix: Uploaded images do not displayed
- Introduced by v4.1.1
- Feature: External share link
- Improvement: Optimize some features that operate revision data
- Page history
- Renaming pages
- Deleting pages
- Fix: Cmd+c/v/... does not work on Mac
- Introduced by v4.1.0
- Fix: "Append params" switch of CopyDropdown does not work when multiple CopyDropdown instance exists
- Fix: "Append params" switch of CopyDropdown escapes spaces
- Fix: Blockdiag does not be rendered
- Fix: Access token parser
- GROWI v4.1.x no longer support Node.js v10.x
- GROWI v4.1.x no longer support growi-plugin-attachment-refs@v1
Upgrading Guide: https://docs.growi.org/en/admin-guide/upgrading/41x.html
- Feature: Server settings synchronization for multiple GROWI Apps
- Feature: Page status alert synchronization for multiple GROWI Apps
- Feature: Smooth scroll for anchor links
- Feature: Mirror Mode with Konami Code
- Improvement: Determine whether the "In Use" badge is displayed or not by attachment ID
- Improvement: draw.io under NO_CDN environment
- Fix: Deleting/renaming with recursive option affects pages that are inaccessible to active users
- Fix: DrawioModal cuts without beginning/ending line
- Fix: New settings of SMTP and AWS SES are not reflected when server is running
- Fix: Sidebar layout broken when using Kibela layout
- Support: Support Node.js v14
- Support: Update libs
- mathjax
- Fix: Fab on search result page does not displayed
- Fix: Adjust margin/padding for search result page
- Fix: PageAlert broken
- Introduced by v4.0.9
- Improvement: Adjust ToC height
- Fix: Fail to rename/delete a page set as "Anyone with the link"
- Feature: Detailed configurations for OpenID Connect
- Authorization Endpoint
- Token Endpoint
- Revocation Endpoint
- Introspection Endpoint
- UserInfo Endpoint
- Registration Endpoint
- JSON Web Key Set URI
- Improvement: Navigations
- New floating subnavigation
- New open drawer button
- New fixed bottom navbar on mobile
- New fixed bottom navbar for editor on mobile
- FAB (Floating action button)
- Improvement: Sticky admin navigation
- Fix: Reseting password doesn't work
- Fix: Styles for printing
- Fix: Unable to create page with original path after emptying trash
- I18n: Support zh-CN
- Feature: Set request timeout for Elasticsearch with env var
ELASTICSEARCH_REQUEST_TIMEOUT
- Improvement: Apply styles faster on booting client
- Fix: Styles are not applyed on installer
- Fix: Remove last-resort
next()
- Fix: Enable/disable Notification settings couldn't change when either of the params is undefined
- Fix: Text overflow
- Fix: Avatar images in Recent Changes are not shown
- Fix: Full screen modal of Handsontable and Draw.io don't work
- Fix: Shortcut for creating page respond with modifier key wrongly
- Introduced by v4.0.5
- Improvement: Return pre-defined session id when healthcheck
- Improvement: Refactor caching for profile image
- Improvement: Layout for global search help on mobile
- Improvement: Layout for confidential notation
- Fix: Shortcut for creating page doesn't work
- Support: Dev in container
- Support: Upgrade libs
- ldapjs
- node-sass
- Feature: Drawer/Dock mode selector
- Improvement: Admin pages navigation
- Improvement: Ensure not to avoid session management even when accessing to healthcheck
- Support: Refactor unstated utils
- Support: Upgrade libs
- connect-mongo
- connect-redis
- mongoose
- mongoose-gridfs
- mongoose-paginate-v2
- Feature: Copy page path dropdown with Append params switch
- Improvement: Truncate overflowed user browsing history
- Improvement: Tabs appearance on mobile
- Improvement: Search help appearance on mobile
- Improvement: Accessibility of login page
- Fix: Editor was broken by long lines
- Fix: Editor doesn't work on mobile
- Fix: Word break in Recent Updated contents
- Fix: navbar is broken on Safari
- Fix: Internal Server Error occurred when the guest user access to the pages that has likes
- Fix: Some buttons are broken on Safari
- Improvement: Accessibility for Handsontable under dark mode
- Improvement: Refactor '/pages.exist' API
- Fix: Storing the state of sidebar
- Fix: Comments order should be asc
- Fix: Show/Hide replies button doesn't work
- Fix: Tooltip doesn't work
- Fix: Change the display of the scroll bar when modal is shown
- Fix: Submit with enter key on Create/Rename modals
- Fix: Show/Hide Unlink redirection button conditions
- Fix: Link color in alerts
- Support: Upgrade libs
- @atlaskit/drawer
- @atlaskit/navigation-next
- Crowi Classic Behavior is removed
- Crowi Classic Layout is removed
- 'default-dark' theme is now merged as a dark mode variant of 'default' theme
- 'blue-night' theme is now merged as a dark mode variant of 'mono-blue' theme
Upgrading Guide: https://docs.growi.org/en/admin-guide/upgrading/40x.html
- Feature: Sidebar
- Feature: Recent changes on Sidebar
- Feature: Switch Light/Dark Mode
- Improvement: Migrate to Bootstrap 4
- Improvement: Copy Page URL menu item to copy path dropdown
- Improvement: Show contributors by Bootstrap Modal
- Support: Upgrade libs
- bootstrap
- Now Elasticsearch requires the privilege
cluster:monitor/health
instead ofcluster:monitor/nodes/info
Upgrading Guide: https://docs.growi.org/en/admin-guide/upgrading/38x.html
- Improvement: Change the health check method for Elasticsearch
- Fix: Unset overflow-y style for Edit Tags Modal
- Fix: Duplicate page source is overwrited
- Introduced by 3.7.6
- Feature: Empty trash pages
- Improvement: Behavior of Reconnect to Elasticsearch button
- Fix: Duplicate page source is overwrited
- Introduced by 3.7.6
- Fix: Draw.io diagrams rendered twice
- Fix: Behavior of password reset modal is strange
- Fix: Import GROWI Archive doesn't restore some data correctly
- Fix: Attachments list on root page and users top pages
- Fix: Trash page is no longer editable
- Fix: Rendering Timeline on /trash
- Fix: Broken by displaying user image
- Feature: Profile Image Cropping
- Improvement: Reactify users pages
- Improvement: Detect language and adjust the order of first and last names when creating accounts in OAuth
- Fix: Installation is broken when selecting Japanese
- Introduced by 3.7.0
- Fix: Mathjax Rendering is unstable (workaround)
- Introduced by 3.7.0
- Fix: Notification Setting couldn't update without slack token
- Introduced by 3.6.6
- Support: Add GROWI Contributers
- Feature: User Management Filtering/Sort
- Feature: Show env vars on Admin pages
- Fix: Attachment row z-index
- I18n: HackMD integration alert
- Improvement: Add an option that make it possible to choose what to send notifications
- Improvement: Add the env var
DRAWIO_URI
- Improvement: Accessibility for 'spring' theme
- Improvement: Editor scroll sync behaves strangely when using draw.io blocks
- Fix: Coudn't upload file on Comment Editor
- Introduced by 3.5.8
- I18n: HackMD integration
None.
Upgrading Guide: https://docs.growi.org/en/admin-guide/upgrading/37x.html
- Feature: Draw.io Integration
- Feature: SAML Attribute-based Login Control
- Improvement: Reactify admin pages (Security)
- Improvement: Behavior of pre-editing screen of HackMD when user needs to resume
- Fix: Redirect logic for users except for actives
- Introduced by 3.6.9
- Improvement: Redirection when login/logout
- Improvement: Add home icon before '/'
- Fix: Client crashed when the first login
- Introduced by 3.6.8
- Improvement: Show page history side-by-side
- Improvement: Optimize markdown rendering
- Improvement: Reactify admin pages (Navigation)
- Fix: Reply comments collapsed are broken
- Introduced by 3.6.7
- Support: Update libs
- cross-env
- mkdirp
- diff2html
- jest
- stylelint
- Feature: Anchor link for comments
- Improvement: Show error toastr when saving page is failed because of empty document
- Fix: Admin Customise couldn't restore stored config value
- Introduced by 3.6.2
- Fix: Admin Customise missed preview functions
- Introduced by 3.6.2
- Fix: AWS doesn't work
- Introduced by 3.6.4
- Fix: Ensure not to get unrelated indices information in Elasticsearch Management
- Introduced by 3.6.6
- Support: Optimize bundles
- Support: Optimize build-prod job with caching node_modules/.cache
- Feature: Reconnect to Elasticsearch from Full Text Search Management
- Feature: Normalize indices of Elasticsearch from Full Text Search Management
- Improvement: Add 'spring' theme
- Improvement: Reactify admin pages (Notification)
- Impromvement: Add
checkMiddlewaresStrictly
option to Healthcheck API - Improvement: Accessibility for History component under dark themes
- Fix: Warning on client console when developing /admin/app
- Support: Upgrade libs
- react-bootstrap-typeahead
- Feature: Alert for stale page
- Improvement: Reactify admin pages (Home)
- Improvement: Reactify admin pages (App)
- Improvement: Accessibility for editor icons of dark themes
- Improvement: Accessibility for importing table data pane
- Improvement: Resolve username and email when logging in with Google OAuth
- Improvement: Searching users in UserGroup Management
- Fix: Repair google authentication by migrating to jaredhanson/passport-google-oauth2
- Fix: Markdown Settings are broken by the button to import recommended settings
- Support: Upgrade libs
- check-node-version
- file-loader
- mini-css-extract-plugin
- Improvement: Reactify admin pages (Customize)
- Improvement: Ensure not to consider
[text|site](https://example.com]
as a row in the table - Improvement: Enter key behavior in markdown table
- Fix: Pre-installed plugins in official docker image are not detected
- Introduced by 3.6.0
- Fix: Emoji Autocomplete window does not float correctly
- Introduced by 3.5.0
- GROWI v3.6.x no longer support Node.js v8.x
- The name of database that is storing migrations meta data has been changed
- This affects only when
MONGO_URI
has parameters - v3.5.x or above has a bug (#1361)
- This affects only when
Upgrading Guide: https://docs.growi.org/en/admin-guide/upgrading/36x.html
- Improvement: Drop unnecessary MongoDB collection indexes
- Improvement: Accessibility of Antarctic theme
- Improvement: Reactify admin pages (Markdown Settings)
- Fix: Appending tag is failed by wrong index of PageTagRelation
- Introduced by 3.5.20
- Fix: Pages without heading slash is invalid but creatable
- Fix: Connect to Elasticsearch with
httpAuth
param - Support: Support Node.js v12
- Support: Optimize build in dev with hard-source-webpack-plugin
- Support: Upgrade libs
- growi-commons
- Improvement: Disable ESC key to close Handsontable Modal
- Fix: Exported data of empty collection is broken
- Fix: Some components crash after when the page with attachment has exported/imported
- Fix: Plugins are not working on Heroku
- Fix: Global Notification failed to send e-mail
- Fix: Pagination is not working for trash list
- Fix: Healthcheck API with
?connectToMiddlewares
returns error - Support: Upgrade libs
- growi-commons
- Improvement: Add
FILE_UPLOAD_DISABLED
env var
- Improvement: Cache control when retrieving attachment data
- Fix: Inviting user doesn't work
- Introduced by 3.5.20
- Improvement: Organize MongoDB collection indexes uniqueness
- Improvement: Reactify admin pages (External Account Management)
- Fix: Search result or Timeline shows loading icon eternally when retrieving not accessible page
- Support: Use SearchBox Elasticsearch Addon on Heroku
- Support: Upgrade libs
- cross-env
- eslint-plugin-jest
- i18next
- i18next-browser-languagedetector
- migrate-mongo
- react-i18next
- validator
- Improvement: Import GROWI Archive
- Process asynchronously
- Collection configurations
- Selectable mode (insert/upsert/flush and insert)
- Safely mode settings for configs and users collections
- Show errors view
- Improvement: Optimize handling promise of stream when exporting archive
- Improvement: Optimize handling promise of stream when building indices
- Improvement: Add link to docs.growi.org
- Fix: Monospace font code is broken when printing on Mac
- Feature: Upload to GCS (Google Cloud Storage)
- Feature: Statistics API
- Improvement: Optimize exporting
- Improvement: Show progress bar when exporting
- Improvement: Validate collection combinations when importing
- Improvement: Reactify admin pages
- Fix: Use HTTP PlantUML URL in default
- Introduced by 3.5.12
- Fix: Config default values
- Support: REPL with
console
npm scripts
- Fix: Full Text Search doesn't work after when building indices
- Introduced by 3.5.12
- Feature: Import/Export Page data
- Fix: The link to Sandbox on Markdown Help Modal doesn't work
- Support: Upgrade libs
- codemirror
- Feature: Re-edit comments
- Support: growi-plugin-attachment-refs
- Support: Upgrade libs
- entities
- markdown-it
- Improvement: Use Elasticsearch Alias
- Improvement: Connect to HTTPS PlantUML URL in default
- Fix: Global Notification doesn't work after updating Webhook URL
- Fix: User Trigger Notification is not be sent when channel is not specified
- Support: Upgrade libs
- terser-webpack-plugin
- Fix: HackMD Editor shows 404 error when HackMD redirect to fqdn URI
- Introduced by 3.5.8
- Fix: Timeline doesn't work
- Introduced by 3.5.1
- Fix: Last Login field does not shown in /admin/user
- Support: Upgrade libs
- env-cmd
- sass-loader
- webpack
- webpack-cli
- webpack-merge
- Feature: Send Global Notification with Slack
- Improvement: Show loading spinner when fetching page history data
- Improvement: Hierarchical page link when the page is in /Trash
- Fix: Code Highlight Theme does not change
- Introduced by 3.5.2
- Support: Upgrade libs
- date-fns
- eslint-config-weseek
- Fix: Editing table with Spreadsheet like GUI (Handsontable) is failed
- Fix: Plugins are not initialized when first launching
- Introduced by 3.5.0
- Support: Upgrade libs
- entities
- growi-commons
- openid-client
- rimraf
- style-loader
- Improvement: Controls when HackMD/CodiMD has unsaved draft
- Improvement: Show hints if HackMD/CodiMD integration is not working
- Improvement: GROWI server obtains HackMD/CodiMD page id from the 302 response header
- Improvement: Comment Thread Layout
- Improvement: Show commented date with date distance format
- Fix: Saving new page is failed when empty string tag is set
- Fix: Link of Create template page button in New Page Modal is broken
- Fix: Global Notification dows not work when creating/moving/deleting/like/comment
- Feature: Support S3-compatible object storage (e.g. MinIO)
- Feature: Enable/Disable ID/Password Authentication
- Improvement: Login Mechanism with HTTP Basic Authentication header
- Improvement: Reactify Table Of Contents
- Fix: Profile images are broken in User Management
- Fix: Template page under root page doesn't work
- Support: Upgrade libs
- csv-to-markdown-table
- express-validator
- markdown-it
- mini-css-extract-plugin
- react-hotkeys
- Fix: List private pages wrongly
- Fix: Global Notification Trigger Path does not parse glob correctly
- Fix: Consecutive page deletion requests cause unexpected complete page deletion
- Improvement: Calculate string width when save with Spreadsheet like GUI (Handsontable)
- Fix: Search Result Page doesn't work
- Fix: Create/Update page API returns data includes author's password hash
- Fix: Dropdown to copy page path/URL/MarkdownLink shows under CodeMirror vscrollbar
- Fix: Link to /trash in Dropdown menu
- Feature: Remain metadata option when Move/Rename page
- Improvement: Support code highlight for Swift and Kotlin
- Fix: Couldn't restrict page with user group permission
- Fix: Couldn't duplicate a page when it restricted by a user group permission
- Fix: Consider timezone on admin page
- Fix: Editor doesn't work on Microsoft Edge
- Support: Upgrade libs
- growi-commons
- GROWI no longer supports
- Protection system with Basic Authentication
- Crowi Classic Authentication Mechanism
- Crowi Template syntax
- GROWI no lonnger supports plugins with schema version 2
- Upgrade weseek/growi-plugin-lsx to v3.0.0 or above
- Upgrade weseek/growi-plugin-pukiwiki-like-linker to v3.0.0 or above
- The restriction mode of the root page (
/
) will be set 'Public' - The restriction mode of the root page (
/
) can not be changed after v 3.5.1
Upgrading Guide: https://docs.growi.org/en/admin-guide/upgrading/35x.html
- Feature: Comment Thread
- Feature: OpenID Connect authentication
- Feature: HTTP Basic authentication
- Feature: Staff Credits with Konami Code
- Feature: Restricte Complete Deletion of Pages
- Improvement Draft list
- Fix: Deleting page completely
- Fix: Search with
prefix:
param with CJK pathname - Fix: Could not edit UserGroup even if
PUBLIC_WIKI_ONLY
is not set - I18n: User Management Details
- I18n: Group Management Details
- Support: Apply unstated
- Support: Use Babel 7
- Support: Support plugins with schema version 3
- Support: Abolish Old Config API
- Support: Apply Jest for Tests
- Support: Upgrade libs
- async
- axios
- connect-mongo
- css-loader
- eslint
- eslint-config-weseek
- eslint-plugin-import
- eslint-plugin-jest
- eslint-plugin-react
- file-loader
- googleapis
- i18next
- migrate-mongo
- mini-css-extract-plugin
- mongoose
- mongoose-gridfs
- mongoose-unique-validator
- null-loader
- Improvement: Handle private pages on group deletion
- Fix: Searching with
tag:xxx
syntax doesn't work - Fix: Check CSRF when updating user data
- Fix:
createdAt
field initialization - I18n: Import data page
- I18n: Group Management page
- Feature: Tags
- Feature: Dropdown to copy page path/URL/MarkdownLink
- Feature: List of drafts
- Improvement: Replace icons of Editor Tool Bar
- Improvement: Show display name when mouse hover to user image
- Fix: URL in slack message is broken on Safari
- Fix: Registration does not work when basic auth is enabled
- Support: Publish API docs with swagger-jsdoc and ReDoc
- Support: Upgrade libs
- cmd-env
- elasticsearch
- mongoose-gridfs
- node-dev
- null-loader
- react-codemirror
- Improvement: Pass autolink through the XSS filter according to CommonMark Spec
- Fix: Update ElasticSearch index when deleting/duplicating pages
- Fix: Xss filter breaks PlantUML arrows
- Support: Support [email protected]
- Support: Upgrade libs
- growi-commons
- xss
- Fix: Comment component doesn't work
- Improvement: Add 'antarctic' theme
- Support Apply eslint-config-airbnb based rules
- Support Apply prettier and stylelint
- Support: Upgrade libs
- csrf
- escape-string-regexp
- eslint
- express-session
- googleapis
- growi-commons
- i18next
- mini-css-extract-plugin
- nodemailer
- penpal
- react-i18next
- string-width
- Fix: Nofitication to Slack doesn't work
- Introduced by 3.4.0
- Fix: "Cannot find module 'stream-to-promise'" occured when build client with
FILE_UPLOAD=local
None.
Upgrading Guide: https://docs.growi.org/en/admin-guide/upgrading/34x.html
- Improvement: Restrict to access attachments when the user is not allowed to see page
- Improvement: Show fans and visitors of page
- Improvement: Full text search tokenizing
- Improvement: Markdown comment on Crowi Classic Layout
- Fix: Profile image is not displayed when
FILE_UPLOAD=mongodb
- Fix: Posting comment doesn't work under Crowi Classic Layout
- Introduced by 3.1.5
- Fix: HackMD doesn't work when
siteUrl
ends with slash - Fix: Ensure not to be able to move/duplicate page to the path which has trailing slash
- Support: Launch with Node.js v10
- Support: Launch with MongoDB 3.6
- Support: Launch with Elasticsearch 6.6
- Support: Upgrade libs
- bootstrap-sass
- browser-sync
- react
- react-dom
- Feature: PlantUML and Blockdiag on presentation
- Improvement: Render slides of presentation with GrowiRenderer
- Fix: Unportalizing doesn't work
- Support: Use mini-css-extract-plugin instead of extract extract-text-webpack-plugin
- Support: Use terser-webpack-plugin instead of uglifyjs-webpack-plugin
- Support: Upgrade libs
- csv-to-markdown-table
- file-loader
- googleapis
- i18next-browser-languagedetector
- mocha
- react-waypoint
- webpack
- webpack-assets-manifest
- webpack-cli
- webpack-merge
- Fix: Import from Qiita:Team doesn't work
- Introduced by 3.3.0
- Fix: Typeahead shows autocomplete wrongly
- Introduced by 3.3.8
- Support: Upgrade libs
- react-bootstrap-typeahead
- Fix: Move/Duplicate don't work
- Introduced by 3.3.7
- Fix: Server doesn't respond when root page is restricted
- Support: Upgrade libs
- react
- react-bootstrap-typeahead
- Feature: Editor toolbar
- Feature:
prefix:/path
searching syntax to filter with page path prefix - Feature: Add an option to filter only children to searching box of navbar
- Improvement: Suggest page path when moving/duplicating/searching
- Fix: Anonymous users couldn't search
- Introduced by 3.3.6
- I18n: Searching help
- Support: Prepare to suppoert Node.js v10
- Support: Upgrade libs
- node-sass
- Improvement: Site URL settings must be set
- Improvement: Site URL settings can be set with environment variable
- Fix: "Anyone with the link" ACL doesn't work correctly
- Introduced by 3.3.0
- Fix: Related pages list of /admin/user-group-detail/xxx doesn't show anything
- Introduced by 3.3.0
- Fix: Diff of revision contents doesn't appeared when notifing with slack
- Fix: NPE occured on /admin/security when Crowi Classic Auth Mechanism is set
- Fix: Coudn't render Timing Diagram with PlantUML
- I18n: Cheatsheet for editor
- I18n: Some admin pages
- Support: Upgrade libs
- diff
- markdown-it-plantuml
- mongoose
- nodemailer
- mongoose-gridfs
- sinon
- sinon-chai
- Improvement: SAML configuration with environment variables
- Improvement: Upload file with pasting from clipboard
- Fix:
/_api/revisions.get
doesn't populate author data correctly - Fix: Wrong OAuth callback url are shown at admin page
- Fix: Connecting to MongoDB failed when processing migration
- Support: Get ready to use new config management system
- Feature: Show line numbers to a code block
- Feature: Bulk update the scope of descendant pages when create/update page
- Improvement: The scope of ascendant page will be retrieved and set to controls in advance when creating a new page
- Fix: Pages that is restricted by groups couldn't be shown in search result page
- Fix: Pages order in search result page was wrong
- Fix: Guest user can't search
- Fix: Possibility that ExternalAccount deletion processing selects incorrect data
- Support: Upgrade libs
- bootstrap-sass
- i18next
- migrate-mongo
- string-width
- Fix: Specified Group ACL is not persisted correctly
- Introduced by 3.3.0
- Feature: NO_CDN Mode
- Feature: Add option to show/hide restricted pages in list
- Feature: MongoDB GridFS quota
- Improvement: Refactor Access Control
- Improvement: Checkbox behavior of task list
- Improvement: Fixed search input on search result page
- Improvement: Add 'christmas' theme
- Improvement: Select default language of new users
- Fix: Hide restricted pages contents in timeline
- Support: Upgrade libs
- googleapis
- passport-saml
- Fix: Pages in trash are available to create
- Fix: Couldn't create portal page under Crowi Classic Behavior
- Fix: Table tag in Timeline/SearchResult missed border and BS3 styles
- I18n: Installer
- Feature: Attachment Storing to MongoDB GridFS
- Fix: row/col moving of Spreadsheet like GUI (Handsontable) doesn't work
- Fix: Emoji AutoComplete dialog pops up at wrong position
- Support: Upgrade libs
- codemirror
- react-codemirror2
- Improvement: Add an option to use email for account link when using SAML federation
- Fix: Editor layout is sometimes broken
- Fix: Normalize table data for Spreadsheet like GUI (Handsontable) when import
- Support: Improve development environment
- Support: Upgrade libs
- googleapis
- react-dropzone
- Feature: Import CSV/TSV/HTML table on Spreadsheet like GUI (Handsontable)
- Fix: Pasting table data copied from Excel includes unnecessary line breaks
- Fix: Page break Preset 1 for Presentation mode is broken
- Fix: Login Form when LDAP login failed caused 500 Internal Server Error
- Feature: Add select alignment buttons of Spreadsheet like GUI (Handsontable)
- Improvement: Shrink the rows that have no diff of revision history page
- Fix: Login form rejects weak password
- Fix: An error occured by uploading attachment file when the page is not exists
- Introduced by 2.3.5
- Support: Upgrade libs
- i18next-express-middleware
- i18next-node-fs-backend
- i18next-sprintf-postprocessor
- Improvement: Expandable Spreadsheet like GUI (Handsontable)
- Improvement: Move/Resize rows/columns of Spreadsheet like GUI (Handsontable)
- Improvement: Prevent XSS of New Page modal
- Fix: Recent Created tab of user home shows wrong page list
- Introduced by 3.2.4
- Support: Upgrade libs
- @handsontable/react
- handsontable
- metismenu
- sinon
- Feature: Edit table with Spreadsheet like GUI (Handsontable)
- Feature: Paging recent created in users home
- Improvement: Specify certificate for SAML Authentication
- Fix: SAML Authentication didn't work
- Introduced by 3.2.2
- Fix: Failed to create new page with title which includes RegEx special characters
- Fix: Preventing XSS Settings are not applied in default
- Introduced by 3.1.12
- Support: Mongoose migration mechanism
- Support: Upgrade libs
- googleapis
- mocha
- mongoose
- mongoose-paginate
- mongoose-unique-validator
- multer
- Feature: Kibela like layout
- Improvement: Custom newpage separator for presentation view
- Support: Shrink image size for themes which recently added
- Feature: SAML Authentication (SSO)
- Improvement: Add 'wood' theme
- Improvement: Add 'halloween' theme
- Improvement: Add 'island' theme
- Fix: Sending email function doesn't work
- Support Upgrade libs
- style-loader
- Feature: Import data from esa.io
- Feature: Import data from Qiita:Team
- Feature: Add the endpoint for health check
- Improvement: Adjust styles when printing
- Fix: Renaming page doesn't work if the page was saved with shortcut
- Support: Refactor directory structure
- Support Upgrade libs
- file-loader
- googleapis
- postcss-loader
- sass-loader
- style-loader
- Feature: HackMD integration so that user will be able to simultaneously edit with multiple people
- Feature: Login with Twitter Account (OAuth)
- Fix: The Initial scroll position is wrong when reloading the page
- Improvement: Show help for header search box
- Improvement: Add Markdown Cheatsheet to Editor component
- Fix: Couldn't delete page completely from search result page
- Fix: Tabs of trash page are broken
- Feature: Global Notification
- Feature: Send Global Notification with E-mail
- Improvement: Add attribute mappings for email to LDAP settings
- Support: Upgrade libs
- autoprefixer
- css-loader
- method-override
- optimize-css-assets-webpack-plugin
- react
- react-bootstrap-typeahead
- react-dom
- Feature: Add XSS Settings
- Feature: Notify to Slack when comment
- Improvement: Prevent XSS in various situations
- Improvement: Show forbidden message when the user accesses to ungranted page
- Improvement: Add overlay styles for pasting file to comment form
- Fix: Omit unnecessary css link
- Introduced by 3.1.10
- Fix: Invitation mail do not be sent
- Fix: Edit template button on New Page modal doesn't work
- Fix: OAuth doesn't work in production because callback URL field cannot be specified
- Introduced by 3.1.9
- Fix: Enter key on react-bootstrap-typeahead doesn't submit
- Introduced by 3.1.9
- Fix: CodeMirror of
/admin/customize
is broken- Introduced by 3.1.9
- Feature: Login with Google Account (OAuth)
- Feature: Login with GitHub Account (OAuth)
- Feature: Attach files in Comment
- Improvement: Write comment with CodeMirror Editor
- Improvement: Post comment with
Ctrl-Enter
- Improvement: Place the commented page at the beginning of the list
- Improvement: Resolve errors on IE11 (Experimental)
- Support: Migrate to webpack 4
- Support: Upgrade libs
- eslint
- react-bootstrap-typeahead
- react-codemirror2
- webpack
- Fix: Update hidden input 'pageForm[grant]' when save with
Ctrl-S
- Fix: Show alert message when conflict
- Fix:
BLOCKDIAG_URI
environment variable doesn't work - Fix: Paste in markdown list doesn't work correctly
- Support: Ensure to inject logger configuration from environment variables
- Support: Upgrade libs
- sinon
- sinon-chai
- Feature: Support blockdiag
- Feature: Add
BLOCKDIAG_URI
environment variable - Fix: Select modal for group is not shown
- Support: Upgrade libs
- googleapis
- throttle-debounce
- Feature: Write comment with Markdown
- Improvement: Support some placeholders for template page
- Improvement: Omit unnecessary response header
- Improvement: Support LDAP attribute mappings for user's full name
- Improvement: Enable to scroll revision-toc
- Fix: Posting to Slack doesn't work
- Introduced by 3.1.0
- Fix: page.rename api doesn't work
- Fix: HTML escaped characters in markdown are unescaped unexpectedly after page is saved
- Fix: sanitize
#raw-text-original
content with 'entities' - Fix: Double newline character posted
- Introduced by 3.1.4
- Fix: List and Comment components do not displayed
- Introduced by 3.1.4
- Support: Upgrade libs
- markdown-it-toc-and-anchor-with-slugid
-
Feature: Template page
-
Improvement: Add 'future' theme
-
Improvement: Modify syntax for Crowi compatible template feature
-
before
``` template:/page/name page contents ```
-
after
::: template:/page/name page contents :::
-
-
Improvement: Escape iframe tag in block codes
-
Support: Upgrade libs
- assets-webpack-plugin
- googleapis
- react-clipboard.js
- xss
- Improvement: Add 'blue-night' theme
- Improvement: List up pages which restricted for Group ACL
- Fix: PageGroupRelation didn't remove when page is removed completely
- Improvement: Group Access Control List - Select group modal
- Improvement: Better input on mobile
- Improvement: Detach code blocks correctly
- Improvement: Auto-format markdown table which includes multibyte text
- Improvement: Show icon when auto-format markdown table is activated
- Improvement: Enable to switch show/hide border for highlight.js
- Improvement: BindDN field allows also ActiveDirectory styles
- Improvement: Show LDAP logs when testing login
- Fix: Comment body doesn't break long terms
- Fix: lsx plugin lists up pages that hit by forward match wrongly
- Introduced by 3.0.4
- Fix: Editor is broken on IE11
- Support: Multilingualize React components with i18next
- Support: Organize dependencies
- Support: Upgrade libs
- elasticsearch
- googleapis
- Improvement: Add Vim/Emacs/Sublime-Text icons for keybindings menu
- Improvement: Add 'mono-blue' theme
- Fix: Unportalize process failed silently
- Fix: Sidebar breaks editor layouts
- Support: Switch the logger from 'pino' to 'bunyan'
- Support: Set the alias for 'debug' to the debug function of 'bunyan'
- Support: Translate
/admin/security
- Support: Optimize bundles
- upgrade 'markdown-it-toc-and-anchor-with-slugid' and omit 'uslug'
- Support: Optimize .eslintrc.js
- Feature: Support Vim/Emacs/Sublime-Text keybindings
- Improvement: Add some CodeMirror themes (Eclipse, Dracula)
- Improvement: Dynamic loading for CodeMirror theme files from CDN
- Improvement: Prevent XSS when move/redirect/duplicate
- Fix: login.html is broken in iOS
- Fix: Removing attachment is crashed
- Fix: File-attaching error after new page creation
- Support: Optimize development build
- Support: Upgrade libs
- env-cmd
- googleapis
- sinon
- Improvement: Add 'nature' theme
- Fix: Page list and Timeline layout for layout-growi
- Fix: Adjust theme colors
- Introduced by 3.0.9
- Fix: Registering new LDAP User is failed
- Introduced by 3.0.6
- Support: Organize scss for overriding bootstrap variables
- Support: Upgrade libs
- codemirror
- react-codemirror2
- normalize-path
- style-loader
- Improvement: h1#revision-path occupies most of the screen when the page path is long
- Improvement: Ensure not to save concealed email field to localStorage
- Fix: Cannot input "c" and "e" on iOS
- Improvement: Enable to download an attached file with original name
- Improvement: Use MongoDB for session store instead of Redis
- Improvement: Update dropzone overlay icons and styles
- Fix: Dropzone overlay elements doesn't show
- Introduced by 3.0.0
- Fix: Broken page path of timeline
- Introduced by 3.0.4
- Improvement: Automatically bind external accounts newly logged in to local accounts when username match
- Improvement: Simplify configuration for Slack Web API
- Support: Use 'slack-node' instead of '@slack/client'
- Support: Upgrade libs
- googleapis
- i18next
- i18next-express-middleware
- react-bootstrap-typeahead
- sass-loader
- uglifycss
- Improvement: Update lsx icons and styles
- Fix: lsx plugins doesn't show page names
- Improvement: The option that switch whether add h1 section when create new page
- Improvement: Encode page path that includes special character
- Fix: Page-saving error after new page creation
- Fix: Login page is broken in iOS
- Fix: Hide presentation tab if portal page
- Fix: A few checkboxes doesn't work
- Invite user check with email in
/admin/user
- Recursively check in rename modal
- Redirect check in rename modal
- Invite user check with email in
- Fix: Activating invited user form url is wrong
- Support: Use postcss-loader and autoprefixer
- Feature: Group Access Control List
- Feature: Add site theme selector
- Feature: Add a control to switch whether email shown or hidden by user
- Feature: Custom title tag content
- Fix: bosai version
- Support: Rename to GROWI
- Support: Add dark theme
- Support: Refreshing bootstrap theme and icons
- Support: Use Browsersync instead of easy-livereload
- Support: Upgrade libs
- react-bootstrap
- react-bootstrap-typeahead
- react-clipboard.js
- Feature: Autoformat Markdown Table
- Feature: highlight.js Theme Selector
- Fix: The bug of updating numbering list by codemirror
- Fix: Template LangProcessor doesn't work
- Introduced by 2.4.0
- Support: Apply ESLint
- Support: Upgrade libs
- react, react-dom
- codemirror, react-codemirror2
- Improvement: i18n in
/admin
- Improvement: Add
SESSION_NAME
environment variable - Fix: All Elements are cleared when the Check All button in DeletionMode
- Support: Upgrade libs
- uglifycss
- sinon-chai
- Improvement: Ensure to set absolute url from root when attaching files when
FILE_UPLOAD=local
- Fix: Inline code blocks that includes doller sign are broken
- Fix: Comment count is not updated when a comment of the page is deleted
- Improvement: i18n in
/admin
(WIP) - Support: Upgrade libs
- googleapis
- markdown-it-plantuml
- Feature: Custom Header HTML
- Improvement: Add highlight.js languages
- dockerfile, go, gradle, json, less, scss, typescript, yaml
- Fix: Couldn't connect to PLANTUML_URI
- Introduced by 2.4.0
- Fix: Couldn't render UML which includes CJK
- Introduced by 2.4.0
- Support: Upgrade libs
- axios
- diff2html
- Feature: Support Footnotes
- Feature: Support Task lists
- Feature: Support Table with CSV
- Feature: Enable to render UML diagrams with public plantuml.com server
- Feature: Enable to switch whether rendering MathJax in realtime or not
- Improvement: Replace markdown parser with markdown-it
- Improvement: Generate anchor of headers with header strings
- Improvement: Enhanced Scroll Sync on Markdown Editor/Preview
- Improvement: Update
#revision-body
tab contents after saving withCtrl-S
- Fix: 500 Internal Server Error occures when basic-auth configuration is set
- Fix:
Ctrl-/
doesn't work on Chrome - Fix: Close Shortcuts help with
Ctrl-/
, ESC key - Fix: Jump to last line wrongly when
.revision-head-edit-button
clicked - Support: Upgrade libs
- googleapis
- Feature: Suggest page path when creating pages
- Improvement: Prevent keyboard shortcuts when modal is opened
- Improvement: PageHistory UI
- Improvement: Ensure to scroll when edit button of section clicked
- Improvement: Enabled to toggle the style for active line
- Support: Upgrade libs
- style-loader
- react-codemirror2
- Fix: Open popups when
Ctrl+C
pressed- Introduced by 2.3.5
- Feature: Theme Selector for Editor
- Improvement: Remove unportalize button from crowi-plus layout
- Fix: CSS for admin pages
- Support: Shrink the size of libraries to include
- Feature: Enhanced Editor by CodeMirror
- Feature: Emoji AutoComplete
- Feature: Add keyboard shortcuts
- Improvement: Attaching file with Dropzone.js
- Improvement: Show shortcuts help with
Ctrl-/
- Fix: DOMs that has
.alert-info
class don't be displayed - Support: Switch and upgrade libs
- 8fold-marked -> marked
- react-bootstrap
- googleapis
- mongoose
- mongoose-unique-validator
- etc..
- Fix: The XSS Library escapes inline code blocks
- Degraded by 2.3.0
- Fix: NPE occurs on Elasticsearch when initial access
- Fix: Couldn't invite users(failed to create)
- Improvement: Add LDAP group search options
- Fix: Blockquote doesn't work
- Degraded by 2.3.0
- Fix: Couldn't create user with first LDAP logging in
- Feature: LDAP Authentication
- Improvement: Prevent XSS
- Fix: node versions couldn't be shown
- Support: Upgrade libs
- express-pino-logger
- Fix: googleapis v23.0.0 lost the function
oauth2Client.setCredentials
- Degraded by 2.2.2 updates
- Fix: HeaderSearchBox didn't append 'q=' param when searching
- Degraded by 2.2.3 updates
- Fix: The server responds anything when using passport
- Degraded by 2.2.2 updates
- Fix: Update
lastLoginAt
when login is success - Support: Replace moment with date-fns
- Support: Upgrade react-bootstrap-typeahead
- Improvement: Replace emojify.js with emojione
- Feature: Duplicate page
- Improve: Ensure that admin users can remove users waiting for approval
- Fix: Modal doesn't work with React v16
- Support: Upgrade React to 16
- Support: Upgrade outdated libs
- Support: Merge official Crowi v1.6.3
- Improvement: Ensure to prevent suspending own account
- Fix: Ensure to be able to use
.
for username when invited - Fix: monospace font for
<code></code>
- Fix: The problem that React Modal doesn't work
- Support: Lock some packages(react, react-dom, mongoose)
- Feature: Adopt Passport the authentication middleware
- Feature: Selective batch deletion in search result page
- Improvement: Ensure to be able to login with both of username or email
- Fix: The problem that couldn't update user data in /me
- Support: Upgrade outdated libs
- Fix: Server is down when a guest user accesses to someone's private pages
- Support: Merge official Crowi (master branch)
- Support: Upgrade outdated libs
- Fix: The problem that path including round bracket makes something bad
- Fix: Recursively option processes also unexpedted pages
- Fix: en_US translation
- Improvement: Add recursively option for Delete/Move/Putback operation
- Improvement: Comment layout and sort order (crowi-plus Enhanced Layout)
- Fix: check whether
$APP_DIR/public/uploads
exists before creating symlink- Fixed in weseek/crowi-plus-docker
- Improvement: Adjust styles for CodeMirror
- Fix: File upload does not work when using crowi-plus-docker-compose and
FILE_UPLOAD=local
is set- Fixed in weseek/crowi-plus-docker
- Feature: Custom Script
- Improvement: Adjust layout and styles for admin pages
- Improvement: Record and show last updated date in user list page
- Fix: Ignore Ctrl+(Shift+)Tab when editing (cherry-pick from the official)
- Feature: Enabled to integrate with Slack using Incoming Webhooks
- Support: Upgrade all outdated libs
- Improvement: Condition for creating portal
- Fix: Couldn't create new page after installation cleanly
- Improvement: Optimize cache settings for express server
- Improvement: Add a logo link to the affix header
- Fix: Child pages under
/trash
are not shown when applying crowi-plus Simplified Behavior
- Fix: Tabs(
a[data-toggle="tab"][href="#..."]
) push browser history twice - Fix:
a[href="#edit-form"]
still save history even when disabling pushing states option
- Improvement: Enabled to switch whether to push states with History API when tabs changes
- Fix: Layout of the Not Found page
- Improvement: Enabled to open editing form from affix header
- Improvement: Enabled to open editing form from each section headers
- Fix: Revise
server:prod:container
script for backward compatibility
- Improvement: Enabled to save with ⌘+S on Mac
- Improvement: Adopt the fastest logger 'pino'
- Fix: The problem that can't upload profile image
- Fix: The problem that redirect doesn't work when using 'crowi-plus Simplified Behavior'
- Fix: The problem that page_list widget doesn't show the picture of revision.author
- Fix: Change implementation of Bootstrap3 toggle switch for admin pages
- Feature: crowi-plus Simplified Behavior
/page
and/page/
both shows the page/nonexistent_page
shows editing form- All pages shows the list of sub pages
- Improvement: Ensure to be able to disable Timeline feature
- Fix: Internal Server Error has occurred when a guest user visited the page someone added "liked"
- Improvement: Ensure to be able to use Presentation Mode even when not logged in
- Improvement: Presentation Mode on IE11 (Experimental)
- Fix: Broken Presentation Mode
- Support: Merge official Crowi (master branch)
- Fix: buildIndex error occured when access to installer
- Support: Merge official Crowi v1.6.2
- Feature: Remove Comment Button
- Fix: Omit Comment form from page_list (crowi-plus Enhanced Layout)
- Fix: .search-box is broken on sm/xs screen
- Fix: .search-box is broken on sm/xs screen
- Support: Browsable with IE11 (Experimental)
- Improvement: Ensure to generate indices of Elasticsearch when installed
- Fix: Specify the version of Bonsai Elasticsearch on Heroku
- Fix: Depth of dropdown-menu when
.on-edit
- Fix: Error occured on saveing with
Ctrl-S
- Fix: Guest users browsing
- Feature: Add option to allow guest users to browse
- Fix: crowi-plus Enhanced Layout
- Fix: crowi-plus Enhanced Layout
- Fix: crowi-plus Enhanced Layout
- Support: Merge official Crowi v1.6.1 master branch [573144b]
- Feature: Ensure to select layout type from Admin Page
- Feature: Add crowi-plus Enhanced Layout
- Improvement: Use POSIX-style paths (bollowed crowi/crowi#219 by @Tomasom)
- Imprv: Brushup fonts and styles
- Fix: Ensure to specity revision id when saving with
Ctrl-S
- Feature: Save with
Ctrl-S
- Imprv: Brushup fonts and styles
- Support: Merge official Crowi v1.6.1
- Feature: Delete user
- Feature: Upload other than images
- Feature: Ensure to delete page completely
- Feature: Ensure to delete redirect page
- Fix: https access to Gravatar (this time for sure)
- Feature: Keyboard navigation for search box
- Improvement: Intelligent Search
- Feature: Copy button that copies page path to clipboard
- Fix: https access to Gravatar
- Fix: server watching crash with
Error: read ECONNRESET
on Google Chrome
- Feature: Ensure to use Gravatar for profile image
- Improvement: Detach code blocks before preProcess
- Support: Ensure to deploy to Heroku with INSTALL_PLUGINS env
- Support: Ensure to load plugins easily when development
- Improvement: Adjust styles
- Improvement: For lsx
- Feature: Custom CSS
- Support: Notify build failure to Slask
- Feature: Plugin mechanism
- Feature: Switchable LineBreaks ON/OFF from admin page
- Improvement: Exclude Environment-dependency
- Improvement: Enhanced linker
- Support: Add Dockerfile
- Support: Abolish gulp
- Support: LiveReload
- Support: Update libs