summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorJoey Hess2014-12-07 12:04:58 -0400
committerJoey Hess2014-12-07 12:04:58 -0400
commit322ae878bbaef94736fdc4cae60b6c3b8c17a54d (patch)
tree4113593f21d964ad8f821ebbd408a528011f1398 /doc
parentb7da90a91516c0d496c44459ed03009e58f39233 (diff)
parentdd40a05ced3b7c50a3a7751c66ad5a253056459e (diff)
Merge branch 'joeyconfig'
Conflicts: privdata.joey/privdata.gpg
Diffstat (limited to 'doc')
-rw-r--r--doc/todo/hooks.mdwn5
-rw-r--r--doc/todo/info_propigation_out_of_nested_properties.mdwn10
2 files changed, 9 insertions, 6 deletions
diff --git a/doc/todo/hooks.mdwn b/doc/todo/hooks.mdwn
index a62aa5e7..4617c2b9 100644
--- a/doc/todo/hooks.mdwn
+++ b/doc/todo/hooks.mdwn
@@ -1,7 +1,4 @@
* Need a way to run an action when a property changes, but only
run it once for the whole. For example, may want to restart apache,
but only once despite many config changes being made to satisfy
- properties. onChange is a poor substitute.a
-* Relatedly, a property that say, installs systemd needs to have a way
- to reboot the system when a change is made. But this should only
- happen at the very end, after everything else.
+ properties. onChange is a poor substitute.
diff --git a/doc/todo/info_propigation_out_of_nested_properties.mdwn b/doc/todo/info_propigation_out_of_nested_properties.mdwn
index 9e69b0b4..1a586be6 100644
--- a/doc/todo/info_propigation_out_of_nested_properties.mdwn
+++ b/doc/todo/info_propigation_out_of_nested_properties.mdwn
@@ -13,6 +13,10 @@ Here, the Info of `foo` is not propigated out. Nor is `bar`'s Info.
Of course, only one of them will be run, and only its info should be propigated
out..
+This commonly afflicts eg, privData. For example, `User.hasPassword'`
+has this problem, and this prevents --list-fields from listing privdata
+that's not set from that property.
+
One approach might be to make the Propellor monad be able to be run in two
modes. In one mode, it actually perform IO, etc. In the other mode, all
liftIO is a no-op, but all Info encountered is accumulated using a Reader
@@ -24,5 +28,7 @@ properties have been examined for info!
Perhaps that can be finessed. We don't really need to propigate out OS info.
Just DNS and PrivDataField Info. So info could be collected in 2 passes,
-first as it's done now by static propertyInfo values. Then by running
-the Properties in the Reader monad.
+first as it's done now by static propertyInfo values. Then take that
+and use it as the Info when running the Properties in the Reader monad.
+Combine what the Reader accumulates with the static info to get the full
+info.