Commit graph

149 commits

Author SHA1 Message Date
Akinori MUSHA
857b8ea969 Merge remote-tracking branch 'origin/master' into set_charset_for_mysql
Conflicts:
	db/schema.rb
2014-08-27 13:06:21 +09:00
Akinori MUSHA
66d1ac07c8 Fall back utf8mb4 to utf8 if the server does not support it. 2014-08-25 15:18:24 +09:00
Akinori MUSHA
59482ee937 Add support for Ruby 1.9.x. 2014-08-25 15:18:24 +09:00
Akinori MUSHA
db792cdd82 Set charset/collation properly for each text column if using MySQL.
With this change, Huginn is able to store up to 4-byte UTF-8 characters
in its database.  This should fix #286.
2014-08-25 15:18:24 +09:00
Akinori MUSHA
f6d19661ce Store an agent ID in the local storage rather than stashing it in a tag. 2014-08-22 16:05:45 +09:00
Akinori MUSHA
e9fa1f2032 Add SchedulerAgent, which periodically runs other agents. 2014-08-22 00:17:52 +09:00
Guilherme J. Tramontina
8b8fdb5f56 Export/import scenario tag colors. 2014-08-20 03:03:29 -03:00
Dominik Sander
d529872e37 TwitterStream bugfixes
* do not run disabled `TwitterStreamAgents`
* calling `sleep` within the EM loop blocks the EM thread and thereby
  blocks the reload callback and proper shutdown of the threaded worker
* stopping the EM loop from outside of the `EM.run` blocks does not seem
  to work reliably, using a timer and checking if shutdown was requested
  works as expected
* removed unnecessary sleep at the end of the EM loop which would delay
  the shutdown of the thread
2014-08-17 15:22:49 +02:00
Daniel O'Connor
62e36d85cc Pass spec 2014-06-29 02:56:03 +09:30
Daniel O'Connor
604581cf7e Add a service account based helper library for publishing google calendar events. 2014-06-28 23:44:48 +09:30
Andrew Cantino
827b62356a the import process now allows you to merge your agents with the incoming ones; next step is better UI 2014-06-08 23:37:15 -07:00
Andrew Cantino
f3ffb33a7d Merge remote-tracking branch 'origin/master' into scenarios 2014-06-07 12:26:18 -07:00
Andrew Cantino
64564eb120 Importing of Scenarios now works, creating any needed Agents by global guid 2014-06-04 22:26:56 -07:00
Dominik Sander
a505a1c211 Merge branch 'master' into threaded-background-workers 2014-06-01 12:12:42 +02:00
Andrew Cantino
663250227d allow exporting of a set of Agents with their links from a Scenario; Scenario guid is now generated and copied to export, as well as a source link when public 2014-05-31 23:36:33 -07:00
Dominik Sander
8a51dbc4bd Provide an optional threaded background worker
Due to the three background workers (scheduler, twitter stream and delayed job)
huginn needs a lot of memory to run (about 520MB on my dev machine). This PR
introduces an optional threaded background worker which combines the three current
separated processed into one (reducing the memory footprint to ~260MB).
Since just one instance of the of every background processor is running at a time
there should not be any threading related issues.
The main gotcha of this is, that it's most likely not possible to run multiple
delayed job workers concurrently. The ultimate solution would probably be switching
to sidekiq with sidetiq as scheduler, but that is a different task :)

