codimd/public/docs/release-notes.md

29 KiB

Release Notes

1.1.1-ce 2018-05-23 12:00

Security

  • Fix Google Drive integration leaked clientSecret for Google integration
  • Update base64url package

Fixes

  • Fix typos in integrations
  • Fix high need of file descriptors during build
  • Fix heroku deployment by limiting node version to <10.x

Refactors

  • Refactor letterAvatars to be compliant with CSP

Removes

  • Google Drive integration

Honorable mentions

1.1.0-ce 2018-04-06 12:00

Security

  • Adding CSP headers
  • Prevent data-leak by wrong LDAP config
  • Generate dynamic sessionSecret if none is specified

Enhancements

  • Add Minio support
  • Allow posting content to new notes by API
  • Add anonymous edit function in restricted mode
  • Add support for more Mimetypes on S3, Minio and local filesystem uploads
  • Add basic CLI tooling for local user management
  • Add referrer policy
  • Add more usable HTML5 tags
  • Add useridField in LDAP config
  • Add option for ReportURI for CSP violations
  • Add persistance for night mode
  • Allow setting of sessionSecret by environment variable
  • Add night mode to features page
  • Add Riot / Matrix - Community link to help page

Fixes

  • Fix ToDo-toggle function
  • Fix LDAP provider name in front-end
  • Fix errors on authenticated sessions for deleted users
  • Fix typo in database migration
  • Fix possible data truncation of authorship
  • Minor fixes in README.md
  • Allow usage of ESC-key by codemirror
  • Fix array of emails in LDAP
  • Fix type errors by environment configs
  • Fix error message on some file API errors
  • Fix minor CSS issues in night mode

Refactors

  • Refactor contact
  • Refactor social media integration on main page
  • Refactor socket.io code to no longer use referrer
  • Refactor webpack config to need less dependencies in package.json
  • Refactor imageRouter for modularity
  • Refactor configs to be camel case

Removes

  • Remove unused tokenSecret from LDAP config

Deprecations

  • All non-camelcase config

Honorable mentions

1.0.1-ce 2018-01-19 15:00

Security

  • Fix Dropbox client secret leak

Enhancements

  • Improve version handling
  • It's 2018!

Fixes

  • Fix image alt-tag rendering
  • Fix Dropbox appkey

1.0.0-ce 2018-01-18 12:00

License

  • Switch from MIT to AGPL

Enhancements

  • Improve language support
  • Allow themes for reveal
  • Add dark theme for editor and view
  • Add danish translation
  • Add simplified chinese translation
  • Provide new permission table
  • Make HSTS configurable
  • Make PDF export configurable
  • Add Mattermost auth support
  • Add SAML support

Fixes

  • Fix regex for speaker notes
  • Fix S3 endpoint support
  • Fix German translation
  • Fix English translation
  • Fix broken profile images
  • Fix XSS attacks
  • Fix history order
  • Fix missing boolean settings
  • Fix LDAP auth
  • Fix too long notes droping content
  • Fix mermaid compatiblity with new version
  • Fix SSL CA path parsing

Refactors

  • Refactor main page
  • Refactor status pages
  • Refactor config handling
  • Refactor auth backend
  • Refactor code styling
  • Refactor middleware to modules

0.5.1 Doppio 2017-03-23 00:20

Enhancements

  • Update to indicate version in status API header
  • Update to generate front-end constants on server startup
  • Update to add gitlab api scope option and auto adapt gitlab snippet feature on it
  • Update to add default permission config option
  • Update to add basics for secret management by Docker 1.13
  • Update webpack config to use parallel uglify plugin to speed up production build
  • Update realtime to use timer to avoid memory leaks on busy tick
  • Update to remove history cache to lower application coupling
  • Update to add screenshot on index page
  • Update index layout to add profile on navbar
  • Update to support allow email register option
  • Update to support disable anonymous view option
  • Update to add limited and protected permission
  • Update to allow displaying LDAP provider name on sign-in modal
  • Update to show yaml-metadata and diagram parsing error in the view

