aboutsummaryrefslogtreecommitdiff
path: root/doc/release_notes_2.0.0.txt
blob: c0c6826fcc8bb22603d49a3c08f87cc06b63214f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
			      Release Notes
			   ejabberd 2.0.0 beta 1
			     24 december 2007

  ejabberd 2.0.0 is a major new version for ejabberd adding plenty of
  new features, performance and scalability improvements and
  architectural changes.

  ejabberd 2.0.0 includes near than 200 improvements over ejabberd
  1.1.x. A complete list of changes can be retrieved from:
   http://redir.process-one.net/ejabberd-2.0.0

  The new code can be downloaded from ejabberd download page:
     http://www.process-one.net/en/ejabberd/


   Recent changes include:


* Clustering and Architecture

- New front-end and back-end cluster architecture for better
  scalability and robustness. Back-end nodes are able to run a fully
  fault-tolerant XMPP router and services, but you can now deploy
  many front-end nodes to share the load without needing to synchronize
  any state with the back-ends.
- All components now run in cluster mode (For example, Multi-User chat
  service and file transfer proxy).
- New load balancing algorithm to support Multi-User chat and gateways
  clustering. More generally it supports any external component load
  balancing.
- ejabberd watchdog to receive warning on suspicious resources consumption.
- Traffic shapers are now supported on components. This protect
  ejabberd from components and gateways abuses.


* Publish and Subscribe

- Complete rewrite of the PubSub module. The new PubSub module is
  plugin-based, allowing developers to create new nodes type. Any
  application can be plugged to ejabberd and can provide rich presence
  as a pubsub plugin.
- Personal Eventing via Pubsub support (XEP-0163). This module is
  implemented as a PubSub service. It supports user mood (XEP-107),
  User Tune (XEP-118), user location (XEP-0080) or user avatar
  (XEP-0084) for example.


* Server to Server (s2s)

- More robust code with connection timeout implementation.
- Support for multiple s2s connections per domain.
- s2s whitelist and blacklist support.
- s2s retrial interval.


* LDAP

- Many enterprise-class enhancements such as better behaviour under
  heavy load.
- Support for LDAP servers pool.
- Simplified use of virtual hosting with LDAP with domain substitution
  in config.
- Ability to match on several userid attibutes.


* Multi-user chat

- Clustering and load balancing support.
- Ability to define default room configuration in ejabberd config file.
- Many anti abuse features have been added:
  . New ACL to limit the creation of persistent room to autorized users.
  . Ability to define the maximum number of users per room.
  . Limitation of the rate of message and presence packets.
  . Limitation of the maximum number of room a user can join at the same time.


* File transfer

- XEP-0065 - Proxy65 file transfer proxy. The proxy can run in
  cluster mode.


* Authentication

- PAM (Pluggable Authentication Modules) support on *nix systems.
- External Authentication protocol is now fully documented.


* Web client support

- XEP-0124 - BOSH support: BOSH (Bidirectional-streams Over
  Synchronous HTTP) was formerly known as "HTTP binding". It provides
  an efficient alternative to HTTP polling for scalable Web based chat
  solutions.
- HTTP module can now serve static documents (with
  mod_http_fileserver). It is needed for high-performance Web2.0 chat
  / IM application. System administrators can now avoid using a proxy
  (like Apache) that handles much less simultaneous than ejabberd HTTP
  module.
- Added limitations enforcement on HTTP poll and HTTP bind modules
  (bandwidth, packet size).


* System administration

- XEP-0133 - Service administration support. System administrators can
  now perform lot of ejabberd related admin tasks from their XMPP
  client, through adhoc commands.
- Dynamic log levels: Improved logging with more log levels. You can
  now change the loglevel at run time. No performance penalty is
  involved when less verbose levels are used.
- Better command-line tool, with more options available.


* Localization

- ejabberd is now available in 22 languages: Catalan, Chinese, Czech,
  Dutch, English, French, Galicia, German, Italian, Japanese, Polish,
  Portuguese, Portuguese (Brazil), Russian, Slovak, Spanish, Swedish,
  Thai, Turkish, Ukrainian, Vietnamese, Wallon.


* Build and Installer

- Many launch script improvements.
- New translations. The binary installer is now available in Chinese,
  Dutch, English, French, German, Spanish, Russian.
- Makefile now implements uninstall command.
- Full MacOSX compliance in Makefile.
- Configure script is clever at finding libraries in unusual places.
				   
				   
* Development API

- Several hooks have been added for module developers (most notably
  presence related hooks).
- HTTP request handler to write HTTP based plugins.
- Manage connections IP address.


* Bugfixes

- ejabberd 2.0 also fixes numerous small bugs :) Read the full
  changelog for details.


Bugs report

  You can officially report bugs on Process-one support site:
  https://support.process-one.net/

END