ChangeLog 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292
  1. Version 2.0.13 (Nov 25, 2018)
  2. -----------------------------
  3. * Add man page
  4. * Add support for Systemd Socket Activation (experimental)
  5. * Add the possiblity to listen on Unix sockets
  6. * Add config options to disable HTTP and scheduler services
  7. * Archive more read entries in cleanup job
  8. * Change default database connection string (backward compatible)
  9. * Improve logging messages in ui package
  10. * Improve overall Simplified Chinese translations
  11. * Improve time since post date displays:
  12. - "15 days" now is "15 days" rather than "3 weeks" ago
  13. - "32 days" is now "1 month" rather than "2 months" ago
  14. - "366 days" is now "1 year" rather than "2 years" ago
  15. * Allow the scraper to parse XHTML documents
  16. * Remove charset=utf-8 from JSON responses
  17. * Ignore hotkeys containing Control, Alt or Meta keys
  18. * Handle more encoding conversion edge cases
  19. * Disable go test caching
  20. * Avoid duplication of ldflags in Makefile
  21. * Fix wrong translation key for category pages
  22. * Code refactoring:
  23. - Simplify application HTTP middlewares
  24. - Replace daemon and scheduler package with service package
  25. - Move UI middlewares and routes to ui package
  26. - Move API middleware and routes to api package
  27. - Move Fever middleware and routes to fever package
  28. Version 2.0.12 (Oct 26, 2018)
  29. -----------------------------
  30. * Add OpenBSD build
  31. * Improve logging for OAuth2 callback
  32. * Make "g f" go to feed, or list of feeds
  33. * Add more details in feed storage errors to facilitate debugging
  34. * Add entries storage error to feed errors count
  35. * Set arbitrary maximum size for tsvector column
  36. * Unsubscribe from feed through link or "#"
  37. * Simplify feed entries filtering
  38. * Simplify feed fetcher
  39. * Simplify feed parser and format detection
  40. * Improve unit tests in url package
  41. * Add short cli flags -i and -v
  42. * Convert text links and line feeds to HTML in YouTube channels
  43. * Change link state when marking all entries as read
  44. * Add missing package descriptions for GoDoc
  45. * Fix typo in license header
  46. * Refactor HTTP response builder
  47. * Improve Fever API performances when marking a feed or group as read
  48. * Set focus on article link when pressing prev/next hotkeys
  49. * Improve request package and add more unit tests
  50. * Add more unit tests for config package
  51. * Simplify locale package usage (refactoring)
  52. * Translate application in Russian
  53. * Use disclosure widget <details> for advanced feed options
  54. * Use unique translation IDs instead of English text as key
  55. * Add more unit tests for template functions
  56. * Fix invalid output when truncating Unicode text in templates
  57. * Add the possibility to override default user agent for each feed
  58. * Split Makefile linux targets by architecture
  59. * Add compiler, Arch, and OS to info command
  60. * Avoid line break between emoji and (un)read/(un)star links
  61. * Build Docker image for multiple architectures (amd64, arm32v6, arm64v8)
  62. Version 2.0.11 (Sep 11, 2018)
  63. -----------------------------
  64. * Set cookie flag `SameSite` to Lax mode
  65. * Use predefined ciphers when TLS is configured
  66. * Avoid displaying an error when shutting down the daemon
  67. * Add "Mark this page as read" to the bottom
  68. * Store client IP address in request context
  69. * Refactor HTTP context handling
  70. * Make user creation via environment variables idempotent
  71. * Use regular text version of ✔︎ instead of emoji version on iOS
  72. * Add toggle status button to entry page
  73. * Migrate to Go Modules and Go 1.11
  74. * Show count of feeds with permanent errors in header menu
  75. * Display remote client IP in logs when having a login failure (Fail2Ban)
  76. * Add remove button in feed edit page
  77. * Split integration tests into multiple files
  78. * Update scraper rule for heise.de
  79. * Expose real error messages for internal server API errors
  80. * Move Golang API client in project source tree (the separate project is deprecated)
  81. * Use canonical imports
  82. * Add Procfile
  83. * Create database package (refactoring)
  84. * Update user agent with new website URL
  85. * Update German translation
  86. Version 2.0.10 (July 22, 2018)
  87. ------------------------------
  88. * Avoid browser caching issues when assets changes
  89. * Add Gzip/Deflate compression for HTML, JSON, CSS and Javascript responses
  90. * Improve themes handling
  91. * Store user theme in session
  92. * Logged out users will keep their theme
  93. * Add theme background color to web manifest and meta tag
  94. * Update application icon with different sizes
  95. * Add support for published tag in Atom feeds
  96. * Add tooltip to feed domain in feeds list (title attribute)
  97. * Prevent vertical scrolling on swipe
  98. * Show feed title instead of domain in items list
  99. * Add service worker to cache feed icons
  100. * Make image proxy configurable via IMAGE_PROXY environment variable:
  101. * none = No proxy
  102. * http-only = Proxy only non-HTTPS images (default)
  103. * all = Proxy everything
  104. * Add alt attribute for feed icons
  105. * Update CI jshint check
  106. * Add embedly.com to iframe whitelist
  107. * Use passive event listeners for touch events
  108. * Add `add_dynamic_image` rewriter for JavaScript-loaded images
  109. * Change feed password field type to text to avoid auto-completion with Firefox
  110. * Using autocomplete="off" or autocomplete="new-password" doesn't change anything
  111. * Changing the input ID doesn't change anything
  112. * Using a different input name doesn't change anything
  113. * Only Chrome supports autocomplete="new-password"
  114. * Add base URL validation
  115. * Update default stylesheet name in HTML layout
  116. * Pre-generate themes stylesheets at build time
  117. * Update vendor dependencies
  118. * Refactor assets bundler and split Javascript files
  119. * Run sanitizer after all processing and entry content rewrite
  120. * Remove timestamp from generated files
  121. * Add support for protocol relative YouTube URLs
  122. * Add Postgres full-text search for entries
  123. * Add search form in user interface
  124. * Add search parameter to the API
  125. * Improve Dutch locales
  126. * Sandbox iframes when sanitizing
  127. * Keep consistent text size on mobile orientation change
  128. * Change permission of /etc/miniflux.conf to 600 instead of 644 in RPM package
  129. * Add tzdata package to Docker image
  130. * Update Docker image to Alpine Linux 3.8
  131. Version 2.0.9 (July 1, 2018)
  132. ----------------------------
  133. * Avoid Chrome to autocomplete no-login password fields
  134. * Add cli flag to reset all feed errors
  135. * Do not ignore errored feeds when a user refresh feeds manually
  136. * Add specific 404 and 401 error messages
  137. * Strip binaries to reduce size
  138. * Make sure we always get the pagination in unread mode
  139. * Fix incorrect data value when toggling bookmark flag on entry page
  140. * Set opener to null when opening original URL with JavaScript
  141. * Remove unnecessary style
  142. * Refactor AddImageTitle rewriter
  143. * Only processes images with `src` **and** `title` attributes (others are ignored)
  144. * Processes **all** images in the document (not just the first one)
  145. * Wraps the image and its title attribute in a `figure` tag with the title attribute's contents in a `figcaption` tag
  146. * Improve sanitizer to remove `style`, `noscript` and `script` tag contents
  147. * Improve feed and user API updates with optional values
  148. * Add new fields for feed username/password
  149. * Improve memory usage debug log
  150. * Disable keep-alive for HTTP client
  151. * Close HTTP response body even for failed requests
  152. * Add Sans-Serif theme
  153. * Rewrite iframe Youtube URLs to https://www.youtube-nocookie.com
  154. * Add more filters for API call `/entries`:
  155. * before (unix timestamp)
  156. * before_entry_id (int64)
  157. * after (unix timestamp)
  158. * after_entry_id (int64)
  159. * starred (boolean)
  160. * Rewrite individual entry pagination SQL queries
  161. * Simplify entry query builder
  162. * Prevent items from sticking on touchend
  163. * Extended horizontal overflow to feed and category views
  164. * Translate missing strings
  165. * Update German translation
  166. Version 2.0.8 (June 4, 2018)
  167. ----------------------------
  168. * Add Pocket integration
  169. * Rewrite RealIP() to avoid returning an empty string
  170. * Convert IP field from text to inet type
  171. * Improve error handling in integration clients
  172. * Make unread counter clickable
  173. * Archive read entries automatically after 60 days
  174. * Hide horizontal overflow when swiping articles on touch devices
  175. * Add API endpoint to get logged user
  176. * Fever API: Return response with an empty list if there is no item
  177. * Handle feeds with dates formatted as Unix timestamp
  178. Version 2.0.7 (May 7, 2018)
  179. ---------------------------
  180. * Add API endpoint to import OPML file
  181. * Make sure to close request body in HTTP client
  182. * Do not show save link if no integration is configured
  183. * Make sure integrations are configured before to make any HTTP requests
  184. * Avoid people to unlink their OAuth2 account without having a local password
  185. * Do not use shared variable to translate templates (avoid concurrency issue)
  186. * Use vanilla HTTP handlers (refactoring)
  187. * Move HTTP client to its own package (refactoring)
  188. * Add middleware to read X-Forwarded-Proto header (refactoring)
  189. * Use Gorilla middleware (refactoring)
  190. * Scrape parent element for iframe
  191. * Add SoundCloud and Bandcamp iframe sources
  192. Version 2.0.6 (Apr 20, 2018)
  193. ----------------------------
  194. * Improve graceful shutdown
  195. * Simplify Heroku deployment
  196. * Display memory usage and some metrics in logs
  197. * Increase read/write timeout for HTTP server
  198. * Add support for Dublin Core date in RDF feeds
  199. * Do not return an error if the user session is not found
  200. * Handle some non-english date formats
  201. * Add missing French translation
  202. * Rename RSS parser getters
  203. * Get the right comments URL when having multiple namespaces
  204. * Ignore caching headers for feeds that send "Expires: 0"
  205. * Update translations
  206. Version 2.0.5 (Apr 7, 2018)
  207. ---------------------------
  208. * Avoid unread counter to be off by one when reading an entry
  209. * Add Comments URL to entries
  210. * Add FreeBSD build target
  211. * Handle RSS author elements with inner HTML
  212. * Fix typo in translations
  213. * Add Dutch translation
  214. * Convert enclosure size field to bigint
  215. * Switch CI to Go v1.10
  216. * Fix broken OPML import when compiling with Go 1.10
  217. Version 2.0.4 (Mar 5, 2018)
  218. ---------------------------
  219. * Add Simplified Chinese translation
  220. * Add Nunux Keeper integration
  221. * Filter the list of timezones
  222. * Add timezone to entries dates for REST and Fever API
  223. * Show last login and session creation date in current timezone
  224. * Fix typo in edit user template
  225. * Improve parser error messages
  226. * Remove parentheses around feed error messages
  227. * Support localized feed errors generated by background workers
  228. * Print info message if DATABASE_URL is not set
  229. Version 2.0.3 (Feb 19, 2018)
  230. ----------------------------
  231. * Add Polish translation
  232. * Change color of <q> tags for black theme
  233. * Add database indexes (don't forget to run database migrations)
  234. * Handle Atom feeds with HTML title
  235. * Strip invalid XML characters to avoid parsing errors
  236. * Improve error handling for HTTP client
  237. Version 2.0.2 (Feb 5, 2018)
  238. ---------------------------
  239. * Add support for Let's Encrypt http-01 challenge
  240. * Move template functions outside engine (refactoring)
  241. * Take timezone into consideration when calculating relative time
  242. * Add support for HTTP Strict Transport Security header
  243. * Add support for base URLs with subfolders
  244. * Add missing about menu in settings
  245. * Show API URL endpoints in user interface
  246. * Do not update entry date while refreshing a feed
  247. * Add flag to toggle debug logging
  248. * Improve unread counter updates
  249. Version 2.0.1 (Jan 22, 2018)
  250. ----------------------------
  251. * Change user agent (People are blocking the crawler with mod_security)
  252. * Move environment variables to config package (refactoring)
  253. * Add build targets for all ARM architectures
  254. * Do not crawl existing entry URLs
  255. * Show translated login page in user language when logged out
  256. * Handle more encoding edge cases:
  257. - Feeds with charset specified only in Content-Type header and not in XML document
  258. - Feeds with charset specified in both places
  259. - Feeds with charset specified only in XML document and not in HTTP header
  260. * Add German translation
  261. * Add mark as read/unread link on list items
  262. * Add API endpoint for OPML export
  263. Version 2.0.0 (Jan 11, 2018)
  264. ----------------------------
  265. * Initial release of Miniflux 2.