2 All notable changes to this project will be documented in this file.
4 The format is based on [Keep a Changelog](http://keepachangelog.com/)
5 and this project adheres to [Semantic Versioning](http://semver.org/).
8 ## [v0.9.0](https://github.com/shaarli/Shaarli/releases/tag/v0.9.0) - 2017-05-07
10 This release introduces the REST API, and requires updating HTTP server
11 configuration to enable URL rewriting, see:
12 - https://shaarli.github.io/api-documentation/
13 - https://github.com/shaarli/Shaarli/wiki/Server-configuration
15 **WARNING**: Shaarli now requires PHP 5.5+.
19 - [Slim](https://www.slimframework.com/) framework
20 - [JSON Web Token](https://jwt.io/introduction/) (JWT) authentication
21 - versioned API endpoints:
22 - `/api/v1/info`: get general information on the Shaarli instance
23 - `/api/v1/links`: get a list of shaared links
24 - `/api/v1/history`: get a list of latest actions
26 - Introduce a new theme
27 - Allow selecting themes/templates from the configuration page
28 - New/Edit link form can be submitted using CTRL+Enter in the textarea
29 - Shaarli version is displayed in the footer when logged in
30 - Add plugin placeholders to Atom/RSS feed templates
31 - Add OpenSearch to feed templates
32 - Add `campaign_` to the URL cleanup pattern list
33 - Add an AUTHORS file and Makefile target to list authors from Git commit data
34 - Link imports are now logged in `data/` folder, and can be debug using `dev.debug=true` setting.
35 - `composer.lock` is now included in git file to allow proper `composer install`
36 - History mechanism which logs link addition/modification/deletion
39 - Docker: enable nginx URL rewriting for the REST API
41 - Move `user.css` to the `data` folder
42 - Move default template files to a subfolder (`default`)
43 - Rename the legacy theme to `vintage`
44 - Private only filter is now displayed as a search parameter
45 - Autocomplete: pre-select the first element
46 - Display daily date in the page title (browser title)
47 - Timezone lists are now passed as an array instead of raw HTML
48 - Move PubSubHub to a dedicated plugin
50 - explicit method visibility
51 - safe boolean comparisons
52 - remove unused variables
53 - The updater now keeps custom theme preferences
54 - Simplify the COPYING information
55 - Improved client locale detection
56 - Improved date time display depending on the locale
57 - Partial namespace support for Shaarli classes
58 - Shaarli version is now only present in `shaarli_version.php`
59 - Human readable maximum file size upload
63 - PHP < 5.5 compatibility
64 - ReadItYourself plugin
67 - Ignore generated release tarballs
68 - Hide default port when behind a reverse proxy
69 - Fix a typo in the Markdown plugin description
70 - Fix the presence of empty tags for private tags and in search results
71 - Fix a fatal error during the install
72 - Fix permalink image alignment in daily page
73 - Fix the delete button in `editlink`
74 - Fix redirection after link deletion
75 - Do not access LinkDB links by ID before the Updater applies migrations
76 - Remove extra spaces in the bookmarklet's name
77 - Piwik plugin: Piwik URL protocol can now be set (http or https)
78 - All inline JS has been moved to dedicated JS files
79 - Keep tags after login redirection
82 - Markdown plugin: escape HTML entities by default
85 ## [v0.8.4](https://github.com/shaarli/Shaarli/releases/tag/v0.8.4) - 2017-03-04
87 - Markdown plugin: escape HTML entities by default
89 ## [v0.8.3](https://github.com/shaarli/Shaarli/releases/tag/v0.8.3) - 2017-01-20
91 - PHP 7.1 compatibility: add ConfigManager parameter to anti-bruteforce function call in login template.
93 ## [v0.8.2](https://github.com/shaarli/Shaarli/releases/tag/v0.8.2) - 2016-12-15
96 - Editing a link created before the new ID system would change its permalink.
98 ## [v0.8.1](https://github.com/shaarli/Shaarli/releases/tag/v0.8.1) - 2016-12-12
100 > Note: this version will create an automatic backup of your database if anything goes wrong.
103 - Add CHANGELOG.md to track the whole project's history
104 - Enable Composer cache for Travis builds
105 - Save the last edition date for shaares and use it in Atom/RSS feeds
107 - Add an [Isso](https://posativ.org/isso/) plugin to enable user comments on permalinks
108 - Allow defining init functions, e.g. for performing checks and error processing
109 - Add a Piwik plugin for analytics.
110 - Markdown: add warning notice regarding HTML rendering
111 - Meta tag to *not* send the referrer to external resources.
114 - Link ID complete refactoring:
115 - Links now have a numeric ID instead of dates
116 - Short URLs are now created once and can't change over time (previous URL are kept)
118 - Changed placeholder behaviour for: `buttons_toolbar`, `fields_toolbar` and `action_plugin`
119 - Cleanup `{loop}` declarations in templates
120 - Tools: hide Firefox Social button when not in HTTPS
121 - Firefox Social: show Shaarli's title when shaaring using Firefox Social
122 - Release archives now have the same structure as GitHub-generated archives:
123 - archives contain a `Shaarli` directory, itself containing sources + dependencies
124 - the tarball is now gzipped
126 - Markdown: Parsedown library is now imported through Composer
127 - Minor code cleanup: PHPDoc, spelling, unused variables, etc.
128 - Docker: explicitly set the maximum file upload size to 10 MiB
131 - Fix the server `<self>` value in Atom/RSS feeds
133 - Tools: only display parameter description when it exists
134 - archive.org: do not propose archival of private notes
136 - render links properly in code blocks
137 - bug regarding the `nomarkdown` tag
139 - Use absolute URL for hashtags in RSS and ATOM feeds
140 - Docker: specify the location of the favicon
141 - ATOM feed: remove new line between content tag and data
144 - Allow whitelisting trusted IPs, else continue banning clients upon login failure
147 ## [v0.8.0](https://github.com/shaarli/Shaarli/releases/tag/v0.8.0) - 2016-10-12
148 Shaarli now uses [Composer](https://getcomposer.org/) to handle its dependencies.
149 Please use our release archives, or follow the
150 [installation documentation](https://github.com/shaarli/Shaarli/wiki/Download-and-Installation).
153 - Composer is required to resolve Shaarli's PHP dependencies
154 - Shaarli now supports `#hashtags`
155 - Firefox social share now uses selected text as a description
156 - Plugin parameters can have a description in each plugin's `.meta` file
159 - Configuration is now stored as a JSON file
160 - Previous configuration format will be automatically updated (PHP -> JSON)
161 - Shaarli now defaults to cURL to fetch shaare titles
162 - URL cleanup: remove `PHPSESSID` parameter
163 - `nomarkdown` tag is no longer private, and now affects visitors
164 - Cleanup template indentation
165 - Rewrite bookmark import using a generic Netscape parser
168 - Shaarli no longer references Delicious in its description
171 - Shaarli configuration is not held as PHP globals anymore
174 - Ignore case for tags in autocompletion and cloud tag
175 - Avoid generating empty tags
176 - Fix a Dockerfile syntax error
179 - Fixed a bug preventing to change password
180 - XSRF token now generated each time a page is rendered
183 ## [v0.7.1](https://github.com/shaarli/Shaarli/releases/tag/v0.7.1) - 2017-03-08
185 - Markdown plugin: escape HTML entities by default
187 ## [v0.7.0](https://github.com/shaarli/Shaarli/releases/tag/v0.7.0) - 2016-05-14
189 - Adds an option to encode redirector URL parameter
190 - Atom/RSS feeds now support Markdown formatting, and plugins in general
191 - Markdown: use the tag `.nomarkdown` to avoid markdown processing
192 - Prefill the login field when the authentication has failed
193 - Show a private links counter
196 - Allow to use the bookmarklet in Firefox reader view (URL clean up)
197 - Improve tagcloud font size
198 - Improve title retrieving
199 - Markdown: inline code background color
200 - Refactor Netscape bookmark export
201 - Refactor Atom/RSS feed generation
204 - Remove delicious from Shaarli description
207 - Fix bad login redirections causing a 404 in a few cases
208 - Fix tagcloud font-size with French locale
209 - Don't display empty tags in tag search
210 - Fix Awesomeplete conflicts with jQuery
211 - Fix UTC timezone selection
212 - Fix a bug preventing to import notes in browsers from bookmarks export
213 - Don't redirect to ?post if ?addlink is reached while logged out
216 ## [v0.6.5](https://github.com/shaarli/Shaarli/releases/tag/v0.6.5) - 2016-03-02
218 - Fixes a regression generating an unnecessary warning (language in HTTP request)
219 - Fixes a bug where going through multiple reverse proxy could generate malformed URL
220 - Markdown: Fixes a bug where empty description blocks were displayed
223 ## [v0.6.4](https://github.com/shaarli/Shaarli/releases/tag/v0.6.4) - 2016-02-28
225 - Add an updater class to automate user data upgrades
226 - Plugin admin page: adds a label for checkboxes and improve name display
227 - Plugin Wallabag: API version can be specified in plugin admin page
230 - Better tag cloud sorting, including special chars (`a > E > é > z`)
231 - Autolocale now sets all locale categories, not just time
232 - Use PHP's DateTime object instead of custom functions
233 - Plugin hooks: process includes before header/footer
234 - Markdown plugin: better styles for `<code>` and `<pre>` tags
236 - search terms are now considered separated and won't only return exact results anymore
237 - exact search can be done with quotes `"this exact sentence"`
238 - search supports excluded terms starting a dash `-exclude`
239 - implement crossed search: terms + tags
240 - all of them combined across all shaare fields
242 - tags starting with a dash will be renamed without it
243 - tags starting with a dot `.` will be hidden unless the user is logged in
246 - Fix Markdown plugin escape issues (code/quote blocks, etc.)
247 - Link description aren't trimmed anymore to allow markdown format at the beginning of a shaare
248 - Fixes plugin admin redirection page on error
251 - Fix a bug where non initialized variables were causing a warning
252 - Fix a bug where saving a link after edit could cause a 404 error
255 ## [v0.6.3](https://github.com/shaarli/Shaarli/releases/tag/v0.6.3) - 2016-01-31
257 - Plugins administration page
258 - Markdown plugin added for shaares description
259 - Docker: Dockerfile is now in the main git repository and improved
260 - Add a `.gitattributes` to ease repository management
261 - Travis: include file permission checks
264 - Auto retrieve of title know works with websites (HTTPS, follow redirections, etc.)
265 - 404 page is now handled in a template
266 - Date in log files updated to work with fail2ban
267 - Wallabag: support of Wallabag v2 and minor fixes
268 - Link search refactoring
269 - Logging function refactoring
272 - Fix a bug where renaming a tag was causing a 404
273 - Fix a bug allowing to search blank terms
274 - Fix a bug preventing to remove a tag with special chars when searching
277 ## [v0.6.2](https://github.com/shaarli/Shaarli/releases/tag/v0.6.2) - 2015-12-23
279 - Plugins: new footer hook
280 - Plugins: improve QR code
284 - Plugins: use the actual link URL to generate QR codes
285 - Templates: missing/erroneous page titles
286 - Templates: missing variables resulting in PHP errors
289 - Fix invalid file permissions (remove executable bit)
292 ## [v0.6.1](https://github.com/shaarli/Shaarli/releases/tag/v0.6.1) - 2015-12-01
294 - Add OpenSearch support
295 - Add a Doxygen makefile target
296 - Tools: add fine-grained file/directory permission checks (installation)
299 - Tools: check the 'stable' branch for new versions (updates)
300 - Cleanup: introduce an `ApplicationUtils` class
303 - Cleanup: remove `json_encode()` function (built-in since PHP 5.2)
306 - Auto-complete more than one tag
307 - Bookmarklet: support titles containing quotes
308 - URL encode links when setting a redirector
311 ## [v0.6.0](https://github.com/shaarli/Shaarli/releases/tag/v0.6.0) - 2015-11-18
313 - Introduce a plugin system
327 - Adding a new link now returns the correct anchor in the URL
328 - Set default file permissions
331 ## [v0.5.4](https://github.com/shaarli/Shaarli/releases/tag/v0.5.4) - 2015-09-15
333 - HTTPS: support being served behing an SSL-enabled proxy
336 - HTTP/Server utilities: refactor & add test coverage
337 - Project & documentation:
338 - improve/rewrite `README.md`
339 - update contributor list
340 - update `index.php` header
343 - PHP session IDs: handle hash algorithms and bits per char representations
346 ## [v0.5.3](https://github.com/shaarli/Shaarli/releases/tag/v0.5.3) - 2015-09-02
348 - Fix a bug that could prevent user to login
351 ## [0.5.3](https://github.com/shaarli/Shaarli/releases/tag/0.5.3) - 2015-09-02
352 This release has been YANKED as it points to a tag that does not follow our naming convention. Please use `v0.5.3` instead
355 - Allow uppercase letters in PHP sessionid format
358 ## [v0.5.2](https://github.com/shaarli/Shaarli/releases/tag/v0.5.2) - 2015-08-31
360 - Add PHP 7 to Travis platforms
363 - Also extract HTTPS page metadata (title)
366 - Fix regression preventing to load LinkDB info when adding an existing link
369 - Fix Full Path Disclosure upon cookie forgery
372 ## [v0.5.1](https://github.com/shaarli/Shaarli/releases/tag/v0.5.1) - 2015-08-17
374 - Add a link to the shaarli/shaarli DockerHub repository
377 - Update local documentation
378 - Improve timezone detection at installation
379 - Improve feed cache handling
380 - Improve URL cleanup for new links
383 - Fix 404 after editing a link while being logged out
386 ## [v0.5.0](https://github.com/shaarli/Shaarli/releases/tag/v0.5.0) - 2015-07-31
388 - Add Firefox Social API
389 - Start code refactoring:
390 - add unit test coverage
391 - add Travis integration
394 - Search/Filter by tag fieds can now be accessed quickly with the `Tab` key
395 - Update documentation
396 - Remove duplicate tags in links
397 - Remove annoying URL patterns
398 - Start code refactoring:
399 - move all settings to `data/config.php`
400 - refactor Config, LinkDB, TimeZone, Utils
403 - Fix locale handling
405 - Fix page redirections
406 - Fix daily RSS browsing
408 - Restore compatibility with PHP 5.3
411 - Fix links not being hidden when `HIDE_PUBLIC_LINKS` is set
414 ## [v0.0.45beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.45beta) - 2015-03-16
416 - Fix improperly displayed Unicode character
417 - Fix incorrect font size for "Add link" input field
420 ## [v0.0.44beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.44beta) - 2015-03-15
422 - Add a Makefile to run static code checkers
423 - Add local documentation (help link in page footer)
424 - Use awesomplete library for autocompletion
425 - Use bLazy.js library for images lazy loading
426 - New 'Add Note' bookmarklet to immediatly open a note (text post) compose window
429 - Theme improvements and cleanup (menu, search fields, icons, linklist...)
430 - Allow 'javascript:' links sharing (bookmarklets)
431 - Make update check optional
432 - Redirect to homepage after adding a link via "Add Link" dialog
433 - Remove more annoying URL parameters for shared links
440 - Don't disclose version to visitors (shaarli-version.txt)
443 ## [v0.0.43beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.43beta) - 2015-02-20
445 - Title button link URL is now configurable
446 - RainTPL's TMP and TPL directories path are now configurable
447 - Displayed URLs for each link are now clickable links
448 - Show links timestamps in Daily view
451 - Automatically prepend "Note:" to title of self-posts (posts not pointing to an URL)
452 - Make ATOM toolbar button optional (`SHOW_ATOM` configuration variable)
453 - Optional archive.org links for each Shaarli link (`ARCHIVE_ORG` option)
454 - Thumbnails: force HTTPS when possible
455 - Improve tag cloud font scaling
456 - Allow pointing RSS items to the permalink instead of the direct URL (`ENABLE_RSS_PERMALINKS` option)
457 - Update JS libraries and add version numbers in filenames
458 - Updates to README and footer
461 - Fix problems when running Shaarli behind a reverse proxy (invalid RSS feed URL)
462 - Update check now checks against the community fork version
463 - Include `cache/`, `data/`, `pagecache/` and `tmp/` directories in the repository
464 - Fix duplicate tag search returning no results
465 - Fix unnecessary 404 error on "Add link" when the user is logged out
466 - Fixes to copyright/licensing information and unlicensed media
467 - Fixes for tag cloud invalid links
468 - Coding style fixes/cleanup
469 - Fix redirection after deleteing a link leading to a 404 error
470 - Shaarli's HTML is now W3C-compliant
471 - Search now works with Unicode characters
474 - Do not leak server's PHP version and Shaarli's full path on errors
475 - Prevent Shaarli from sending a lot of duplicate cookies
478 ## [v0.0.42beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.42beta) - 2014-07-27
480 - Add QRCode Javascript library
481 - Allow importing bookmarks with the same timestamp (hack)
482 - Allow putting a description in the bookmarklet URL
483 - Add `json_encode()` implementation for PHP<5.2
484 - Highlight search results
487 - Improve 'Stay signed in' behaviour
488 - Improve `smallHash()`
489 - Refactor QRCode generation
490 - Update Javascript lazyloading
494 - Remove jQuery from almost all pages
497 - Fix overlapping tags
498 - Fix field foxus in the bookmarklet
499 - Fix error message when `data/` is not writable
500 - Fix HTML generation
506 ## [v0.0.41beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.41beta) - 2013-03-08
508 - Add HTTPS to the allowed protocols
509 - Add support for magnet links in link descriptions
510 - Allow creating new links as private by default
511 - Allow disabling jQuery
512 - Check write permissions
513 - Check session support before installation
516 - Improve token security
517 - RSS feed: allow inverting links/permalinks
520 - Fix display issues during installation
521 - Fix popup redirection after login failure
522 - Fix RSS formatting for Thunderbird
523 - Fix thumbnail creation
527 - Fix login issue with WebKit browsers
530 ## [v0.0.40beta](https://github.com/shaarli/Shaarli/releases/tag/v0.0.40beta) - 2013-02-26
531 Initial release on GitHub.
534 ## [v0.0.40beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-08-24
536 - Flickr thumbnail now also support albums, galleries and users
537 - Add a configuration option to disable session cookie protection
538 Check this if your get disconnected often or your IP address changes often
541 - Removed the xml comment in cached RSS/ATOM feed
542 (although W3C-compliant, this may cause problems in some feed readers)
545 - A bug in the RSS cache would present old items as new in some cases
546 - A small bug (non-initialized variable) in page cache cleaning
547 - Proper "Nothing found" message when search returns no results
548 - No more 404 error when searching with empty input
549 - Flickr thumbnails are back (Flickr has made some changes to their domains)
551 ## [v0.0.39beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-08-10
553 - A cache for RSS feed, ATOM feed and Daily RSS feed, because these URLs
554 are massively hammered. Cache is automatically purged whenever the database
555 is changed. This will reduce server load. I may add cache to other pages later.
558 - No more global `$LINKSDB` (Yuk)
559 - Background color was removed when hovering a link
562 - Small bug corrected in config screen on timezones
563 - Calling a non-existing permalink now returns a crude 404 error instead of 200 (OK)
564 This is done on purpose
565 - The `shaarli` session cookie now has a proper path
566 Thus you can now install several Shaarlis on the same server in different paths,
567 and each will have its session
568 - Now when you delete a link, you go back the same page/search parameters you were on
569 - Restore previously removed `error_get_last()`, to ensure PHP 5.1 compatibility
570 (Yes, now it works on free.fr hosting)
571 - Added `dialog=1` in bookmarklet code for some browsers
574 ## [v0.0.38beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-02-06
576 - Automatic creation of the `tmp` directory with proper rights (for RainTPL)
577 - When you click the key to see only private links, it turns yellow
580 - The "Daily" page now automatically skips empty days.
583 - Corrected the tag encoding (there was a bug when selecting a second tag which contains accented characters)
586 ## [v0.0.37beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-02-01
588 - Basic CSS for mobiles, which makes Shaarli //much// more usable on mobile devices
589 - Picture wall no more instantly kills your browser. Now it uses
590 [lazy image loading](http://www.appelsiini.net/projects/lazyload);
591 the pictures are loaded only as you scroll the page.
592 This will reduce browser memory usage (especially on mobile devices),
593 as well as server load.
594 If you have javascript disabled, the page will still work as before
595 (all images loaded at once)
596 - RSS feed for the "Daily" page. 1 RSS entry per day, with all links of that day.
597 RSS feed provides the last 7 days (only non-empty days are returned).
598 - In link list, added an icon to see only private links. Click to toggle (only private / all)
601 ## [v0.0.36beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-01-25
603 - Shaarli licence in COPYING
606 - Display adjustments in "Daily" page
609 - Improper text color in install form
610 - Error in QRCode url (missing '?')
613 ## [v0.0.35beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-01-25
615 - Corrected a bug introduced in 0.0.34 which would improperly preprend data to URLs
618 ## [v0.0.34beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-01-25
620 - There is now a QR-Code of each permalink to easily open a link on your smartphone
621 - Protocols `file:` and `apt:` are now also converted to clickable links (patch by Francis Chavanon)
622 - Thumbnail support for http://xkcd.com/ (patch by Emilien Klein)
623 - Thumbnail support for http://pix.toile-libre.org/
624 - Well I had _some_ mercy for users with antique browsers (IE) which do not have
625 support for gradients: I added a few `background-color`
626 - First version of the "Shaarli Daily", a page showing all links of a specific day.
627 By default, you see the links of the previous day.
628 There is still work to do on this page (error checking, better navigation (calendar?),
629 RSS feed, CSS for mobile and printing...)
632 - Upgraded bundled versions of jQuery (1.7.1) and jQuery UI (1.8.17)
633 - Upgraded bundled version of RainTPL (2.7)
634 - Changed HTTPS detection code
637 - In link edition, you can now click the word "Private" to check the box
638 - Clicking a tag would not work properly if the tag contained special characters (like +)
639 - Added proper jQuery licence (shame on me)
642 ## [v0.0.33beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2012-01-17
644 - Shaarli packaged to ease Linux distributions integration
645 As a simple user, you do not need to cope with these versions
646 Future releases of Shaarli will also be customized and published in these directories
647 Differences with the standard Shaarli version:
649 - .tar.gz instead of .zip
650 - COPYING licence file added
651 - jQuery/jQuery-UI libraries removed to cope with Debian rules
652 This version links to the libs hosted at http://code.jquery.com
654 - sources located in a subdirectory with the same name as the zip file
655 - COPYING licence file added
656 - WARNING: When downloading the .tar.gz, always use wget (and not your browser),
657 otherwise the .tar.gz will be corrupted
660 - ATOM feed validates again
663 - XSS vulnerability patched (thanks to Stanislas D.!)
666 ## [v0.0.32beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-12-16
668 - Better check on URL parameters (patch by gege2061)
669 - Add `max-height` and `overflow:auto` attributes so that content can be scrolled if too large
672 - HTML generation moved to RainTPL templates (in the `tpl/` directory)
673 - Better detection of HTTPS (patch by gege2061)
674 - In RSS/ATOM feeds, the GUID is now the permalink instead of the final URL (patch by gege2061)
675 - Jerrywham CSS patch included
676 - Multiple spaces are now respected in description.
677 Thus you can use Shaarli as a personal pastebin (for posting source code, for example).
680 - Page time generation was removed
683 - Tab order changed in login screen
684 - Permalinks now work even if additional parameters have been added
685 (e.g. `/?E8Yj2Q&utm_source=blablabla...`)
686 - user.css is included only if the file is present
687 (This prevents a useless CSS include which makes a harmless but useless 404 error.)
690 ## [v0.0.31beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-11-29
692 - Support for TED Talks (ted.com/talks) thumbnails (patch by Emilien K.)
693 - 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
694 - Support for bookmark files without ADD_DATE attributes
696 - `user.css` can be added to overload Shaarli base CSS.(patch by Jerrywham).
697 Just put `user.css` in the same directory as shaarli.css.
698 Example: `<code css>#pageheader { background: blue; }</code>`
699 Please note that Shaarli CSS are not stable and may completely change on each version
702 - Edit and Delete buttons in link list were replaced with icons. (patch by Jerrywham)
705 - Better error handling in thumbnail generation (patch by Emilien K.)
706 - The top menu is no longer displayed in bookmarklet popup
707 - Bookmark which have the exact same date/time are now correctly imported.
708 Most remaining import problems should be solved now
709 - Comment in Shaarli export moved to beginning of file to prevent clash with last link description
712 ## [v0.0.30beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-11-18
714 - Add a small `delete` button in link list (after the `edit` button)
717 - Moved the call to PubSubHub
720 ## [v0.0.29beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-11-18
722 - Corrected a bug introduced in v0.0.28beta
723 (there was an error if you use the bookmarklet and you're not logged in)
726 ## [v0.0.28beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-11-17
728 - Thumbnail support for youtu.be URLs (YouTube short url service)
729 - PubSubHub protocol support (from http://aldarone.fr/les-flux-rss-shaarli-et-pubsubhubbub/).
730 Warning: This was not tested. You need to set your hub url in
731 `$GLOBALS['config']['PUBSUBHUB_URL']` and put the official client (`publisher.php`)
732 in the same directory as Shaarli's `index.php`
733 - RSS and ATOM feeds now also contain tags (in `category` tags, as per their
734 respective specifications)
737 - New Shaarli theme and logo by Idle (http://www.idleman.fr/blog/?p=469)
738 - In picture wall, pictures point to Shaarli permalink instead of final URL.
739 This way, users can read the description.
740 - In RSS/ATOM feeds, guid and link URL of permalinks are now proper absolute URLs
741 - In RSS/ATOM feeds, URLs are now clickable
742 - Rename `http_parse_headers()` to `http_parse_headers_shaarli()` to prevent
743 name collision with some PHP extensions
746 - Thumbnails removed for imgur.com/a/ URLs (Thumbnails are not available for albums on imgur)
747 - Shaarli now correctly only tries to get thumbnails for vimeo video URLs
748 - Fix a bug in imgur.com URLs handling that would cause some thumbnails not to appear
749 - The search engine would not return a result if the word to search was the first in description
750 - Extracted title is now correct if the page has two `title` html tags
753 ## [v0.0.27beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-10-18
755 - Add a picture wall, which can be filtered too: it will use the same filters
756 (tags,text search) as current page when clicked.
759 ## [v0.0.26beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-10-17
761 - Made permalink more visible (smallHash)
764 - Removed extras space in description when URLs are converted to clickable links
765 - Thumbnail for subreddit imgur urls (/r/...) were corrected (thanks to Accent Grave)
768 ## [v0.0.25beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-10-13
770 - Better CSS for printing (thanks to jerrywham suggestion)
771 - Allow using a redirector or anonymizing proxy for links
772 (such as `http://anonym.to/?` to mask you `HTTP_REFERER`).
773 Just go to `Tools > Configure > Redirector`
774 (thanks to Accent Grave for the suggestion).
775 - The `ENABLE_LOCALCACHE` option can be set to `false` for those who have
776 a limited quota on their host.
777 This will disable the local thumbnail cache.
778 Services which require the use of the cache will have no thumbnails
779 (vimeo, flickr, direct link to image).
780 Other services will still have a thumbnail (youtube,imgur.com,dailymotion,imageshack.us)
783 - Now thumbnails generated by Shaarli are croped to a height of 120 pixels
784 - YouTube thumbnails now use `default.jpg` instead of `2.jpg` (This is usually more pertinent)
785 - Configuration options (such as `HIDE_TIMESTAMPS`, `ENABLE_THUMBNAILS`, etc.)
786 can now be put in a an external file so that you do not have to tweak them again
787 when you upgrade Shaarli.
788 Just add the file `data/options.php`.
789 - If a single link is displayed, the page title contains the title of the link
790 - Shaarli page title is clickable (and has the same link as "Home")
791 - A few CSS tweaks (thanks to maethor for suggestion)
794 - Shaarli now supports newlines in titles (thanks to dixy)
795 - The link to the RSS feed in page header was not correct
798 ## [v0.0.24beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
800 - Allow posting an entry without a link. (You can use Shaarli as a kind of "personal twitter")
801 - Each Shaarli entry now has a short link (just click on the date of a link).
802 Now you can send a link that points to a single entry in your Shaarli
803 - In descriptions, URLs are now clickable
804 - Thumbnails will be generated for all link pointing to .jpg/png/gif
805 (as long as the images are less than 4 Mb and take less than 30 seconds to download)
808 - Now thumbnails also work for imgur gallery links (/gallery/...)
809 (Thanks to Accent Grave for the correction)
810 - Removed useless debugging information in log
811 - The filter in RSS/ATOM feed now works again properly (it was broken in 0.0.17beta)
814 ## [v0.0.23beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
816 - Added thumbnail support for imageshack.us
819 - Now you can clic the sentence "Stay signed in" to tick the checkbox (patch by Emilien)
820 - In tag editing, comma (,) are now automatically converted to spaces
821 - In tag editing, autocomplete no longuer suggests a tag you have already entered in the same line
824 ## [v0.0.22beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
826 - Support for thumbnails for flickr.com
827 - Allow staying signed in:
828 Your session will be kept open even if you close the browser.
829 This is available through a checkbox in the login screen.
832 - Some hosts (flickr, vimeo) are slow as hell for the thumbnails,
833 or require an extra HTTP request.
834 For these hosts the thumbnail generation has been deported outside the generation
835 of the page to keep Shaarli snappy.
836 For these slow services, the thumbnails are also cached.
839 - Title was not properly passed if you had to login when using the bookmarklet (patch by shenshei)
842 ## [v0.0.21beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
844 - Thumbnails for some services
845 Currently supports: YouTube.com, dailymotion.com, vimeo.com (slow!) and imgur.com.
846 Thumbnails are enabled by default, but you can turn them off
847 (set `define('ENABLE_THUMBNAILS',true);` to `false`).
850 - Removed the focus on the searchbox (this is cumbersome when you want to browse pages
851 and scroll with the keyboard)
854 ## [v0.0.20beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
856 - RSS feed is now served as `application/rss+xml` instead of `application/xhtml+xml`
857 (which was causing problem in //RSS Lounge//)
858 - ATOM feed is now served as `application/atom+xml` instead of `application/xhtml+xml`
861 ## [v0.0.19beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
866 - Patch by Emilien to remove the update notification after the update
869 ## [v0.0.18beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
871 - You can now configure the title of your page
872 - New screen to configure title and timezone
875 - Nicer timezone selection patch by killruana
878 - New lines now appear correctly in the RSS feed descriptions.
881 ## [v0.0.17beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
883 - Change password screen added (based on a patch by killruana)
884 - Autocomplete in the tag search form
885 - You can rename or delete a tag in all links
886 (very handy if you misspelled a tag or want to merge tags)
887 - When you click the RSS feed, the feed will be filtered with the same filters
888 as the page you were viewing
891 - CSS adjustments by jerrywham
895 ## [v0.0.16beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
897 - Upgrade notification:
898 If a new version of Shaarli is available, you will be notified by a discreet
899 message in top-right corner.
900 This message will only be visible if you are logged in, and the check will be
901 performed at most once a day.
902 - Preliminary tag cloud (ugly for the moment, I need to find something better)
905 - Replaced `preg_match()` with `version_compare()` to check PHP version
906 - Includes a patch by Emilien K. to mask dates if user is not logged in.
907 The option can be activated by changing `define('HIDE_TIMESTAMPS',false);` to `true`
910 ## [v0.0.15beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
912 - New in import: Option to overwrite existing links when importing
913 - On free.fr, automatic creation of the `/sessions` directory
916 - CSS Stylesheet is now an external file (shaarli.css).
917 This reduces page size and eases customization.
920 - Removed some parameters in URL added by some feed proxies (`#xtor=RSS-...`)
923 - Bug corrected: Prevented loop on login screen upon successful login after a failed login
924 - Bug corrected in import: HTML entities were not properly decoded.
925 If you imported your Delicious/Diigo bookmarks, your should import them again
926 and use the 'overwrite' option of the import feature.
929 ## [v0.0.14beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
931 - You no longer need to disable `magic_quotes` on your host.
932 Shaarli will cope with this option beeing activated.
935 ## [v0.0.13beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
937 - Import: New option to import html bookmark file as private links
938 - Import: Importing a bookmark file will not overwrite existing links anymore
939 - Export: New options to export only public or private links
942 - In tag autocomplete, tags are presented in use order
943 (most used tags first, instead of alphabetical order)
944 - RSS Feed can now be filtered by tags or fulltext search. Just add to the feed url:
945 - `&searchtags=minecraft+video` for tag filtering
946 - `&searchterm=portal` for fulltext search to the feed url
949 ## [v0.0.12beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
951 - Add a check that the config file was properly created
952 (in case Shaarli does not have the write rights in its folder)
953 - Open Shaarli: there is an option to open your Shaarli to anyone.
954 Anybody will be able to add/edit/delete links without having to login.
955 In code, change `define('OPEN_SHAARLI',false);` to `true`.
956 Note: No anti-spam for the moment. You are warned!
957 - Autocomplete for tags
960 ## [v0.0.11beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
962 - Add a check and a warning for some hosts which still have `magic_quotes` activated
965 ## [v0.0.10beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
967 - Get rid of `"` in titles
970 ## [v0.0.9beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
972 - Now works on hosts `free.fr` and `1and1`
973 - Now works with PHP 5.1
974 - PHP version is now checked and an error message is displayed if version is not correct
977 - No more error messages if the browser does not send `HTTP_REFERER`
978 - No more error messages if the host has disabled http protocol in PHP config (eg. 1and1)
981 ## [v0.0.8beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history)
983 - In RSS feed, GUID content replaced with the URL of the link, because some
984 stupid RSS reader (like Google Reader) use `<guid>` as a link instead of using `<link>`
987 ## [v0.0.7beta](http://sebsauvage.net/wiki/doku.php?id=php:shaarli:history) - 2011-09-16
988 First public release by Sebsauvage, see original article:
989 [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)