couchdb-couch-epi.git
6 years agoIntegrate with Travis CI 16/head
Alexander Shorin [Sat, 17 Oct 2015 22:19:53 +0000 (01:19 +0300)] 
Integrate with Travis CI

6 years agoFix dialyzer warnings
ILYA Khlopotov [Fri, 2 Oct 2015 17:23:01 +0000 (10:23 -0700)] 
Fix dialyzer warnings

This closes #9
This closes #13

Signed-off-by: Alexander Shorin <kxepal@apache.org>
6 years agoUse rel/apps/couch_epi.config for configuring EPI 12/head
ILYA Khlopotov [Wed, 30 Sep 2015 16:04:54 +0000 (09:04 -0700)] 
Use rel/apps/couch_epi.config for configuring EPI

6 years agoSupport for overwriting of app supervisors' children
ILYA Khlopotov [Tue, 29 Sep 2015 19:42:07 +0000 (12:42 -0700)] 
Support for overwriting of app supervisors' children

6 years agoAdd extra guards on couch_epi.erl functions
ILYA Khlopotov [Tue, 29 Sep 2015 18:33:41 +0000 (11:33 -0700)] 
Add extra guards on couch_epi.erl functions

6 years agoUpdate documentation
ILYA Khlopotov [Mon, 28 Sep 2015 16:20:15 +0000 (09:20 -0700)] 
Update documentation

6 years agoRefactor couch_epi to simplify it
ILYA Khlopotov [Thu, 24 Sep 2015 19:15:32 +0000 (12:15 -0700)] 
Refactor couch_epi to simplify it

6 years agoCheck if Handler module exists before we try to call update
ILYA Khlopotov [Mon, 21 Sep 2015 19:21:16 +0000 (12:21 -0700)] 
Check if Handler module exists before we try to call update

6 years agoFix crypto deprecations 11/head
Alexander Shorin [Thu, 24 Sep 2015 19:11:56 +0000 (22:11 +0300)] 
Fix crypto deprecations

COUCHDB-2825

6 years agoRemove support for ignore_providers option 8/head
ILYA Khlopotov [Wed, 2 Sep 2015 17:03:44 +0000 (10:03 -0700)] 
Remove support for ignore_providers option

COUCHDB-2796

6 years agoDon't use try/catch to handle missing plugins
ILYA Khlopotov [Wed, 2 Sep 2015 16:37:46 +0000 (09:37 -0700)] 
Don't use try/catch to handle missing plugins

COUCHDB-2796

6 years agoCall maybe_start_keeper for couch_epi_data_source
ILYA Khlopotov [Wed, 2 Sep 2015 15:11:36 +0000 (08:11 -0700)] 
Call maybe_start_keeper for couch_epi_data_source

COUCHDB-2796

6 years agoIntroduce 'couch_epi:register_service/1'
ILYA Khlopotov [Wed, 2 Sep 2015 15:10:52 +0000 (08:10 -0700)] 
Introduce 'couch_epi:register_service/1'

COUCHDB-2796

6 years agoFix test suite
ILYA Khlopotov [Wed, 2 Sep 2015 14:07:19 +0000 (07:07 -0700)] 
Fix test suite

COUCHDB-2796

7 years agoAdd couch_epi:is_configured 2/head
ILYA Khlopotov [Fri, 26 Jun 2015 18:47:38 +0000 (11:47 -0700)] 
Add couch_epi:is_configured

7 years agoRestore R14 compatibility 5/head
Robert Newson [Wed, 22 Jul 2015 07:36:32 +0000 (08:36 +0100)] 
Restore R14 compatibility

CouchDB 2.0 will be compatible with R14. Support for R14 to be dropped
after.

closes COUCHDB-2755

7 years agoThe race condition between providers is fixed 4/head
ILYA Khlopotov [Tue, 14 Jul 2015 15:27:37 +0000 (08:27 -0700)] 
The race condition between providers is fixed

In previous design there is a race condition between the time we read the
current definitions in the generated module and the time we compile new
version of it. This race led to overwriting of data of already
configured providers.

This commit fixes the issue by introducing couch_epi_module_keeper
process. This process is named by generated module name and it is
essentially a requests serializer.

7 years agoFix function_clause in childspec 3/head
Robert Newson [Mon, 13 Jul 2015 12:21:07 +0000 (13:21 +0100)] 
Fix function_clause in childspec

Make couch_epi_functions:childspec's result match expectations of
couch_epi_functions:start_link function.

7 years agoget version from git like other repos
Robert Newson [Thu, 25 Jun 2015 11:53:35 +0000 (12:53 +0100)] 
get version from git like other repos

7 years agoRewrite test suite to test new functionality 1/head
ILYA Khlopotov [Wed, 24 Jun 2015 21:14:37 +0000 (14:14 -0700)] 
Rewrite test suite to test new functionality

7 years agoUse code_change to trigger generation of a module
ILYA Khlopotov [Wed, 24 Jun 2015 21:09:16 +0000 (14:09 -0700)] 
Use code_change to trigger generation of a module

Previously we did periodic check of hashes for every provider module.
We switch to code_change use. Which would be called if specify modules
argument in child spec of the supervisor from where we register our
provider module.

We rely on this bit "Modules should be a list with one element [Module],
where Module is the name of the callback module, if the child process
is a supervisor, gen_server or gen_fsm. If the child process is a
gen_event, Modules should be dynamic." from
http://www.erlang.org/doc/design_principles/sup_princ.html

7 years agoUpdate documentation
ILYA Khlopotov [Wed, 24 Jun 2015 21:07:59 +0000 (14:07 -0700)] 
Update documentation

7 years agoAdd couch_epi_data
ILYA Khlopotov [Wed, 24 Jun 2015 20:52:59 +0000 (13:52 -0700)] 
Add couch_epi_data

7 years agoInitial version
ILYA Khlopotov [Wed, 10 Jun 2015 23:02:59 +0000 (16:02 -0700)] 
Initial version

Add `ignore_providers` option

Rename `hash(FilePath)` into `hashof_file(FilePath)`

Use monitor to unsubscribe when subscriber die

Rename couch_epi:all into couch_epi:dump

Remove modules from dispatch on termination

Add all/any convinence funs to couch_epi

Document `ignore_providers` option

Add childspec helper to _data_source and _functions

Add license to test suite

7 years agoAdd .gitignore
Robert Newson [Tue, 23 Jun 2015 10:24:40 +0000 (11:24 +0100)] 
Add .gitignore