86 Commits

Author SHA1 Message Date
Dawid Drozd
8c79729275
Rename CODE_OF_CONDUCT.md to docs/CODE_OF_CONDUCT.md 2018-10-08 15:13:49 +01:00
Dawid Drozd
1a3ad85ef5
Create CODE_OF_CONDUCT.md 2018-10-08 15:13:14 +01:00
Dawid Drozd
f06ddc4fc8 Update README 2018-09-09 13:47:16 +02:00
Dawid Drozd
7cf4465168 Add AsyncEventBus
Now it is possible to schedule events from different threads.
v2.4.0
2018-09-08 19:56:19 +02:00
Dawid Drozd
c53fc6fabb Remove some trash 2018-09-08 16:57:51 +02:00
Dawid Drozd
52d85fcfea Update catch version for travis 2018-09-06 21:05:54 +02:00
Dawid Drozd
3c282b5139 Update Catch2 to version at least 2.3
They broke target name ;(
2018-09-05 20:44:44 +02:00
Dawid Drozd
96dcc67cab Bump version v2.3.0 2018-07-31 11:34:10 +02:00
Dawid Drozd
3688c145cb Reorganize project structure
commit f7dd4172cf535cf52601a8819cf5c8bfabcd1fe4
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 31 10:26:27 2018 +0200

    Improve Travis script

    Fixed after reordering project structure

commit d054e5c91762da15defa458404e355d7c670e301
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Mon Jul 30 15:11:21 2018 +0200

    Update Travis CI for linux and OSX

commit 63395f5a7e3dd9f2a52b2d6a254da89ec1d6e5e9
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Fri Jul 27 14:38:40 2018 +0200

    Secure EventBus from wrong usage

    For example user previously could do such thing:

    bus.listen<const MyEvent>(...)

    bus.listen<MyEvent>(...)

    Those we 2 different events :/

commit f9195316d3ba6313ee425e3194b65b32fe52d641
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Thu Jul 26 12:44:17 2018 +0200

    Update for better managing Debug/Release

    Updated project for easy switch between debug/release versions of library

    Thanks to that we can do only find_package and don't have to care about if's switching between
    debug/release

    Thanks: https://github.com/forexample/package-example

commit 7d708959d9e96176875ca882f0f69a72622added
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Wed Jul 25 13:45:55 2018 +0200

    Update clang-format style

commit beb1d3b863379490f321e43f3e42ab272954ea67
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 16:05:16 2018 +0200

    Add some docs

commit ca450dfeee2d4bc604bbb9bf0599f373c21a4173
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 15:49:52 2018 +0200

    Remove not needed includes

commit 6473b80e8e60408675bcc4adc88653390576c4bd
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 15:41:57 2018 +0200

    Code format

commit 8abb56e1dd4b71df2b05bb34bef0530567e4ff2e
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 15:41:40 2018 +0200

    Improve performance

    Thanks to that we don't need RTTI

commit 1feacbb1f9ae6a5ac2209a6dc1df5c868ead8fd4
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 15:14:16 2018 +0200

    Remove trash

commit b5dc5c05589b969dd61eb65b68e4cdce69c5a5fb
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 15:00:15 2018 +0200

    Fix include path

commit 9939fd09805191f0bdada6cb85193a291d519116
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 14:51:02 2018 +0200

    Update install lib

commit 9eaa09f9ec5a29045b03ffc7632878863a2b2b9b
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 14:50:47 2018 +0200

    Fix

commit 7a5b3323af0b728f7e511ac22ff5027c6d06402e
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 14:16:12 2018 +0200

    Update README

commit beb6599ee4385fdffc747dc866db46e160be1358
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 14:16:05 2018 +0200

    Add performance compare to Poco::NotifactionCenter

commit 1d25b997580a9ee09c9db86135b4ca9e1b1a10c6
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 14:14:08 2018 +0200

    Update clang-format

commit 4f4cb4a7e8a849c067a42085eb3e76c3df894bc7
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 13:04:30 2018 +0200

    Remove bad flag

    It is only working for GCC

commit 66a7945084607f94d9d0c803008398e8d281fd06
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 13:03:15 2018 +0200

    Remove deprecated stuff

    It was breaking encapsulation

commit 1e7500607b42bff3632250f623888b95a503dfd0
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 13:01:37 2018 +0200

    Update sample

commit 11a146bb9145fa55f9b9a39a9e033387007a7151
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 13:01:27 2018 +0200

    Add clang-format rules

commit 685562c632d9751f50a2f05b92ef9ebf53a5d6e0
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 12:47:10 2018 +0200

    Reorganize project layout

    Inspired by: https://www.youtube.com/watch?v=6sWec7b0JIc

commit 40d1d6487814730533d7dd7cbedbaf2b4e34ef19
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 12:45:55 2018 +0200

    Remove Catch2 submodule

    Switch to own dependency

commit ca21df04f392adcb027a5b4f25ffac085b51f48c
Author: Dawid Drozd <dawid.drozd@mobica.com>
Date:   Tue Jul 24 11:28:51 2018 +0200

    Remove old code
2018-07-31 11:33:35 +02:00
Dawid Drozd
7ae52d926d Update README 2018-07-02 13:26:13 +02:00
Dawid Drozd
a52ca493cb
Merge pull request #1 from gelldur/windows
Fix Windows compilation error
2018-07-02 13:10:23 +02:00
Pierre Salmon
1e4858e9bc Fix Windows compilation error 2018-02-14 11:34:42 +01:00
Dawid Drozd
caec657b07 Fix GCC compile 2017-12-07 12:07:24 +01:00
Dawid Drozd
5408f09d03 Remove checking C++11 support by definied var
On windows it doesn't work should check by using check features

https://stackoverflow.com/questions/14131454/visual-studio-2012-cplusplus-and-c-11
2017-12-05 14:56:11 +01:00
Dawid Drozd
b370565b37 Remove not needed const 2017-12-05 14:34:30 +01:00
Dawid Drozd
b41c6254ff Update compile flags 2017-12-05 13:14:20 +01:00
Dawid Drozd
636b63865d Fix compiler flags 2017-12-04 13:46:51 +01:00
Dawid Drozd
4d43ff4483 Add deprecated for BusAttorney 2017-12-04 13:24:44 +01:00
Dawid Drozd
dc672b48ab Fix typo 2017-11-24 13:29:34 +01:00
Dawid Drozd
6660828175 Bump version to 2.2.0
Break back compatibility of EventCollector::getBus
v2.2.0
2017-11-24 12:55:33 +01:00
Dawid Drozd
2a360f4576 Fix running tests for Travis 2017-11-24 12:54:33 +01:00
Dawid Drozd
74d3b3ee60 Improve BusAttorney 2017-11-24 12:54:17 +01:00
Dawid Drozd
3ddb5ac7c5 Improve Event::Collector::getBus
Some of people make such thing:

listener.getBus().listen<T>()...

And they thought that listening with our listener.
So need to fix bad conceptual mistake.
2017-11-24 12:42:50 +01:00
Dawid Drozd
951d3f1e42 Enable testing by variable 2017-11-24 12:40:16 +01:00
Dawid Drozd
5c8da7fe1c Bump version to 2.1.4 v2.1.4 2017-09-20 20:42:21 +02:00
Dawid Drozd
155c93ccd1 Update README with sample usage 2017-09-20 20:42:01 +02:00
Dawid Drozd
f3bcba75fe Add sample project 2017-09-20 19:54:02 +02:00
Dawid Drozd
4064cec28b Remove compile options from library
In some cases using flag:`D_GLIBCXX_DEBUG` will cause some memory corruption
errors. For example our executable will link to this library without
`D_GLIBCXX_DEBUG` flag on it self.

Do not investigate it deeply but probably hardcoding compile options in library
isn't good idea.
2017-09-20 19:50:33 +02:00
Dawid Drozd
6333823bcf Fix format 2017-09-20 19:45:08 +02:00
Dawid Drozd
caddfc98b8 Bump version to 2.1.3 v2.1.3 2017-09-10 15:03:49 +02:00
Dawid Drozd
c02c69c083 Add tests 2017-09-10 15:03:06 +02:00
Dawid Drozd
509bb577be Update README 2017-09-10 14:32:21 +02:00
Dawid Drozd
8c6b5bb3f8 Update gitignore 2017-09-10 14:01:26 +02:00
Dawid Drozd
c4f0b8b233 Update cmake flags 2017-09-10 13:05:36 +02:00
Dawid Drozd
a936e3ecd2 Fix cmake for OSX 2017-09-01 16:15:31 +02:00
Dawid Drozd
7a48102d0b Disable test/ and performance sub dirs
Something is failing on OSX during cmake generation
2017-08-29 12:18:45 +02:00
Dawid Drozd
0d34eb9041 Fix nested transaction
Quick fix for now. Probably we need better solution.
2017-08-28 22:54:11 +02:00
Dawid Drozd
9126286acc Add transaction safety
Fix case when during notification we start add/remove listeners.
v2.1.2
2017-08-27 22:59:40 +02:00
Dawid Drozd
fb8e1ea745 Add experimental EventBus that isn't transaction safe 2017-08-27 22:29:40 +02:00
Dawid Drozd
f7ab55a3fa Add EventCollector::getBus
We need sometimes to access to the bus. Also thanks to this we can reduce 1
field
2017-08-27 19:53:29 +02:00
Dawid Drozd
fc1dbe335f Update EventBus to 2.1.0 inspired by Boost::MSM
I was wondering if it is a good step for EventBus. Of course, it will break back
compatibility again as well as it was when changing v1 -> v2, but this change is
smaller. Those changes were inspired by Boost::MSM how it handles events.

Why i decided to change:

+ It will prevent from bugs like typo in Event string eg. Event<int>{"text"}
+ If we want to change signature of Event, we won't have to update all listeners
and their signature
+ Less includes for listener. Simply in our class header we will have eg.
pointer/ref to event type not to all args
+ Strongly typed (this is always better)
+ Storing event for future reuse
+ More easy to introduce thread safe EventBus in future
+ EventBus is more simple
+ const Event forbids some kind of communication. Eg. passing and modifying
reference
+ Less errors when using std::bind

- Breaking back compatibility
- Need fixes in projects that using this lib
- Someone can add methods etc. to Event :(
- We can't generate easily multiple "types" of events like in 'for' loop
- Worst performance (still not such bad as CCNotificationCenter)
v2.1.0
2017-08-26 13:28:45 +02:00
Dawid Drozd
23ab070061 Add EventBus::notify for simple strings v2.0.1 2017-08-25 16:02:25 +02:00
Dawid Drozd
257cc90c86 Add test for checking validating different notifications keys 2017-08-25 11:38:13 +02:00
Dawid Drozd
c4b9fcd3de Update README.md v2.0.0 2017-08-20 21:03:19 +02:00
Dawid Drozd
d7f9727a55 Update README 2017-08-15 21:53:35 +02:00
Dawid Drozd
cdae9b54c3 Update README 2017-08-15 21:50:49 +02:00
Dawid Drozd
8c56ebf7e7 Update travis.yml 2017-08-15 21:48:15 +02:00
Dawid Drozd
8f0b5f3b08 Fix test 2017-08-15 21:48:09 +02:00
Dawid Drozd
df155bf897 Update travis.yml 2017-08-15 21:26:23 +02:00
Dawid Drozd
4f384bb0e7 Update travis.yml 2017-08-15 21:14:33 +02:00