Skip to content

Commit

Permalink
Release 3.2.0 - various updates
Browse files Browse the repository at this point in the history
  • Loading branch information
fenek committed Nov 20, 2018
1 parent d38e6d4 commit ef5dc64
Show file tree
Hide file tree
Showing 6 changed files with 144 additions and 40 deletions.
108 changes: 105 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,115 @@
# [MongooseIM 3.1.0](https://github.com/esl/MongooseIM/releases/tag/3.1.0) - 2018-07-24
# [MongooseIM 3.1.0](https://github.com/esl/MongooseIM/releases/tag/3.2.0) - 2018-11-20

## Highlights

- Client Certificate authentication for Websockets and BOSH
- Inbox improvements (push notifications integration)
- Unified outgoing connections pools

## All changes

### Added

- Improvements in `mod_inbox`:
- User can show only active/all conversations (#2017)
- Inbox IQ result stanza provides a total unread messages count and an active conversation count (#2047, #2056)
- If an inbox query is malformed, a descriptive error is returned (#2052)
- `mod_inbox` is integrated with `mod_event_pusher`, so push notifications now include an unread messages count (#2078)
- SASL EXTERNAL may be used with WebSockets and BOSH (#2093)
- `mongoose_wpool` abstraction layer (#2060, #2099, #2117)
- `rdbms`, `redis`, `riak`, `cassandra`, `http` ,`generic` and `elasticsearch` pools are started via `outgoing_pools` config option (#2077, #2079, #2084, #2087, #2101)
- Self-signed certificates may be used with `fast_tls` driver (#2102)
- `mongoose_bin` module unifies random strings generation API (#2000)
- Modules may specify "optional" dependencies to enforce the startup order (but not the startup itself) (#2029)
- Switchable RDBMS backend for `mod_pubsub` - experimental (#2122, #2113, #2129, #2131, #2134)
- Changing MUC Light room configurations is possible via REST API (#2030)
- New Message Archive Management metrics for async writers (#2023)
- New Makefile target to check code style with Elvis (#2111)

### Changed

- `ejabberd.cfg` is renamed to `mongooseim.cfg`
- OTP versions older than 19.0 are no longer supported (#2002)
- "ODBC" usage has been clarified and it has been renamed to RDBMS where relevant (#2053)
- Mongoose accumulator v2.0 is more difficult to abuse and has less implicit logic (#2076)
- Pre 1.0 XML streams are no longer supported (so is non-SASL authentication) (#1998)
- Improvements in http backend of `mod_event_pusher` (#2100)
- Cassandra layer uses a standard MIM worker pool instead of a custom one (#2043)
- Deprecated `gen_fsm` is replaced by `gen_fsm_compat` (#1996)
- Updated dependencies:
- `fast_tls` 1.0.23 (#2002)
- `worker_pool` 3.1.1 (#2002)
- `esl/cqerl` `master` (#2002)
- `epgsql` 4.1.0 (#2002)
- `arcusfelis/eodbc` `master` (#2002)
- `tirerl` 1.1.0 (#2002)
- `cache_tabz 1.0.12 (#2002)
- `stringprep` 1.0.12 (#2002)
- `proper` 1.2.0 from hex.pm (#2002)
- `meck` 0.8.11 (#2002)
- `erszcz/pa` `master` (#2002)
- `bbmustache` 1.5.0 (#2002)
- `recon` 2.3.6 (#2002)
- `erlcloud` 3.1.12 (#2002)
- `jwerl` 1.0.0 (#2002)
- `observer_cli` 1.3.3 (#2002)
- `eredis` 1.1.0
- `lasse` 1.2.0 (#2016)
- `cowboy` 2.4.0 (#2016, #2088)
- `exml` 3.0.2 (#2050)
- `shotgun` `9b6c1df` (#2092)
- `escalus` `592deba` (#2016, #2092)
- `igors/eredis` `e9688a1` (#2042)
- Implementation of MUC Light user affiliation logic is more developer-friendly (#1934)
- Generation of codecov-compatible coverage report is extracted to `rebar3_codecov` plugin (#2073)
- `mod_muc` uses maps instead of dictionaries ( #1986)
- Shaper workers are organised under dedicated supervisor (#2130)

### Fixed
- Config reload in cluster had broken verification logic (#2051)
- `fusco` clients are now properly closed in `mod_revproxy` (#2118)
- Backend proxy modules are loaded only once (#1438)
- Node cleaners are no longer crashing (#2135)
- Test runner
- Tests are counted properly on macOS (#2004)
- Appropriate error is returned, when there are no test nodes. (#2004)
- Improved test specs generation and autocompletion (#2036)
- Minor fixes (#2010, #2046, #2069, #2086, #2123)
- `rebar3` release generation with OTP 21 (update to 3.6.1) (#2037)
- `NkSERVICE` cache dir configuration works as expected now (#2058)
- Dialyzer job on Travis runs with Erlang/OTP 21 and returns no errors (#2075)

### Other

- SASL authentication refactored (#2045)
- Build improvements (#1015)
- Documentation fixes and improvements ( #1527, #2024, #2038, #2039, #2012)
- Tests improvements and refactoring (#1448, #1990, #2007, #2048, #2061, #2085, #2120, #2132, #2133)
- Codecov thresholds for a failed build are now set to 0.5% (#1957)
- Minor cleanup (#1553, #2081)

## Commits, merged PRs and closed issues

- [List of merged PRs](https://github.com/esl/MongooseIM/issues?q=is%3Aclosed+milestone%3A3.2.0+sort%3Acreated-asc)
- [List of closed issues](https://github.com/esl/MongooseIM/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aclosed%20closed%3A%222018-07-25..2018-11-20%22%20)
- [Repository history for this release](https://github.com/esl/MongooseIM/graphs/contributors?from=2018-07-25&to=2018-11-20&type=c)

Special thanks to our contributors: @getong @igors @justinba1010 !

# [MongooseIM 3.1.0](https://github.com/esl/MongooseIM/releases/tag/3.1.0) - 2018-07-24

## Highlights - 3.1.x

- Inbox extension enters beta stage, improved with MUC, timestamps and MSSQL support
- Test Runner - comprehensive tool for executing tests locally
- OTP 21 support
- ElasticSearch backend for message archive

## All changes
## Patch: 3.1.1

- Updated `exml` to `3.0.2`, fixing an important security issue.

## All changes - 3.1.0

### Added

Expand Down Expand Up @@ -73,7 +175,7 @@
- [List of closed issues](https://github.com/esl/MongooseIM/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aclosed%20closed%3A%222018-05-23..2018-07-24%22%20)
- [Repository history for this release](https://github.com/esl/MongooseIM/graphs/contributors?from=2018-05-23&to=2018-07-24&type=c)

Special thanks to our contributors: @SamuelNichols @Beisenbek @GalaxyGorilla !
Special thanks to our contributors: @SamuelNichols @Beisenbek @GalaxyGorilla @igors !

# [MongooseIM 3.0.0](https://github.com/esl/MongooseIM/releases/tag/3.0.0) - 2018-05-22

Expand Down
45 changes: 23 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
# MongooseIM platform

[![Build Status](https://travis-ci.org/esl/MongooseIM.svg?branch=master)](https://travis-ci.org/esl/MongooseIM)
[![Documentation Status](https://readthedocs.org/projects/mongooseim/badge/?version=latest)](http://mongooseim.readthedocs.org/en/latest/?badge=latest)
[![Documentation Status](https://readthedocs.org/projects/mongooseim/badge/?version=latest)](https://mongooseim.readthedocs.org/en/latest/?badge=latest)
[![Coverage Status](https://img.shields.io/coveralls/esl/MongooseIM.svg)](https://coveralls.io/r/esl/MongooseIM?branch=master)
[![codecov](https://codecov.io/gh/esl/MongooseIM/branch/master/graph/badge.svg)](https://codecov.io/gh/esl/MongooseIM)
[![GitHub release](https://img.shields.io/github/release/esl/MongooseIM.svg)](https://github.com/esl/MongooseIM/releases)


* [Getting started](http://mongooseim.readthedocs.io/en/latest/user-guide/Getting-started/)
* [Developer's guide](http://mongooseim.readthedocs.io/en/latest/developers-guide/Testing-MongooseIM/)
* [Getting started](https://mongooseim.readthedocs.io/en/latest/user-guide/Getting-started/)
* [Developer's guide](https://mongooseim.readthedocs.io/en/latest/developers-guide/Testing-MongooseIM/)
* [Packages](https://www.erlang-solutions.com/resources/download.html)
* Product page: [https://www.erlang-solutions.com/products/mongooseim.html](https://www.erlang-solutions.com/products/mongooseim.html)
* Documentation: [http://mongooseim.readthedocs.org/](http://mongooseim.readthedocs.org/)
* Documentation: [https://mongooseim.readthedocs.org/](https://mongooseim.readthedocs.org/)

## Get to know MongooseIM
MongooseIM is a robust and efficient chat (or instant messaging) platform aimed at large installations.
Expand All @@ -37,7 +37,7 @@ It is brought to you by [Erlang Solutions](https://www.erlang-solutions.com/).

* Home: [http://github.com/esl/MongooseIM](http://github.com/esl/MongooseIM)
* Product page: [https://www.erlang-solutions.com/products/mongooseim.html](https://www.erlang-solutions.com/products/mongooseim.html)
* Documentation: [http://mongooseim.readthedocs.org/](http://mongooseim.readthedocs.org/)
* Documentation: [https://mongooseim.readthedocs.org/](https://mongooseim.readthedocs.org/)



Expand All @@ -62,35 +62,36 @@ Check out our test results:

## Documentation

Up-to-date documentation for the MongooseIM master branch can be found on ReadTheDocs: [http://mongooseim.readthedocs.io/en/latest/](http://mongooseim.readthedocs.io/en/latest/).
Up-to-date documentation for the MongooseIM master branch can be found on ReadTheDocs: [https://mongooseim.readthedocs.io/en/latest/](https://mongooseim.readthedocs.io/en/latest/).

Latest releases:
* [3.1.0](http://mongooseim.readthedocs.io/en/3.1.0/)
* [3.0.0](http://mongooseim.readthedocs.io/en/3.0.0/)
* [2.2.2](http://mongooseim.readthedocs.io/en/2.2.2/)
* [2.1.1](http://mongooseim.readthedocs.io/en/2.1.1/)
* [2.1.0](http://mongooseim.readthedocs.io/en/2.1.0/)
* [2.0.1](http://mongooseim.readthedocs.io/en/2.0.1/)
* [2.0.0](http://mongooseim.readthedocs.io/en/2.0.0/)
* [1.6.2](http://mongooseim.readthedocs.io/en/1.6.2/)
* [1.6.1](http://mongooseim.readthedocs.io/en/1.6.1/)
* [1.6.0](http://mongooseim.readthedocs.io/en/1.6.0/)
* [3.2.0](https://mongooseim.readthedocs.io/en/3.2.0/)
* [3.1.0](https://mongooseim.readthedocs.io/en/3.1.0/)
* [3.0.0](https://mongooseim.readthedocs.io/en/3.0.0/)
* [2.2.2](https://mongooseim.readthedocs.io/en/2.2.2/)
* [2.1.1](https://mongooseim.readthedocs.io/en/2.1.1/)
* [2.1.0](https://mongooseim.readthedocs.io/en/2.1.0/)
* [2.0.1](https://mongooseim.readthedocs.io/en/2.0.1/)
* [2.0.0](https://mongooseim.readthedocs.io/en/2.0.0/)
* [1.6.2](https://mongooseim.readthedocs.io/en/1.6.2/)
* [1.6.1](https://mongooseim.readthedocs.io/en/1.6.1/)
* [1.6.0](https://mongooseim.readthedocs.io/en/1.6.0/)


**MongooseIM documentation highligts:**

When developing new features/modules, please make sure you add basic documentation to the 'doc/' directory, and add a link to your document in 'doc/README.md.'

* [Tutorials](http://mongooseim.readthedocs.io/en/latest/user-guide/How-to-build/). Learn how to:
* [Tutorials](https://mongooseim.readthedocs.io/en/latest/user-guide/How-to-build/). Learn how to:
* [Build MongooseIM from source code](doc/user-guide/How-to-build.md)
* [Set up MongoosePush](doc/user-guide/Push-notifications.md)
* [Set up MongooseICE](doc/user-guide/ICE_tutorial.md)
* [Build an iOS messaging app](doc/user-guide/iOS_tutorial.md)
* [User Guide](http://mongooseim.readthedocs.io/en/latest/user-guide/Get-to-know-MongooseIM/). Learn all about how to use MongooseIM in your project. Explore its features, supported XEPs, RFCs and database backends, as well as its architecture and deployment strategies.
* [Platform](http://mongooseim.readthedocs.io/en/latest/Roadmap/). Get to know our roadmap, MongooseIM history and see how we contribute to third-party opensource projects.
* [Configuration](http://mongooseim.readthedocs.io/en/latest/Basic-configuration/). Explore some of the available options including database backend configuration, access control lists, listener and extension modules.
* [REST API](http://mongooseim.readthedocs.io/en/latest/rest-api/Client-frontend/). Explore MongooseIM features using our REST API and [Swagger documentation](http://mongooseim.readthedocs.io/en/latest/swagger/index.html).
* [Operation and maintenance](http://mongooseim.readthedocs.io/en/latest/operation-and-maintenance/Cluster-management-considerations/). See what to consider when building, monitoring, testing and distributing MongooseIM clusters.
* [User Guide](https://mongooseim.readthedocs.io/en/latest/user-guide/Get-to-know-MongooseIM/). Learn all about how to use MongooseIM in your project. Explore its features, supported XEPs, RFCs and database backends, as well as its architecture and deployment strategies.
* [Platform](https://mongooseim.readthedocs.io/en/latest/Roadmap/). Get to know our roadmap, MongooseIM history and see how we contribute to third-party opensource projects.
* [Configuration](https://mongooseim.readthedocs.io/en/latest/Basic-configuration/). Explore some of the available options including database backend configuration, access control lists, listener and extension modules.
* [REST API](https://mongooseim.readthedocs.io/en/latest/rest-api/Client-frontend/). Explore MongooseIM features using our REST API and [Swagger documentation](https://mongooseim.readthedocs.io/en/latest/swagger/index.html).
* [Operation and maintenance](https://mongooseim.readthedocs.io/en/latest/operation-and-maintenance/Cluster-management-considerations/). See what to consider when building, monitoring, testing and distributing MongooseIM clusters.
* [Server developer's guide](doc/developers-guide/Testing-MongooseIM.md). Get all the information you need to expand MongooseIM platform.


Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.1.0
3.2.0
27 changes: 14 additions & 13 deletions doc/index.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# MongooseIM platform
[![Build Status](https://travis-ci.org/esl/MongooseIM.svg?branch=master)](https://travis-ci.org/esl/MongooseIM) [![Documentation Status](https://readthedocs.org/projects/mongooseim/badge/?version=latest)](http://mongooseim.readthedocs.org/en/latest/?badge=latest) [![Coverage Status](https://img.shields.io/coveralls/esl/MongooseIM.svg)](https://coveralls.io/r/esl/MongooseIM?branch=master) [![GitHub release](https://img.shields.io/github/release/esl/MongooseIM.svg)](https://github.com/esl/MongooseIM/releases)
[![Build Status](https://travis-ci.org/esl/MongooseIM.svg?branch=master)](https://travis-ci.org/esl/MongooseIM) [![Documentation Status](https://readthedocs.org/projects/mongooseim/badge/?version=latest)](https://mongooseim.readthedocs.org/en/latest/?badge=latest) [![Coverage Status](https://img.shields.io/coveralls/esl/MongooseIM.svg)](https://coveralls.io/r/esl/MongooseIM?branch=master) [![GitHub release](https://img.shields.io/github/release/esl/MongooseIM.svg)](https://github.com/esl/MongooseIM/releases)

* Home: [http://github.com/esl/MongooseIM](http://github.com/esl/MongooseIM)
* Product page: [https://www.erlang-solutions.com/products/mongooseim.html](https://www.erlang-solutions.com/products/mongooseim.html)
* Documentation: [http://mongooseim.readthedocs.org/](http://mongooseim.readthedocs.org/)
* Documentation: [https://mongooseim.readthedocs.org/](https://mongooseim.readthedocs.org/)


## Get to know MongooseIM
Expand Down Expand Up @@ -74,17 +74,18 @@ Check out our test results:

See the documentation for the latest releases:

* [Master](http://mongooseim.readthedocs.org/en/latest/)
* [3.1.0](http://mongooseim.readthedocs.io/en/3.1.0/)
* [3.0.0](http://mongooseim.readthedocs.io/en/3.0.0/)
* [2.2.2](http://mongooseim.readthedocs.io/en/2.2.2/)
* [2.1.1](http://mongooseim.readthedocs.io/en/2.1.1/)
* [2.1.0](http://mongooseim.readthedocs.io/en/2.1.0/)
* [2.0.1](http://mongooseim.readthedocs.io/en/2.0.1/)
* [2.0.0](http://mongooseim.readthedocs.io/en/2.0.0/)
* [1.6.2](http://mongooseim.readthedocs.io/en/1.6.2/)
* [1.6.1](http://mongooseim.readthedocs.io/en/1.6.1/)
* [1.6.0](http://mongooseim.readthedocs.io/en/1.6.0/)
* [Master](https://mongooseim.readthedocs.org/en/latest/)
* [3.2.0](https://mongooseim.readthedocs.io/en/3.2.0/)
* [3.1.0](https://mongooseim.readthedocs.io/en/3.1.0/)
* [3.0.0](https://mongooseim.readthedocs.io/en/3.0.0/)
* [2.2.2](https://mongooseim.readthedocs.io/en/2.2.2/)
* [2.1.1](https://mongooseim.readthedocs.io/en/2.1.1/)
* [2.1.0](https://mongooseim.readthedocs.io/en/2.1.0/)
* [2.0.1](https://mongooseim.readthedocs.io/en/2.0.1/)
* [2.0.0](https://mongooseim.readthedocs.io/en/2.0.0/)
* [1.6.2](https://mongooseim.readthedocs.io/en/1.6.2/)
* [1.6.1](https://mongooseim.readthedocs.io/en/1.6.1/)
* [1.6.0](https://mongooseim.readthedocs.io/en/1.6.0/)


When developing new features/modules, please make sure you add basic documentation to the `doc/` directory, and add a link to your document in `doc/README.md.`
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ pages:
- 'How to Build an iOS messaging app': 'user-guide/iOS_tutorial.md'
- 'How to Set up Jingle/SIP': 'user-guide/Jingle-SIP-setup.md'
- Migration Guide:
- '3.1.1 to 3.1.1++': 'migrations/3.1.1_3.1.1++.md'
- '3.1.1 to 3.2.0': 'migrations/3.1.1_3.2.0.md'
- Platform:
- 'Roadmap': 'Roadmap.md'
- 'Contributions to ecosystem': 'Contributions.md'
Expand Down

0 comments on commit ef5dc64

Please sign in to comment.