When running on MRI the GIL should not be an issue because it is released for most IO
bound operations (waiting for the database/website/sleeping).
2014-05-12 00:28:07 +02:00
Dominik Sander
da8a2e9682 Merge remote-tracking branch 'huginn/master' into liquid-templating 2014-05-06 10:56:43 +02:00
Dominik Sander
56324c87e2 Migrated HumanTask, Trigger and PeakDetectorAgent to Liquid
Made LiquidInterpolatable#interpolate_options recursive
Really interpolate the `message` options attribute of the PeakDetectorAgent
Merged all previous liquid migrations into one new migration
Added support for the `Agent#make_message` format to the liquid migrator
2014-05-06 10:50:20 +02:00
Dominik Sander
da137aaeb8 Made migration irreversable, support '$variable' syntax 2014-05-05 22:00:55 +02:00
Andrew Cantino
91d55dc6c0 update to work with newer dotenv; you can pull your production database with: cap sync:db:down 2014-05-03 00:10:53 -07:00
Dominik Sander
28931f2126 Migrated DataOutputAgent to use liquid 2014-05-01 21:25:56 +02:00
Dominik Sander
b4b9939b7d LiquidMigrator is checking for complex JSONPaths
If a complex JSONPath like '$.text[*]' is found the migration will
fail with an exception and keep the database intact
2014-05-01 17:32:45 +02:00
Dominik Sander
d9bd6a991b Added liquid templating and migrated first agents 2014-05-01 17:32:45 +02:00
Andrew Cantino
8e6addc5b8 Merge branch 'rails41' of https://github.com/dsander/huginn into dsander-rails41 2014-04-19 21:43:49 -07:00
Dominik Sander
b7b3460fd3 Update to rails 4.1 2014-04-18 23:55:15 +02:00
Andrew Cantino
13038ce841 add ALLOW_JSONPATH_EVAL option to .env 2014-04-18 00:25:31 -07:00
Andrew Cantino
63a42fff3c Add option to treat strings starting with $ as JSONPath 2014-04-05 17:04:06 -07:00
ms32035
e5c2cac42a Gem mysql2 + port for test environment 2014-03-13 23:50:46 +01:00
ms32035
3d33881897 date_add for mysql correction 2014-03-11 23:05:10 +01:00
ms32035
b0d64c4735 Postgresql compatibility for agent model 2014-03-11 22:55:32 +01:00
Andrew Cantino
3d8393357e Merge pull request #116 from cantino/do_not_symbolize
Do not symbolize
2014-01-01 13:39:21 -08:00
Andrew Cantino
6a276e0d76 add new JSONSerializedField Concern and better specs around handling of json string assignment to memory and options 2013-12-29 22:28:10 -08:00
Andrew Cantino
db33fee1ad fix cap sync:db:down again 2013-12-29 13:15:33 -08:00
Andrew Cantino
73e8406d4f Merge branch 'master' into do_not_symbolize
Conflicts:
	app/models/agents/human_task_agent.rb
	spec/models/agents/human_task_agent_spec.rb
2013-12-29 12:45:45 -08:00
Andrew Cantino
0b0d809ede update dotenv-rails and attempt to make cap sync:db:down work with remote .env files 2013-12-26 12:17:18 -05:00
Andrew Cantino
a408ae48ea globally avoid using symbols since we're moving to json storage 2013-12-24 17:37:26 -05:00
Andrew Cantino
ec32d7f979 switch from yaml to json serialization 2013-12-23 00:54:20 -05:00
Andrew Cantino
77882908c4 in order to avoid leaking memory, remove all symbolization 2013-12-22 15:36:29 -08:00
Andrew Cantino
403db15b35 Fix a bug where JSON was lost when saving invalid options 2013-09-30 21:42:20 -07:00
Andrew Cantino
e24f940ac8 Merge branch 'master' into human_task_agent 2013-09-07 00:51:28 -07:00
Andrew Cantino
3eaa9272b1 Prevent some possible XSS attacks where user input makes its way into JSON and contains </script> tags. 2013-09-07 00:34:51 -07:00
Andrew Cantino
d766eb6cd3 Merge branch 'master' into human_task_agent 2013-09-06 23:57:23 -07:00
Andrew Cantino
6a82f27034 Add quick navigation box for Agents 2013-09-01 15:50:42 -06:00
Andrew Cantino
0120ccb9c1 Basic HuamnTaskAgent with specs 2013-08-28 18:02:47 -06:00
Andrew Cantino
86b5b1f203 Use select2 for type selection; switch to showing JSON for event information 2013-08-08 12:30:17 -07:00
Andrew Cantino
306237c306 Allow escaping of JSONPath outputs; demonstrate in the formatting agent. 2013-08-08 09:56:22 -07:00
Andrew Cantino
52a1c1208a Don't allow JSONPath eval 2013-03-17 23:25:59 -07:00
Andrew Cantino
b876759b7b Add JSONPath for hash paths and add JSON parsing to the WebsiteAgent. 2013-03-17 15:56:02 -07:00
Andrew Cantino
620acffa5a initial commit 2013-03-09 22:36:12 -08:00