1
0
Fork 0
mirror of https://github.com/Kozea/Radicale.git synced 2025-06-26 16:45:52 +00:00

First commit

This commit is contained in:
Guillaume Ayoub 2016-02-08 18:48:16 +01:00
commit 1ee43a0c3b
47 changed files with 1328 additions and 0 deletions

3
.gitignore vendored Normal file
View file

@ -0,0 +1,3 @@
_site
.sass-cache
Gemfile.lock

1
CNAME Normal file
View file

@ -0,0 +1 @@
radicale.org

2
Gemfile Normal file
View file

@ -0,0 +1,2 @@
source 'https://rubygems.org'
gem 'github-pages'

6
_config.yml Normal file
View file

@ -0,0 +1,6 @@
# Site settings
title: Radicale
email: contact@kozea.fr
description: A free and open-source CalDAV and CardDAV server
baseurl: ""
url: "http://radicale.org"

29
_layouts/default.html Normal file
View file

@ -0,0 +1,29 @@
<!doctype html>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link href="/css/main.css" media="screen" rel="stylesheet">
<link href="/feed.xml" type="application/rss+xml" rel="alternate" title="RSS feed" />
<title>{% if page.title %}{{ page.title }} - {% endif %}{{ site.title }} - {{ site.description }}</title>
<meta name="description" content="{{ site.description }}">
<nav>
<ul>
<li><a href="/">Home</a></h1>
<li><a href="/news/">News</a>
<li><a href="/documentation/">Documentation</a>
<li><a href="/contribute/">Contribute</a>
<li><a href="/download/">Download</a>
</ul>
</nav>
{{ content }}
<footer>
<ul>
<li><a href="http://kozea.fr">Made with ❤ by Kozea</a></li>
<li><a href="{{ site.github.repository_url }}">Fork me on GitHub</a></li>
</ul>
</footer>

10
_layouts/page.html Normal file
View file

@ -0,0 +1,10 @@
---
layout: default
---
<main>
<section>
<h1>{{ page.title }}</h1>
{{ content }}
</section>
</main>

View file

@ -0,0 +1,7 @@
---
layout: page
title: Radicale Ready to Launch
---
The Radicale Project is launched. The code has been cleaned up and will be
available soon…

View file

