dd29574 | Amir | 05 November 2020, 21:36:59 UTC | Cohorts: Average column should count the zero entry For some reason we seem to skip the zero entry when calculating the averages for a cohort column. We should not do this as this isn't correct. Twist report: https://twist.com/a/1585/ch/296215/t/1972753 | 05 November 2020, 21:36:59 UTC |
9c1c4b8 | Roman Imankulov | 19 December 2019, 10:13:41 UTC | Fix processing of None in delete_all_events() and delete_temporary_bitop_keys() Bitmapist-server at least up to version v1.5.2 returns Null in response to KEYS command if not keys are found. This workaround prevents crashing the client with an exception "TypeError: object of type 'NoneType' has no len()" Closes #31 | 19 December 2019, 10:13:41 UTC |
8813475 | Adam Johnson | 02 December 2018, 14:22:22 UTC | Use Python 3 print syntax in README Future! Also the syntax will work in Python 2, where it's parsed as an argument grouping in all cases except the two-argument versions, where a tuple will be printed - but since this is just examples I think that's fine. | 22 February 2019, 17:02:51 UTC |
bcf89e0 | Amir Salihefendic | 24 April 2018, 09:15:40 UTC | Update setup.py Removed an unfortunate copyright copy-paste | 24 April 2018, 09:15:40 UTC |
c7727ad | Roman Imankulov | 04 April 2018, 18:25:48 UTC | Speed up iterations over items in MixinIter Essentially, a fix for a regression accidentally introduced in 2ab8e16 Refs #30 | 04 April 2018, 18:30:27 UTC |
edafd2b | Roman Imankulov | 28 November 2017, 14:53:14 UTC | Bump version | 28 November 2017, 14:53:14 UTC |
83e439d | Roman Imankulov | 28 November 2017, 14:27:57 UTC | Make setup_redis() accept optional "redis_client" option Default value for the Redis client is redis.StrictRedis, but it can be replaced with a wrapper exposing the same API, but providing some extra options, such as extra logging or checking for access permissions | 28 November 2017, 14:27:57 UTC |
4747b7e | Roman Imankulov | 28 November 2017, 11:27:23 UTC | Replace Redis with StrictRedis Mostly a cosmetic change. In the context of bitmapist it doesn't make any difference. More info here: https://github.com/andymccurdy/redis-py#api-reference | 28 November 2017, 11:27:23 UTC |
a5d49c6 | Roman Imankulov | 28 November 2017, 11:24:05 UTC | Extend cohort documentation Add example on how to use extra handlers | 28 November 2017, 11:24:05 UTC |
60f8fe9 | Roman Imankulov | 07 December 2016, 14:37:49 UTC | Bump version | 28 November 2017, 11:22:12 UTC |
f36c3f8 | Amir Salihefendic | 30 January 2017, 20:32:05 UTC | Update README.markdown | 30 January 2017, 20:32:05 UTC |
71b2d10 | Amir Salihefendic | 30 January 2017, 20:31:49 UTC | Added a link to bitmapist-server | 30 January 2017, 20:31:49 UTC |
5600cd5 | Artyom Pervukhin | 19 January 2017, 22:22:40 UTC | Explicitly define supported ids range https://redis.io/commands/setbit states: > The offset argument is required to be greater than or equal to 0, and smaller than 232 (this limits bitmaps to 512MB). | 19 January 2017, 22:25:10 UTC |
5416373 | Roman Imankulov | 07 December 2016, 14:36:10 UTC | Add support for unique events (#26) It's possible to mark events with >>> bitmapist.mark_events('foo', track_unique=True) And have it stored in a Redis key, accessible with `UniqueEvents`, in addition to daily, weekly and monthly stats. | 07 December 2016, 14:36:10 UTC |
018703a | Roman Imankulov | 06 December 2016, 16:44:33 UTC | tox.ini: delete dependency from mako | 06 December 2016, 16:44:33 UTC |
485ffe6 | Roman Imankulov | 06 December 2016, 16:42:55 UTC | FIx support for Python3.5 in Travis | 06 December 2016, 16:42:55 UTC |
084e9ab | Roman Imankulov | 06 December 2016, 16:36:13 UTC | Update the list of supported versions - py3.5 added - pypy3 is (temporarily) dropped, refs https://github.com/travis-ci/travis-ci/issues/6277 | 06 December 2016, 16:36:13 UTC |
099c799 | Roman Imankulov | 06 December 2016, 16:25:29 UTC | Drop python3.2 support | 06 December 2016, 16:25:29 UTC |
c733290 | Roman Imankulov | 03 August 2016, 15:28:52 UTC | Document iterator returning all items of the event Closes #6 | 03 August 2016, 15:28:52 UTC |
33d2468 | Roman Imankulov | 03 August 2016, 15:18:41 UTC | Fix an issue with YearEvent ignoring the "system" parameter Thanks @beatobongco for the fix, closes #18 | 03 August 2016, 15:18:41 UTC |
9504f96 | amix | 01 August 2016, 12:44:00 UTC | Merge branch 'frankV-master' | 01 August 2016, 12:44:00 UTC |
d6f05cd | amix | 01 August 2016, 12:43:49 UTC | Merge branch 'master' of https://github.com/frankV/bitmapist into frankV-master | 01 August 2016, 12:43:49 UTC |
fc677d9 | Roman Imankulov | 04 July 2016, 19:19:44 UTC | Merge pull request #24 from Doist/fix_list_mutation Fix list mutation in render_html_form() | 04 July 2016, 19:19:44 UTC |
b3e514f | daremon | 04 July 2016, 16:13:58 UTC | Change the version. | 04 July 2016, 16:13:58 UTC |
b09e8e5 | daremon | 04 July 2016, 16:10:04 UTC | Fix list mutation in render_html_form() | 04 July 2016, 16:10:04 UTC |
98a131a | Frank Valcarcel | 03 June 2016, 06:24:41 UTC | closes #20, adds Mako to setup.py | 03 June 2016, 06:24:41 UTC |
a4945fb | Dimitris Giannitsaros | 27 April 2016, 09:40:45 UTC | Fix for proper filtering (#17) * Better tests and BitOps cleanup * Runtime tracking and deleting of BitOps, new docs. * Travis fixes | 27 April 2016, 09:40:45 UTC |
2aba18c | daremon | 19 April 2016, 15:59:56 UTC | Support 2 sets of 2 filters each in Cohort. | 19 April 2016, 15:59:56 UTC |
faffa39 | amix | 18 February 2016, 20:16:31 UTC | Made number of rows optional | 18 February 2016, 20:16:31 UTC |
d4dfc60 | Amir Salihefendic | 16 December 2015, 02:52:00 UTC | Update README.markdown | 16 December 2015, 02:52:00 UTC |
4d74c11 | Amir Salihefendic | 16 December 2015, 02:51:30 UTC | Update README.markdown | 16 December 2015, 02:51:30 UTC |
4365de2 | Amir Salihefendic | 16 December 2015, 02:50:42 UTC | Update README.markdown | 16 December 2015, 02:50:42 UTC |
4d71dd7 | amix | 16 December 2015, 02:50:06 UTC | Merge branch 'master' of github.com:Doist/bitmapist | 16 December 2015, 02:50:06 UTC |
6358615 | amix | 16 December 2015, 02:49:25 UTC | Added the cohort screenshot | 16 December 2015, 02:49:25 UTC |
a82cbdc | Amir Salihefendic | 15 December 2015, 02:59:59 UTC | Update README.markdown | 15 December 2015, 02:59:59 UTC |
2867519 | amix | 15 December 2015, 02:59:45 UTC | Added the png version of the logo | 15 December 2015, 02:59:45 UTC |
6a237f9 | amix | 15 December 2015, 02:57:48 UTC | . | 15 December 2015, 02:57:48 UTC |
6e4fb62 | amix | 15 December 2015, 02:57:01 UTC | Added the bitmapist logo | 15 December 2015, 02:57:01 UTC |
54934a9 | amix | 25 June 2015, 23:08:11 UTC | Increased version | 25 June 2015, 23:08:11 UTC |
05bbd73 | amix | 25 June 2015, 23:07:37 UTC | Merge branch 'master' of github.com:Doist/bitmapist | 25 June 2015, 23:07:37 UTC |
b7acea5 | amix | 25 June 2015, 23:04:28 UTC | Support unmarking an event | 25 June 2015, 23:04:28 UTC |
1e6dd6e | Roman Imankulov | 13 March 2015, 09:44:25 UTC | Add AUTHORS list | 13 March 2015, 09:44:25 UTC |
ca4f387 | Roman Imankulov | 13 March 2015, 09:28:04 UTC | Updated version to 3.8 | 13 March 2015, 09:28:04 UTC |
2ac40e9 | Roman Imankulov | 13 March 2015, 09:24:10 UTC | Merge branch 'fix-python3' | 13 March 2015, 09:24:10 UTC |
2ab8e16 | Egor Yurtaev | 09 March 2015, 08:42:08 UTC | Add python 3 compatibility | 09 March 2015, 08:46:16 UTC |
065784b | Amir Salihefendic | 01 March 2015, 19:24:03 UTC | Update README.markdown | 01 March 2015, 19:24:03 UTC |
5aad524 | Amir Salihefendic | 01 March 2015, 19:22:43 UTC | Update README.markdown | 01 March 2015, 19:22:43 UTC |
7c72b2c | Amir Salihefendic | 01 March 2015, 19:15:13 UTC | Merge pull request #11 from dotsbb/master travis-ci integration | 01 March 2015, 19:15:13 UTC |
cc1e254 | Alexey Subbotin | 19 February 2015, 11:39:44 UTC | pytest-timeout is not needed anymore | 19 February 2015, 11:39:44 UTC |
de7fa16 | Alexey Subbotin | 16 February 2015, 22:07:29 UTC | #10 cleanup | 16 February 2015, 22:07:29 UTC |
37957ea | Alexey Subbotin | 12 February 2015, 20:30:09 UTC | `scan_iter` requires redis>=2.10.0 | 12 February 2015, 20:30:09 UTC |
ae52a71 | Alexey Subbotin | 12 February 2015, 19:49:23 UTC | get_event_names refactoring | 12 February 2015, 19:49:23 UTC |
1cab668 | Alexey Subbotin | 11 February 2015, 21:03:00 UTC | travis.yml | 11 February 2015, 21:06:56 UTC |
5d2ca76 | Roman Imankulov | 10 February 2015, 20:14:20 UTC | Merge pull request #9 from dotsbb/patch-1 Optimization of EventsMisc.has_events_marked | 10 February 2015, 20:14:20 UTC |
ca880ef | Alexey Subbotin | 10 February 2015, 14:22:12 UTC | Optimalization of EventsMisc.has_events_marked Use `redis.exists` method instead of `.get(key) != None` | 10 February 2015, 14:22:12 UTC |
1ece7b7 | Roman Imankulov | 07 February 2015, 12:13:11 UTC | Updated version to 3.7 | 07 February 2015, 12:13:11 UTC |
6026462 | Roman Imankulov | 07 February 2015, 12:09:24 UTC | Improved mark_event() argument handling bitmapist.mark_event() accepts redis and pipeline instances as `system` argument. In addition, it became possible to turn off automatic pipelining, which makes sense if you manage the pipeline yourself. | 07 February 2015, 12:12:21 UTC |
623eb9c | Amir Salihefendic | 31 October 2014, 16:41:09 UTC | Update README.markdown | 31 October 2014, 16:41:09 UTC |
77be394 | Roman Imankulov | 30 October 2014, 18:07:40 UTC | Updated version to 3.6 | 30 October 2014, 18:07:40 UTC |
874802d | Roman Imankulov | 30 October 2014, 18:06:44 UTC | Bit operations: added support for Python syntax | 30 October 2014, 18:06:44 UTC |
b368eb1 | Roman Imankulov | 30 October 2014, 14:31:20 UTC | Updated version to 3.5 | 30 October 2014, 14:31:20 UTC |
80b663e | Roman Imankulov | 30 October 2014, 14:28:12 UTC | Added "get_event_names" function The function returns the list of all known events | 30 October 2014, 14:31:07 UTC |
b36677c | Roman Imankulov | 27 October 2014, 20:08:25 UTC | Updated version to 3.4 | 27 October 2014, 20:08:25 UTC |
fc1d862 | Roman Imankulov | 27 October 2014, 20:06:32 UTC | Added period_start/period_end methods to events API | 27 October 2014, 20:06:32 UTC |
0eebb35 | Roman Imankulov | 27 October 2014, 20:06:03 UTC | Created .gitignore | 27 October 2014, 20:06:03 UTC |
df05f01 | Roman Imankulov | 27 October 2014, 16:22:46 UTC | Updated version to 3.3 | 27 October 2014, 16:22:46 UTC |
2d876d0 | Roman Imankulov | 27 October 2014, 16:21:35 UTC | More improvements to Events API All event classes have a `from_date` static method which acts as a constructor to create events from datetime objects. | 27 October 2014, 16:21:35 UTC |
9557dae | Roman Imankulov | 27 October 2014, 14:50:26 UTC | Updated version to 3.2 | 27 October 2014, 14:50:26 UTC |
6f21e5e | Roman Imankulov | 27 October 2014, 14:48:35 UTC | Events API extended with a bunch of useful methods - prev/next/delta allow you to iterate over event objects - if dates/times of events aren't explicitly defined, use `utcnow()` as meaningul default - __eq__ operator added for convenience | 27 October 2014, 14:48:35 UTC |
89901a5 | Roman Imankulov | 27 October 2014, 14:39:40 UTC | Minor test cleanup | 27 October 2014, 14:39:40 UTC |
24b7910 | amix | 22 October 2014, 18:01:39 UTC | Updated version to 3.1 | 22 October 2014, 18:01:39 UTC |
5b25b3f | Roman Imankulov | 22 October 2014, 12:06:09 UTC | Bitmapist.cohort updated Added freatures: - export to .csv - suport for yearly metrics - third variable to analyze | 22 October 2014, 12:07:02 UTC |
d574a6c | amix | 22 October 2014, 10:57:58 UTC | Updated version | 22 October 2014, 10:57:58 UTC |
108c29c | Roman Imankulov | 22 October 2014, 10:47:23 UTC | Removed unused import | 22 October 2014, 10:47:23 UTC |
116b9c5 | Roman Imankulov | 22 October 2014, 10:46:00 UTC | Added support for YearEvents and BitOpNot operation | 22 October 2014, 10:46:00 UTC |
aa60158 | Roman Imankulov | 22 October 2014, 10:44:27 UTC | Added support for __iter__ Iterator by event returns the sorted sequence of all uuids matching the event >>> bitmapist.mark_event('foo', 5) >>> bitmapist.mark_event('foo', 50) >>> bitmapist.mark_event('foo', 500) >>> list(bitmapist.DayEvents('foo', y, m, d)) [5, 50, 500] | 22 October 2014, 10:44:27 UTC |
b6d6f7d | Roman Imankulov | 22 October 2014, 10:34:42 UTC | Tests improvement The test suite starts the Redis server on port 6399 and shuts it down it process end | 22 October 2014, 10:34:42 UTC |
662c7a9 | Roman Imankulov | 13 November 2013, 16:19:38 UTC | Fixed usage of Redis pipeline Use plain pipeline objects instead of wrapping the code in context managers. Thanks to @Suor. | 13 November 2013, 16:19:38 UTC |
ead7c84 | amix | 20 March 2013, 17:47:33 UTC | Added a obj.delete() that can be used to delete events (especially temporary calculations) | 20 March 2013, 17:47:33 UTC |
8bca1da | amix | 08 March 2013, 22:10:03 UTC | Fixed an issue with isocalendar and year | 08 March 2013, 22:10:03 UTC |
19da5d4 | amix | 03 March 2013, 18:03:55 UTC | Important: Disabled tracking hourly as default (possible to override this). This is done to save memory (and because hourly stats are not that interesting for most cases). | 03 March 2013, 18:03:55 UTC |
474082c | Amir Salihefendic | 27 February 2013, 11:35:31 UTC | Merge pull request #4 from dcramer/patch-1 Don't require mako | 27 February 2013, 11:35:31 UTC |
81e1a38 | David Cramer | 27 February 2013, 05:44:16 UTC | Don't require mako Since mako is only required for bitmapist.cohort it makes sense to maintain it as an optional dependency | 27 February 2013, 05:44:16 UTC |
8adc41a | Amir Salihefendic | 01 February 2013, 10:47:35 UTC | Merge pull request #3 from skimbrel/master Make cohort library pass 'system' through to BitOp | 01 February 2013, 10:47:35 UTC |
9147871 | Sam Kimbrel | 31 January 2013, 19:12:13 UTC | Version bump | 31 January 2013, 19:12:13 UTC |
d388946 | Sam Kimbrel | 31 January 2013, 19:02:04 UTC | Make cohort pass system through to BitOpAnd | 31 January 2013, 19:02:04 UTC |
dfa8503 | Roman Imankulov | 29 January 2013, 08:57:18 UTC | Merge pull request #2 from skimbrel/master Add dateutil to setup.py requirements | 29 January 2013, 08:57:18 UTC |
0b5e1fb | Sam Kimbrel | 29 January 2013, 00:47:15 UTC | Add dateutil to requirements (for cohort) | 29 January 2013, 00:47:15 UTC |
1846751 | amix | 13 December 2012, 16:44:27 UTC | Fixed an issue with tmpl not being included in setup.py | 13 December 2012, 16:44:27 UTC |
9a9f613 | amix | 13 December 2012, 16:10:56 UTC | Added req for mako | 13 December 2012, 16:10:56 UTC |
7425e2e | amix | 13 December 2012, 16:07:24 UTC | Added bitmapist.cohort | 13 December 2012, 16:07:24 UTC |
5280df0 | amix | 04 December 2012, 20:41:37 UTC | Added events.has_events_marked() | 04 December 2012, 20:41:52 UTC |
32e4fb6 | Amir Salihefendic | 08 November 2012, 15:52:41 UTC | Update README.markdown Added a link to the PHP port by jeremyFreeAgent | 08 November 2012, 15:52:41 UTC |
3073317 | amix | 28 October 2012, 18:00:02 UTC | Don't include the test package | 28 October 2012, 18:00:02 UTC |
bc9db99 | amix | 25 October 2012, 20:29:46 UTC | Fixed a problem with deleteing all data if there is no data | 25 October 2012, 20:29:46 UTC |
75aebc9 | amix | 25 October 2012, 18:44:58 UTC | Another smaller optimizations to documentation | 25 October 2012, 18:44:58 UTC |
4b3da06 | amix | 25 October 2012, 18:39:41 UTC | Updated a bit the documentation (1) | 25 October 2012, 18:39:41 UTC |
c5fef0f | amix | 25 October 2012, 18:37:31 UTC | Updated a bit the documentation | 25 October 2012, 18:37:31 UTC |
7c222a7 | amix | 25 October 2012, 17:09:08 UTC | Fixed name change on th test module | 25 October 2012, 17:09:08 UTC |
10f871a | amix | 25 October 2012, 17:08:11 UTC | Smaller fixes | 25 October 2012, 17:08:11 UTC |