Fixes

  • Fix XSS vulnerability in link regex [Security Issue]
  • Fix todo list item class might add in wrong element
  • Fix pagination error in list.js over v1.5.0
  • Fix update doc from filesystem cause redundant authorship stringify
  • Fix export html to replace fallen cdn tortue.me to cdnjs
  • Fix rendering might result XSS attribute on self closing tag [Security Issue]
  • Fix out of sync when deleting on same cursor position on several clients
  • Fix not determine OT have pending operations properly
  • Fix to keep selections on save and restore info
  • Fix image path problem when using filesystem backend
  • Fix meta error not clear on before rendering
  • Fix duplicated headers anchor link not been updated properly
  • Fix checkLoginStateChanged might fall into infinite loop while calling loginStateChangeEvent
  • Fix to workaround text shadow for font antialias might cause cut off in Edge
  • Fix and refactor extracting content using metaMarked directly might lead in invalid object

Refactors

  • Refactor editor related code
  • Refactor code with JavaScript Standard Style
  • Refactor templates, partials and rearrange its path
  • Refactor front-end code with more modular concepts
  • Refactor front-end code using ES6 (also unify configs to config.json)

Removes

  • Removed UTF-8 BOM in download function

0.5.0 Ristretto 2017-01-02 02:35

Enhancements

  • Update year to 2017 (Happy New Year!)
  • Update to improve editor performance by debounce checkEditorScrollbar event
  • Refactor data processing to model definition
  • Update to remove null byte on editor changes
  • Update to remove null byte before saving to DB
  • Update to support Esperanto locale
  • Little improvements (typos, uppercase + accents, better case) for French locale
  • Update features.md publish button name and icon

Fixes

  • Fix authorship might losing update event because of throttling
  • Fix migration script of revision lacks of definition of primary key
  • Fix to not use diff_cleanupSemantic
  • Fix URL concatenation when uploading images to local filesystem
  • Fix js-url not import correctly
  • Fixed typo: anonmyous
  • Fix codemirror spell checker not considering abbreviation which contain apostrophe in word
  • Fix possible user is undefined in realtime events
  • Fix wrong package name reference in webpack config for bootstrap-validator
  • Fix email option in config not parse correctly
  • Fix mathjax not able to render issue

Removes

  • Remove LZString compression for data storage
  • Remove LZString compression for some socket.io event data

0.4.6 Melya 2016-12-19 17:20

Features

  • Add support of allow free url config option
  • Add support of allow anonymous config option
  • Add preferences to editor status bar and add allow override browser keymap option
  • Add support of s3 and local filesystem for image uploading
  • Add of support optional email register and signin
  • Use uWebSocket to improve websocket performance
  • Use CDNJS by default with https and SRI support
  • Use Webpack to bundle frontend code

Enhancements

  • Update to make TOC syntax be case-insensitive
  • Update to handle request with invalid uri
  • Update to auto generate meta description based on content in publish note and slide
  • Update to support haskell, go, typescript and jsx syntax highlighting in code block
  • Update to use workers to leverage intensive work loading
  • Update to support summary tag
  • Change use cdn config option default to be true
  • Update to retry when anytime the socket io disconnect
  • Change to raise socket io timeout, heartbeat interval and timeout to lower offline period
  • Update emoji parser using markdown-it-emoji instead of emojify
  • Optimize finishView selector performance by avoid universal selector
  • Config heroku deployment
  • Update to support Hindi, Swedish locale
  • Update to support wrap syntax for code block
  • Update to support pagination for history list

Fixes

  • Fix slide mode on print pdf not finish view rendering
  • Fix when server have heavy loading cache might not update to db properly
  • Fix redirection to url without trailing slashes not considering about config urlpath
  • Fix header id and text might affects by mathjax tags
  • Fix possible meta XSS in history list [Security Issue]
  • Fix possible XSS in yaml-metadata and turn using ejs escape syntax than external lib [Security Issue]
  • Fix to allow data attribute of section tag in slide
  • Fix slide might able to add unsafe attribute on section tag which cause XSS [Security Issue]
  • Fix slide might trigger script when processing markdown which cause XSS [Security Issue]
  • Fix published note won't scroll to hash on load
  • Fix mathjax with blockquote might have race condition
  • Fix server reconnect might not resend pending operations
  • Fix slide export pdf styles not applied issue
  • Fix possible unclose HTML and leaked html tags when fail to parse diagrams
  • Fix typos in the slide-example.md
  • Fix socket io doc event should setDoc when revision mismatch and no outstanding operation
  • Fix markdown styles conflicting bootstrap on p and ul under alert area
  • Fix finishView mermaid might select and replace whole markdown-body issue
  • Fix code block which in deeper level will not be parsed issue
  • Fix code block highlighting html not escaped when no languages specified
  • Fix client socket on delete event might not delete corresponding history record correctly
  • Fix to handle name or color is undefined error
  • Fix history item event not bind properly on pagination change
  • Fix history time should save in UNIX timestamp to avoid time offset issue

