On Mac OS X 10.5.1, if I have a puppetd.conf file lying around from a previous version of Puppet that does not specify the user/group, then the settings in puppet.conf are ignored and puppetd crashes.
I understand that individual config files are deprecated, but this doesn't seem like desirable behaviour.
# puppetd --confdir=/etc/puppet.macworld --debug
debug: Parsing /etc/puppet.macworld/puppet.conf
info: Loading fact macos_info
debug: Creating default schedules
debug: Failed to load library 'shadow' for feature 'libshadow'
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[main]/File[/var/puppet/run]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[ssl]/File[/etc/puppet.macworld/ssl/private]: Autorequiring File[/etc/puppet.macworld/ssl]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[puppetd]/File[/var/puppet/state/classes.txt]: Autorequiring File[/var/puppet/state]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[main]/File[/etc/puppet.macworld/ssl]: Autorequiring File[/etc/puppet.macworld]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[ssl]/File[/etc/puppet.macworld/ssl/certs/ca.pem]: Autorequiring File[/etc/puppet.macworld/ssl/certs]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[puppetd]/File[/etc/puppet.macworld/puppet.conf]: Autorequiring File[/etc/puppet.macworld]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[ssl]/File[/etc/puppet.macworld/ssl/csr_86C20C0A-380E-43E9-BE7A-4EEAE03A5010.pem]: Autorequiring File[/etc/puppet.macworld/ssl]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[ssl]/File[/etc/puppet.macworld/ssl/public_keys]: Autorequiring File[/etc/puppet.macworld/ssl]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[ssl]/File[/etc/puppet.macworld/ssl/private_keys]: Autorequiring File[/etc/puppet.macworld/ssl]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[main]/File[/var/puppet/yaml]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[main]/File[/var/puppet/lib]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[puppetd]/File[/var/puppet/state/state.yaml]: Autorequiring File[/var/puppet/state]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[ssl]/File[/etc/puppet.macworld/ssl/certs/86C20C0A-380E-43E9-BE7A-4EEAE03A5010.pem]: Autorequiring File[/etc/puppet.macworld/ssl/certs]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[main]/File[/var/puppet/log]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[main]/File[/var/puppet/facts]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[main]/File[/var/puppet/state]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[ssl]/File[/etc/puppet.macworld/ssl/certs]: Autorequiring File[/etc/puppet.macworld/ssl]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[ssl]/File[/etc/puppet.macworld/ssl/private_keys/86C20C0A-380E-43E9-BE7A-4EEAE03A5010.pem]: Autorequiring File[/etc/puppet.macworld/ssl/private_keys]
debug: /Settings[/etc/puppet.macworld/puppet.conf]/Settings[ssl]/File[/etc/puppet.macworld/ssl/public_keys/86C20C0A-380E-43E9-BE7A-4EEAE03A5010.pem]: Autorequiring File[/etc/puppet.macworld/ssl/public_keys]
debug: Finishing transaction 13170620 with 0 changes
root@dhcp-172-27-70-239 [/Users/nigelk]
# touch /etc/puppet.macworld/puppetd.conf
root@dhcp-172-27-70-239 [/Users/nigelk]
# puppetd --confdir=/etc/puppet.macworld --debug
warning: Individual config files are deprecated; remove /etc/puppet.macworld/puppetd.conf and use puppet.conf
info: Loading fact macos_info
debug: Creating default schedules
debug: Failed to load library 'shadow' for feature 'libshadow'
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[main]/File[/var/puppet/run]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[ssl]/File[/etc/puppet/ssl/private_keys]: Autorequiring File[/etc/puppet/ssl]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[main]/File[/var/puppet/facts]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[main]/File[/var/puppet/yaml]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[main]/File[/var/puppet/lib]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[puppetd]/File[/var/puppet/state/puppetdlock]: Autorequiring File[/var/puppet/state]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[ssl]/File[/etc/puppet/ssl/certs]: Autorequiring File[/etc/puppet/ssl]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[main]/File[/etc/puppet/ssl]: Autorequiring File[/etc/puppet]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[main]/File[/var/puppet/log]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[ssl]/File[/etc/puppet/ssl/private]: Autorequiring File[/etc/puppet/ssl]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[puppetd]/File[/var/puppet/state/state.yaml]: Autorequiring File[/var/puppet/state]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[main]/File[/var/puppet/state]: Autorequiring File[/var/puppet]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[puppetd]/File[/var/puppet/state/classes.txt]: Autorequiring File[/var/puppet/state]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[puppetd]/File[/etc/puppet/puppet.conf]: Autorequiring File[/etc/puppet]
debug: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[ssl]/File[/etc/puppet/ssl/public_keys]: Autorequiring File[/etc/puppet/ssl]
err: /Settings[/etc/puppet.macworld/puppetd.conf]/Settings[main]/File[/var/puppet/yaml]: Failed to retrieve current state of resource: Could not find user puppet
debug: Finishing transaction 13261750 with 0 changes
/Library/Ruby/Site/1.8/puppet/util/settings.rb:683:in `use': Could not configure for running; got 1 failure(s) (RuntimeError)
from /Library/Ruby/Site/1.8/puppet/node/catalog.rb:114:in `apply'
from /Library/Ruby/Site/1.8/puppet/util/settings.rb:681:in `use'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/sync.rb:229:in `synchronize'
from /Library/Ruby/Site/1.8/puppet/util/settings.rb:672:in `use'
from /Library/Ruby/Site/1.8/puppet/network/client/master.rb:202:in `initialize'
from /usr/bin/puppetd:312:in `new'
from /usr/bin/puppetd:312