@ -0,0 +1,8 @@
---
layout: page
title: Radicale on Gitorious
---
Radicale code has been released on Gitorious! Take a look at the
[Radicale main page on Gitorious](http://www.gitorious.org/radicale) to view
and download source code.

View file

@ -0,0 +1,14 @@
---
layout: page
title: Radicale 0.1 Released
---
First Radicale release! Here is the changelog:
###0.1 - Crazy Vegetables
* First release
* Lightning/Sunbird 0.9 compatibility
* Easy installer
You can download this version on the [download page](/download/).

View file

@ -0,0 +1,10 @@
---
layout: page
title: Thunderbird 3 released
---
[Thunderbird 3 is out](http://www.mozillamessaging.com/thunderbird/3.0/releasenotes/),
and Lightning/Sunbird 1.0 should be released in a few days. The
[last commit in git](http://gitorious.org/radicale/radicale/commit/6545bc8)
should make Radicale work with versions 0.9 and 1.0b1pre. Radicale 0.1.1 will
soon be released adding support for version 1.0.

View file

@ -0,0 +1,9 @@
---
layout: page
title: Lightning and Sunbird 1.0b2pre Support
---
Lightning/Sunbird 1.0b2pre is out, adding minor changes in CalDAV support. A
[new commit](http://www.gitorious.org/radicale/radicale/commit/330283e) makes
Radicale work with versions 0.9, 1.0b1 et 1.0b2. Moreover, etags are now quoted
according to the RFC 2616.

View file

@ -0,0 +1,8 @@
---
layout: page
title: Twisted no Longer Required
---
Good news! Radicale 0.1.1 will support Sunbird 1.0, but it has another great
feature: it has no external dependency! Twisted is no longer required for the
git version, removing about 50 lines of code.

View file

@ -0,0 +1,9 @@
---
layout: page
title: Ready for Python 3
---
Dropping Twisted dependency was the first step leading to another big feature:
Radicale now works with Python 3! The code was given a small cleanup, with some
simplifications mainly about encoding. Before the 0.1.1 release, feel free to
test the git repository, all Python versions from 2.5 should be OK.

View file

@ -0,0 +1,19 @@
---
layout: page
title: HTTPS and Authentication
---
HTTPS connections and authentication have been added to Radicale this
week. Command-line options and personal configuration files are also ready for
test. According to the TODO file included in the package, the next version will
finally be 0.2, when sunbird 1.0 is out. Go, Mozilla hackers, go!
HTTPS connection
HTTPS connections are now available using the standard TLS mechanisms. Give
Radicale a private key and a certificate, and your data are now safe.
Authentication
A simple authentication architecture is now available, allowing different
methods thanks to different modules. The first two modules are ``fake`` (no
authentication) and ``htpasswd`` (authentication with an ``htpasswd`` file
created by the Apache tool). More methods such as LDAP are coming soon!

View file

@ -0,0 +1,29 @@
---
layout: page
title: Radicale 0.2 Released
---
Radicale 0.2 is out! Here is whats new:
###0.2 - Snowflakes
* Sunbird pre-1.0 support
* SSL connection
* Htpasswd authentication
* Daemon mode
* User configuration
* Twisted dependency removed
* Python 3 support
* Real URLs for PUT and DELETE
* Concurrent modification reported to users
* Many bugs fixed by Roger Wenham
First of all, we would like to thank Roger Wenham for his bugfixes and his
supercool words.
You may have noticed that Sunbird 1.0 has not been released, but according to
the Mozilla developers, 1.0pre is something like a final version.
You may have noticed too that Radicale can be
[downloaded from PyPI](http://pypi.python.org/pypi/Radicale/0.2). Of course, it
is also available on the [download page](/download/).

View file

@ -0,0 +1,12 @@
---
layout: page
title: Evolution Supported
---
Radicale now supports another CalDAV client:
[Evolution, the default mail, addressbook and calendaring client for Gnome](http://projects.gnome.org/evolution/).
This feature was quite easy to add, as it required less than 20 new lines of
code in the requests handler.
If you are interested, just clone the
[git repository](http://www.gitorious.org/radicale/radicale).

View file

@ -0,0 +1,25 @@
---
layout: page
title: May News
---
###News from contributors
Jonas Smedegaard packaged Radicale for Debian last week. Two packages, called
``radicale`` for the daemon and ``python-radicale`` for the module, have been
added to Sid, the unstable branch of Debian. Thank you, Jonas!
Sven Guckes corrected some of the strange-English-sentences present on this
website. Thank you, Sven!
###News from software
A simple ``VERSION`` has been added in the library: you can now play with
``radicale.VERSION`` and ``$radicale --version``.
After playing with the version (should not be too long), you may notice that
the next version is called 0.3, and not 0.5 as previously decided. The 0.3 main
goal is to offer the support for Evolution as soon as possible, without waiting
for the 0.5. After more than a month of test, we corrected all the bugs we
found and everything seems to be fine; we can imagine that a brand new tarball
will be released during the first days of June.

View file

@ -0,0 +1,23 @@
---
layout: page
title: Radicale 0.3 Released
---
Radicale 0.3 is out! Here is whats new:
###0.3 - Dancing Flowers
* Evolution support
* Version management
The website changed a little bit too, with some small HTML5 and CSS3 features
such as articles, sections, transitions, opacity, box shadows and rounded
corners. If youre reading this website with Internet Explorer, you should
consider using a standard-compliant browser!
Radicale is now included in Squeeze, the testing branch of Debian. A
[Radicale ebuild for Gentoo](http://bugs.gentoo.org/show_bug.cgi?id=322811) has
been proposed too. If you want to package Radicale for another distribution,
youre welcome!
Next step is 0.5, with calendar collections, and Windows and MacOS support.

View file

@ -0,0 +1,21 @@
---
layout: page
title: Three Features Added Last Week
---
Some features have been added in the git repository during the last weeks,
thanks to Jerome and Mariusz!
Personal Calendars
Calendars accessed through the htpasswd ACL module can now be
personal. Thanks to the ``personal`` option, a user called ``bob`` can access
calendars at ``/bob/*`` but not to the ``/alice/*`` ones.
HEAD Requests
Radicale can now answer HEAD requests. HTTP headers can be retrieved thanks
to this request, without getting contents given by the GET requests.
Last-Modified HTTP header
The Last-Modified header gives the last time when the calendar has been
modified. This is used by some clients to cache the calendars and not
retrieving them if they have not been modified.

View file

@ -0,0 +1,16 @@
---
layout: page
title: Radicale 0.4 Released
---
Radicale 0.4 is out! Here is what's new:
###0.4 - Hot Days Back
* Personal calendars
* HEAD requests
* Last-Modified HTTP header
* ``no-ssl`` and ``foreground`` options
* Default configuration file
This release has mainly been released to help our dear packagers to include a default configuration file and to write init scripts. Big thanks to Necoro for his work on the new Gentoo ebuild!

View file

@ -0,0 +1,22 @@
---
layout: page
title: News from Radicale
---
During the last weeks, Radicale has not been idle, even if no news have been
posted since August. Thanks to Pete, Pierre-Philipp and Andrew, we're trying to
add a better support on MacOS, Windows and mobile devices like iPhone and
Android-based phones.
All the tests on Windows have been successful: launching Radicale and using
Lightning as client works without any problems. On Android too, some testers
have reported clients working with Radicale. These were the good news.
The bad news come from Apple: both iPhone and MacOS default clients are not
working yet, despite the latest enhancements given to the PROPFIND
requests. The problems are quite hard to debug due to our lack of Apple
hardware, but Pete is helping us in this difficult quest! Radicale 0.5 will be
out as soon as these two clients are working.
Some cool stuff is coming next, with calendar collections and groups, and a
simple web-based CalDAV client in early development. Stay tuned!

View file

@ -0,0 +1,20 @@
---
layout: page
title: Jabber Room and iPhone Support
---
After a lot of help and testing work from Andrew, Björn, Anders, Dorian and
Pete (and other ones we could have forgotten), a simple iPhone support has been
added in the git repository. If you are interested, you can test this feature
*right now* by
[downloading the latest git version](http://radicale.org/download#git-repository)
(a tarball is even available too if you don't want or know how to use git).
No documentation has been written yet, but using the right URL in the
configuration should be enough to synchronize your calendars. If you have any
problems, you can ask by joining our new Jabber room:
radicale@room.jabber.kozea.fr.
Radicale 0.5 will be released as soon as the iCal support is ready. If you have
an Apple computer, Python skills and some time to spend, we'd be glad to help
you debugging Radicale.

View file

@ -0,0 +1,25 @@
---
layout: page
title: Radicale 0.5 Released
---
Radicale 0.5 is out! Here is what's new:
###0.5 - Historical Artifacts
* Calendar depth
* iPhone support
* MacOS and Windows support
* HEAD requests management
* htpasswd user from calendar path
iPhone support, but no iCal support for 0.5, despite our hard work, sorry!
After 1 month with no more activity on the dedicated bug, it was time to forget
it and hack on new awesome features. Thanks for your help, dear Apple users, I
keep the hope that one day, Radicale will work with you!
So, what's next? As promised, some cool git branches will soon be merged, with
LDAP support, logging, IPv6 and anonymous calendars. Sounds pretty cool, heh?
Talking about new features, more and more people are asking for a CardDAV
support in Radicale. A git branch and a feature request are open, feel free to
hack and discuss.

View file

@ -0,0 +1,18 @@
---
layout: page
title: New Features
---
Radicale 0.5 was released only 8 days ago, but 3 new features have already been
added to the master branch:
- IPv6 support, with multiple addresses/ports support
- Logs and debug mode
- Owner-less calendars
Most of the code has been written by Necoro and Corentin, and that was not easy
at all: Radicale is now multithreaded! For sure, you can find many bugs and
report them on the
[bug tracker](http://redmine.kozea.fr/projects/radicale/issues). And if you're
fond of logging, you can even add a default configuration file and more debug
messages in the source.

View file

@ -0,0 +1,50 @@
---
layout: page
title: Two Features and One New Roadmap
---
Two features have just reached the master branch, and the roadmap has been
refreshed.
###LDAP Authentication
Thanks to Corentin, the LDAP authentication is now included in Radicale. The
support is experimental and may suffer unstable connexions and security
problems. If you are interested in this feature (a lot of people seem to be),
you can try it and give some feedback.
No SSL support is included yet, but this may be quite easy to add. By the way,
serious authentication methods will rely on a "real" HTTP server, as soon as
Radicale supports WSGI.
###Journal Entries
Mehmet asked for the journal entries (aka. notes or memos) support, that's
done! This also was an occasion to clean some code in the iCal parser, and to
add a much better management of multi-lines entries. People experiencing crazy
`X-RADICALE-NAME` entries can now clean their files, Radicale won't pollute
them again.
###New Roadmap
Except from htpasswd and LDAP, most of the authentication backends (database,
SASL, PAM, user groups) are not really easy to include in Radicale. The easiest
solution to solve this problem is to give Radicale a CGI support, to put it
behind a solid server such as Apache. Of course, CGI is not enough: a WSGI
support is quite better, with the FastCGI, AJP and SCGI backends offered by
[flup](http://trac.saddi.com/flup/). Quite exciting, isn't it?
That's why it was important to add new versions on the roadmap. The 0.6 version
is now waiting for the Apple iCal support, and of course for some tests to kill
the last remaining bugs. The only 0.7 feature will be WSGI, allowing many new
authentication methods and a real multithread support.
After that, 0.8 may add CalDAV rights and filters, while 1.0 will draw
thousands of rainbows and pink unicorns (WebDAV sync, CardDAV, Freebusy). A lot
of funky work is waiting for you, hackers!
###Bugs
Many bugs have also been fixed, most of them due to the owner-less calendars
support. Radicale 0.6 may be out in a few weeks, you should spend some time
testing the master branch and filling the bug tracker.

View file

@ -0,0 +1,18 @@
---
layout: page
title: Apple iCal Support
---
After a long, long work, the iCal support has finally been added to Radicale!
Well, this support is only for iCal 4 and is highly experimental, but you can
test it right now with the git master branch. Bug reports are welcome!
Dear MacOS users, you can thank all the gentlemen who sended a lot of debugging
iformation. Special thanks to Andrew from DAViCal, who helped us a lot with his
tips and his tests, and Rémi Hainaud who lent his laptop for the final tests.
The default server address is ``localhost:5232/user/``, where calendars can be
added. Multiple calendars and owner-less calendars are not tested yet, but they
should work quite well. More documentation will be added during the next
days. It will then be time to release the Radicale 0.6 version, and work on the
WSGI support.

View file

@ -0,0 +1,27 @@
---
layout: page
title: Ready for WSGI
---
Here it is! Radicale is now ready to be launched behind your favourite HTTP
server (Apache, Lighttpd, Nginx or Tomcat for example). That's really good
news, because:
- Real HTTP servers are much more efficient and reliable than the default
Python server used in Radicale;
- All the authentication backends available for your server will be available
for Radicale;
- Thanks to [flup](http://trac.saddi.com/flup), Radicale can be interfaced
with all the servers supporting CGI, AJP, FastCGI or SCGI;
- Radicale works very well without any additional server, without any
dependencies, without configuration, just as it was working before;
- This one more feature removes useless code, less is definitely more.
The WSGI support has only be tested as a stand-alone executable and behind
Lighttpd, you should definitely try if it works with you favourite server too!
No more features will be added before (quite) a long time, because a lot of
documentation and test is waiting for us. If you want to write tutorials for
some CalDAV clients support (iCal, Android, iPhone), HTTP servers support or
logging management, feel free to fork the documentation git repository and ask
for a merge. It's plain text, I'm sure you can do it!

View file

@ -0,0 +1,35 @@
---
layout: page
title: Feature Freeze for 0.6
---
According to the [roadmap](http://redmine.kozea.fr/projects/radicale/roadmap),
a lot of features have been added since Radicale 0.5, much more than
expected. It's now time to test Radicale with your favourite client and to
report bugs before we release the next stable version!
Last week, the iCal and iPhone support written by Łukasz has been fixed in
order to restore the broken Lightning support. After two afternoons of tests
with Rémi, we managed to access the same calendar with Lightning, iCal, iPhone
and Evolution, and finally discovered that CalDAV could also be a perfect
instant messaging protocol between a Mac, a PC and a phone.
After that, we've had the nice surprise to see events displayed without a
problem (but after some strange steps of configuration) by aCal on Salem's
Android phone.
It was Friday, fun fun fun fun.
So, that's it: Radicale supports Lightning, Evolution, Kontact, aCal for
Android, iPhone and iCal. Of course, before releasing a new tarball:
- [documentation](/user_documentation/#starting-the-client) is needed for the
new clients that are not documented yet (Kontact, aCal and iPhone);
- tests are welcome, particularly for the Apple clients that I can't test
anymore;
- no more features will be added, they'll wait in separate branches for the 0.7
development.
Please [report bugs](http://redmine.kozea.fr/projects/radicale/issues) if
anything goes wrong during your tests, or just let us know
[by Jabber or by mail](/contribute/) if everything is OK.

View file

@ -0,0 +1,43 @@
---
layout: page
title: Radicale 0.6 Released
---
Time for a new release with **a lot** of new exciting features!
###0.6 - Sapling
* WSGI support
* IPv6 support
* Smart, verbose and configurable logs
* Apple iCal 4 and iPhone support (by Łukasz Langa)
* CalDAV-Sync support (by Marten Gajda)
* aCal support
* KDE KOrganizer support
* LDAP auth backend (by Corentin Le Bail)
* Public and private calendars (by René Neumann)
* PID file
* MOVE requests management
* Journal entries support
* Drop Python 2.5 support
Well, it's been a little longer than expected, but for good reasons: a lot of
features have been added, and a lot of clients are known to work with Radicale,
thanks to kind contributors. That's definitely good news! But…
Testing all the clients is really painful, moreover for the ones from Apple (I
have no Mac nor iPhone of my own). We should seriously think of automated
tests, even if it's really hard to maintain, and maybe not that useful. If
you're interested in tests, you can look at
[the wonderful regression suite of DAViCal](http://repo.or.cz/w/davical.git/tree/HEAD:/testing/tests/regression-suite).
The new features, for example the WSGI support, are also poorly documented. If
you have some Apache or lighttpd configuration working with Radicale, you can
make the world a little bit better by writing a paragraph or two in the
[Radicale documentation](https://gitorious.org/radicale/website). It's simple
plain text, don't be afraid!
Because of all these changes, Radicale 0.6 may be a little bit buggy; a 0.6.1
will probably be released soon, fixing small problems with clients and
features. Get ready to report bugs, I'm sure that you can find one (and fix
it)!

View file

@ -0,0 +1,53 @@
---
layout: page
title: Radicale 0.6.1, Changes, Future
---
As previously imagined, a new 0.6.1 version has been released, mainly fixing
obvious bugs.
###0.6.1 - Growing Up
* Example files included in the tarball
* htpasswd support fixed
* Redirection loop bug fixed
* Testing message on GET requests
The changelog is really small, so there should be no real new problems since
0.6. The example files for logging, FastCGI and WSGI are now included in the
tarball, for the pleasure of our dear packagers!
A new branch has been created for various future bug fixes. You can expect to
get more 0.6.x versions, making this branch a kind of "stable" branch with no
big changes.
###GitHub, Mailing List, New Website
A lot of small changes occurred during the last weeks.
If you're interested in code and new features, please note that we moved the
project from Gitorious to GitHub. Being hosted by Gitorious was a
nice experience, but the service was not that good and we were missing some
useful features such as git hooks. Moreover, GitHub is really popular, we're
sure that we'll meet a lot of kind users and coders there.
We've also created a mailing-list on Librelist to keep a public
trace of the mails we're receiving. It a bit empty now, but we're sure that
you'll soon write us some kind words. For example, you can tell us what you
think of our new website!
###Future Features
In the next weeks, new exciting features are coming in the master branch! Some
of them are almost ready:
- Henry-Nicolas has added the support for the PAM and Courier-Authdaemon
authentication mechanisms.
- An anonymous called Keith Packard has prepared some small changes, such as
one file per event, cache and git versioning. Yes. Really.
As you can find in the [Radicale Roadmap](http://redmine.kozea.fr/versions/),
tests, rights and filters are expected for 0.7.

View file

@ -0,0 +1,12 @@
---
layout: page
title: Radicale 0.6.2
---
0.6.2 is out with minor bugfixes.
###0.6.2 - Seeds
* iPhone and iPad support fixed
* Backslashes replaced by slashes in PROPFIND answers on Windows
* PyPI archive set as default download URL

View file

@ -0,0 +1,64 @@
---
layout: page
title: Radicale 0.6.3
---
Radicale version 0.6.3 has been released, with bugfixes that could be
interesting for you!
###0.6.3 - Red Roses
* MOVE requests fixed
* Faster REPORT answers
* Executable script moved into the package
###What's New Since 0.6.2?
The MOVE requests were suffering a little bug that is fixed now. These requests
are only sent by Apple clients, Mac users will be happy.
The REPORT request were really, really slow (several minutes for large
calendars). This was caused by an awful algorithm parsing the entire calendar
for each event in the calendar. The calendar is now only parsed three times,
and the events are found in a Python list, turning minutes into seconds! Much
better, but far from perfection…
Finally, the executable script parsing the command line options and starting
the HTTP servers has been moved from the ``radicale.py`` file into the
``radicale`` package. Two executable are now present in the archive: the good
old ``radicale.py``, and ``bin/radicale``. The second one is only used by
``setup.py``, where the hack used to rename ``radicale.py`` into ``radicale``
has therefore been removed. As a consequence, you can now launch Radicale with
the simple ``python -m radicale`` command, without relying on an executable.
###Time for a Stable Release!
The next release may be a stable release, symbolically called 1.0. Guess what's
missing? Tests, of course!
A non-regression testing suite, based on the clients' requests, will soon be
added to Radicale. We're now thinking about a smart solution to store the
tests, to represent the expected answers and to launch the requests. We've got
crazy ideas, so be prepared: you'll definitely *want* to write tests during the
next weeks!
Repeating events, PAM and Courier authentication methods have already been
added in master. You'll find them in the 1.0 release!
###What's Next?
Being stable is one thing, being cool is another one. If you want some cool new
features, you may be interested in:
- WebDAV and CardDAV support
- Filters and rights management
- Multiple storage backends, such as databases and git
- Freebusy periods
- Email alarms
Issues have been reported in the bug tracker, you can follow there the latest
news about these features. Your beloved text editor is waiting for you!

View file

@ -0,0 +1,30 @@
---
layout: page
title: Radicale 0.6.4, News from Calypso
---
New year, new release. Radicale 0.6.4 has a really short changelog:
###0.6.4 - Tulips
* Fix the installation with Python 3.1
The bug was in fact caused by a
[bug in Python 3.1](http://bugs.python.org/issue9561), everything should be OK
now.
###Calypso
After a lot of changes in Radicale, Keith Packard has decided to launch a fork
called [Calypso](http://keithp.com/blogs/calypso/), with nice features such
as a Git storage mechanism and a CardDAV support.
There are lots of differences between the two projects, but the final goal for
Radicale is to provide these new features as soon as possible. Thanks to the
work of Keith and other people on GitHub, a basic CardDAV support has been
added in the [carddav branch](https://github.com/Kozea/Radicale/tree/carddav)
and already works with Evolution. Korganizer also works with existing address
books, and CardDAV-Sync will be tested soon. If you want to test other clients,
please let us know!

View file

@ -0,0 +1,19 @@
---
layout: page
title: Radicale 0.7
---
Radicale 0.7 is out, at least!
###0.7 - Eternal Sunshine
* Repeating events
* Collection deletion
* Courier and PAM authentication methods
* CardDAV support
* Custom LDAP filters supported
**A lot** of people have reported bugs, proposed new features, added useful
code and tested many clients. Thank you Lynn, Ron, Bill, Patrick, Hidde,
Gerhard, Martin, Brendan, Vladimir, and everybody I've forgotten.

View file

@ -0,0 +1,31 @@
---
layout: page
title: Radicale 0.7.1
---
Radicale 0.7.1 is out!
###0.7.1 - Waterfalls
* Many address books fixes
* New IMAP ACL (by Daniel Aleksandersen)
* PAM ACL fixed (by Daniel Aleksandersen)
* Courier ACL fixed (by Benjamin Frank)
* Always set display name to collections (by Oskari Timperi)
* Various DELETE responses fixed
It's been a long time since the last version… As usual, many people have
contributed to this new version, that's a pleasure to get these pull requests.
Most of the commits are bugfixes, especially about ACL backends and address
books. Many clients (including aCal and SyncEvolution) will be much happier
with this new version than with the previous one.
By the way, one main new feature has been added: a new IMAP ACL backend, by
Daniel. And about authentication, exciting features are coming soon, stay
tuned!
Next time, as many mails have come from angry and desperate coders, tests will
be *finally* added to help them to add features and fix bugs. And after that,
who knows, it may be time to release Radicale 1.0…

View file

@ -0,0 +1,50 @@
---
layout: page
title: Radicale 0.8
---
Radicale 0.8 is out!
###0.8 - Rainbow
* New authentication and rights management modules (by Matthias Jordan)
* Experimental database storage
* Command-line option for custom configuration file (by Mark Adams)
* Root URL not at the root of a domain (by Clint Adams, Fabrice Bellet, Vincent Untz)
* Improved support for iCal, CalDAVSync, CardDAVSync, CalDavZAP and CardDavMATE
* Empty PROPFIND requests handled (by Christoph Polcin)
* Colon allowed in passwords
* Configurable realm message
This version brings some of the biggest changes since Radicale's creation,
including an experimental support of database storage, clean authentication
modules, and rights management finally designed for real users.
So, dear user, be careful: **this version changes important things in the
configuration file, so check twice that everything is OK when you update to
0.8, or you can have big problems**.
More and more clients are supported, as a lot of bug fixes and features have
been added for this purpose. And before you ask: yes, 2 web-based clients,
[CalDavZAP and CardDavMATE](http://www.inf-it.com/open-source/clients/), are
now supported!
Even if there has been a lot of time to test these new features, I am pretty
sure that some really annoying bugs have been left in this version. We will
probably release minor versions with bugfixes during the next weeks, and it
will not take one more year to reach 0.8.1.
The documentation has been updated, but some parts are missing and some may be
out of date. You can [report bugs](https://github.com/Kozea/Radicale/issues)
or even [write documentation directly on GitHub](https://github.com/Kozea/Radicale/blob/website/pages/user_documentation.rst)
if you find something strange (and you probably will).
If anything is not clear, or if the way rights work is a bit complicated to
understand, or if you are so happy because everything works so well, you can
[share your thoughts](/contribute/)!
It has been a real pleasure to work on this version, with brilliant ideas and
interesting bug reports from the community. I'd really like to thank all the
people reporting bugs, chatting on IRC, sending mails and proposing pull
requests: you are awesome.

View file

@ -0,0 +1,31 @@
---
layout: page
title: Radicale 0.10
---
Radicale 0.10 is out!
###0.10 - Lovely Endless Grass
* Support well-known URLs (by Mathieu Dupuy)
* Fix collection discovery (by Markus Unterwaditzer)
* Reload logger config on SIGHUP (by Élie Bouttier)
* Remove props files when deleting a collection (by Vincent Untz)
* Support salted SHA1 passwords (by Marc Kleine-Budde)
* Don't spam the logs about non-SSL IMAP connections to localhost (by Giel van Schijndel)
This version should bring some interesting discovery and auto-configuration
features, mostly with Apple clients.
Lots of love and kudos for the people who have spent hours to test features and
report issues, that was long but really useful (and some of you have been
really patient :p).
Issues are welcome, I'm sure that you'll find horrible, terrible, crazy bugs
faster than me. I'll release a version 0.10.1 if needed.
What's next? It's time to fix and improve the storage methods. A real API for
the storage modules is a good beginning, many pull requests are already ready
to be discussed and merged, and we will probably get some good news about
performance this time. Who said "databases, please"?

View file

@ -0,0 +1,78 @@
---
layout: page
title: Radicale 1.0, what's next?
---
Radicale 1.0 is out!
###1.0 - Sunflower
* Enhanced performances (by Mathieu Dupuy)
* Add MD5-APR1 and BCRYPT for htpasswd-based authentication (by Jan-Philip Gehrcke)
* Use PAM service (by Stephen Paul Weber)
* Don't discard PROPPATCH on empty collections (Markus Unterwaditzer)
* Write the path of the collection in the git message (Matthew Monaco)
* Tests launched on Travis
As explained in a previous [mail](http://librelist.com/browser//radicale/2015/8/21/radicale-1-0-is-coming-what-s-next/),
this version is called 1.0 because:
- there are no big changes since 0.10 but some small changes are really useful,
- simple tests are now automatically launched on Travis, and more can be added
in the future (https://travis-ci.org/Kozea/Radicale).
This version will be maintained with only simple bug fixes on a separate git
branch called ``1.0.x``.
Now that this milestone is reached, it's time to think about the future. When
Radicale has been created, it was just a proof-of-concept. The main goal was to
write a small, stupid and simple CalDAV server working with Lightning, using no
external libraries. That's how we created a piece of code that's (quite) easy
to understand, to use and to hack.
The first lines have been added to the SVN (!) repository as I was drinking
beers at the very end of 2008. It's now packaged for a growing number of Linux
distributions.
And that was fun going from here to there thanks to you. So… **Thank you,
you're amazing**. I'm so glad I've spent endless hours fixing stupid bugs,
arguing about databases and meeting invitations, reading incredibly interesting
RFCs and debugging with the fabulous clients from Apple. I mean: that really,
really was really, really cool :).
During these years, a lot of things have changed and many users now rely on
Radicale in production. For example, I use it to manage medical calendars, with
thousands requests per day. Many people are happy to install Radicale on their
small home servers, but are also frustrated by performance and unsupported
specifications when they're trying to use it seriously.
So, now is THE FUTURE! I think that Radicale 2.0 should:
- rely on a few external libraries for simple critical points (dealing with
HTTP and iCal for example),
- be thread-safe,
- be small,
- be documented in a different way (for example by splitting the client part
from the server part, and by adding use cases),
- let most of the "auth" modules outside in external modules,
- have more and more tests,
- have reliable and faster filesystem and database storage mechanisms,
- get a new design :).
I'd also secretly love to drop the Python 2.x support.
These ideas are not all mine (except from the really, really, really important
"design" point :p), they have been proposed by many developers and users. I've
just tried to gather them and keep points that seem important to me.
Other points have been discussed with many users and contibutors, including:
- support of other clients, including Windows and BlackBerry phones,
- server-side meeting invitations,
- different storage system as default (or even unique?).
I'm not a huge fan of these features, either because I can't do anything about
them, or because I think that they're Really Bad Ideas®™. But I'm ready to talk
about them, because, well, I may not be always right!
Need to talk about this? You know how to [contact us](/contribute/)!

View file

@ -0,0 +1,35 @@
---
layout: page
title: Radicale 1.1
---
Radicale 1.1 is out!
###1.1 - Law of Nature
One feature in this release is **not backward compatible**:
* Use the first matching section for rights (inspired from daald)
Now, the first section matching the path and current user in your custom rights
file is used. In the previous versions, the most permissive rights of all the
matching sections were applied. This new behaviour gives a simple way to make
specific rules at the top of the file independant from the generic ones.
Many **improvements in this release are related to security**, you should
upgrade Radicale as soon as possible:
* Improve the regex used for well-known URIs (by Unrud)
* Prevent regex injection in rights management (by Unrud)
* Prevent crafted HTTP request from calling arbitrary functions (by Unrud)
* Improve URI sanitation and conversion to filesystem path (by Unrud)
* Decouple the daemon from its parent environment (by Unrud)
Some bugs have been fixed and little enhancements have been added:
* Assign new items to corret key (by Unrud)
* Avoid race condition in PID file creation (by Unrud)
* Improve the docker version (by cdpb)
* Encode message and commiter for git commits
* Test with Python 3.5

26
contribute.md Normal file
View file

@ -0,0 +1,26 @@
---
layout: page
title: Contribute
permalink: /contribute/
---
## Send Us a Mail
Want to write kind words? You can send a mail on
[our Librelist mailing-list](mailto:radicale@librelist.com) and even
take a look at [the archives](http://librelist.com/browser/radicale/).
## Chat with Us on IRC
Want to say something? Join our IRC room: `##kozea` on Freenode.
## Report Bugs
Found a bug? Want a new feature? Report a new issue on the
[Radicale bug-tracker](https://github.com/Kozea/Radicale/issues).
## Hack
Interested in hacking? Feel free to clone the
[git repository on Github](https://github.com/Kozea/Radicale) if you want to
add new features, fix bugs or update documentation.

10
css/logo.svg Normal file
View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="200" height="300" xmlns="http://www.w3.org/2000/svg">
<path fill="#a40000" d="M 186,188 C 184,98 34,105 47,192 C 59,279 130,296 130,296 C 130,296 189,277 186,188 z" />
<path fill="#ffffff" d="M 73,238 C 119,242 140,241 177,222 C 172,270 131,288 131,288 C 131,288 88,276 74,238 z" />
<g fill="none" stroke="#4e9a06" stroke-width="15">
<path d="M 103,137 C 77,69 13,62 13,62" />
<path d="M 105,136 C 105,86 37,20 37,20" />
<path d="M 105,135 C 112,73 83,17 83,17" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 564 B

191
css/main.scss Executable file
View file

@ -0,0 +1,191 @@
---
# Scss for Radicale
---
@charset "utf-8";
@import url(https:\/\/fonts.googleapis.com/css?family=Oxygen:400,300);
body {
background: #e4e9f6;
color: #424247;
display: flex;
flex-direction: column;
font-family: Oxygen, sans;
font-size: 14pt;
margin: 0;
min-height: 100vh;
}
a {
color: inherit;
}
nav, footer {
background: #a40000;
color: white;
padding: 0 20%;
ul {
display: flex;
flex-wrap: wrap;
margin: 0;
padding: 0;
li {
display: block;
padding: 0 1em 0 0;
a {
color: inherit;
display: block;
padding: 1em 0.5em 1em 0;
text-decoration: inherit;
transition: 0.2s;
&:hover,
&:focus {
color: black;
outline: none;
}
}
}
}
}
header {
background: url(logo.svg), linear-gradient(to bottom right, rgba(5, 10, 2, 1), rgba(0, 0, 0, 1));
background-position: 22% 45%;
background-repeat: no-repeat;
color: #efdddd;
font-size: 1.5em;
min-height: 250px;
overflow: auto;
padding: 3em 22%;
text-shadow: 0.2em 0.2em 0.2em rgba(0, 0, 0, 0.5);
& > * {
padding-left: 220px;
}
h1 {
font-size: 2.5em;
font-weight: lighter;
margin: 0.5em 0;
}
}
main {
flex: 1;
}
section {
padding: 0 20% 2em;
&:not(:last-child) {
border-bottom: 1px dashed #ccc;
}
h1 {
background: linear-gradient(to bottom right, rgba(5, 10, 2, 1), rgba(0, 0, 0, 1));
color: #e5dddd;
font-size: 2.5em;
margin: 0 -33.33% 1em;
padding: 1em 33.33%;
}
h2, h3, h4 {
font-weight: lighter;
margin: 1.5em 0 1em;
}
}
article {
border-top: 1px solid transparent;
position: relative;
margin: 3em 0;
aside {
box-sizing: border-box;
color: #aaa;
font-size: 0.8em;
right: -30%;
top: 0.5em;
position: absolute;
}
&:before {
border-top: 1px dashed #ccc;
content: '';
display: block;
left: -33.33%;
position: absolute;
right: -33.33%;
}
}
pre {
border-radius: 3px;
background: black;
color: #d3d5db;
margin: 0 -1em;
overflow-x: auto;
padding: 1em;
}
@media (max-width: 800px) {
body {
font-size: 12pt;
}
header, section {
padding-left: 2em;
padding-right: 2em;
}
nav, footer {
padding-left: 0;
padding-right: 0;
ul {
justify-content: center;
li {
padding: 0 0.5em;
a {
padding: 1em 0;
}
}
}
}
header {
background-position: 50% 30px, 0 0;
padding-bottom: 0;
padding-top: 330px;
text-align: center;
& > * {
margin: 0;
padding-left: 0;
}
}
section h1 {
margin: 0 -0.8em 1.3em;
padding: 0.5em 0;
text-align: center;
}
article {
aside {
top: 0.5em;
right: -1.5em;
}
&:before {
left: -2em;
right: -2em;
}
}
}

5
documentation.md Normal file
View file

@ -0,0 +1,5 @@
---
layout: page
title: Documentation
permalink: /documentation/
---

62
download.md Normal file
View file

@ -0,0 +1,62 @@
---
layout: page
title: Download
permalink: /download/
---
## PyPI
Radicale is [available on PyPI](http://pypi.python.org/pypi/Radicale/). To
install, just type as superuser:
pip install radicale
## Git Repository
If you want the development version of Radicale, take a look at the
[git repository on GitHub]({{ site.github.repository_url }}), or clone it
thanks to:
git clone git://github.com/Kozea/Radicale.git
You can also download
[the Radicale package of the git repository](https://github.com/Kozea/Radicale/tarball/master).
## Source Packages
You can download the Radicale package for each release:
{% if site.github.releases %}
{% for release in site.github.releases | where:"draft",false | sort:"created_at" | reverse %}
- [Radicale-{{ release.tag_name }}.tar.gz](http://pypi.python.org/packages/source/R/Radicale/Radicale-{{ release.tag_name }}.tar.gz)
{% endfor %}
{% endif %}
## Linux Distribution Packages
Radicale has been packaged for:
- [ArchLinux (AUR)](https://aur.archlinux.org/packages/radicale/) by
Guillaume Bouchard
- [Debian](http://packages.debian.org/radicale) by Jonas Smedegaard
- [Gentoo (Sunrise Overlay)](http://bugs.gentoo.org/show_bug.cgi?id=322811)
by René Neumann
- [Fedora](https://admin.fedoraproject.org/pkgdb/package/radicale/) by Jorti
- [Mandriva/Mageia](http://sophie.zarb.org/search/results?search=radicale) by Jani
Välimaa
- [OpenBSD](http://openports.se/productivity/radicale) by Sergey Bronnikov,
Stuart Henderson and Ian Darwin
- [openSUSE](http://software.opensuse.org/package/Radicale?search_term=radicale)
- [PyPM](http://code.activestate.com/pypm/radicale/)
- [Slackware](http://schoepfer.info/slackware.xhtml#packages-network) by
Johannes Schöpfer
- [Trisquel](http://packages.trisquel.info/search?searchon=names&keywords=radicale)
- [Ubuntu](http://packages.ubuntu.com/radicale) by the MOTU and Jonas
Smedegaard
Radicale is also
[available on Cloudron](https://cloudron.io/button.html?app=org.radicale.cloudronapp)
and has a Dockerfile.
If you are interested in creating packages for other Linux distributions, read
the ["Contribute" page](/contribute/).

30
feed.xml Normal file
View file

@ -0,0 +1,30 @@
---
layout: null
---
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>{{ site.title | xml_escape }}</title>
<description>{{ site.description | xml_escape }}</description>
<link>{{ site.url }}{{ site.baseurl }}/</link>
<atom:link href="{{ "/feed.xml" | prepend: site.baseurl | prepend: site.url }}" rel="self" type="application/rss+xml" />
<pubDate>{{ site.time | date_to_rfc822 }}</pubDate>
<lastBuildDate>{{ site.time | date_to_rfc822 }}</lastBuildDate>
<generator>Jekyll v{{ jekyll.version }}</generator>
{% for post in site.posts limit:10 %}
<item>
<title>{{ post.title | xml_escape }}</title>
<description>{{ post.content | xml_escape }}</description>
<pubDate>{{ post.date | date_to_rfc822 }}</pubDate>
<link>{{ post.url | prepend: site.baseurl | prepend: site.url }}</link>
<guid isPermaLink="true">{{ post.url | prepend: site.baseurl | prepend: site.url }}</guid>
{% for tag in post.tags %}
<category>{{ tag | xml_escape }}</category>
{% endfor %}
{% for cat in post.categories %}
<category>{{ cat | xml_escape }}</category>
{% endfor %}
</item>
{% endfor %}
</channel>
</rss>

57
index.html Normal file
View file

@ -0,0 +1,57 @@
---
layout: default
---
<header>
<h1>{{ site.title }}</h1>
<p>{{ site.description }}</p>
</header>
<main>
<section>
<h2>About {{ site.title }}</h2>
<p>
{{ site.title }} is a small but powerful CalDAV (calendars, todo-lists) and CardDAV
(contacts) server, that:
</p>
<ul>
<li>Shares calendars through CalDAV, WebDAV and HTTP.
<li>Shares contacts through CardDAV, WebDAV and HTTP.
<li>Supports events, todos, journal entries and business cards.
<li>Works out-of-the-box, no installation nor configuration required.
<li>Warns users on concurrent editing.
<li>Can limit access by authentication.
<li>Can secure connections.
<li>Works with many CalDAV and CardDAV clients.
<li>Is GPLv3-licensed free software.
</ul>
</section>
<section>
<h2>Installation</h2>
<p>
{{ site.title }} is really easy to install and works out-of-the-box.
</p>
<pre>$ pip install radicale
$ radicale --verbose
Listening to localhost port 5232
Radicale server ready</pre>
</section>
<section>
<h2>What's new?</h2>
{% if site.github.releases %}
{% assign releases = site.github.releases | where:"draft",false | sort:"created_at" | reverse %}
{% assign latest_release = releases[0] %}
{% endif %}
<p>
Latest version of {{ site.title }} is {{ latest_release.tag_name }},
released on {{ latest_release.created_at | date: "%B %-d, %Y" }}
(<a href="https://github.com/Kozea/{{ site.title }}/blob/master/NEWS.rst">changelog</a>).
</p>
<aside><a href="/news/">Read latest news…</a></aside>
</section>
</main>

25
news.html Normal file
View file

@ -0,0 +1,25 @@
---
layout: page
title: News
permalink: /news/
---
<main>
{% if site.github.releases %}
{% assign releases = site.github.releases | where:"draft",false | sort:"created_at" | reverse %}
{% assign latest_release = releases[0] %}
{% endif %}
<p>
Latest version of {{ site.title }} is {{ latest_release.tag_name }},
released on {{ latest_release.created_at | date: "%B %-d, %Y" }}
(<a href="https://github.com/Kozea/{{ site.title }}/blob/master/NEWS.rst">changelog</a>).
</p>
{% for post in site.posts %}
<article>
<h2>{{ post.title }}</h2>
<aside>{{ post.date | date: "%B %-d, %Y" }}</aside>
{{ post.content }}
</article>
{% endfor %}
</main>