Removes

  • Drop bower the package manager
  • Remove auto linkify image

0.4.5 latte 2016-10-11 01:22

Features

  • Add more environment variables for server configuration
  • Add setup script for getting started
  • Add support of deleting note
  • Add support of shortcut keys which can add and remove symbol surround text
  • Add support of shortcut keys for changing mode
  • Add support of i18n (English, Chinese, French, German, Japanese, Spanish, Portuguese, Greek, Italian, Turkish, Russian, Dutch, Croatian, Polish, Ukrainian)
  • Add support of note info API
  • Add support of disqus via yaml-metadata

Enhancements

  • Optimize png images by using zopflipng
  • Update CodeMirror to 5.19.0 and rename jade to pug
  • Update to add cache to history and improve its performance
  • Update default indent to use spaces instead of tabs
  • Improve syntax highlighting performance
  • Update to make client handle syncing error better, use delay to avoid wrong document revision
  • Update to allow CORS as API on revision actions
  • Update to support showing owner on the infobar
  • Update to prevent duplicate client push in queue to lower down server loading
  • Reduce update view debounce time to make preview refresh quicker
  • Update help modal cheatsheet font styles to make it more clear on spaces
  • Update to add revision saving policy
  • Update to support tiddlywiki and mediawiki syntax highlighting in editor
  • Update to support save mode to url and vise versa
  • Update edit and publish icon and change toggle icon for UX
  • Improve authorship markers update performance
  • Update slide mode to show extra info and support url actions
  • Change the last change user saving strategy
  • Update to support data uri in src attribute of image tag
  • Improve index layout and UX with UI adjustments
  • Update XSS policy to allow iframe and link with custom protocol
  • Update markdown styles to follow github latest layout styles
  • Update slide mode, now respect all meta settings and update default styles
  • Update to make ToC menu always accessible without scrolling
  • Update to make doc only update while filesystem content not match db content

Fixes

  • Fix README and features document format and grammar issues
  • Fix some potential memory leaks bugs
  • Fix history storage might not fallback correctly
  • Fix to make mathjax expression display in editor correctly (not italic)
  • Fix note title might have unstriped html tags
  • Fix client reconnect should resend last operation
  • Fix a bug when setting both maxAge and expires may cause user can't signin
  • Fix text complete extra tags for blockquote and referrals
  • Fix bug that when window close will make ajax fail and cause cookies set to wrong state
  • Fix markdown render might fall into regex infinite loop
  • Fix syntax error caused by element contain special characters
  • Fix reference error caused by some scripts loading order
  • Fix ToC id naming to avoid possible overlap with user ToC
  • Fix header nav bar rwd detect element should use div tag or it might glitch the layout
  • Fix textcomplete of extra tags for blockquote not match space character in the between
  • Fix text-shadow for text antialiased might cause IE or Edge text cutoff

Removes

  • Cancel updating history on page unload

0.4.4 mocha 2016-08-02 17:10

Features

  • Add support of showing authorship in editor
  • Add support of saving authorship
  • Add support of saving authors
  • Add support of slide preview in both mode
  • Add support of all extra syntax in slide mode

Enhancements

  • Update realtime check and refresh event, compress data to minimize network transfer delay
  • Update to keep showing second level TOC if there is only one first level TOC
  • Update to add expand and collapse toggle for TOC
  • Update to make help modal and text complete hint using consistent reminder text
  • Update to support slideOptions in the yaml metadata for customize slides
  • Update to support redirect back to previous url after signin
  • Update to avoid duplicated rendering slides and reduce DOM wrap
  • Update CodeMirror to version 5.17.1
  • Update to make random color more discrete
  • Update user icon styles to make avatar more obvious
  • Update Bootstrap to 3.3.7 and jQuery to 3.1.0 with related patches
  • Update spell checker to ignore non-english or numeric alphabets
  • Update to auto rolling session for auto extending cookies expiration
  • Update some menu items and UIs
  • Update to reduce realtime timeout and heartbeat interval to handle stale clients quicker
  • Update to force note, publish note, publish slide redirect to their expected url
  • Update to change server pre-rendering engine to markdown-it

