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