]> git.immae.eu Git - github/shaarli/Shaarli.git/blob - CHANGELOG.md
Merge pull request #1110 from virtualtam/doc/v0.9.6
[github/shaarli/Shaarli.git] / CHANGELOG.md
1 # Change Log
2 All notable changes to this project will be documented in this file.
3
4 The format is based on [Keep a Changelog](http://keepachangelog.com/)
5 and this project adheres to [Semantic Versioning](http://semver.org/).
6
7 ## [v0.10.0](https://github.com/shaarli/Shaarli/releases/tag/v0.10.0) - UNPUBLISHED
8
9
10 ## [v0.9.6](https://github.com/shaarli/Shaarli/releases/tag/v0.9.6) - 2018-03-25
11 ## Changed
12 - htaccess: prevent accessing resources not managed by SCM
13 - htaccess: always forward the 'Authorization' HTTP header
14
15
16 ## [v0.9.5](https://github.com/shaarli/Shaarli/releases/tag/v0.9.5) - 2018-02-02
17 ### Fixed
18 - Fix a warning happening when `php-intl` is not installed on the system
19 - Fix warnings happening when updating from legacy SebSauvage version
20
21 ## [v0.9.4](https://github.com/shaarli/Shaarli/releases/tag/v0.9.4) - 2018-01-30
22 ### Added
23 - Enable translations: Shaarli is now also available in French. Other language translations are welcome!
24 - Add EditorConfig configuration
25 - Add favicons for mobile devices
26 - Add Alpine Linux arm32v7 Dockerfiles (master, latest)
27
28 ### Changed
29 - Do not write bookmark edition history during file imports (performance)
30 - Migrate Docker images (master, latest) to Alpine Linux
31 - Improve unitary tests and code coverage
32 - Improve thumbnail display
33 - Improve theme ergonomics
34 - Improve messages if there is no plugin or parameter available in the admin page
35 - Increase buffer size for cURL download
36 - Force HTTPS if the original port is 443 behind a reverse proxy (workaround)
37 - Improve page title retrieval performances
38
39 ### Removed
40 - Remove redirector setting from Configure page
41
42 ### Fixed
43 - Fix broken links in the documentation
44 - Enable access to `data/user.css` (Apache 2.2 & 2.4)
45 - Don't URL encode description links if parameter `redirector.encode_url` is set to false
46 - Fix an issue preventing the Save button to appear for plugin parameters
47
48
49 ## [v0.9.3](https://github.com/shaarli/Shaarli/releases/tag/v0.9.3) - 2018-01-04
50 **XSS vulnerability fixed. Please update.**
51
52 ## Security
53 - Fix an XSS (cross-site-scripting) vulnerability in `index.php` -
54 [CVE-2018-5249](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-5249)
55
56
57 ## [v0.9.2](https://github.com/shaarli/Shaarli/releases/tag/v0.9.2) - 2017-10-07
58
59 **Major security issue fixed. Please update.**
60
61 ### Added
62 - Tag search now supports wildcards `*`
63 - New setting `privacy.force_login` which can be used with `privacy.hide_public_links` to redirect anonymous users to the login page.
64 - New setting `general.default_note_title` used to override default `Note:` title prefix for notes.
65 - Add a version hash for asset loading to prevent browser's cache issue
66
67 ### Changed
68 - The "Remember me" checkbox is unchecked by default
69 - The default value of the "Remember me" checkbox can be configured under `data/config.json.php`
70
71 ### Removed
72 - Remove obsolete PHP magic quote support
73
74 ### Fixed
75 - Generates a permalink URL if the URL is set to blank
76 - Replace links to the old GitHub wiki with ReadTheDocs URIs
77 - Use single quotes in the note bookmarklet
78 - Daily page if there is no link
79 - Bulk link deletion with a single link
80 - HTTPS detection behind a reverse proxy
81 - Travis tests environment and localization
82 - Improve template paths robustness (trailing slash)
83 - Robustness: safer gzinflate/zlib usage
84 - Description links parsing with parenthesis (without Markdown)
85 - Templates:
86 - Sort the tag cloud alphabetically
87 - Firefox social title
88 - Improved visited link color
89 - Fix jumpy textarea with long content in post edit
90
91 ### Security
92
93 - Fixed reflected XSS vulnerability introduced in v0.9.1, discovered by @chb9 ([CVE-2017-15215](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15215)).
94
95
96 ## [v0.9.1](https://github.com/shaarli/Shaarli/releases/tag/v0.9.1) - 2017-08-23
97
98 The documentation has been migrated to ReadTheDocs:
99 - https://shaarli.readthedocs.io/
100 - edits are submitted as pull requests
101
102 ### Added
103 - Allow bulk link deletion
104 - Display subtags in the tag cloud
105 - Add an endpoint to refresh the token
106 - Add a token on every page
107 - Add a tag list view for management
108 - Add Note bookmarklet
109 - Add creation date when editing a link
110
111 ### Changed
112 - Documentation:
113 - Generate static HTML documentation with [mkdocs](http://www.mkdocs.org/)
114 - Host documentation on [ReadTheDocs](http://www.mkdocs.org/)
115 - Update documentation structure
116 - Update Makefile targets to:
117 - Build the docs locally
118 - Include the generated docs in the release archives
119 - Theme:
120 - Use the new theme as the default
121 - Rename the tag cloud template to `tag.cloud.html`
122 - Display visited links in grey
123 - Use only one search form in `linklist.html`
124 - Hide the "search links with these tags" option when an empty `searchtags` is passed to `tag.list.html`
125 - Improve HTTP header handling when hosting Shaarli with Docker behind a reverse proxy
126 - Searching for tags with an empty value returns untagged links only
127 - Set Travis environment to `precise` until the new `trusty` environment is ready
128
129 ### Removed
130 - Remove dead Pubsubhubbub code
131 - Disable the GitHub wiki (see changed/documentation)
132 - Remove Docker `dev` image and resources
133 - Theme:
134 - Remove the bottom "Sort by" menu in `tag.list.html`
135
136 ### Fixed
137 - Fix file existence check for `user.css`
138 - Limit selection to 2k characters when using the bookmarklet
139 - Fix JS error `uncaught type error`
140 - Fix Firefox Social button
141 - Use pinned PHP dependencies when generating release archives
142 - Make sure that the tag exists before altering/removing it
143
144 ### Security
145 - Add a whitelist for protocols for URLs
146
147
148 ## [v0.9.0](https://github.com/shaarli/Shaarli/releases/tag/v0.9.0) - 2017-05-07
149
150 This release introduces the REST API, and requires updating HTTP server
151 configuration to enable URL rewriting, see:
152 - https://shaarli.github.io/api-documentation/
153 - https://shaarli.readthedocs.io/en/master/Server-configuration/
154
155 **WARNING**: Shaarli now requires PHP 5.5+.
156
157 ### Added
158 - REST API v1
159 - [Slim](https://www.slimframework.com/) framework
160 - [JSON Web Token](https://jwt.io/introduction/) (JWT) authentication
161 - versioned API endpoints:
162 - `/api/v1/info`: get general information on the Shaarli instance
163 - `/api/v1/links`: get a list of shaared links
164 - `/api/v1/history`: get a list of latest actions
165 Theming:
166 - Introduce a new theme
167 - Allow selecting themes/templates from the configuration page
168 - New/Edit link form can be submitted using CTRL+Enter in the textarea
169 - Shaarli version is displayed in the footer when logged in
170 - Add plugin placeholders to Atom/RSS feed templates
171 - Add OpenSearch to feed templates
172 - Add `campaign_` to the URL cleanup pattern list
173 - Add an AUTHORS file and Makefile target to list authors from Git commit data
174 - Link imports are now logged in `data/` folder, and can be debug using `dev.debug=true` setting.
175 - `composer.lock` is now included in git file to allow proper `composer install`
176 - History mechanism which logs link addition/modification/deletion
177
178 ### Changed
179 - Docker: enable nginx URL rewriting for the REST API
180 - Theming:
181 - Move `user.css` to the `data` folder
182 - Move default template files to a subfolder (`default`)
183 - Rename the legacy theme to `vintage`
184 - Private only filter is now displayed as a search parameter
185 - Autocomplete: pre-select the first element
186 - Display daily date in the page title (browser title)
187 - Timezone lists are now passed as an array instead of raw HTML
188 - Move PubSubHub to a dedicated plugin
189 - Coding style:
190 - explicit method visibility
191 - safe boolean comparisons
192 - remove unused variables
193 - The updater now keeps custom theme preferences
194 - Simplify the COPYING information
195 - Improved client locale detection
196 - Improved date time display depending on the locale
197 - Partial namespace support for Shaarli classes
198 - Shaarli version is now only present in `shaarli_version.php`
199 - Human readable maximum file size upload
200
201
202 ### Removed
203 - PHP < 5.5 compatibility
204 - ReadItYourself plugin
205
206 ### Fixed
207 - Ignore generated release tarballs
208 - Hide default port when behind a reverse proxy
209 - Fix a typo in the Markdown plugin description
210 - Fix the presence of empty tags for private tags and in search results
211 - Fix a fatal error during the install
212 - Fix permalink image alignment in daily page
213 - Fix the delete button in `editlink`
214 - Fix redirection after link deletion
215 - Do not access LinkDB links by ID before the Updater applies migrations
216 - Remove extra spaces in the bookmarklet's name
217 - Piwik plugin: Piwik URL protocol can now be set (http or https)
218 - All inline JS has been moved to dedicated JS files
219 - Keep tags after login redirection
220
221 ### Security
222 - Markdown plugin: escape HTML entities by default
223
224
225 ## [v0.8.5](https://github.com/shaarli/Shaarli/releases/tag/v0.8.5) - 2018-01-04
226 **XSS vulnerability fixed. Please update.**
227
228 ## Security
229 - Fix an XSS (cross-site-scripting) vulnerability in `index.php` -
230 [CVE-2018-5249](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-5249)
231
232 ## [v0.8.4](https://github.com/shaarli/Shaarli/releases/tag/v0.8.4) - 2017-03-04
233 ### Security
234 - Markdown plugin: escape HTML entities by default
235
236 ## [v0.8.3](https://github.com/shaarli/Shaarli/releases/tag/v0.8.3) - 2017-01-20
237 ### Fixed
238 - PHP 7.1 compatibility: add ConfigManager parameter to anti-bruteforce function call in login template.
239
240 ## [v0.8.2](https://github.com/shaarli/Shaarli/releases/tag/v0.8.2) - 2016-12-15
241 ### Fixed
242
243 - Editing a link created before the new ID system would change its permalink.
244
245 ## [v0.8.1](https://github.com/shaarli/Shaarli/releases/tag/v0.8.1) - 2016-12-12
246
247 > Note: this version will create an automatic backup of your database if anything goes wrong.
248
249 ### Added
250 - Add CHANGELOG.md to track the whole project's history
251 - Enable Composer cache for Travis builds
252 - Save the last edition date for shaares and use it in Atom/RSS feeds
253 - Plugins:
254 - Add an [Isso](https://posativ.org/isso/) plugin to enable user comments on permalinks
255 - Allow defining init functions, e.g. for performing checks and error processing
256 - Add a Piwik plugin for analytics.
257 - Markdown: add warning notice regarding HTML rendering
258 - Meta tag to *not* send the referrer to external resources.
259
260 ### Changed
261 - Link ID complete refactoring:
262 - Links now have a numeric ID instead of dates
263 - Short URLs are now created once and can't change over time (previous URL are kept)
264 - Templates:
265 - Changed placeholder behaviour for: `buttons_toolbar`, `fields_toolbar` and `action_plugin`
266 - Cleanup `{loop}` declarations in templates
267 - Tools: hide Firefox Social button when not in HTTPS
268 - Firefox Social: show Shaarli's title when shaaring using Firefox Social
269 - Release archives now have the same structure as GitHub-generated archives:
270 - archives contain a `Shaarli` directory, itself containing sources + dependencies
271 - the tarball is now gzipped
272 - Plugins:
273 - Markdown: Parsedown library is now imported through Composer
274 - Minor code cleanup: PHPDoc, spelling, unused variables, etc.
275 - Docker: explicitly set the maximum file upload size to 10 MiB
276
277 ### Fixed
278 - Fix the server `<self>` value in Atom/RSS feeds
279 - Plugins:
280 - Tools: only display parameter description when it exists
281 - archive.org: do not propose archival of private notes
282 - Markdown:
283 - render links properly in code blocks
284 - bug regarding the `nomarkdown` tag
285 - W3C compliance
286 - Use absolute URL for hashtags in RSS and ATOM feeds
287 - Docker: specify the location of the favicon
288 - ATOM feed: remove new line between content tag and data
289
290 ### Security
291 - Allow whitelisting trusted IPs, else continue banning clients upon login failure
292
293
294 ## [v0.8.0](https://github.com/shaarli/Shaarli/releases/tag/v0.8.0) - 2016-10-12
295 Shaarli now uses [Composer](https://getcomposer.org/) to handle its dependencies.
296 Please use our release archives, or follow the
297 [installation documentation](https://github.com/shaarli/Shaarli/wiki/Download-and-Installation).
298
299 ### Added
300 - Composer is required to resolve Shaarli's PHP dependencies
301 - Shaarli now supports `#hashtags`
302 - Firefox social share now uses selected text as a description
303 - Plugin parameters can have a description in each plugin's `.meta` file
304
305 ### Changed
306 - Configuration is now stored as a JSON file
307 - Previous configuration format will be automatically updated (PHP -> JSON)
308 - Shaarli now defaults to cURL to fetch shaare titles
309 - URL cleanup: remove `PHPSESSID` parameter
310 - `nomarkdown` tag is no longer private, and now affects visitors
311 - Cleanup template indentation
312 - Rewrite bookmark import using a generic Netscape parser
313
314 ### Removed
315 - Shaarli no longer references Delicious in its description
316
317 ### Deprecated
318 - Shaarli configuration is not held as PHP globals anymore
319
320 ### Fixed
321 - Ignore case for tags in autocompletion and cloud tag
322 - Avoid generating empty tags
323 - Fix a Dockerfile syntax error
324
325 ### Security
326 - Fixed a bug preventing to change password
327 - XSRF token now generated each time a page is rendered
328
329
330 ## [v0.7.1](https://github.com/shaarli/Shaarli/releases/tag/v0.7.1) - 2017-03-08
331 ### Security
332 - Markdown plugin: escape HTML entities by default
333
334 ## [v0.7.0](https://github.com/shaarli/Shaarli/releases/tag/v0.7.0) - 2016-05-14
335 ### Added
336 - Adds an option to encode redirector URL parameter
337 - Atom/RSS feeds now support Markdown formatting, and plugins in general
338 - Markdown: use the tag `.nomarkdown` to avoid markdown processing
339 - Prefill the login field when the authentication has failed
340 - Show a private links counter
341
342 ### Changed
343 - Allow to use the bookmarklet in Firefox reader view (URL clean up)
344 - Improve tagcloud font size
345 - Improve title retrieving
346 - Markdown: inline code background color
347 - Refactor Netscape bookmark export
348 - Refactor Atom/RSS feed generation
349
350 ### Removed
351 - Remove delicious from Shaarli description
352
353 ### Fixed
354 - Fix bad login redirections causing a 404 in a few cases
355 - Fix tagcloud font-size with French locale
356 - Don't display empty tags in tag search
357 - Fix Awesomeplete conflicts with jQuery
358 - Fix UTC timezone selection
359 - Fix a bug preventing to import notes in browsers from bookmarks export
360 - Don't redirect to ?post if ?addlink is reached while logged out
361
362
363 ## [v0.6.5](https://github.com/shaarli/Shaarli/releases/tag/v0.6.5) - 2016-03-02
364 ### Fixed
365 - Fixes a regression generating an unnecessary warning (language in HTTP request)
366 - Fixes a bug where going through multiple reverse proxy could generate malformed URL
367 - Markdown: Fixes a bug where empty description blocks were displayed
368
369
370 ## [v0.6.4](https://github.com/shaarli/Shaarli/releases/tag/v0.6.4) - 2016-02-28
371 ### Added
372 - Add an updater class to automate user data upgrades
373 - Plugin admin page: adds a label for checkboxes and improve name display
374 - Plugin Wallabag: API version can be specified in plugin admin page
375
376 ### Changed
377 - Better tag cloud sorting, including special chars (`a > E > é > z`)
378 - Autolocale now sets all locale categories, not just time
379 - Use PHP's DateTime object instead of custom functions
380 - Plugin hooks: process includes before header/footer
381 - Markdown plugin: better styles for `<code>` and `<pre>` tags
382 - Improve searching:
383 - search terms are now considered separated and won't only return exact results anymore
384 - exact search can be done with quotes `"this exact sentence"`
385 - search supports excluded terms starting a dash `-exclude`
386 - implement crossed search: terms + tags
387 - all of them combined across all shaare fields
388 - New tag behaviour:
389 - tags starting with a dash will be renamed without it
390 - tags starting with a dot `.` will be hidden unless the user is logged in
391
392 ### Fixed
393 - Fix Markdown plugin escape issues (code/quote blocks, etc.)
394 - Link description aren't trimmed anymore to allow markdown format at the beginning of a shaare
395 - Fixes plugin admin redirection page on error
396
397 ### Security
398 - Fix a bug where non initialized variables were causing a warning
399 - Fix a bug where saving a link after edit could cause a 404 error
400
401
402 ## [v0.6.3](https://github.com/shaarli/Shaarli/releases/tag/v0.6.3) - 2016-01-31
403 ### Added
404 - Plugins administration page
405 - Markdown plugin added for shaares description
406 - Docker: Dockerfile is now in the main git repository and improved
407 - Add a `.gitattributes` to ease repository management
408 - Travis: include file permission checks
409
410 ### Changed
411 - Auto retrieve of title know works with websites (HTTPS, follow redirections, etc.)
412 - 404 page is now handled in a template
413 - Date in log files updated to work with fail2ban
414 - Wallabag: support of Wallabag v2 and minor fixes
415 - Link search refactoring
416 - Logging function refactoring
417
418 ### Fixed
419 - Fix a bug where renaming a tag was causing a 404
420 - Fix a bug allowing to search blank terms
421 - Fix a bug preventing to remove a tag with special chars when searching
422
423
424 ## [v0.6.2](https://github.com/shaarli/Shaarli/releases/tag/v0.6.2) - 2015-12-23
425 ### Changed
426 - Plugins: new footer hook
427 - Plugins: improve QR code
428 - Cleanup templates
429
430 ### Fixed
431 - Plugins: use the actual link URL to generate QR codes
432 - Templates: missing/erroneous page titles
433 - Templates: missing variables resulting in PHP errors
434
435 ### Security
436 - Fix invalid file permissions (remove executable bit)
437
438
439 ## [v0.6.1](https://github.com/shaarli/Shaarli/releases/tag/v0.6.1) - 2015-12-01
440 ### Added
441 - Add OpenSearch support
442 - Add a Doxygen makefile target
443 - Tools: add fine-grained file/directory permission checks (installation)
444
445 ### Changed
446 - Tools: check the 'stable' branch for new versions (updates)
447 - Cleanup: introduce an `ApplicationUtils` class
448
449 ### Removed
450 - Cleanup: remove `json_encode()` function (built-in since PHP 5.2)
451
452 ### Fixed
453 - Auto-complete more than one tag
454 - Bookmarklet: support titles containing quotes
455 - URL encode links when setting a redirector
456
457
458 ## [v0.6.0](https://github.com/shaarli/Shaarli/releases/tag/v0.6.0) - 2015-11-18
459 ### Added
460 - Introduce a plugin system
461 - Add a demo_plugin
462 - Add plugins:
463 - addlink_toolbar
464 - archiveorg
465 - playvideos
466 - qrcode
467 - readityourself
468 - wallabag
469
470 ### Changed
471 - Coding style
472
473 ### Fixed
474 - Adding a new link now returns the correct anchor in the URL
475 - Set default file permissions
476
477
478 ## [v0.5.4](https://github.com/shaarli/Shaarli/releases/tag/v0.5.4) - 2015-09-15
479 ### Added
480 - HTTPS: support being served behing an SSL-enabled proxy
481
482 ### Changed
483 - HTTP/Server utilities: refactor & add test coverage
484 - Project & documentation:
485 - improve/rewrite `README.md`
486 - update contributor list
487 - update `index.php` header
488
489 ### Fixed
490 - PHP session IDs: handle hash algorithms and bits per char representations
491
492
493 ## [v0.5.3](https://github.com/shaarli/Shaarli/releases/tag/v0.5.3) - 2015-09-02
494 ### Fixed
495 - Fix a bug that could prevent user to login
496
497
498 ## [0.5.3](https://github.com/shaarli/Shaarli/releases/tag/0.5.3) - 2015-09-02
499 This release has been YANKED as it points to a tag that does not follow our naming convention. Please use `v0.5.3` instead
500
501 ### Fixed
502 - Allow uppercase letters in PHP sessionid format
503
504
505 ## [v0.5.2](https://github.com/shaarli/Shaarli/releases/tag/v0.5.2) - 2015-08-31
506 ### Added
507 - Add PHP 7 to Travis platforms
508
509 ### Changed
510 - Also extract HTTPS page metadata (title)
511
512 ### Fixed
513 - Fix regression preventing to load LinkDB info when adding an existing link
514
515 ### Security
516 - Fix Full Path Disclosure upon cookie forgery
517
518
519 ## [v0.5.1](https://github.com/shaarli/Shaarli/releases/tag/v0.5.1) - 2015-08-17
520 ### Added
521 - Add a link to the shaarli/shaarli DockerHub repository
522
523 ### Changed
524 - Update local documentation
525 - Improve timezone detection at installation
526 - Improve feed cache handling
527 - Improve URL cleanup for new links
528
529 ### Fixed
530 - Fix 404 after editing a link while being logged out
531
532
533 ## [v0.5.0](https://github.com/shaarli/Shaarli/releases/tag/v0.5.0) - 2015-07-31
534 ### Added
535 - Add Firefox Social API
536 - Start code refactoring:
537 - add unit test coverage
538 - add Travis integration
539
540 ### Changed
541 - Search/Filter by tag fieds can now be accessed quickly with the `Tab` key
542 - Update documentation
543 - Remove duplicate tags in links
544 - Remove annoying URL patterns
545 - Start code refactoring:
546 - move all settings to `data/config.php`
547 - refactor Config, LinkDB, TimeZone, Utils
548
549 ### Fixed
550 - Fix locale handling
551 - Fix note URLs
552 - Fix page redirections
553 - Fix daily RSS browsing
554 - Fix title display
555 - Restore compatibility with PHP 5.3
556
557 ### Security
558 - Fix links not being hidden when `HIDE_PUBLIC_LINKS` is set
559
560
561 ## [v0.0.45beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.45beta) - 2015-03-16
562 ### Fixed
563 - Fix improperly displayed Unicode character
564 - Fix incorrect font size for "Add link" input field
565
566
567 ## [v0.0.44beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.44beta) - 2015-03-15
568 ### Added
569 - Add a Makefile to run static code checkers
570 - Add local documentation (help link in page footer)
571 - Use awesomplete library for autocompletion
572 - Use bLazy.js library for images lazy loading
573 - New 'Add Note' bookmarklet to immediatly open a note (text post) compose window
574
575 ### Changed
576 - Theme improvements and cleanup (menu, search fields, icons, linklist...)
577 - Allow 'javascript:' links sharing (bookmarklets)
578 - Make update check optional
579 - Redirect to homepage after adding a link via "Add Link" dialog
580 - Remove more annoying URL parameters for shared links
581 - Code cleanup
582
583 ### Removed
584 - Remove jQuery
585
586 ### Security
587 - Don't disclose version to visitors (shaarli-version.txt)
588
589
590 ## [v0.0.43beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.43beta) - 2015-02-20
591 ### Added
592 - Title button link URL is now configurable
593 - RainTPL's TMP and TPL directories path are now configurable
594 - Displayed URLs for each link are now clickable links
595 - Show links timestamps in Daily view
596
597 ### Changed
598 - Automatically prepend "Note:" to title of self-posts (posts not pointing to an URL)
599 - Make ATOM toolbar button optional (`SHOW_ATOM` configuration variable)
600 - Optional archive.org links for each Shaarli link (`ARCHIVE_ORG` option)
601 - Thumbnails: force HTTPS when possible
602 - Improve tag cloud font scaling
603 - Allow pointing RSS items to the permalink instead of the direct URL (`ENABLE_RSS_PERMALINKS` option)
604 - Update JS libraries and add version numbers in filenames
605 - Updates to README and footer
606
607 ### Fixed
608 - Fix problems when running Shaarli behind a reverse proxy (invalid RSS feed URL)
609 - Update check now checks against the community fork version
610 - Include `cache/`, `data/`, `pagecache/` and `tmp/` directories in the repository
611 - Fix duplicate tag search returning no results
612 - Fix unnecessary 404 error on "Add link" when the user is logged out
613 - Fixes to copyright/licensing information and unlicensed media
614 - Fixes for tag cloud invalid links
615 - Coding style fixes/cleanup
616 - Fix redirection after deleteing a link leading to a 404 error
617 - Shaarli's HTML is now W3C-compliant
618 - Search now works with Unicode characters
619
620 ### Security
621 - Do not leak server's PHP version and Shaarli's full path on errors
622 - Prevent Shaarli from sending a lot of duplicate cookies
623
624
625 ## [v0.0.42beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.42beta) - 2014-07-27
626 ### Added
627 - Add QRCode Javascript library
628 - Allow importing bookmarks with the same timestamp (hack)
629 - Allow putting a description in the bookmarklet URL
630 - Add `json_encode()` implementation for PHP<5.2
631 - Highlight search results
632
633 ### Changed
634 - Improve 'Stay signed in' behaviour
635 - Improve `smallHash()`
636 - Refactor QRCode generation
637 - Update Javascript lazyloading
638 - Update CSS
639
640 ### Removed
641 - Remove jQuery from almost all pages
642
643 ### Fixed
644 - Fix overlapping tags
645 - Fix field foxus in the bookmarklet
646 - Fix error message when `data/` is not writable
647 - Fix HTML generation
648
649 ### Security
650 - Fix XSS flaw
651
652
653 ## [v0.0.41beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.41beta) - 2013-03-08
654 ### Added
655 - Add HTTPS to the allowed protocols
656 - Add support for magnet links in link descriptions
657 - Allow creating new links as private by default
658 - Allow disabling jQuery
659 - Check write permissions
660 - Check session support before installation
661
662 ### Changed
663 - Improve token security
664 - RSS feed: allow inverting links/permalinks
665
666 ### Fixed
667 - Fix display issues during installation
668 - Fix popup redirection after login failure
669 - Fix RSS formatting for Thunderbird
670 - Fix thumbnail creation
671 - Fix cache purge
672
673 ### Security
674 - Fix login issue with WebKit browsers
675
676
677 ## [v0.0.40beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.40beta) - 2013-02-26
678 Initial release on GitHub.
679
680
681 ## [v0.0.40beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-08-24
682 ### Added
683 - Flickr thumbnail now also support albums, galleries and users
684 - Add a configuration option to disable session cookie protection
685 Check this if your get disconnected often or your IP address changes often
686
687 ### Removed
688 - Removed the xml comment in cached RSS/ATOM feed
689 (although W3C-compliant, this may cause problems in some feed readers)
690
691 ### Fixed
692 - A bug in the RSS cache would present old items as new in some cases
693 - A small bug (non-initialized variable) in page cache cleaning
694 - Proper "Nothing found" message when search returns no results
695 - No more 404 error when searching with empty input
696 - Flickr thumbnails are back (Flickr has made some changes to their domains)
697
698 ## [v0.0.39beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-08-10
699 ### Added
700 - A cache for RSS feed, ATOM feed and Daily RSS feed, because these URLs
701 are massively hammered. Cache is automatically purged whenever the database
702 is changed. This will reduce server load. I may add cache to other pages later.
703
704 ### Changed
705 - No more global `$LINKSDB` (Yuk)
706 - Background color was removed when hovering a link
707
708 ### Fixed
709 - Small bug corrected in config screen on timezones
710 - Calling a non-existing permalink now returns a crude 404 error instead of 200 (OK)
711 This is done on purpose
712 - The `shaarli` session cookie now has a proper path
713 Thus you can now install several Shaarlis on the same server in different paths,
714 and each will have its session
715 - Now when you delete a link, you go back the same page/search parameters you were on
716 - Restore previously removed `error_get_last()`, to ensure PHP 5.1 compatibility
717 (Yes, now it works on free.fr hosting)
718 - Added `dialog=1` in bookmarklet code for some browsers
719
720
721 ## [v0.0.38beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-02-06
722 ### Added
723 - Automatic creation of the `tmp` directory with proper rights (for RainTPL)
724 - When you click the key to see only private links, it turns yellow
725
726 ### Changed
727 - The "Daily" page now automatically skips empty days.
728
729 ### Fixed
730 - Corrected the tag encoding (there was a bug when selecting a second tag which contains accented characters)
731
732
733 ## [v0.0.37beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-02-01
734 ### Added
735 - Basic CSS for mobiles, which makes Shaarli //much// more usable on mobile devices
736 - Picture wall no more instantly kills your browser. Now it uses
737 [lazy image loading](http://www.appelsiini.net/projects/lazyload);
738 the pictures are loaded only as you scroll the page.
739 This will reduce browser memory usage (especially on mobile devices),
740 as well as server load.
741 If you have javascript disabled, the page will still work as before
742 (all images loaded at once)
743 - RSS feed for the "Daily" page. 1 RSS entry per day, with all links of that day.
744 RSS feed provides the last 7 days (only non-empty days are returned).
745 - In link list, added an icon to see only private links. Click to toggle (only private / all)
746
747
748 ## [v0.0.36beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-01-25
749 ### Added
750 - Shaarli licence in COPYING
751
752 ### Changed
753 - Display adjustments in "Daily" page
754
755 ### Fixed
756 - Improper text color in install form
757 - Error in QRCode url (missing '?')
758
759
760 ## [v0.0.35beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-01-25
761 ### Fixed
762 - Corrected a bug introduced in 0.0.34 which would improperly preprend data to URLs
763
764
765 ## [v0.0.34beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-01-25
766 ### Added
767 - There is now a QR-Code of each permalink to easily open a link on your smartphone
768 - Protocols `file:` and `apt:` are now also converted to clickable links (patch by Francis Chavanon)
769 - Thumbnail support for http://xkcd.com/ (patch by Emilien Klein)
770 - Thumbnail support for http://pix.toile-libre.org/
771 - Well I had _some_ mercy for users with antique browsers (IE) which do not have
772 support for gradients: I added a few `background-color`
773 - First version of the "Shaarli Daily", a page showing all links of a specific day.
774 By default, you see the links of the previous day.
775 There is still work to do on this page (error checking, better navigation (calendar?),
776 RSS feed, CSS for mobile and printing...)
777
778 ### Changed
779 - Upgraded bundled versions of jQuery (1.7.1) and jQuery UI (1.8.17)
780 - Upgraded bundled version of RainTPL (2.7)
781 - Changed HTTPS detection code
782
783 ### Fixed
784 - In link edition, you can now click the word "Private" to check the box
785 - Clicking a tag would not work properly if the tag contained special characters (like +)
786 - Added proper jQuery licence (shame on me)
787
788
789 ## [v0.0.33beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-01-17
790 ### Added
791 - Shaarli packaged to ease Linux distributions integration
792 As a simple user, you do not need to cope with these versions
793 Future releases of Shaarli will also be customized and published in these directories
794 Differences with the standard Shaarli version:
795 - deb:
796 - .tar.gz instead of .zip
797 - COPYING licence file added
798 - jQuery/jQuery-UI libraries removed to cope with Debian rules
799 This version links to the libs hosted at http://code.jquery.com
800 - rpm:
801 - sources located in a subdirectory with the same name as the zip file
802 - COPYING licence file added
803 - WARNING: When downloading the .tar.gz, always use wget (and not your browser),
804 otherwise the .tar.gz will be corrupted
805
806 ### Fixed
807 - ATOM feed validates again
808
809 ### Security
810 - XSS vulnerability patched (thanks to Stanislas D.!)
811
812
813 ## [v0.0.32beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-12-16
814 ### Added
815 - Better check on URL parameters (patch by gege2061)
816 - Add `max-height` and `overflow:auto` attributes so that content can be scrolled if too large
817
818 ### Changed
819 - HTML generation moved to RainTPL templates (in the `tpl/` directory)
820 - Better detection of HTTPS (patch by gege2061)
821 - In RSS/ATOM feeds, the GUID is now the permalink instead of the final URL (patch by gege2061)
822 - Jerrywham CSS patch included
823 - Multiple spaces are now respected in description.
824 Thus you can use Shaarli as a personal pastebin (for posting source code, for example).
825
826 ### Removed
827 - Page time generation was removed
828
829 ### Fixed
830 - Tab order changed in login screen
831 - Permalinks now work even if additional parameters have been added
832 (e.g. `/?E8Yj2Q&utm_source=blablabla...`)
833 - user.css is included only if the file is present
834 (This prevents a useless CSS include which makes a harmless but useless 404 error.)
835
836
837 ## [v0.0.31beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-11-29
838 ### Added
839 - Support for TED Talks (ted.com/talks) thumbnails (patch by Emilien K.)
840 - partial [patch](http://www.idleman.fr/blog/?p=508) by Idleman: Better design consistency, icon on private links. In-page popup was not included because it causes problem on some websites
841 - Support for bookmark files without ADD_DATE attributes
842 - Logo is clickable
843 - `user.css` can be added to overload Shaarli base CSS.(patch by Jerrywham).
844 Just put `user.css` in the same directory as shaarli.css.
845 Example: `<code css>#pageheader { background: blue; }</code>`
846 Please note that Shaarli CSS are not stable and may completely change on each version
847
848 ### Changed
849 - Edit and Delete buttons in link list were replaced with icons. (patch by Jerrywham)
850
851 ### Fixed
852 - Better error handling in thumbnail generation (patch by Emilien K.)
853 - The top menu is no longer displayed in bookmarklet popup
854 - Bookmark which have the exact same date/time are now correctly imported.
855 Most remaining import problems should be solved now
856 - Comment in Shaarli export moved to beginning of file to prevent clash with last link description
857
858
859 ## [v0.0.30beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-11-18
860 ### Added
861 - Add a small `delete` button in link list (after the `edit` button)
862
863 ### Fixed
864 - Moved the call to PubSubHub
865
866
867 ## [v0.0.29beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-11-18
868 ### Fixed
869 - Corrected a bug introduced in v0.0.28beta
870 (there was an error if you use the bookmarklet and you're not logged in)
871
872
873 ## [v0.0.28beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-11-17
874 ### Added
875 - Thumbnail support for youtu.be URLs (YouTube short url service)
876 - PubSubHub protocol support (from http://aldarone.fr/les-flux-rss-shaarli-et-pubsubhubbub/).
877 Warning: This was not tested. You need to set your hub url in
878 `$GLOBALS['config']['PUBSUBHUB_URL']` and put the official client (`publisher.php`)
879 in the same directory as Shaarli's `index.php`
880 - RSS and ATOM feeds now also contain tags (in `category` tags, as per their
881 respective specifications)
882
883 ### Changed
884 - New Shaarli theme and logo by Idle (http://www.idleman.fr/blog/?p=469)
885 - In picture wall, pictures point to Shaarli permalink instead of final URL.
886 This way, users can read the description.
887 - In RSS/ATOM feeds, guid and link URL of permalinks are now proper absolute URLs
888 - In RSS/ATOM feeds, URLs are now clickable
889 - Rename `http_parse_headers()` to `http_parse_headers_shaarli()` to prevent
890 name collision with some PHP extensions
891
892 ### Fixed
893 - Thumbnails removed for imgur.com/a/ URLs (Thumbnails are not available for albums on imgur)
894 - Shaarli now correctly only tries to get thumbnails for vimeo video URLs
895 - Fix a bug in imgur.com URLs handling that would cause some thumbnails not to appear
896 - The search engine would not return a result if the word to search was the first in description
897 - Extracted title is now correct if the page has two `title` html tags
898
899
900 ## [v0.0.27beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-10-18
901 ### Added
902 - Add a picture wall, which can be filtered too: it will use the same filters
903 (tags,text search) as current page when clicked.
904
905
906 ## [v0.0.26beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-10-17
907 ### Changed
908 - Made permalink more visible (smallHash)
909
910 ### Fixed
911 - Removed extras space in description when URLs are converted to clickable links
912 - Thumbnail for subreddit imgur urls (/r/...) were corrected (thanks to Accent Grave)
913
914
915 ## [v0.0.25beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-10-13
916 ### Added
917 - Better CSS for printing (thanks to jerrywham suggestion)
918 - Allow using a redirector or anonymizing proxy for links
919 (such as `http://anonym.to/?` to mask you `HTTP_REFERER`).
920 Just go to `Tools > Configure > Redirector`
921 (thanks to Accent Grave for the suggestion).
922 - The `ENABLE_LOCALCACHE` option can be set to `false` for those who have
923 a limited quota on their host.
924 This will disable the local thumbnail cache.
925 Services which require the use of the cache will have no thumbnails
926 (vimeo, flickr, direct link to image).
927 Other services will still have a thumbnail (youtube,imgur.com,dailymotion,imageshack.us)
928
929 ### Changed
930 - Now thumbnails generated by Shaarli are croped to a height of 120 pixels
931 - YouTube thumbnails now use `default.jpg` instead of `2.jpg` (This is usually more pertinent)
932 - Configuration options (such as `HIDE_TIMESTAMPS`, `ENABLE_THUMBNAILS`, etc.)
933 can now be put in a an external file so that you do not have to tweak them again
934 when you upgrade Shaarli.
935 Just add the file `data/options.php`.
936 - If a single link is displayed, the page title contains the title of the link
937 - Shaarli page title is clickable (and has the same link as "Home")
938 - A few CSS tweaks (thanks to maethor for suggestion)
939
940 ### Fixed
941 - Shaarli now supports newlines in titles (thanks to dixy)
942 - The link to the RSS feed in page header was not correct
943
944
945 ## [v0.0.24beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
946 ### Added
947 - Allow posting an entry without a link. (You can use Shaarli as a kind of "personal twitter")
948 - Each Shaarli entry now has a short link (just click on the date of a link).
949 Now you can send a link that points to a single entry in your Shaarli
950 - In descriptions, URLs are now clickable
951 - Thumbnails will be generated for all link pointing to .jpg/png/gif
952 (as long as the images are less than 4 Mb and take less than 30 seconds to download)
953
954 ### Fixed
955 - Now thumbnails also work for imgur gallery links (/gallery/...)
956 (Thanks to Accent Grave for the correction)
957 - Removed useless debugging information in log
958 - The filter in RSS/ATOM feed now works again properly (it was broken in 0.0.17beta)
959
960
961 ## [v0.0.23beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
962 ### Added
963 - Added thumbnail support for imageshack.us
964
965 ### Changed
966 - Now you can clic the sentence "Stay signed in" to tick the checkbox (patch by Emilien)
967 - In tag editing, comma (,) are now automatically converted to spaces
968 - In tag editing, autocomplete no longuer suggests a tag you have already entered in the same line
969
970
971 ## [v0.0.22beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
972 ### Added
973 - Support for thumbnails for flickr.com
974 - Allow staying signed in:
975 Your session will be kept open even if you close the browser.
976 This is available through a checkbox in the login screen.
977
978 ### Changed
979 - Some hosts (flickr, vimeo) are slow as hell for the thumbnails,
980 or require an extra HTTP request.
981 For these hosts the thumbnail generation has been deported outside the generation
982 of the page to keep Shaarli snappy.
983 For these slow services, the thumbnails are also cached.
984
985 ### Fixed
986 - Title was not properly passed if you had to login when using the bookmarklet (patch by shenshei)
987
988
989 ## [v0.0.21beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
990 ### Added
991 - Thumbnails for some services
992 Currently supports: YouTube.com, dailymotion.com, vimeo.com (slow!) and imgur.com.
993 Thumbnails are enabled by default, but you can turn them off
994 (set `define('ENABLE_THUMBNAILS',true);` to `false`).
995
996 ### Changed
997 - Removed the focus on the searchbox (this is cumbersome when you want to browse pages
998 and scroll with the keyboard)
999
1000
1001 ## [v0.0.20beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1002 ### Fixed
1003 - RSS feed is now served as `application/rss+xml` instead of `application/xhtml+xml`
1004 (which was causing problem in //RSS Lounge//)
1005 - ATOM feed is now served as `application/atom+xml` instead of `application/xhtml+xml`
1006
1007
1008 ## [v0.0.19beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1009 ### Added
1010 - ATOM feed
1011
1012 ### Fixed
1013 - Patch by Emilien to remove the update notification after the update
1014
1015
1016 ## [v0.0.18beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1017 ### Added
1018 - You can now configure the title of your page
1019 - New screen to configure title and timezone
1020
1021 ### Changed
1022 - Nicer timezone selection patch by killruana
1023
1024 ### Fixed
1025 - New lines now appear correctly in the RSS feed descriptions.
1026
1027
1028 ## [v0.0.17beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1029 ### Added
1030 - Change password screen added (based on a patch by killruana)
1031 - Autocomplete in the tag search form
1032 - You can rename or delete a tag in all links
1033 (very handy if you misspelled a tag or want to merge tags)
1034 - When you click the RSS feed, the feed will be filtered with the same filters
1035 as the page you were viewing
1036
1037 ### Changed
1038 - CSS adjustments by jerrywham
1039 - Minor corrections
1040
1041
1042 ## [v0.0.16beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1043 ### Added
1044 - Upgrade notification:
1045 If a new version of Shaarli is available, you will be notified by a discreet
1046 message in top-right corner.
1047 This message will only be visible if you are logged in, and the check will be
1048 performed at most once a day.
1049 - Preliminary tag cloud (ugly for the moment, I need to find something better)
1050
1051 ### Changed
1052 - Replaced `preg_match()` with `version_compare()` to check PHP version
1053 - Includes a patch by Emilien K. to mask dates if user is not logged in.
1054 The option can be activated by changing `define('HIDE_TIMESTAMPS',false);` to `true`
1055
1056
1057 ## [v0.0.15beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1058 ### Added
1059 - New in import: Option to overwrite existing links when importing
1060 - On free.fr, automatic creation of the `/sessions` directory
1061
1062 ### Changed
1063 - CSS Stylesheet is now an external file (shaarli.css).
1064 This reduces page size and eases customization.
1065
1066 ### Removed
1067 - Removed some parameters in URL added by some feed proxies (`#xtor=RSS-...`)
1068
1069 ### Fixed
1070 - Bug corrected: Prevented loop on login screen upon successful login after a failed login
1071 - Bug corrected in import: HTML entities were not properly decoded.
1072 If you imported your Delicious/Diigo bookmarks, your should import them again
1073 and use the 'overwrite' option of the import feature.
1074
1075
1076 ## [v0.0.14beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1077 ### Added
1078 - You no longer need to disable `magic_quotes` on your host.
1079 Shaarli will cope with this option beeing activated.
1080
1081
1082 ## [v0.0.13beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1083 ### Added
1084 - Import: New option to import html bookmark file as private links
1085 - Import: Importing a bookmark file will not overwrite existing links anymore
1086 - Export: New options to export only public or private links
1087
1088 ### Changed
1089 - In tag autocomplete, tags are presented in use order
1090 (most used tags first, instead of alphabetical order)
1091 - RSS Feed can now be filtered by tags or fulltext search. Just add to the feed url:
1092 - `&searchtags=minecraft+video` for tag filtering
1093 - `&searchterm=portal` for fulltext search to the feed url
1094
1095
1096 ## [v0.0.12beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1097 ### Added
1098 - Add a check that the config file was properly created
1099 (in case Shaarli does not have the write rights in its folder)
1100 - Open Shaarli: there is an option to open your Shaarli to anyone.
1101 Anybody will be able to add/edit/delete links without having to login.
1102 In code, change `define('OPEN_SHAARLI',false);` to `true`.
1103 Note: No anti-spam for the moment. You are warned!
1104 - Autocomplete for tags
1105
1106
1107 ## [v0.0.11beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1108 ### Added
1109 - Add a check and a warning for some hosts which still have `magic_quotes` activated
1110
1111
1112 ## [v0.0.10beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1113 ### Added
1114 - Get rid of `&quot;` in titles
1115
1116
1117 ## [v0.0.9beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1118 ### Added
1119 - Now works on hosts `free.fr` and `1and1`
1120 - Now works with PHP 5.1
1121 - PHP version is now checked and an error message is displayed if version is not correct
1122
1123 ### Fixed
1124 - No more error messages if the browser does not send `HTTP_REFERER`
1125 - No more error messages if the host has disabled http protocol in PHP config (eg. 1and1)
1126
1127
1128 ## [v0.0.8beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
1129 ### Changed
1130 - In RSS feed, GUID content replaced with the URL of the link, because some
1131 stupid RSS reader (like Google Reader) use `<guid>` as a link instead of using `<link>`
1132
1133
1134 ## [v0.0.7beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-09-16
1135 First public release by Sebsauvage, see original article:
1136 [Adieu Delicious, Diigo et StumbleUpon. Salut Shaarli !](http://sebsauvage.net/rhaa/index.php?2011/09/16/09/29/58-adieu-delicious-diigo-et-stumbleupon-salut-shaarli-) (FR)