Fixes

  • Workaround vim mode might overwrite copy keyMap on Windows
  • Fix TOC might not update after changeMode
  • Workaround slide mode gets glitch and blurry text on Firefox 47+
  • Fix idle.js not change isAway property on onAway and onAwayBack events
  • Fix http body request entity too large issue
  • Fix google-diff-match-patch encodeURI exception issue
  • Fix yaml metadata title should pass to generateWebTitle
  • Fix spellcheck settings from cookies might not a boolean in string type
  • Fix cookies might not in boolean type cause page refresh loop
  • Fix the signin and logout redirect url might be empty
  • Fix realtime might not clear or remove invalid sockets in queue
  • Fix slide not refresh layout on ajax item loaded
  • Fix retryOnDisconnect not clean up after reconnected
  • Fix some potential memory leaks

0.4.3 espresso 2016-06-28 02:04

Features

  • Add support of spellcheck
  • Add support of light editor theme
  • Add support of embed pdf
  • Add support of exporting raw html
  • Add revision modal with UIs and support marking patch diff texts
  • Add support of saving note revision

Enhancements

  • Update to extend login info cookies to 365 days to reduce reductant page refresh
  • Update to support new metadata: title, description, tags and google-analytics
  • Prevent crawling editing note to enhance privacy
  • Update to remove all data lines attributes to gain better update performance
  • Update refresh modal to show more detail informations
  • Update to make cursor tag default as hover mode to prevent tag overlay other lines
  • Update highlight.js to version 9.4.0 and use bower dependency
  • Improve history performance

Fixes

  • Fix history filter tags and search keyword might not apply after refresh
  • Fix part class in list item might infect buildMap process
  • Fix pdf tmp path is missing a folder slash before timestamp
  • Fix realtime connection get stock when lots of client try to connect at same moment
  • Fix locked or private permission should block any operation if owner is null
  • Add back missing support of image size syntax in 0.4.2
  • Fix update permission might cause duplicate view rendering
  • Fix on paste long document to editor might cause scroll not syncing
  • Workaround CodeMirror won't draw selections outside of the viewport
  • Fix to make socket keep retry after disconnect on server maintenance

Removes

  • Remove metadata spellcheck support
  • Remove robot meta on note edit page and html template

0.4.2 cappuccino 2016-04-22 10:43

Features

  • Support sync scrolling to edit area
  • Support import and export with GitLab snippet
  • Support GitLab signin
  • Add cheatsheet and help modal

Enhancements

  • Upgrade CodeMirror to version 5.15.3
  • Support maintenance mode and gracefully exit process on signal
  • Update to update doc in db when doc in filesystem have newer modified time
  • Update to replace animation acceleration library from gsap to velocity
  • Support image syntax with size
  • Update textcomplete rules to support more conditions
  • Update to use bigger user profile image
  • Support showing signin button only when needed

Fixes

  • Fix other clients' cursor might disappear or move out of bound
  • Fix to handle user profile image not exists
  • Fix potential toolbar layout glitch
  • Fix imgur uploads should always use https to avoid mix-content warning
  • Fix to change fullscreen key to avoid OS key conflicts
  • Fix and change ESC key in Vim mode

0.4.1 2016-04-22 10:43

Enhancements

  • Support when client domain not provided will use window.location variable
  • Support when domain not provided will use relative path
  • Support DOMAIN and URL_PATH environment variables

0.4.0 first-year 2016-04-20 14:30

Features

  • Support docs
  • Support Ionicons and Octicons
  • Support mermaid diagram
  • Support import and export with Gist
  • Support import and export with Google Drive
  • Support more options in YAML metadata
  • Support change keymap and indentation size/type

