Commit graph

120 commits

Author SHA1 Message Date
Gered 2faf596777 add main init/shutdown to start/stop logging if logger option is given 2016-05-21 15:59:22 -04:00
Gered 323e7497c3 add start/stop functions for the statistics logger 2016-05-21 15:50:39 -04:00
Gered eb55744429 minor cleanup 2016-05-21 14:38:57 -04:00
Gered 2045333ef1 doc comment updates/additions 2016-05-20 19:20:05 -04:00
Gered 172a165549 cleanup old commented out test code 2016-05-20 18:36:19 -04:00
Gered e2dc232392 add "type" to hint maps 2016-05-20 18:13:55 -04:00
Gered eddcfa0929 add namespace-fn for selecting view-sig namespaces on view subs/unsubs 2016-05-20 12:17:09 -04:00
Gered 202ec3995a add auth-fn to allow plugging in pre-subscription authorization checks 2016-05-20 11:39:40 -04:00
Gered 5e253fce31 don't send view-sig namespace out with view data refreshes
i guess for now view namespaces are a server-side only thing?
they were never being sent out before
2016-05-19 22:54:27 -04:00
Gered e4cae8772e wrap calls to view-system send-fn 2016-05-19 22:23:52 -04:00
Gered d64ece2c27 convert to using maps as view-sigs 2016-05-19 22:23:14 -04:00
Gered defd41dd33 add helper init/shutdown functions
this init function only is suitable for non-distributed configurations,
but is probably still worthwhile to have something like this as it
helps remove boilerplate in applications where only a simple config
is needed anyway.

adding shutdown is mostly useful for applications using component/mount
2016-05-19 17:36:21 -04:00
Gered 78feb25839 add helper for setting a put-hints-fn function for IView implementations
another potentially contentious change.

the idea here is based on my inability to come up with a reason why
each library providing an IView implementation (e.g. views-honeysql)
would need a different function for this. in fact, i'd argue that it's
probably a better idea to have all the hints going to a single
"dispatch" function anyway (aka. this put-hints-fn) and have it check
for any metadata on incoming hints and do any custom processing there.
the IView implementation libraries have this ability already to add any
kind of custom metadata to hints anyway.

i don't think anything is lost by this change personally, and it
removes the need to call multiple functions to set a custom put-hints-fn
for each IView library that a project might need.

tl;dr - i like simpler configuration. this change is the beginning
of stuff that helps me do that in the future.
2016-05-19 17:34:25 -04:00
Gered c2ef73e311 also clean up hashes for views with no subscriptions 2016-05-19 10:33:46 -04:00
Gered bbb3a3f189 add convenience function for application config 2016-05-19 10:23:41 -04:00
Gered 6636b1e720 if hints is empty (frequently is), no reason to call refresh-view
also as a nice bonus, this stops the debug log call here from spamming
up the log if the refresh-watcher thread is running on a frequent
timer interval
2016-05-19 10:22:09 -04:00
Gered 4559d39bb7 prevent subscriber and subscribed lists from endlessly filling up
in practice this would probably only be a problem for applications
with lots of views that can be subscribed to that also have very long
uptimes.
2016-05-19 10:20:07 -04:00
Gered 5ec96d6db2 contentious change (probably): convert to single global view-system atom
why do this?

well, i think the biggest gain from the perspective of a developer
looking to use this library is that this simplifies the use of it.
it becomes easier to change things in this library (and also in others
that plug into it, such as views-honeysql and other libraries providing
alternate IView implementations) to have a much better out-of-the-box
working configuration for the common use-cases.

additionally, i could not think of a scenario where i would want to
have more then one view-system hanging around given that you can
plug in multiple different IView implementations into the same
view-system that potentially each work with a different backing
database.

the big complaint i could see against this change is that it goes
somewhat against a "functional approach" with the global state that is
used automatically by the functions in the library.

personally, i (right now) see it as a more _practical_ approach. and
for me that wins out in the end.

who knows, perhaps i will deeply regret this change down the road.
2016-05-18 19:25:02 -04:00
Gered f9c15d6cd6 make refresh watcher/worker threads stoppable (and restartable) 2016-05-18 17:40:07 -04:00
Joey Coleman 5fdc6334bb Merge pull request #2 from kirasystems/travis
[#119123113] Travis
2016-05-07 11:20:06 -04:00
Gareth 30e529413b updated copyright 2016-05-06 22:50:16 -04:00
Gareth fb87dc75d1 Version 1.4.9-SNAPSHOT 2016-05-06 22:07:43 -04:00
Gareth 5b2c566208 Version 1.4.8 2016-05-06 22:07:41 -04:00
Gareth 6253236a47 trying global vars 2016-05-06 22:07:27 -04:00
Gareth a6cf3397d8 Version 1.4.8-SNAPSHOT 2016-05-06 21:55:45 -04:00
Gareth ff20006051 Version 1.4.7 2016-05-06 21:55:45 -04:00
Gareth 29c4cd90d1 hopefully fixed secure vars 2016-05-06 21:55:33 -04:00
Gareth 995a172206 Version 1.4.7-SNAPSHOT 2016-05-06 21:45:50 -04:00
Gareth 28f563f7c5 Version 1.4.6 2016-05-06 21:45:49 -04:00
Gareth 7dda642911 upgraded deps 2016-05-06 21:44:58 -04:00
Gareth 4941e1d76f added encrypted vars 2016-05-06 21:18:39 -04:00
Gareth 90fee2c049 added slack integration 2016-05-06 15:37:58 -04:00
Gareth 9e8c927536 Version 1.4.6-SNAPSHOT 2016-05-05 21:59:03 -04:00
Gareth f98b75cd81 Version 1.4.5 2016-05-05 21:59:00 -04:00
Gareth 32559c1713 Version 1.4.5-SNAPSHOT 2016-05-05 21:56:43 -04:00
Gareth 56eab6903a Version 1.4.4 2016-05-05 21:56:41 -04:00
Gareth 209de76aec Version 1.4.4 2016-05-05 21:54:37 -04:00
Gareth 5f95980ba1 added build, dependency and version badges to readme 2016-05-05 21:37:20 -04:00
Gareth 554eb69270 limit travis to build only when tagged 2016-05-05 21:15:33 -04:00
Gareth 3f1181c23c updated deploy step in .travis.yml 2016-05-05 20:45:23 -04:00
Gareth 0f41136b7a added clojars repo 2016-05-05 20:41:34 -04:00
Gareth 29e23da77f added deploy to travis 2016-05-05 19:45:31 -04:00
Gareth 140ba72fbb added travis.yml to test travis ci 2016-05-05 17:20:05 -04:00
Alexander Hudek cd6a6e559a Fix for updating hash. 2015-08-10 19:40:48 -04:00
Alexander Hudek bff7c9eb5f Fix concurrency error where an unsubscription can come in before the subscription is finished causing views to get stuck in the system. 2015-08-10 16:54:37 -04:00
Alexander Hudek ced5a7abd0 Update gitignore to exclude intellij files. 2015-08-10 16:53:41 -04:00
Alexander Hudek 6131e020a6 Merge branch 'master' of github.com:kirasystems/views 2015-07-08 21:56:36 -04:00
Alexander Hudek fdc777a6be More specific error handling. 2015-07-08 18:31:49 -04:00
Gareth 8815dfc14c Added exception logging to subscribe! 2015-06-05 12:01:59 -04:00
Dave Della Costa 943d7639c4 bump to 1.4.1 2015-05-21 16:38:39 +09:00