Nick O'Leary
c1d50e82e1
Fix race condition in non-cache lfs context
...
Fixes #1888
2018-09-17 10:31:00 +01:00
Nick O'Leary
9777af7cb5
LocalFileSystem Context: Remove extra flush code
2018-09-16 22:04:09 +01:00
Hiroki Uchikawa
fd86035865
Prevent race condition ( #1889 )
...
* Make pending Flag to be deleted after write process complete.
* Prevent executing write process until the previous process is completed
* Fix to prevent file write race condition when closing file context
* Make flushing rerun if pendingWrites was added
2018-09-16 21:15:23 +01:00
Nick O'Leary
a8ec032553
Allow context store name to be provided in the key
...
For nodes that get/set context, when multiple stores are configured
they will not know to parse the store name from the key. So they
will pass the store name in the key, such as #:(store)::key.
Currently that will cause that full string to be used as the key
and the default context store used - which is wrong.
The code now parses out the store name from the key if it is set -
athough if the call to get/set does include the store argument, it
will take precedence.
This only applies when the key is a string - it doesn't apply when
an array of keys is provided.
2018-09-14 23:21:05 +01:00
Nick O'Leary
75e7c0e50d
Ensure context.flow/global cannot be deleted or enumerated
2018-09-10 22:30:51 +01:00
Nick O'Leary
fc0cf1ff51
Handle context.get with multiple levels of unknown key
...
Fixes #1883
2018-09-09 23:47:31 +01:00
Nick O'Leary
0f4d46671f
Fix global.get("foo.bar") for functionGlobalContext set values
2018-09-09 11:07:44 +01:00
Nick O'Leary
28b311b7ed
Improve error reporting from context plugin loading
2018-08-16 14:36:11 +01:00
Nick O'Leary
d132d63c1d
Handle windows paths for context storage
2018-08-15 15:31:42 +01:00
Nick O'Leary
ef8b936069
Handle persisting objects with circular refs in context
2018-08-15 10:19:37 +01:00
Nick O'Leary
1dc021e871
Improve custom context store module logging
2018-08-09 15:37:04 +01:00
Nick O'Leary
ff627fd128
Fix localfilesystem clean handling
2018-08-09 14:39:20 +01:00
HirokiUchikawa
6533a9793c
Allow get
and keys
to be called without callback
2018-07-27 21:33:38 +09:00
Nick O'Leary
17e6940a42
Update context plugins to use get/setObjectProperty
2018-07-25 09:59:26 +01:00
Nick O'Leary
e9be007040
Tidy up context store error messages
2018-07-23 15:20:13 +01:00
Nick O'Leary
3bcffe375d
Merge pull request #1834 from node-red-hitachi/add-tests-for-context-admin-api
...
Add tests for context admin api
2018-07-23 13:29:10 +01:00
Nick O'Leary
9f81a591e1
Move multiple-get/set logic into individual context stores
2018-07-23 13:28:06 +01:00
Hiroyasu Nishiyama
09329e1104
add tests for context admin api
2018-07-21 12:00:54 +09:00
Nick O'Leary
bf5d36d6bd
Merge branch 'master' into context-store-logging
2018-07-20 20:23:19 +01:00
Hiroyasu Nishiyama
a29527ec96
use implicit logging of context store
2018-07-20 23:26:47 +09:00
nakanishi
39b751acf5
Add test cases for localfilesystem context
2018-07-20 11:23:37 +09:00
Hiroyasu Nishiyama
7612481570
ignore default store from logging
2018-07-19 14:12:01 +09:00
Hiroyasu Nishiyama
31ee1be81e
add logging of context store
2018-07-19 07:40:52 +09:00
Nick O'Leary
75c29f1cb7
Disallow store names that are not A-Za-z0-9_
2018-07-16 16:44:33 +01:00
Nick O'Leary
afe6afca36
Merge pull request #1801 from node-red-hitachi/0.19-multi-values
...
Make it possible to set multiple values
2018-07-13 14:03:03 +01:00
HirokiUchikawa
050acd239c
Allow arrays of different lengths to be passed to set
.
2018-07-13 20:59:45 +09:00
Nick O'Leary
7bd94df2a0
Merge pull request #1804 from node-red-hitachi/0.19-fix-cache-error
...
Fix the error that the parent directory of the context does not exist
2018-07-13 11:58:14 +01:00
HirokiUchikawa
6b2f5fbb19
Allow multiple keys and values to be passed to set
2018-07-12 19:19:55 +09:00
HirokiUchikawa
9111adf15f
Use ensureDir()
insted of mkdir()
...
and add test case
2018-07-12 18:20:47 +09:00
HirokiUchikawa
ba18b27371
Prevent the callback to be called twice
...
and add test cases
2018-07-12 18:12:30 +09:00
HirokiUchikawa
e8d76b0555
Allow multiple values to be passed to get
2018-07-12 14:05:36 +09:00
Hiroki Uchikawa
1bf4addf63
Fix an error when initializing the cache ( #1788 )
...
* Fix a error when initializing the cache
* Make context directory if it is not there in initialization
2018-07-10 12:41:16 +01:00
Nick O'Leary
c440a4c730
Expose list of context stores to the editor
2018-07-03 14:17:42 +01:00
Nick O'Leary
a1251371d7
Avoid unnecessary re-reading of file context when caching is enabled
2018-07-03 11:29:45 +01:00
Nick O'Leary
43d7c8d48c
Add caching to localfilesystem context
2018-07-02 22:32:20 +01:00
Nick O'Leary
7423583508
Create default store for node tests to use
2018-07-02 15:47:47 +01:00
Nick O'Leary
038d821a7c
Apply fGC to all global contexts for default values
2018-07-02 15:21:13 +01:00
Nick O'Leary
466cb4be89
Small tidy up on context plugin loading
2018-06-29 09:48:38 +01:00
Nick O'Leary
c0870c5694
Merge branch '0.19' into context-tab
2018-06-27 16:05:17 +01:00
HirokiUchikawa
40ff54f67e
Improve context storage handling
2018-06-26 11:43:37 +09:00
HirokiUchikawa
cce7ac09d0
Add callback handling to memory plugin
2018-06-26 11:36:37 +09:00
HirokiUchikawa
f2fa26fb07
Use the callback instead of Promise in context API
...
and remove unnecessary functions
2018-06-22 17:11:54 +09:00
HirokiUchikawa
e6411d11b1
Remove unnecessary context storage APIs
...
and rename context storage APIs
2018-06-20 20:00:39 +09:00
HirokiUchikawa
dd81d947fc
Use native Promise instead of when.js
2018-06-20 19:50:55 +09:00
HirokiUchikawa
c4eae3f130
Fix file extension
2018-06-20 19:42:08 +09:00
HirokiUchikawa
41a04a2849
Add async API to context
...
and add test cases for async
2018-06-20 19:42:07 +09:00
HirokiUchikawa
ed1d34e678
Use fs-extra instead of node-json-db
2018-06-20 19:42:06 +09:00
HirokiUchikawa
f44487338d
Fix a wrong statement
2018-06-20 19:42:05 +09:00
Hiroki Uchikawa
7aced85a31
Use Array.indexOf() instead of Array.includes()
2018-06-20 19:42:04 +09:00
HirokiUchikawa
fbe0e2d6eb
Delete async function in context/index
2018-06-20 19:42:03 +09:00