Enhancements

  • Change header anchor styles
  • Refactor server code and configs
  • Support experimental spell checking
  • Upgrade CodeMirror to 5.13.5
  • Update to emit info and disconnect clients if updater get errors
  • Support to indicate if the note status is created or updated
  • Support more DB types
  • Server now use ORM for DBs
  • Support static file cache
  • Support more ssl settings
  • Improve server stablilty
  • Improve server performance
  • Support Ionicons
  • Support container syntax and styles
  • Improve input performance
  • Change markdown engine from remarkable to markdown-it
  • Server now support set sub url path
  • Support textcomplete in multiple editing
  • Update to filter XSS on rendering
  • Update to make sync scroll lerp on last line
  • Update to make continue list in todo list default as unchecked
  • Support auto indent whole line in list or blockquote

Fixes

  • Fix status bar might be inserted before loaded
  • Fix mobile layout and focus issues
  • Fix editor layout and styles might not handle correctly
  • Fix all diagram rendering method and styles to avoid partial update gets wrong
  • Fix to ignore process image which already wrapped by link node
  • Fix when cut or patse scroll map might get wrong
  • Fix to handle more socket error and info status
  • Fix textcomplete not matching properly
  • Fix and refactor cursor tag and cursor menu
  • Fix Japanese, Chinese font styles
  • Fix minor bugs of UI and seletor syntaxes

0.3.4 techstars 2016-01-19 00:22

Features

  • Beta Support slide mode
  • Beta Support export to PDF
  • Support TOC syntax
  • Support embed slideshare and speakerdeck
  • Support Graphviz charts
  • Support YAML metadata
  • Support private permission

Enhancements

  • Support pin note in history
  • Support IE9 and above
  • Support specify and continue line number in code block
  • Changed all embed layout to 100% width
  • Added auto detect default mode
  • Support show last change note user
  • Upgrade CodeMirror to 5.10.1 with some manual patches
  • Improved server performance
  • Support autocomplete for code block languages of charts

Fixes

  • Fixed some server connection issues
  • Fixed several issues cause scrollMap incorrect
  • Fixed cursor animation should not apply on scroll
  • Fixed a possible bug in partial update
  • Fixed internal href should not link out
  • Fixed dropbox saver url not correct
  • Fixed mathjax might not parse properly
  • Fixed sequence diagram might render multiple times

0.3.3 moon-festival 2015-09-27 14:00

Features

  • Added status bar below editor
  • Added resizable grid in both mode
  • Added title reminder if have unread changes
  • Support todo list change in the view mode
  • Support export to HTML
  • Changed to a new theme, One Dark(modified version)

Enhancements

  • Support extra tags in todo list
  • Changed overall font styles
  • Optimized build sync scroll map, gain lots better performance
  • Support and improved print styles
  • Support to use CDN
  • Image and link will href to new tab ors window
  • Support auto scroll to corresponding position when change mode from view to edit
  • Minor UI/UX tweaks

Fixes

  • Change DB schema to support long title
  • Change editable permission icon to avoid misunderstanding
  • Fixed some issues in OT and reconnection
  • Fixed cursor menu and cursor tag are not calculate doc height properly
  • Fixed scroll top might not animate
  • Fixed scroll top not save and restore properly
  • Fixed history might not delete or clear properly
  • Fixed server might not clean client properly

0.3.2 typhoon 2015-07-11 12:30

Features

  • Support operational transformation
  • Support show other user selections
  • Support show user profile image if available

Enhancements

  • Updated editor to 5.4.0
  • Change UI share to publish to avoid misleading
  • Added random color in blockquote tag
  • Optimized image renderer, avoid duplicated rendering
  • Optimized building syncscroll map, make it faster
  • Optimized SEO on publish and edit note

0.3.1 clearsky 2015-06-30 16:00

Features

  • Added auto table of content
  • Added basic permission control
  • Added view count in share note

Enhancements

  • Toolbar now will hide in single view
  • History time now will auto update
  • Smooth scroll on anchor changed
  • Updated video style

Fixes

  • Note might not clear when all users disconnect
  • Blockquote tag not parsed properly
  • History style not correct

0.3.0 sunrise 2015-06-15 24:00

Enhancements

  • Used short url in share notes
  • Added upload image button on toolbar
  • Share notes are now SEO and mobile friendly
  • Updated code block style
  • Newline now will cause line breaks
  • Image now will link out
  • Used otk to avoid race condition
  • Used hash to avoid data inconsistency
  • Optimized server realtime script

Fixes

  • Composition input might lost or duplicated when other input involved
  • Note title might not save properly
  • Todo list not render properly

0.2.9 wildfire 2015-05-30 14:00

Features

  • Support text auto complete
  • Support cursor tag and random last name
  • Support online user list
  • Support show user info in blockquote

Enhancements

  • Added more code highlighting support
  • Added more continue list support
  • Adjust menu and history filter UI for better UX
  • Adjust sync scoll animte to gain performance
  • Change compression method of dynamic data
  • Optimized render script

Fixes

  • Access history fallback might get wrong
  • Sync scroll not accurate
  • Sync scroll reach bottom range too much
  • Detect login state change not accurate
  • Detect editor focus not accurate
  • Server not handle some editor events

0.2.8 flame 2015-05-15 12:00

Features

  • Support drag-n-drop(exclude firefox) and paste image inline
  • Support tags filter in history
  • Support sublime-like shortcut keys

Enhancements

  • Adjust index description
  • Adjust toolbar ui and view font
  • Remove scroll sync delay and gain accuracy

Fixes

  • Partial update in the front and the end might not render properly
  • Server not handle some editor events

0.2.7 fuel 2015-05-03 12:00

Features

  • Support facebook, twitter, github, dropbox login
  • Support own history

Enhancements

  • Adjust history ui
  • Upgrade realtime package
  • Upgrade editor package, now support composition input better

Fixes

  • Partial update might not render properly
  • Cursor focus might not at correct position

0.2.6 zippo 2015-04-24 16:00

Features

  • Support sync scroll
  • Support partial update

Enhancements

  • Added feedback ui
  • Adjust animations and delays
  • Adjust editor viewportMargin for performance
  • Adjust emit refresh event occasion
  • Added editor fallback fonts
  • Index page auto focus at history if valid

Fixes

  • Server might not disconnect client properly
  • Resume connection might restore wrong info

0.2.5 lightning 2015-04-14 21:10

Features

  • Support import from dropbox and clipboard
  • Support more code highlighting
  • Support mathjax, sequence diagram and flow chart

Enhancements

  • Adjust toolbar and layout style
  • Adjust mobile layout style
  • Adjust history layout style
  • Server using heartbeat to gain accuracy of online users

Fixes

  • Virtual keyboard might broken the navbar
  • Adjust editor viewportMargin for preloading content

0.2.4 flint 2015-04-10 12:40

Features

  • Support save to dropbox
  • Show other users' cursor with light color

Enhancements

  • Adjust toolbar layout style for future

Fixes

  • Title might not render properly
  • Code border style might not show properly
  • Server might not connect concurrent client properly

0.2.3 light 2015-04-06 20:30

Features

  • Support youtube, vimeo
  • Support gist
  • Added quick link in pretty
  • Added font-smoothing style

Enhancements

  • Change the rendering engine to remarkable
  • Adjust view, todo list layout style for UX
  • Added responsive layout check
  • Auto reload if client version mismatch
  • Keep history stack after reconnect if nothing changed
  • Added features page

Fixes

  • Closetags auto input might not have proper origin
  • Autofocus on editor only if it's on desktop
  • Prevent using real script and iframe tags
  • Sorting in history by time not percise

0.2.2 fire 2015-03-27 21:10

Features

  • Support smartLists, smartypants
  • Support line number on code block
  • Support tags and search or sort history

Enhancements

  • Added delay on socket change
  • Updated markdown-body width to match github style
  • Socket changes now won't add to editor's history
  • Reduce redundant server events

Fixes

  • Toolbar links might get wrong
  • Wrong action redirections

0.2.1 spark 2015-03-17 13:40

Features

  • Support github-like todo-list
  • Support emoji

Enhancements

  • Added more effects on transition
  • Reduced rendering delay
  • Auto close and match brackets
  • Auto close and match tags
  • Added code fold and fold gutters
  • Added continue listing of markdown

0.2.0 launch-day 2015-03-14 20:20

Features

  • Markdown editor
  • Preview html
  • Realtime collaborate
  • Cross-platformed
  • Recently used history