[Pkg-puppet-devel] [SCM] Puppet packaging for Debian branch, experimental, updated. debian/2.6.8-1-844-g7ec39d5

James Turnbull james at lovedthanlost.net
Tue May 10 08:12:15 UTC 2011


The following commit has been merged in the experimental branch:
commit d2145d9a02ce1802ceb44f0cf99090af62cc4b71
Author: James Turnbull <james at lovedthanlost.net>
Date:   Tue Dec 28 04:43:16 2010 +1100

    Fixed #5684 - Move to Apache 2.0 license
    
    For details of why we're moving please see:
    
    https://groups.google.com/d/topic/puppet-users/NuspYhMpE5o/discussion
    
    Removed explicit GPL licenses where appropriate
    
    Replaced selected GPL licenses with Apache 2.0
    
    Replaced LICENSE with Apache 2.0
    
    Updated README

diff --git a/CHANGELOG.old b/CHANGELOG.old
deleted file mode 100644
index bb0be94..0000000
--- a/CHANGELOG.old
+++ /dev/null
@@ -1,1705 +0,0 @@
-This is the legacy CHANGELOG.  Please see the new ChangeLog file and the ReleaseNotes page at:
-
-http://reductivelabs.com/trac/puppet/wiki/ReleaseNotes
-
-0.25.0
-    Fixed #2280 - Detailed exit codes fix
-
-    Fixed #198 - Puppet man pages added
-
-    Moved puppetd, puppetmasterd, puppetrun, puppetca from bin to sbin
-
-    Fixed #2071 - Updated LDAP schema
-
-    Fixed #1849 - Ruby 1.9 portability: `when' doesn't like colons, replace with semicolons
-
-    Fixed #1910 - Updated logcheck regex
-
-    Fixed #1879 - Added to tidy documentation
-
-    Fixed #1881 - Added md5lite explanation
-
-    Fixed #1877 - Tidy type reference update for use of 0
-
-    Fix autotest on win32
-
-    Doc strings update for REST
-
-    Fixed #1840 - Bug fixes and improvements for Emacs puppet-mode.el
-
-0.24.8
-    Fixed #2077 - ralsh user broken on OSX
-
-    Fixed #2004 - ssh_authorized_key fails if no target is defined
-
-    Fixed #1629 - incorrect permissions on ssh_authorized_keys created files
-
-    Fixed #2000 - No default specified for checksum
-
-    Fixed #2026 - Red Hat ignoring stop method
-
-    Added ext/dbfix.sql script - fixes common errors in stored configuration databases
-
-    Fixed #1963 - Failing to read /proc/mounts for selinux kills file downloads
-
-    Fixed #2025 - gentoo service provider handle only default init level
-
-    Fixed #1910 - updated logcheck
-
-    Fixed #1871 - Sensitive information leaked in log reports
-
-    Fixed #1956 - Cleaned up variable names to be more sane, clarified error messages
-    and fixed incorrect use of 'value' variable rather than 'member'.
-
-    Fixed #1831 - Added sprintf function
-
-    Fixed #1830 - Added regsubst function
-
-    Updated up2date and service confines to add support for Oracle EL and VM
-
-    Fixing #1948 and #1953 - augeas ins bug: wrong number of arguments (1 for 3)
-
-    Fixing #944 - changing error message from warning to info - connection recycled
-
-    Fixed #961 - puppetd creating too many/not closing TCP connections
-
-    Fixed #1959 - Added column protection for environment schema migration
-
-    Fixing #1869 - autoloaded files should never leak exceptions
-
-    Fixing #1543 - Nagios parse errors no longer kill Puppet
-
-    Fixed #1420 - nagios_serviceescalation not allowing host_name more than one type
-
-    Fixed #1884 - Exported resources are marked as unexported when collected on the exporting host
-
-    Fixed #1922 - Functions squash all arguments into a single hash
-
-    Fixed #1538 - Yumrepo sets permissions wrongly on files in /etc/yum.repos.d
-
-    Fixed #1936 - Added /* */ support to the vim file
-
-    Fixed #1541 -  nagios objects write files to clientbucket on every change
-
-    Fixed #1542 - cannot purge nagios objects
-
-    Fixing #1912 - gid still works with no 'should' value fixing ralsh issues
-
-    Fixing the Rakefile to use 'git format-patch'
-
-    Added README.rst file
-
-    Enhancements to Stored Configuration performance
-
-    Added Reductive Labs build library to tasks directory
-
-    Fixed #1852 - Correct behaviour when no SELinux bindings
-
-    Updated Red Hat spec file 0.24.7
-
-    Fixed #1920 - Shadow password corruption
-
-0.24.7
-    Fixed #1804 - Added VDev and MultiVDev properties to the ZPool type
-
-    Fixed #1496 - nagios_servicedependency needs a unique host_name?
-
-    Fixed #1420 - nagios_serviceescalation not allowing host_name more than one type
-
-    Bug #1803 Zfs should auto require the ancestor file systems
-
-    Refactor #1802 Use 'zfs get -H -o value' instead of parsing output for value
-
-    Fixing #1800 - tidy now correctly ignores missing files and directories
-
-    Fixing #1794 - returning sync when it is already initialized
-
-    Fixing #1750 again - All of the properties and now :ensure check replace?
-
-    Deprecate the NetInfo nameservice provider. Use directoryservice instead
-
-    Add macauthorization type
-
-    Fixing #1703 - using a mutex around the sending of the tagmails
-
-    Fix #1788 - allow rspec rake to run only some tests
-
-    Fixing the AST constant warnings, using a variable instead of a constant
-
-    Feature #1696 Add support for branded zones
-
-    Feature #1783 - Add ZFS support
-
-    type/mcx.rb Feature #1026 - MCX Type
-
-    Fixing #1749 - Splay now hopefully behaves "better" for small values
-
-    Fix #1741 - Add inline_template function
-
-    Slight denormalisation to store a host's environment as a first class
-
-    Added Rake :ci namespace and CI tasks
-
-    Refactoring the thread-safety in Puppet::Util
-
-    Removing the included testing gems; you must now install them yourself
-
-    Refactoring of SELinux functions to use native Ruby SELinux interface
-
-    Removing all mention of EPM, RPM, or Sun packages.
-
-    Fixed #1496 - nagios_servicedependency needs a unique host_name?
-
-    Fixed #1420 - nagios_serviceescalation not allowing host_name more than one type
-
-    Fixed #1695 - Solaris 10 zone provider doesn't properly handle unknown zone attributes in newer releases
-
-    Fixed #1776 - Trivial fix for gentoo service provider
-
-    Fixed #1767 - Minor fix to emacs mode
-
-    Fixed #1711 - fileserver test fails due to incorrect mocking
-
-    Fixed #1751 - Mac OS X DirectoryService nameservice provider support for
-    plist output and password hash fil
-
-    Fixed #1752 - Add an optional argument to Puppet::Util.execute to determine
-    whether stderr and stdout are combined in the output
-
-    Added versionable feature to the RPM provider
-
-    Fixed #1668 - puppetca can't clean unsigned certs
-
-    Moved RRD feature from util/metric.rb to feature/base.rb
-
-    Fixed #1735 and #1747 - Fixes to confine system
-
-    Fixed #1681 - Add filesystem type check to test for per-file SELinux context support
-
-    Fixed #1746 - Sync SELinux file attributes after file contents created/modified
-
-    Replaced SELInux calls to binaries with Ruby SELinux bindings
-
-    Fixed #1748 - Include spec directory in packages
-
-    Fixes #1672 - unsafe crontab handling in Solaris
-
-    Fixed #1718 - Added preseed to apt uninstall and purge
-
-    Fixed #1739 - Added uninstall functionality to yum provider
-
-    Fixed #1710 - Spurious output in test run
-
-    Fixed #1667 - Documentation should specify natural language regexs, not Regexp objects
-
-    Fixed #1692 - k5login fails to set mode when file is created
-
-    Fixed #1660 - Added specific recurse values for tidy
-
-    Fixed #1698 - All logs should now show up in the reports
-
-    Fixed #1661 - Type reference: tidy should specify manditory parameters
-
-    Fixed #1104 - Classes and nodes should set $name variables
-
-    Updated Red Hat spec file for 0.24.6
-
-    Removed conf/debian directory - Debian packaging information
-    now maintained downstream
-
-    Added augeas type
-
-    Added support for @doc type and manifest documentation support - see:
-    http://reductivelabs.com/trac/puppet/wiki/PuppetManifestDocumentation
-
-    Added multiline comment support
-
-0.24.6
-    Adding support to the user type for: profiles, auths, project,
-    key/value pairs (extension to Solaris RBAC support added in
-    0.24.6)
-
-    Fixed #1662 - Configuration Reference still references 'section'
-
-    Fixed #1460 - enhance redhat puppetmaster init.d script to easy start puppetmaster as a mongrel cluster
-
-    Fixed #1663 - Regression relating to facter fact naming from 0.24.5
-
-    Fixed #1655 - Provider::Confine::Variable tests are broken
-
-    Fixed #1646 - service puppet status does not work as non-root
-    on redhat system
-
-    Fixed #1649 - Updated OSX package cleanup
-
-    Fixed #1647 - puppetdoc -r providers now working again
-
-    Fixed #1639 - uninitialized constant Puppet::Type::User::ProviderUseradd
-
-    Fixed #1637 - With an inexistant (global) templatedir, modules
-    can't access their templates
-
-    Fixed #1202 - Collection attribute matching doesn't parse arrays
-
-    Fixed #1473 - Puppetd stops with error after puppetmasterd
-    is unavailable
-
-    Fixed #1354 - yum provider problems with RHEL 3
-
-    Fixed #1633 - Added support for --detailed-exits to bin/puppet
-
-    Fixed #381 - Allow Allow multiple overrides in one statement
-
-    Fixing #947 - pluginsync no longer fails poorly when no plugins exist
-
-    Fixed #981 - Removed 'Adding aliases' info message
-
-    Fixing #1089 - Log messages are now tagged with the log level,
-    making it easier to match messages in the 'tagmail' report.
-
-    Fixing #1098 - Multiline strings now correctly increment the line count
-
-    Fixing #1614 - Environments no longer have to be listed out
-
-    Fixed #1628 - Changed node search to use certname rather than Facter
-    hostname
-
-    Fixed #1613 - The client environment will be substituted when looking
-    up settings.
-
-    Updated puppet binary documentation
-
-    Feature #1624 - Added RBAC roles to solaris user provider
-
-    Fixed #1586 - Specifying "fully qualified" package names in Gentoo
-
-    Fixed #1620 - Add 'sles' to Puppet confines when 'suse' is used
-
-    Fixed #1585 - Allow complex 'if' and variable expressions
-
-    Fixed #1564 - Saving File#checksum to state.yaml broken
-
-    Fixed #1603 - Added support for running Puppet inside a Rack application
-    (mod_rails) with Passenger and Apache
-
-    Fixed #1596 - Deploying file resources with ++ generates error
-
-    Modified the group and zone resource types to no longer call
-    'currentpropvalues' as a means of setting all values to absent.
-    There should be no behaviour change from this change.
-
-    Modified the behaviour of resource-level 'retrieve' -- it only
-    calls 'retrieve' on each property if the resource exists.
-
-    Fixed #1622 - Users and their groups should again add in one transaction
-
-    Fixed #791 - You should now be able to create and find a user/group in one transaction.
-
-    Fixed #1610 - Raise "Filebucketed" messages to Notice priority
-
-    FIxed #1530 - ssh_authorized_keys provider does not crash anymore on SSH type 1 keys
-
-    Added a number of confines to package providers
-
-    Fixed #1609 - Added confines for the Gentoo, FreeBSD and
-    SMF (Solaris) service providers
-
-    Fixed #1608 - Added ubuntu to defaultfor for apt provider
-
-    Fixed #1607 - Added ubuntu to defaultfor for Debian service
-    provider
-
-    Fixed #1045 - Multiple metaparams all get added to resources.
-
-    Fixed #1472 -- defined, exported resources in the current compile
-    now get expanded correctly.
-
-    Fixed #1595 - Internally, Property#retrieve is no longer called
-    when no 'should' value is available for a resource.
-
-    Fixed #1588 - Fixed puppetca --clean --all
-
-    Fixed #1584 - Added support for appended variables
-
-    Fixed #1554 - Added support for multiple template directories
-
-    Fixed #1500 - puppetrun not working
-
-    Fixed #1579 and #1580 - errors in the Puppet RPM spec file
-
-    Fixed #1572 -- file purging now fails if remote sources do not exist.
-
-    Fixed #1521 -- ldap user and password are now used with the default connection.
-
-    Fixed issues with file descriptors leaking into subprocesses
-
-    Fixed #1568 - createpackage.sh
-
-    Fixed #1571 - Puppet::Util::binary returns incorrect results
-
-    Fixed #1553 - Puppet and Facter cannot both install the plist module into two different locations
-
-    Adjusted hpuxuseradd user provider to confine to HP-UX and fixed HP-UX user provider path regression
-
-    Fixed debug messages in package type - thanks to Todd Zullinger for this fix
-
-    Fixed #1566 - changed password property of the user type
-
-    Fixed debug messages in package type
-
-    Updated Red Hat spec file
-
-    Fixes #1455 - Adds HP-UX support for user type
-
-    Fixes #1551 puppetmaster.freshness xmlrpc call returns incorrect type
-
-    Fixes #1554 - Fix exception for undefined hostname
-
-    Fixed #1533 - changed permissions for man directory
-
-    Added daemontools and runit providers for service type
-
-    Added simple rake task for running unit tests
-
-    Added spec Rake task
-
-    Fixed #1526 - Fixed leak in template
-
-    Fixed #1506 - Removed storeconfig duplicate indexes
-
-    Fixed #1457 - case insensitive match for error
-
-    Fixed #1488 - Moved individual functions out of functions.rb into
-    lib/puppet/parser/functions directory.  New functions should be create     in this directory.
-
-    Fixed #1508 - Added HP-UX package provider
-
-    Fixed #1502 - Fixed poor stored configuration performance
-
-    Fixed #1510 - Storeconfiguration fixed for Rails 2.1
-
-    Add the -P/--ping option to puppetrun, fixes #1501
-
-    Fixed #1394 - Added stored configuration clearing script to /ext
-
-    Fixed #1442 - replaced use of Facter for report titling with certname
-
-    Fixed $1456 - add proxy configuration capability to yum repo
-
-    Fixed #1457 - removed confine warning
-
-    A working script to create an OS X pkg out of the Puppet repository
-
-    Fixed #1441 - Updated console colours
-
-    Expose all puppet variables as instance member variables of the template wrapper.
-    This helps resolve redmine #1427, by providing a safe mechanism to access variables.
-
-     * Implement Puppet::Parser::Scope#to_hash, which returns a hash containing all the
-       variable bindings in the current and, optionally, parent scope.
-     * Use that to set instance member variables into Puppet::Parser::Templatewrapper
-     * Report the time taken for variable binding at debug level, to help identify any
-       performance regression that is encountered in the real world.
-     * Rename the @scope and @file members of the template wrapper, to avoid clashing
-       with a scope variable exposed within puppet.
-
-    Ensure that we consistently use either string #{} interpolation or String.%
-    interpolation, not both, to avoid issues where a #{} interpolated value
-    contains a % character.
-
-    Feature #1476: Allow specification of --bindir --sbindir --sitelibdir --mandir --destdir
-    in installation
-
-    Added feature #1241 : Improve performance of group lookups
-
-    Fixed bug #1448: Puppet CA incorrectly writes out all certs to inventory .txt on each
-    certificate signing
-
-    Fixing puppetlast to make it work with 0.24.5 / 0.25.  Made puppetlast work on 0.24.5
-    by using the YAML indirector
-
-0.24.5
-    You can now select the encoding format when transferring the catalog,
-    with 'yaml' still being the default but 'marshal' being an option.
-    This is because testing has shown drastic performance differences
-    between the two, with up to 70% of compile time being spent
-    in YAML code.  Use the 'catalog_format' setting to choose your format,
-    and the setting must be set on the client.
-
-    Fixed #1431 - Provider confines must now specify similar tests in one call.
-    I.e., you can't do confine :operatingsystem => %w{a b} and then
-    confine :operatingsystem => %w{b c}; you'd need to do them in one command.
-    This now-obsolete behaviour does not seem to be used anywhere.
-    The fix for #1431 is actually just removing the tests that exposed
-    this change; the change happened when I refactored how confines work.
-
-    Removed faulty interface type
-
-    Updated /spec/unit/rails.rb test
-
-    Fix #1426 - services on redhat are restarted again and status is
-    called from the Red Hat provider
-
-    Fixed #1414 - Return code from waitpid now right shifted 8 bits
-
-    Fixed #174 - a native type type for managing ssh authorized_keys
-    files is available.
-
-    Further moves from the examples directory and ext directory
-
-    Fixed #1397 One line fix, fail instead of log
-
-    Moved debian to conf and updated examples directory
-
-    Fixed #1368 - updated Red Hat init scripts
-
-    Added message referencing ReductiveLabs build library
-
-    Fixed #1396 - Added sha1 function from DavidS to core
-
-    Fixed #1399 - the ldap user provider now knows it can manage
-    passwords.
-
-    Fixed #1272 - if you provide a group name as the gid to an ldap
-    user, the name will be converted to a gid.  Note that this only
-    looks up ldap groups, at this point; if you want to set an ldap
-    user's primary group to a local group, you have to specify the GID.
-
-    Fixed #1226 - gems can now specify source repositories.
-
-    Fixed #1232 - the rundir no longer specifies a user/group,
-    and there are now client- and server-specific yaml directories.
-
-    Fixed 1240 - puppet will function more like puppetd if graphing
-    or reporting are enabled.
-
-    Fixed #1231 - Exceptions during initialization should now be clearer.
-
-    Fixed #1006 - puppetrun --class works again.  I added the class
-    membership testing to the Ldap node terminus, and added tests,
-    so it shouldn't break again.
-
-    Fixed #1114 - Facts in plugin directories should now be autoloaded,
-    as long as you're using Facter 1.5.
-
-    Removed support for the 'node_name' setting in LDAP and external node lookups.
-    Fixed #1195 - Updated Gentoo init scripts
-
-    Fixed #1367 - Updated Rakefile for new daily builds
-
-    Fixed #1370 - removed test/util/loadedfile.rb tests
-
-    Fixed #1221 - aliases to titles now work for resources.
-
-    Fixed #1012 - templates in the templatedir are preferred to module templates.
-
-    Fixed #707 - special '@reboot'-style cron jobs work again.
-
-    Fixed #1360 - allowdupe works on groups again.
-
-    Fixed #1369 - the init service provider now supports HP-UX.
-
-    Removed support for the 'node_name' setting in LDAP and external node
-    lookups.
-
-    Also removed support for 'default' nodes in external nodes.
-    LDAP nodes now use the certificate name, the short name, and 'default',
-    but external nodes just use the certificate name and any custom terminus
-    types will use just the certificate name.
-
-    Fixing #1168 (for 0.24.x) -- automatically downcasing the fqdn.
-    Also requiring that passed in certnames be downcased; the setting
-    system isn't currently flexible enough to automatically downcase
-    it for the user.
-
-    Adding a ResourceTemplate class for using templates directly
-    within resources (i.e., client-side templates).  This would really
-    only be used for composite resources that pass the results of the
-    template on to generated resources.
-
-    Exporting or collecting resources no longer raises an exception
-    when no storeconfigs is enabled, it just produces a warning.
-
-    Always using the cert name to store yaml files, which fixes #1178.
-    The Master handler previously provided the support for the :node_name
-    setting, and that functionality has now been moved into the Node
-    class.  At the same time, the names to search through have been
-    changed somewhat:  Previously, the certificate name and the
-    hostname were both used for searching, but now, the cert name
-    is always searched first (unless node_name == facter), but only
-    the Facter hostname, domain, and fqdn are used otherwise.  We no
-    longer split the cert name, only the hostname/domain/fqdn.
-
-    Fixing transaction support for prefetching generated resources.
-
-    Adding support for settings within the existing Facter provider confines.
-
-    Moving all confine code out of the Provider class, and fixing #1197.
-    Created a Confiner module for the Provider class methods, enhanced
-    the interface between it and the Confine class to make sure binary
-    paths are searched for fresh each time.
-
-    Modified the 'factpath' setting to automatically configure
-    Facter to load facts there if a new enough version of
-    Facter is used.
-
-    Crontab provider: fix a parse error when a line begins with a space
-    character (fixes #1216)
-
-    Instead of deleting the init scripts (with --del) we should simply
-    disable it with chkconfig service off, and respectfully do the same
-    for enable => true;
-
-    Added ldap providers for users and groups.
-
-    Added support for the --all option to puppetca --clean.  If
-    puppetca --clean --all is issued then all client certificates
-    are removed.
-
-    Resources now return the 'should' value for properties from
-    the [] accessor method (they previously threw an exception when
-    this method was used with properties).  This shouldn't have any
-    affect functionally; it just makes the method equivalent to 'should'
-    for properties, but it works for all attribute types now.
-
-    Modified the 'master' handler to use the Catalog class to
-    compile node configurations, rather than using the Configuration
-    handler, which was never used directly.  I removed the Configuration
-    handler as a result.
-
-    Modified the 'master' handler (responsible for sending configurations
-    to clients) to always return Time.now as its compile date, so
-    configurations will always get recompiled.
-
-    Fixed #1184 -- definitions now autoload correctly all of the time.
-
-    Removed the code from the client that tries to avoid recompiling
-    the catalog. The client will now always recompile, assuming it
-    can reach the server.  It will still use the cached config if
-    there's a failure.
-
-    Fixing #1173 -- classes and definitions can now have the same
-    name as a directory with no failures.
-
-    Saving new facts now expires any cached node information.
-
-    Switching how caching is handled, so that objects now all
-    have an expiration date associated with them.  This makes it
-    much easier to know whether a given cached object should be used
-    or if it should be regenerated.
-
-    Changing the default environment to production.
-
-0.24.4
-    Pass source to pkg_add via the PKG_PATH environment variable if
-    it ends in a '/' indicating it is a directory. Allows pkg_add
-    to resolve dependancies, and make it possible to specify packages
-    without version numbers.
-
-    Fixing #571 -- provider suitability is now checked at resource
-    evaluation time, rather than resource instantiation time.  This
-    means that you don't catch your "errors" as early, but it also
-    means you should be able to realistically configure a whole host
-    in one run.
-
-    Moved the configuration of the Node cache to the puppetmasterd
-    executable, since it otherwise causes caches to be used in all
-    cases, which we don't want (e.g., bin/puppet was using them).
-
-    Ported #198 man page creation functionality to 0.24.x branch and
-    added man pages and man page creation logic to install.rb.  The
-    man pages are stored in man/man8 and will install to config::CONFIG
-    mandir/man8.
-
-    Fixing #1138 -- the yamldir is automatically created by the
-    server now that it's in the :puppetmasterd section rather than
-    a separate :yaml section.
-
-    Disabling http keep-alive as a means of preventing #1010.
-    There is now a constant in Puppet::Network::HttpPool that will
-    disable or enable this feature, but note that we determined
-    that it can cause corruption, especially in file serving (but
-    it's client-side corruption).
-
-    Applying patch by Ryan McBride to fix OpenBSD package
-    matching.  The actual problem was caused by the fix to #1001.
-
-    Found all instances of methods where split() is used without
-    any local variables and added a local variable -- see
-    http://snurl.com/21zf8.  My own testing showed that this
-    caused memory growth to level off at a reasonable level.
-    Note that the link above says the problem is only with class
-    methods, but my own testing showed that it's any method that
-    meets these criteria.  This is not a functional change, but
-    should hopefully be the last nail in the coffin of #1131.
-
-    Found an array that leaked pretty quickly between reparsing
-    files, thanks to work by Adam Jacob and Arjuna Christenson
-    (the finding, not the leak).  I'm going to act like this
-    fixes #1131, at least for now, but I doubt it does,
-    since that shows general memory growth over time, whereas
-    the leak here should go away as soon as files are reparsed
-    (because the parser is holding the reference to the leaking
-    array).
-
-    Fixed #1147: Cached nodes are correctly considered out of
-    date if the node facts have been updated (thus causing
-    node facts to again be available in manifests, for those
-    cases where they were not).
-
-    Fixed #1137: The certificate name is correctly being added
-    to the facts hash.
-
-    Fixed #1136: Verbose and Debug no longer clobber each other.
-
-    Hopefully *finally* fixed the "already being managed" problem
-    (#1036).  The problem only cropped up if there was a failure
-    when trying to manage the system -- this would cause the
-    setting-based resources not to get cleaned up.
-
-0.24.3
-    Modified the ldap node terminus to also use the facts version
-    as the version for a node, which should similarly encourage the
-    use of the yaml cache.  (Related to #1130)
-
-    Caching node information in yaml (I figured caching in memory will
-    cause ever-larger memory growth), and changing the external node
-    terminus to use the version of the facts as their version.  This
-    will usually result in the cached node information being used,
-    instead of always hitting the external node app during file
-    serving. Note that if the facts aren't changed by the client,
-    then this will result in the cached node being used, but at this
-    point, the client always updates its facts.  (#1130)
-
-    Fixing #1132 -- host names can now have dashes anywhere.
-    (Patch by freiheit.)
-
-    Fixing #1118 -- downloading plugins and facts now ignores noop.
-    Note that this changes the behaviour a bit -- the resource's
-    noop setting always beats the global setting (previously,
-    whichever was true would win).
-
-    The change in checksums from 'timestamp' to 'mtime' no longer
-    result in updates on every run (#1116).
-
-    Aliases again work in relationships (#1094).
-
-    The CA serial file will no longer ever be owned by
-    root (#1041).
-
-    Fixing the rest of #1113: External node commands can specify
-    an environment and Puppet will now use it.
-
-    Partially fixing #1113: LDAP nodes now support environments,
-    and the schema has been updated accordingly.
-
-    Always duplicating resource defaults in the parser, so that
-    stacked metaparameter values do not result in all resources
-    that receive a given default also getting those stacked
-    values.
-
-0.24.2
-    Fixing #1062 by moving the yamldir setting to its own yaml
-    section.  This should keep the yamldir from being created
-    on clients.
-
-    Fixed #1047 -- Puppet's parser no longer changes the order
-    in which statements are evaluated, which means that case
-    statements can now set variables that are used by other
-    variables.
-
-    Fixed #1063 -- the master correctly logs syntax errors when
-    reparsing during a single run.
-
-    Removed the loglevels from the valid values for `logoutput`
-    in the Exec resource type -- the log levels are specified
-    using the `loglevel` parameter, not `logoutput`.  This never
-    worked, or at least hasn`t for ages, and now the docs are
-    just correct.
-
-    Somewhat refactored fileserving so that it no longer caches
-    any objects, nor does it use Puppet's RAL resources.  In the
-    process, I fixed #894 (you can now copy links) and refactored
-    other classes as necessary.  Mostly it was fixing tests.
-
-    Hopefully partially fixed #1010 -- clients should now fail
-    to install files whose checksums do not match the checksum
-    from the server.
-
-    Fixed #1018 -- resources now have their namevars added as
-    aliases in the resource catalog, just like they were added
-    in the resource classes.
-
-    Fixed #1037 -- remote unreadable files no longer have the
-    permission denied exceptions caught, thus forbidding them
-    from being replaced with 'nil'.
-
-    The environment is now available as a variable in the manifests.
-
-    Fixed #1043 -- autoloading now searches the plugins directory
-    in each module, in addition to the lib directory.  The 'lib'
-    directory is also deprecated, but supported for now to give
-    people a chance to convert.
-
-    Fixed #1003 -- Applying DavidS's patch to fix searching for
-    tags in sql.
-
-    Fixed #992 -- Puppet is now compatible with gems 1.0.1.
-
-    Fixed #968 again, this time with tests -- parseonly works,
-    including not compiling the configurations, and also storeconfigs
-    is no longer required during parse-testing.
-
-    Fixed #1021 -- the problem was that my method of determining
-    the in-degree sometimes resulted in a lower number than the
-    number of in-edges.
-
-    Fixed #997 -- virtual defined types are no longer evaluated.
-    NOTE: This introduces a behaviour change, in that you previously
-    could realize a resource within a virtual defined resource, and now
-    you must realize the entire defined resource, rather than just
-    the contained resource.
-
-    Fixed #1030 - class and definition evaluation has been significantly
-    refactored, fixing this problem and making the whole interplay
-    between the classes, definitions, and nodes, and the Compile class much
-    cleaner.
-
-    Exec resources must now have unique names, although the commands can still
-    be duplicated.  This is easily accomplished by just specifying a unique
-    name with whatever (unique or otherwise) command you need.
-
-    Fixed #989 -- missing CRL files are correctly ignored, and the
-    value should be set to 'false' to explicitly not look for these
-    files.
-
-    Fixed #1017 -- environment-specific modulepath is no longer ignored.
-
-    Fixing #794 -- consolidating the gentoo configuration files.
-
-    Fixing #976 -- both the full name of qualified classes and
-    the class parts are now added as tags.  I've also
-    created a Tagging module that we should push throughout
-    the rest of the system that uses tags.
-
-    Fixing #995 -- puppetd no longer dies at startup if the server
-    is not running.
-
-    Fixing #977 -- the rundir is again set to 1777.
-
-    Fixed #971 -- classes can once again be included multiple
-    times.
-
-    Added builtin support for Nagios types using
-    Naginator to parse and generate the files.
-
-0.24.1
-    Updated vim filetype detection. (#900 and #963)
-
-    Default resources like schedules no longer conflict with
-    managed resources. (#965)
-
-    Removing the ability to disable http keep-alive, since
-    it didn't really work anyway and it should no longer
-    be necessary.
-
-    Refactored http keep-alive so it actually works again.
-    This should be sufficient enough that we no longer need the
-    ability to disable keep-alive.  There is now a central
-    module responsible for managing HTTP instances, along with
-    all certificates in those instances.
-
-    Fixed a backward compatibility issue when running 0.23.x
-    clients against 0.24.0 servers -- relationships would
-    consistently not work. (#967)
-
-    Closing existing http connections when opening a new one,
-    and closing all connections after each run. (#961)
-
-    Removed warning about deprecated explicit plugins mounts.
-
-0.24.0 (misspiggy)
-    Modifying the behaviour of the certdnsnames setting.  It now defaults
-    to an empty string, and will only be used if it is set to something
-    else.  If it is set, then the host's FQDN will also be added as
-    an alias.  The default behaviour is now to add 'puppet' and
-    'puppet.$domain' as DNS aliases when the name for the cert being
-    signed is equal to the signing machine's name, which will only
-    be the case for CA servers.  This should result in servers always
-    having the alias set up and no one else, but you can still override
-    the aliases if you want.
-
-    External node support now requires that you set the 'node_terminus'
-    setting to 'exec'.  See the IndirectionReference on the wiki for more
-    information.
-
-    http_enable_post_connection_check added as a configuration
-    option for puppetd.  This defaults to true, which validates the server
-    SSL certificate against the requested host name in new versions of ruby.
-    See #896 for more information.
-
-    Mounts no longer remount swap filesystems.
-
-    Slightly modifying how services manage their list of paths
-    (and adding documention for it).  Services now default
-    to the paths specified by the provider classes.
-
-    Removed 'type' as a valid attribute for services, since it's been
-    deprecated since the creation of providers.
-
-    Removed 'running' as a valid attribute for services, since it's
-    been deprecated since February 2006.
-
-    Added modified patch by Matt Palmer which adds a 'plugins' mount,
-    fixing #891.  See PluginsInModules on the wiki for information on
-    usage.
-
-    Empty dbserver and dbpassword settings will now be ignored when
-    initializing Rails connections (patch by womble).
-
-    Configuration settings can now be blank (patch by womble).
-
-    Added calls to endpwent/endgrent when searching for user and group IDs,
-    which fixes #791.
-
-    Obviated 'target' in interfaces, as all file paths were automatically
-    calculated anyway.  The parameter is still there, but it's
-    not used and just generates a warning.
-
-    Fixing some of the problems with interface management on Red Hat.
-    Puppet now uses the :netmask property and does not try to set
-    the bootproto (#762).
-
-    You now must specify an environment and you are required to specify
-    the valid environments for your site. (#911)
-
-    Certificates now always specify a subjectAltName, but it defaults
-    to '*', meaning that it doesn't require DNS names to match.  You
-    can override that behaviour by specifying a value for
-    'certdnsnames', which will then require that hostname as a match (#896).
-
-    Relationship metaparams (:notify, :require, :subscribe, and
-    :before) now stack when they are collecting metaparam values
-    from their containers (#446).  For instance, if a resource
-    inside a definition has a value set for 'require', and you call
-    the definition with 'require', the resource gets both requires,
-    where before it would only retain its initial value.
-
-    Changed the behavior of --debug to include Mongrel client
-    debugging information.  Mongrel output will be written to
-    the terminal only, not to the puppet debug log.  This should
-    help anyone working with reverse HTTP SSL proxies. (#905)
-
-    Fixed #800 -- invalid configurations are no longer
-    cached.  This was done partially by adding a relationship
-    validation step once the entire configuration is created,
-    but it also required the previously-mentioned changes
-    to how the configuration retrieval process works.
-
-    Removed some functionality from the Master client,
-    since the local functionality has been replaced
-    with the Indirector already, and rearranging how configuration
-    retrieval is done to fix ordering and caching bugs.
-
-    The node scope is now above all other scopes besides
-    the 'main' scope, which should help make its variables
-    visible to other classes, assuming those classes were
-    not included in the node's parent.
-
-    Replaced GRATR::Digraph with Puppet::SimpleGraph as
-    the base class for Puppet's graphing.  Functionality
-    should be equivalent but with dramatically better
-    performance.
-
-    The --use-nodes and --no-nodes options are now obsolete.
-    Puppet automatically detects when nodes are defined, and if
-    they are defined it will require that a node be found,
-    else it will not look for a node nor will it fail if it
-    fails to find one.
-
-    Fixed #832. Added the '--no-daemonize' option to puppetd and
-    puppetmasterd.  NOTE: The default behavior of 'verbose' and
-    'debug' no longer cause puppetd and puppetmasterd to not
-    daemonize.
-
-    Added k5login type. (#759)
-
-    Fixed CA race condition. (#693)
-
-    Added shortname support to config.rb and refactored addargs
-
-0.23.2
-    Fixed the problem in cron jobs where environment settings
-    tended to multiple. (#749)
-
-    Collection of resources now correctly only collects exported
-    resources again.  This was broken in 0.23.0. (#731)
-
-    'gen_config' now generates a configuration with
-    all parameters under a heading that matches the
-    process name, rather than keeping section headings.
-
-    Refactored how the parser and interpreter relate,
-    so parsing is now effectively an atomic process (thus
-    fixing #314 and #729).  This makes the interpreter less
-    prone to error and less prone to show the error to the
-    clients.  Note that this means that if a configuration
-    fails to parse, then the previous, parseable configuration
-    will be used instead, so the client will not know that
-    the configuration failed to parse.
-
-    Added support for managing interfaces, thanks to work
-    by Paul Rose.
-
-    Fixed #652, thanks to a patch by emerose; --fqdn again
-    works with puppetd.
-
-    Added an extra check to the Mongrel support so that
-    Apache can be used with optional cert checking, instead
-    of mandatory, thus allowing Mongrel to function as the CA.
-    This is thanks to work done by Marcin Owsiany.
-
-0.23.1 (beaker)
-    You can now specify relationships to classes, which work
-    exactly like relationships to defined types:
-        require => Class[myclass]
-    This works with qualified classes, too.
-
-    You can now do simple queries in a collection of
-    exported resources.  You still cannot do multi-condition queries,
-    though. (#703)
-
-    puppetca now exits with a non-zero code if it cannot
-    find any host certificates to clean. (Patch by Dean
-    Wilson.)
-
-    Fully-qualified resources can now have defaults. (#589)
-
-    Resource references can now be fully-qualified names,
-    meaning you can list definitions with a namespace as
-    dependencies.  (#468)
-
-    Files modified using a FileType instance, as ParsedFile
-    does, will now automatically get backed up to the filebucket
-    named "puppet".
-
-    Added a 'maillist' type for managing mailing lists.
-
-    Added a 'mailalias' type for managing mail aliases.
-
-    Added patch by Valentin Vidic that adds the '+>' syntax to
-    resources, so parameter values can be added to.
-
-    The configuration client now pulls libraries down to $libdir,
-    and all autoloading is done from there with full support
-    for any reloadable file, such as types and providers. (#621)
-    Note that this is not backward compatible -- if you're using
-    pluginsync right now, you'll need to disable it on your clients
-    until you can upgrade them.
-
-    The Rails log level can now be set via (shockingly!) the
-    'rails_loglevel' parameter (#710).  Note that this isn't
-    exactly the feature asked for, but I could not find a
-    way to directly copy ActiveRecord's concept of an environment.
-
-    External node sources can now return undefined classes (#687).
-
-    Puppet clients now have http proxy support (#701).
-
-    The parser now throws an error when a resource reference
-    is created for an unknown type.  Also, resource references
-    look up defined types and translate their type accordingly. (#706)
-
-    Hostnames can now be double quoted.
-
-    Adding module autoloading (#596) -- you can now 'include' classes
-    from modules without ever needing to specifically load them.
-
-    Class names and node names now conflict (#620).
-
-0.23.0
-    Modified the fileserver to cache file information, so that
-    each file isn't being read on every connection.  Also,
-    added londo's patch from #678 to avoid reading entire files
-    into memory.
-
-    Fixed environment handling in the crontab provider (#669).
-
-    Added patch by trombik in #572, supporting old-style
-    freebsd init scripts with '.sh' endings.
-
-    Added fink package provider (#642), as provided by 'do'.
-
-    Marked the dpkg package provider as versionable (#647).
-
-    Applied patches by trombik to fix FreeBSD ports (#624 and #628).
-
-    Fixed the CA server so that it refuses to send back a certificate
-    whose public key doesn't match the CSR.  Instead, it tells the
-    user to run 'puppetca --clean'.
-
-    Invalid certificates are no longer written to disk (#578).
-
-    Added a package provider (appdmg) able to install .app packages
-    on .dmg files on OS X (#641).
-
-    Applied the patch from #667 to hopefully kill the client hanging
-    problems (permanently, this time).
-
-    Fixed functions so that they accept most other rvalues as valid values
-    (#548).
-
-    COMPATIBILITY ALERT:
-    Significantly reworked external node support, in a way that's NOT
-    backward-compatible:
-
-        Only ONE node source can be used -- you can use LDAP, code, or
-        an external node program, but not more than one.
-
-        LDAP node support has two changes:  First, the "ldapattrs" attribute is
-        now used for setting the attributes to retrieve from the server (in
-        addition to required attriutes), and second, all retrieved attributes
-        are set as variables in the top scope.  This means you can set attributes
-        on your LDAP nodes and they will automatically appear as variables
-        in your configurations.
-
-        External node support has been completely rewritten.  These programs must
-        now generate a YAML dump of a hash, with "classes" and "parameters" keys.
-        The classes should be an array, and the parameters should be a hash.  The
-        external node program has no support for parent nodes -- the script must
-        handle that on its own.
-
-    Reworked the database schema used to store configurations with the
-    storeconfigs option.
-
-    Replaced the obsolete RRD ruby library with the maintained
-    RubyRRDtool library (which requires rrdtool2) (#659).
-
-    The Portage package provider now calls eix-update automatically
-    when eix's database is absent or out of sync (#666).
-
-    Mounts now correctly handle existing fstabs with no pass or dump values
-    (#550).
-
-    Mounts now default to 0 for pass and dump (#112).
-
-    Added urpmi support (#592).
-
-    Finishing up the type => provider interface work.  Basically, package
-    providers now return lists of provider instances.  In the proces,
-    I rewrote the interface between package types and providers, and also
-    enabled prefetching on all packages.  This should significantly speed
-    up most package operations.
-
-    Hopefully fixing the file descriptor/open port problems, with patches
-    from Valentin Vidic.
-
-    Significantly reworked the type => provider interface with respect to
-    listing existing provider instances.  The class method on both
-    class heirarchies has been renamed to 'instances', to start.  Providers
-    are now expected to return provider instances, instead of creating
-    resources, and the resource's 'instances' method is expected to
-    find the matching resource, if any, and set the resource's
-    provider appropriately.  This *significantly* reduces the reliance on
-    effectively global state (resource references in the resource classes).
-    This global state will go away soon.
-
-    Along with this change, the 'prefetch' class method on providers now
-    accepts the list of resources for prefetching.  This again reduces
-    reliance on global state, and makes the execution path much easier
-    to follow.
-
-    Fixed #532 -- reparsing config files now longer throws an exception.
-
-    Added some warnings and logs to the service type so
-    users will be encouraged to specify either "ensure"
-    or "enabled" and added debugging to indicate why
-    restarting is skipped when it is.
-
-    Changed the location of the classes.txt to the state
-    directory.
-
-    Added better error reporting on unmatched brackets.
-
-    Moved puppetd and puppetmasterd to sbin in svn and fixed install.rb
-    to copy them into sbin on the local system appropriately.  (#323)
-
-    Added a splay option (#501).  It's disabled when running under
-    --test in puppetd.  The value is random but cached.  It defaults
-    to the runinterval but can be tuned with --splaylimit
-
-    Changing the notify type so that it always uses
-    the loglevel.
-
-    Fixing #568 - nodes can inherit from quoted node names.
-
-    Tags (and thus definitions and classes) can now be a single
-    character. (#566)
-
-    Added an 'undef' keyword (#629), which will evaluate to ""
-    within strings but when used as a resource parameter value
-    will cause that parameter to be evaluated as undefined.
-
-    Changed the topological sort algorithm (#507) so it will always
-    fail on cycles.
-
-    Added a 'dynamicfacts' configuration option; any facts in that
-    comma-separated list will be ignored when comparing facts to
-    see if they have changed and thus whether a recompile is necessary.
-
-    Renamed some poorly named internal variables:
-        @models in providers are now either @resource or
-        @resource_type (#605).
-
-        @children is no longer used except by components (#606).
-
-        @parent is now @resource within parameters (#607).
-
-    The old variables are still set for backward compatibility.
-
-    Significantly reworking configuration parsing.  Executables all now
-    look for 'puppet.conf' (#206), although they will parse the old-style
-    configuration files if they are present, although they throw a deprecation
-    warning.  Also, file parameters (owner, mode, group) are now set on the
-    same line as the parameter, in brackets. (#422)
-
-    Added transaction summaries (available with the --summarize option),
-    useful for getting a quick idea of what happened in a transaction.
-    Currently only useful on the client or with the puppet interpreter.
-
-    Changed the interal workings for retrieve and removed the :is attribute
-    from Property.  The retrieve methods now return the current value of
-    the property for the system.
-
-    Removed acts_as_taggable from the rails models.
-
-0.22.4
-    Execs now autorequire the user they run as, as long as the user
-    is specified by name. (#430)
-
-    Files on the local machine but not on the remote server during
-    a source copy are now purged if purge => true. (#594)
-
-    Providers can now specify that some commands are optional (#585).
-    Also, the 'command' method returns nil on missing commands,
-    rather than throwing an error, so the presence of commands
-    be tested.
-
-    The 'useradd' provider for Users can now manage passwords.
-    No other providers can, at this point.
-
-    Parameters can now declare a dependency on specific
-    features, and parameters that require missing features
-    will not be instantiated.  This is most useful for
-    properties.
-
-    FileParsing classes can now use instance_eval to add
-    many methods at once to a record type.
-
-    Modules no longer return directories in the list of found
-    manifests (#588).
-
-    The crontab provider now defaults to root when there is no
-    USER set in the environment.
-
-    Puppetd once again correctly responds to HUP.
-
-    Added a syntax for referring to variables defined in
-    other classes (e.g., $puppet::server).
-
-    STDIN, STDOUT, STDERR are now redirected to /dev/null in
-    service providers descending from base.
-
-    Certificates are now valid starting one day before they are
-    created, to help handle small amounts of clock skew.
-
-    Files are no longer considered out of sync if some properties
-    are out of sync but they have no properties that can create
-    the file.
-
-0.22.3
-    Fixed backward compatibility for logs and metrics from older clients.
-
-    Fixed the location of the authconfig parameters so there aren't
-    loading order issues.
-
-    Enabling attribute validation on the providers that subclass
-    'nameservice', so we can verify that an integer is passed to
-    UID and GID.
-
-    Added a stand-alone filebucket client, named 'filebucket'.
-
-    Fixed the new nested paths for filebuckets; the entire md5 sum was
-    not being stored.
-
-    Fixing #553; -M is no longer added when home directories are being
-    managed on Red Hat.
-
-0.22.2 (grover)
-    Users can now manage their home directories, using the managehome
-    parameter, partially using patches provided by Tim Stoop and
-    Matt Palmer. (#432)
-
-    Added 'ralsh' (formerly x2puppet) to the svn tree.  When possible it
-    should be added to the packages.
-
-    The 'notify' type now defaults to its message being the same as its name.
-
-    Reopening $stdin to read from /dev/null during execution, in hopes that
-    init scripts will stop hanging.
-
-    Changed the 'servername' fact set on the server to use the server's fqdn,
-    instead of the short-name.
-
-    Changing the location of the configuration cache.  It now defaults to being
-    in the state directory, rather than in the configuration directory.
-
-    All parameter instances are stored in a single @parameters instance variable
-    hash within resource type instances.  We used to use separate hashes for
-    each parameter type.
-
-    Added the concept of provider features.  Eventually these should be able
-    to express the full range of provider functionality, but for now they can
-    test a provider to see what methods it has set and determine what features it
-    provides as a result.  These features are integrated into the doc generation
-    system so that you get feature documentation automatically.
-
-    Switched apt/aptitide to using "apt-cache policy" instead of "apt-cache showpkg"
-    for determining the latest available version. (#487)
-
-    FileBuckets now use a deeply nested structure for storing files, so
-    you do not end up with hundreds or thousands of files in the same
-    directory. (#447)
-
-    Facts are now cached in the state file, and when they change the configuration
-    is always recompiled. (#519)
-
-    Added 'ignoreimport' setting for use in commit hooks.  This causes the
-    parser to ignore import statements so a single file can be parse-checked.  (#544)
-
-    Import statements can now specify multiple comma-separated arguments.
-
-    Definitions now support both 'name' and 'title', just like any other
-    resource type. (#539)
-
-    Added a generate() command, which sets values to the result of an external
-    command. (#541)
-
-    Added a file() command to read in files with no interpolation.  The first
-    found file has its content returned.
-
-    puppetd now exits if no cert is present in onetime mode. (#533)
-
-    The client configuration cache can be safely removed and the client
-    will correctly realize the client is not in sync.
-
-    Resources can now be freely deleted, thus fixing many problems introduced
-    when deletion of required resources was forbidden when purging was introduced.
-    Only resources being purged will not be deleted.
-
-    Facts and plugins now download even in noop mode (#540).
-
-    Resources in noop mode now log when they would have responded to an event (#542).
-
-    Refactored cron support entirely.  Cron now uses providers, and there
-    is a single 'crontab' provider that handles user crontabs.  While this
-    refactor does not include providers for /etc/crontab or cron.d, it should
-    now be straightforward to write those providers.
-
-    Changed the parameter sorting so that the provider parameter comes
-    right after name, so the provider is available when the other parameters
-    and properties are being created.
-
-    Redid some of the internals of the ParsedFile provider base class.
-    It now passes a FileRecord around instead of a hash.
-
-    Fixing a bug related to link recursion that caused link directories
-    to always be considered out of sync.
-
-    The bind address for puppetmasterd can now be specified with
-    --bindaddress.
-
-    Added (probably experimental) mongrel support.  At this point you're
-    still responsible for starting each individual process, and you have to
-    set up a proxy in front of it.
-
-    Redesigned the 'network' tree to support multiple web servers, including
-    refactoring most of the structural code so it's much clearer and more
-    reusable now.
-
-    Set up the CA client to default to ca_server and ca_port, so you can
-    easily run a separate CA.
-
-    Supporting hosts with no domain name, thanks to a patch from
-    Dennis Jacobfeuerborn.
-
-    Added an 'ignorecache' option to tell puppetd to force a recompile, thanks to
-    a patch by Chris McEniry.
-
-    Made up2date the default for RHEL < 4 and yum the default for the rest.
-
-    The yum provider now supports versions.
-
-    Case statements correctly match when multiple values are provided,
-    thanks to a patch by David Schmitt.
-
-    Functions can now be called with no arguments.
-
-    String escapes parse correctly in all cases now, thanks to a patch by
-    cstorey.
-
-    Subclasses again search parent classes for defaults.
-
-    You can now purge apt and dpkg packages.
-
-    When doing file recursion, 'ensure' only affects the top-level directory.
-
-    States have been renamed to Properties.
-
-0.22.1 (kermit) -- Mostly a bugfix release
-    Compile times now persist between restarts of puppetd.
-
-    Timeouts have been added to many parts of Puppet, reducing the likelihood
-    if it hanging forever on broken scripts or servers.
-
-    All of the documentation and recipes have been moved to the wiki by Peter
-    Abrahamsen and Ben Kite has moved the FAQ to the wiki.
-
-    Explicit relationships now override automatic relationships, allowing you
-    to manually specify deletion order when removing resources.
-
-    Resources with dependencies can now be deleted as long as all of their
-    dependencies are also being deleted.
-
-    Namespaces for both classes and definitions now work much more consistently.
-    You should now be able to specify a class or definition with a namespace
-    everywhere you would normally expect to be able to specify one without.
-
-    Downcasing of facts can be selectively disabled.
-
-    Cyclic dependency graphs are now checked for and forbidden.
-
-    The netinfo mounts provider was commented out, because it really doesn't
-    work at all.  Stupid NetInfo stores mount information with the device as
-    the key, which doesn't work with my current NetInfo code.
-
-    Otherwise, lots and lots of bugfixes.  Check the tickets associated with the
-    'kermit' milestone.
-
-0.22.0
-    Integrated the GRATR graph library into Puppet, for handling resource
-    relationships.
-
-    Lots of bug-fixes (see bugs tickets associated with the 'minor' milestone).
-
-    Added new 'resources' metatype, which currently only includes the ability
-    to purge unmanaged resources.
-
-    Added better ability to generate new resource objects during transactions
-    (using 'generate' and 'eval_generate' methods).
-
-    Rewrote all Rails support with a much better database design.  Export/collect
-    now works, although the database is incompatible with previous versions.
-
-    Removed downcasing of facts and made most of the language case-insensitive.
-
-    Added support for printing the graphs built during transactions.
-
-    Reworked how paths are built for logging.
-
-    Switched all providers to directly executing commands instead of going through
-    a subshell, which removes the need to quote or escape arguments.
-
-0.20.1
-    Mostly a bug-fix release, with the most important fix being the
-    multiple-definition error.
-
-    Completely rewrote the ParsedFile system; each provider is now much
-    shorter and much more maintainable.  However, fundamental problems
-    were found with the 'port' type, so it was disabled.  Also, added
-    a NetInfo provider for 'host' and an experimental NetInfo provider
-    for 'mount'.
-
-    Made the RRDGraph report *much* better and added reference
-    generation for reports and functions.
-
-0.20.0
-    Significantly refactored the parser.  Resource overrides now consistently
-    work anywhere in a class hierarchy.
-
-    The language was also modified somewhat.  The previous export/collect syntax
-    is now used for handling virtual objects, and export/collect (which is still
-    experimental) now uses double sigils (@@ and <<| |>>).
-
-    Resource references (e.g., File["/etc/passwd"]) now have to be capitalized,
-    in fitting in with capitalizing type operations.
-
-    As usual, lots of other smaller fixes, but most of the work was in the language.
-
-0.19.3
-    Fixing a bug in server/master.rb that causes the hostname
-    not to be available in locally-executed manifests.
-
-0.19.2
-    Fixing a few smaller bugs, notably in the reports system.
-
-    Refreshed objects now generate an event, which can result in further
-    refreshes of other objects.
-
-0.19.1
-    Fixing two critical bugs:  User management works again and cron jobs are
-    no longer added to all user accounts.
-
-0.19.0
-    Added provider support.
-
-    Added support for %h, %H, and %d expansion in fileserver.conf.
-
-    Added Certificate Revocation support.
-
-    Made dynamic loading pervasive -- nearly every aspect of Puppet will now
-    automatically load new instances (e.g., types, providers, and reports).
-
-    Added support for automatic distribution of facts and plugins (custom types).
-
-0.18.4
-    Another bug-fix release.  The most import bug fixed is that
-    cronjobs again work even with initially empty crontabs.
-
-0.18.3
-    Mostly a bug-fix release; fixed small bugs in the functionality added in
-    0.18.2.
-
-0.18.2
-    Added templating support.
-
-    Added reporting.
-
-    Added gem and blastwave packaging support.
-
-0.18.1
-    Added signal handlers for HUP, so both client and server deal correctly with it.
-
-    Added signal handler for USR1, which triggers a run on the client.
-
-    As usual, fixed many bugs.
-
-    Significant fixes to puppetrun -- it should behave much more correctly now.
-
-    Added "fail" function which throws a syntax error if it's encountered.
-
-    Added plugin downloading from the central server to the client.  It must be
-    enabled with --pluginsync.
-
-    Added support for FreeBSD's special "@daily" cron schedules.
-
-    Correctly handling spaces in file sources.
-
-    Moved documentation into svn tree.
-
-0.18.0
-    Added support for a "default" node.
-
-    When multiple nodes are specified, they must now be comma-separated (this
-    introduces a language incompatibility).
-
-    Failed dependencies cause dependent objects within the same transaction
-    not to run.
-
-    Many updates to puppetrun
-
-    Many bug fixes
-
-    Function names are no longer reserved words.
-
-    Links can now replace files.
-
-0.17.2
-    Added "puppetrun" application and associated runner server and client classes.
-
-    Fixed cron support so it better supports valid values and environment settings.
-
-0.17.1
-    Fixing a bug requiring rails on all Debian boxes
-
-    Fixing a couple of other small bugs
-
-0.17.0
-    Adding ActiveRecord integration on the server
-
-    Adding export/collect functionality
-
-    Fixing many bugs
-
-0.16.5
-    Fixing a critical bug in importing classes from other files
-
-    Fixing nodename handling to actually allow dashes
-
-0.16.4
-    Fixing a critical bug in puppetd when acquiring a certificate for the first
-    time
-
-0.16.3
-    Some significant bug fixes
-
-    Modified puppetd so that it can now function as an agent independent
-    of a puppetmasterd process, e.g., using the PuppetShow web application.
-
-0.16.2
-    Modified some of the AST classes so that class names, definition names, and
-    node names are all set within the code being evaluated, so 'tagged(name)' returns
-    true while evaluating 'name', for instance.
-
-    Added '--clean' argument to puppetca to remove all traces of a given
-    client.
-
-0.16.1
-    Added 'tagged' and 'defined' functions.
-
-    Moved all functions to a general framework that makes it very easy to add new
-    functions.
-
-0.16.0
-    Added 'tag' keyword/function.
-
-    Added FreeBSD Ports support
-
-    Added 'pelement' server for sending or receiving Puppet objects, although
-    none of the executables use it yet.
-
-0.15.3
-    Fixed many bugs in :exec, including adding support for arrays of checks
-
-    Added autoloading for types and service variants (e.g., you can now
-    just create a new type in the appropriate location and use it in Puppet,
-    without modifying the core Puppet libs).
-
-0.15.2
-    Added darwinport, Apple .pkg, and freebsd package types
-    Added 'mount type
-    Host facts are now set at the top scope (Bug #103)
-    Added -e (inline exection) flag to 'puppet' executable
-    Many small bug fixes
-
-0.15.1
-    Fixed 'yum' installs so that they successfully upgrade packages.
-    Fixed puppetmasterd.conf file so group settings take.
-
-0.15.0
-    Upped the minor release because the File server is incompatible with 0.14,
-        because it now handles links.
-
-    The 'symlink' type is deprecated (but still present), in favor of using
-        files with the 'target' parameter.
-
-    Unset variables no longer throw an error, they just return an empty string
-
-    You can now specify tags to restrict which objects run during a given run.
-
-    You can also specify to skip running against the cached copy when there's
-    a failure, which is useful for testing new configurations.
-
-    RPMs and Sun packages can now install, as long as they specify a package
-        location, and they'll automatically upgrade if you point them to a new
-        file with an upgrade.
-    Multiple bug fixes.
-
-
-0.14.1
-    Fixed a couple of small logging bugs
-    Fixed a bug with handling group ownership of links
-
-0.14.0
-    Added some ability to selectively manage symlinks when doing file management
-    Many bug fixes
-    Variables can now be used as the test values in case statements and selectors
-    Bumping a minor release number because 0.13.4 introduced a protocol
-        incompatibility and should have had a minor rev bump
-
-0.13.6
-    Many, many small bug fixes
-    FreeBSD user/group support has been added
-    The configuration system has been rewritten so that daemons can now generate
-        and repair the files and directories they need. (Fixed bug #68.)
-    Fixed the element override issues; now only subclasses can override values.
-
-0.13.5
-    Fixed packages so types can be specified
-    Added 'enable' state to services, although it does not work everywhere yet
-
-0.13.4
-    A few important bug fixes, mostly in the parser.
-
-0.13.3
-    Changed transactions to be one-stage instead of two
-    Changed all types to use self[:name] instead of self.name, to support
-        the symbolic naming implemented in 0.13.1
-
-0.13.2
-    Changed package[answerfile] to package[adminfile], and added package[responsefile]
-    Fixed a bunch of internal functions to behave more consistently and usefully
-
-0.13.1
-    Fixed RPM spec files to create puppet user and group (lutter)
-    Fixed crontab reading and writing (luke)
-    Added symbolic naming in the language (luke)
-
-0.13.0
-    Added support for configuration files.
-    Even more bug fixes, including the infamous 'frozen object' bug, which was a
-        problem with 'waitforcert'.
-    David Lutterkort got RPM into good shape.
-
-0.12.0
-    Added Scheduling, and many bug fixes, of course.
-
-0.11.2
-    Fixed bugs related to specifying arrays of requirements
-    Fixed a key bug in retrieving checksums
-    Fixed lots of usability bugs
-    Added 'fail' methods that automatically add file and line info when possible,
-    and converted many errors to use that method
-
-0.11.1
-    Fixed bug with recursive copying with 'ignore' set.
-    Added OpenBSD package support.
-
-0.11.0
-    Added 'ensure' state to many elements.
-    Modified puppetdoc to correctly handle indentation and such.
-    Significantly rewrote much of the builtin documentation to take advantage
-        of the new features in puppetdoc, including many examples.
-
-0.10.2
-    Added SMF support
-    Added autorequire functionality, with specific support for exec and file
-        Exec elements autorequire any mentioned files, including the scripts,
-        along with their CWDs.
-        Files autorequire any parent directories.
-    Added 'alias' metaparam.
-    Fixed dependencies so they don't depend on file order.
-
-0.10.1
-    Added Solaris package support and changed puppetmasterd to run as
-    a non-root user.
-
-0.10.0
-    Significant refactoring of how types, states, and parameters work, including
-    breaking out parameters into a separate class.  This refactoring did not
-    introduce much new functionality, but made extension of Puppet significantly
-    easier
-
-    Also, fixed the bug with 'waitforcert' in puppetd.
-
-0.9.4
-    Small fix to wrap the StatusServer class in the checks for required classes.
-
-0.9.3
-    Fixed some significant bugs in cron job management.
-
-0.9.2
-    Second Public Beta
-
-0.9.0
-    First Public Beta
diff --git a/COPYING b/COPYING
deleted file mode 100644
index 3912109..0000000
--- a/COPYING
+++ /dev/null
@@ -1,340 +0,0 @@
-		    GNU GENERAL PUBLIC LICENSE
-		       Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-                       51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-			    Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-		    GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-			    NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-		     END OF TERMS AND CONDITIONS
-
-	    How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) year name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/LICENSE b/LICENSE
index 6bfcc22..e95cc9f 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,17 +1,17 @@
-Puppet - Automating Configuration Management. Copyright (C) 2005 Puppet Labs LLC
+   Puppet - Automating Configuration Management.
 
-Puppet Labs can be contacted at: info at puppetlabs.com
+   Copyright (C) 2011 Puppet Labs Inc
 
-This program and entire repository is free software; you can
-redistribute it and/or modify it under the terms of the GNU
-General Public License Version 2 as published by the Free Software
-Foundation.
+   Puppet Labs can be contacted at: info at puppetlabs.com
 
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
 
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
diff --git a/README b/README
deleted file mode 100644
index d6b7d66..0000000
--- a/README
+++ /dev/null
@@ -1,31 +0,0 @@
-Documentation (and detailed install instructions) can be found
-online at http://docs.puppetlabs.com/.
-
-Additional documentation can also be found at the Puppet Wiki:
-
-http://projects.puppetlabs.com/projects/puppet/wiki/
-
-Generally, you need the following things installed:
-
-* Ruby >= 1.8.1 (earlier releases might work but probably not)
-
-* The Ruby OpenSSL library.  For some reason, this often isn't included
-  in the main ruby distributions.  You can test for it by running
-  'ruby -ropenssl -e "puts :yep"'.  If that errors out, you're missing the
-  library.
-
-  If your distribution doesn't come with the necessary library (e.g., on Debian
-  and Ubuntu you need to install libopenssl-ruby), then you'll probably have to
-  compile Ruby yourself, since it's part of the standard library and not
-  available separately.  You could probably just compile and install that one
-  library, though.
-
-* The Ruby XMLRPC client and server libraries.  For some reason, this often
-  isn't included in the main ruby distributions.  You can test for it by
-  running 'ruby -rxmlrpc/client -e "puts :yep"'.  If that errors out, you're missing
-  the library.
-
-* Facter => 1.5.1
-  You can get this from < http://puppetlabs.com/projects/facter >
-
-$Id$
diff --git a/README.rst b/README.md
similarity index 57%
rename from README.rst
rename to README.md
index 63452ef..4d17a75 100644
--- a/README.rst
+++ b/README.md
@@ -5,10 +5,8 @@ Puppet, an automated administrative engine for your Linux and Unix systems, perf
 administrative tasks (such as adding users, installing packages, and updating server
 configurations) based on a centralized specification.
 
-Documentation (and detailed install instructions) can be found online at the 
-`Puppet Documentation`_ site.
-
-Additional documentation can also be found at the `Puppet Wiki`_.
+Documentation (and detailed installation instructions) can be found online at the 
+[Puppet Docs site](http://docs.puppetlabs.com).
 
 Installation
 ------------
@@ -28,14 +26,15 @@ Generally, you need the following things installed:
   available separately.  You could probably just compile and install that one
   library, though.
 
-* The Ruby XMLRPC client and server libraries.  For some reason, this often
-  isn't included in the main ruby distributions.  You can test for it by
-  running 'ruby -rxmlrpc/client -e "puts :yep"'.  If that errors out, you're missing
-  the library.
+* Facter => 1.5.1 (available via your package manager or from the [Facter site](http://puppetlabs.com/projects/facter).
+
+License
+-------
+
+See LICENSE file.
+
+Support
+-------
 
-* Facter => 1.5.1
-  You can get this from your package management system or the `Facter site`_
+Please log tickets and issues at our [Projects site](http://projects.puppetlabs.com)
 
-.. _Puppet Documentation: http://docs.puppetlabs.com
-.. _Puppet Wiki: http://projects.puppetlabs.com/projects/puppet/wiki/
-.. _Facter site: http://puppetlabs.com/projects/facter
diff --git a/README.queueing b/README.queueing
deleted file mode 100644
index 83a8e19..0000000
--- a/README.queueing
+++ /dev/null
@@ -1,126 +0,0 @@
-*PUPPET QUEUEING
-
-Puppet Queueing is a feature which is designed to take some load
-off of the PuppetMaster by transferring the task of updating the
-database to a separate program which is named puppetqd (Puppet
-Queue Daemon).
-
-Currently this is only supported for "Storeconfigs" which is
-documented at:
-
-http://projects.puppetlabs.com/projects/1/wiki/Using_Stored_Configuration
-
-In the future this feature can be extended to any new puppet
-data which involves storage in a database.
-
-*OPERATION
-
-In a nutshell:
-
-  puppetmasterd -> stomp -> service -> stomp -> puppetqd -> database
-
-At the moment the only messaging protocol supported is "stomp". Although
-others could be implemented, stomp is considered by many as the
-default queueing mechanism for Ruby and Rails applications. It is
-distributed as a Ruby gem and is easily installed.
-
-(The queueing code inside Puppet has been written so that when other
-interfaces and protocols are implemented they will be easy to use by
-changing settings in puppet.conf).
-
-The "service" in the diagram above is any queueing service that supports
-the Stomp API. For details refer to:
-
-  http://xircles.codehaus.org/projects/stomp
-
-Both puppetmasterd and puppetqd subscribe to the same queueing service
-using the stomp interface. As puppetmasterd posts data to the queue,
-puppetqd receives it and stores it. The details of how to connect to
-the service and the name of the queue to use are set in puppet.conf:
-
-  [main]
-    queue_type = stomp
-    queue_source = stomp://localhost:61613
-  [puppetmasterd]
-    async_storeconfigs = true
-
-Note: since puppetmasterd needs to recover the data being stored at a
-later time, both puppetmasterd and puppetqd need to work with the same
-database as defined in the STORECONFIGS setup.
-
-*QUEUEING SERVICES
-
-As mentioned previously any queueing service that supports the Stomp
-protocol can be used. Which one you use depends on your needs. We have
-tested with two of the most popular services - StompServer and ActiveMQ.
-
-+ StompServer
-
-    http://rubyforge.org/projects/stompserver/
-
-StompServer is a lightweight queueing service written in Ruby which is
-suitable for testing or low volume puppet usage. Works well when both
-puppetmasterd and puppetd are running on the same machine that it's running
-on but we encountered some problems when using it from multiple machines.
-
-Just install the stompserver gem and run 'stompserver'.
-
-+ Apache ActiveMQ
-
-    http://activemq.apache.org
-
-Considered by many to be the most popular message service in use today,
-ActiveMQ has hundreds of features for scaling, persistence and so on.
-
-Although installation is fairly simple, the configuration can seem quite
-intimidating, but for our use a one line change to the  standard configuration
-is all that is required and is explained at:
-
-    http://activemq.apache.org/stomp.html
-
-Other customization of the internal workings of ActiveMQ, if any, will depend
-on your needs and deployment. A quick skimming of the ActiveMQ documentation
-will give you enough info to decide.
-
-Others
-
-We have looked at but not tried some other queuing services which are
-compatible with the Stomp API:
-
-+ POE Component Message Queue
-+ JBoss Messaging (with 3rd party support for Stomp)
-
-*SCALING
-
-For StoreConfigs you basically need to have the catalog for a node stored
-in the database before the next time the node connects and asks for a
-new catalog.
-
-If the puppetd on your nodes is set to check every 30 minutes,
-then it would seem that there is no problem. However if you have 3000
-nodes you have a LOT of catalogs to store and it is possible you will
-not get a catalog saved in time.
-
-Running puppetmaster, your queueing service and puppetqd on the same
-machine means that they are all competing for the same CPU cycles. Bumping
-up the power of the server they are running on may be enough to handle
-even fairly large deployments.
-
-However since most queueing services (even StompServer) are designed to
-deliver messages from a "queue" to whoever asks for the next message you
-can split things up between machines:
-
-  puppetmaster1 --\             /-- puppetqd1 -\
-  puppetmaster2 ----> ActiveMQ ---> puppetqd2 ---> database
-  puppetmaster3 --/             \-- puppetqd33 -/
-                                 \- puppetqd4-/
-
-This is, of course a totally contrived example, but it gets the point
-across. As long as the data gets to the database, it doesn't matter
-which machines or services it goes through.
-
-Although for StoreConfigs absolute reliability is not a requirement as
-a new catalog will be sent the next time a node connects, some amount
-of persistence should some process crash may be desirable. Both ActiveMQ
-and MySQL (and other databases) have these kind of features built in
-which can be activated as needed.
diff --git a/conf/redhat/puppet.spec b/conf/redhat/puppet.spec
index e51af0a..26b2c9b 100644
--- a/conf/redhat/puppet.spec
+++ b/conf/redhat/puppet.spec
@@ -8,7 +8,7 @@ Name:           puppet
 Version:        2.6.0
 Release:        1%{?dist}
 Summary:        A network tool for managing many disparate systems
-License:        GPLv2+
+License:        Apache 2.0
 URL:            http://puppetlabs.com
 Source0:        http://puppetlabs.com/downloads/%{name}/%{name}-%{version}.tar.gz
 Source1:        http://puppetlabs.com/downloads/%{name}/%{name}-%{version}.tar.gz.sign
diff --git a/conf/solaris/pkginfo b/conf/solaris/pkginfo
index 7f7bb97..14a2f0a 100644
--- a/conf/solaris/pkginfo
+++ b/conf/solaris/pkginfo
@@ -1,7 +1,6 @@
 PKG=CSWpuppet
 NAME=puppet - System Automation Framework
-VERSION=0.23.0
+VERSION=2.7.0
 CATEGORY=application
-VENDOR=http://reductivelabs.com/projects/puppet
-HOTLINE=http://reductivelabs.com/cgi-bin/puppet.cgi
-EMAIL=luke at madstop.com
+VENDOR=http://projects.puppetlabs.com/projects/puppet
+EMAIL=luke at puppetlabs.com
diff --git a/conf/suse/puppet.spec b/conf/suse/puppet.spec
index 777f6a4..2a5b9f4 100644
--- a/conf/suse/puppet.spec
+++ b/conf/suse/puppet.spec
@@ -6,7 +6,7 @@ Summary: A network tool for managing many disparate systems
 Name: puppet
 Version: 2.6.1
 Release: 1%{?dist}
-License: GPL
+License: Apache 2.0
 Group:    Productivity/Networking/System
 
 URL: http://puppetlabs.com/projects/puppet/
diff --git a/ext/nagios/naggen b/ext/nagios/naggen
index c6ca15a..16dbe6c 100755
--- a/ext/nagios/naggen
+++ b/ext/nagios/naggen
@@ -57,14 +57,21 @@
 #
 #   naggen --storeconfigs --confdir /foo --compare
 #
-# = Author
 #
-# Luke Kanies
+# = License
+#   Copyright 2011 Luke Kanies
 #
-# = Copyright
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
 #
-# Copyright (c) 2009 Puppet Labs, LLC
-# Licensed under the GPL 2
+#       http://www.apache.org/licenses/LICENSE-2.0
+#
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
 
 require 'puppet'
 require 'puppet/rails'
diff --git a/ext/puppet-test b/ext/puppet-test
index f2648c9..affb012 100755
--- a/ext/puppet-test
+++ b/ext/puppet-test
@@ -84,14 +84,20 @@
 #
 #   puppet-test --retrieve /module/path/to/file
 #
-# = Author
+# = License
+#   Copyright 2011 Luke Kanies
 #
-# Luke Kanies
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
 #
-# = Copyright
+#       http://www.apache.org/licenses/LICENSE-2.0
 #
-# Copyright (c) 2005, 2006 Puppet Labs, LLC
-# Licensed under the GNU Public License
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
 
 # Do an initial trap, so that cancels don't get a stack trace.
 trap(:INT) do
diff --git a/ext/yaml_nodes.rb b/ext/yaml_nodes.rb
index 2174da0..3c7077c 100755
--- a/ext/yaml_nodes.rb
+++ b/ext/yaml_nodes.rb
@@ -23,14 +23,20 @@
 # yamldir::
 #   Specify where the yaml is found.  Defaults to 'yaml' in the current directory.
 #
-# = Author
+# = License
+#   Copyright 2011 Luke Kanies
 #
-# Luke Kanies
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
 #
-# = Copyright
+#       http://www.apache.org/licenses/LICENSE-2.0
 #
-# Copyright (c) 2009 Puppet Labs, Inc.
-# Licensed under the GPL2
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
 
 require 'yaml'
 require 'optparse'
diff --git a/lib/puppet/application/agent.rb b/lib/puppet/application/agent.rb
index 2ee4022..fc86168 100644
--- a/lib/puppet/application/agent.rb
+++ b/lib/puppet/application/agent.rb
@@ -288,8 +288,7 @@ Luke Kanies
 
 COPYRIGHT
 ---------
-Copyright (c) 2005, 2006 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
   end
diff --git a/lib/puppet/application/apply.rb b/lib/puppet/application/apply.rb
index 2b7c9f8..bf7b8a9 100644
--- a/lib/puppet/application/apply.rb
+++ b/lib/puppet/application/apply.rb
@@ -117,8 +117,7 @@ Luke Kanies
 
 COPYRIGHT
 ---------
-Copyright (c) 2005 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
   end
diff --git a/lib/puppet/application/cert.rb b/lib/puppet/application/cert.rb
index f02fc89..cbd6fd6 100644
--- a/lib/puppet/application/cert.rb
+++ b/lib/puppet/application/cert.rb
@@ -163,8 +163,7 @@ Luke Kanies
 
 COPYRIGHT
 ---------
-Copyright (c) 2005 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
     exit
diff --git a/lib/puppet/application/describe.rb b/lib/puppet/application/describe.rb
index 7964315..8ce20b6 100644
--- a/lib/puppet/application/describe.rb
+++ b/lib/puppet/application/describe.rb
@@ -228,8 +228,7 @@ David Lutterkort
 
 COPYRIGHT
 ---------
-Copyright (c) 2005 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
   end
diff --git a/lib/puppet/application/doc.rb b/lib/puppet/application/doc.rb
index 7481191..a88f27c 100644
--- a/lib/puppet/application/doc.rb
+++ b/lib/puppet/application/doc.rb
@@ -136,8 +136,7 @@ Luke Kanies
 
 COPYRIGHT
 ---------
-Copyright (c) 2005-2007 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
 HELP
   end
diff --git a/lib/puppet/application/filebucket.rb b/lib/puppet/application/filebucket.rb
index 063d97d..6d59ae4 100644
--- a/lib/puppet/application/filebucket.rb
+++ b/lib/puppet/application/filebucket.rb
@@ -108,8 +108,7 @@ Luke Kanies
 
 COPYRIGHT
 ---------
-Copyright (c) 2005 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
   end
diff --git a/lib/puppet/application/inspect.rb b/lib/puppet/application/inspect.rb
index e448cb9..30865cf 100644
--- a/lib/puppet/application/inspect.rb
+++ b/lib/puppet/application/inspect.rb
@@ -68,9 +68,7 @@ Puppet Labs
 
 COPYRIGHT
 ---------
-
-Copyright (c) 2011 Puppet Labs, LLC
-Licensed under the GNU General Public License version 2
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
   end
diff --git a/lib/puppet/application/kick.rb b/lib/puppet/application/kick.rb
index da93c01..5366994 100644
--- a/lib/puppet/application/kick.rb
+++ b/lib/puppet/application/kick.rb
@@ -172,8 +172,7 @@ Luke Kanies
 
 COPYRIGHT
 ---------
-Copyright (c) 2005 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
   end
diff --git a/lib/puppet/application/master.rb b/lib/puppet/application/master.rb
index 78499a9..f93894d 100644
--- a/lib/puppet/application/master.rb
+++ b/lib/puppet/application/master.rb
@@ -105,8 +105,7 @@ Luke Kanies
 
 COPYRIGHT
 ---------
-Copyright (c) 2005 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
   end
diff --git a/lib/puppet/application/queue.rb b/lib/puppet/application/queue.rb
index de8aea3..e56fde2 100644
--- a/lib/puppet/application/queue.rb
+++ b/lib/puppet/application/queue.rb
@@ -104,8 +104,7 @@ Luke Kanies
 
 COPYRIGHT
 ---------
-Copyright (c) 2009 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
   end
diff --git a/lib/puppet/application/resource.rb b/lib/puppet/application/resource.rb
index 3995c28..6ef87d6 100644
--- a/lib/puppet/application/resource.rb
+++ b/lib/puppet/application/resource.rb
@@ -132,8 +132,7 @@ Luke Kanies
 
 COPYRIGHT
 ---------
-Copyright (c) 2005-2007 Puppet Labs, LLC Licensed under the GNU Public
-License
+Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
 
     HELP
   end
diff --git a/lib/puppet/network/http_server/mongrel.rb b/lib/puppet/network/http_server/mongrel.rb
index 9bd949a..ce0401a 100644
--- a/lib/puppet/network/http_server/mongrel.rb
+++ b/lib/puppet/network/http_server/mongrel.rb
@@ -4,26 +4,6 @@
 #
 # Copyright (c) 2006 Manuel Holtgrewe, 2007 Luke Kanies
 #
-# Permission is hereby granted, free of charge, to any person obtaining
-# a copy of this software and associated documentation files (the
-# "Software"), to deal in the Software without restriction, including
-# without limitation the rights to use, copy, modify, merge, publish,
-# distribute, sublicense, and/or sell copies of the Software, and to
-# permit persons to whom the Software is furnished to do so, subject to
-# the following conditions:
-#
-# The above copyright notice and this permission notice shall be
-# included in all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
-# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
-# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
-# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-# SOFTWARE.
-
 # This file is based heavily on a file retrieved from
 # http://ttt.ggnore.net/2006/11/15/xmlrpc-with-mongrel-and-ruby-off-rails/
 
diff --git a/lib/puppet/provider/augeas/augeas.rb b/lib/puppet/provider/augeas/augeas.rb
index 5488c66..a16f54b 100644
--- a/lib/puppet/provider/augeas/augeas.rb
+++ b/lib/puppet/provider/augeas/augeas.rb
@@ -1,21 +1,17 @@
-#--
-#  Copyright (C) 2008 Red Hat Inc.
 #
-#  This library is free software; you can redistribute it and/or
-#  modify it under the terms of the GNU General Public
-#  License as published by the Free Software Foundation; either
-#  version 2 of the License, or (at your option) any later version.
+#   Copyright 2011 Bryan Kearney <bkearney at redhat.com>
 #
-#  This library is distributed in the hope that it will be useful,
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-#  General Public License for more details.
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
 #
-#  You should have received a copy of the GNU General Public
-#  License along with this library; if not, write to the Free Software
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
+#       http://www.apache.org/licenses/LICENSE-2.0
 #
-# Author: Bryan Kearney <bkearney at redhat.com>
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
 
 require 'augeas' if Puppet.features.augeas?
 require 'strscan'
diff --git a/lib/puppet/provider/group/directoryservice.rb b/lib/puppet/provider/group/directoryservice.rb
index 97fee88..e112848 100644
--- a/lib/puppet/provider/group/directoryservice.rb
+++ b/lib/puppet/provider/group/directoryservice.rb
@@ -1,17 +1,3 @@
-#  Created by Jeff McCune on 2007-07-22
-#  Copyright (c) 2007. All rights reserved.
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation (version 2 of the License)
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston MA  02110-1301 USA
-
 require 'puppet/provider/nameservice/directoryservice'
 
 Puppet::Type.type(:group).provide :directoryservice, :parent => Puppet::Provider::NameService::DirectoryService do
diff --git a/lib/puppet/provider/mcx/mcxcontent.rb b/lib/puppet/provider/mcx/mcxcontent.rb
index 3ad437b..0c00612 100644
--- a/lib/puppet/provider/mcx/mcxcontent.rb
+++ b/lib/puppet/provider/mcx/mcxcontent.rb
@@ -1,22 +1,3 @@
-#--
-# Copyright (C) 2008 Jeffrey J McCune.
-
-# This program and entire repository is free software; you can
-# redistribute it and/or modify it under the terms of the GNU
-# General Public License as published by the Free Software
-# Foundation; either version 2 of the License, or any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-# Author: Jeff McCune <mccune.jeff at gmail.com>
-
 require 'tempfile'
 
 Puppet::Type.type(:mcx).provide :mcxcontent, :parent => Puppet::Provider do
diff --git a/lib/puppet/provider/nameservice/directoryservice.rb b/lib/puppet/provider/nameservice/directoryservice.rb
index 2e34809..c1139a6 100644
--- a/lib/puppet/provider/nameservice/directoryservice.rb
+++ b/lib/puppet/provider/nameservice/directoryservice.rb
@@ -1,17 +1,3 @@
-#  Created by Jeff McCune on 2007-07-22
-#  Copyright (c) 2007. All rights reserved.
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation (version 2 of the License)
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston MA  02110-1301 USA
-
 require 'puppet'
 require 'puppet/provider/nameservice'
 require 'facter/util/plist'
diff --git a/lib/puppet/provider/package/pkgdmg.rb b/lib/puppet/provider/package/pkgdmg.rb
index 39e377d..662d05c 100644
--- a/lib/puppet/provider/package/pkgdmg.rb
+++ b/lib/puppet/provider/package/pkgdmg.rb
@@ -1,21 +1,4 @@
 #
-# pkgdmg.rb
-#
-# Install Installer.app packages wrapped up inside a DMG image file.
-#
-# Copyright (C) 2007 Jeff McCune Jeff McCune <jeff at northstarlabs.net>
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation (version 2 of the License)
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston MA  02110-1301 USA
-#
 # Motivation: DMG files provide a true HFS file system
 # and are easier to manage and .pkg bundles.
 #
diff --git a/lib/puppet/provider/user/directoryservice.rb b/lib/puppet/provider/user/directoryservice.rb
index 4b62a6a..a2c5610 100644
--- a/lib/puppet/provider/user/directoryservice.rb
+++ b/lib/puppet/provider/user/directoryservice.rb
@@ -1,17 +1,3 @@
-#  Created by Jeff McCune on 2007-07-22
-#  Copyright (c) 2007. All rights reserved.
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation (version 2 of the License)
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston MA  02110-1301 USA
-
 require 'puppet/provider/nameservice/directoryservice'
 
 Puppet::Type.type(:user).provide :directoryservice, :parent => Puppet::Provider::NameService::DirectoryService do
diff --git a/lib/puppet/type/augeas.rb b/lib/puppet/type/augeas.rb
index a8fb1f1..f4d3c43 100644
--- a/lib/puppet/type/augeas.rb
+++ b/lib/puppet/type/augeas.rb
@@ -1,21 +1,17 @@
-#--
-#  Copyright (C) 2008 Red Hat Inc.
 #
-#  This library is free software; you can redistribute it and/or
-#  modify it under the terms of the GNU General Public
-#  License as published by the Free Software Foundation; either
-#  version 2 of the License, or (at your option) any later version.
+#   Copyright 2011 Bryan Kearney <bkearney at redhat.com>
 #
-#  This library is distributed in the hope that it will be useful,
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-#  General Public License for more details.
+#   Licensed under the Apache License, Version 2.0 (the "License");
+#   you may not use this file except in compliance with the License.
+#   You may obtain a copy of the License at
 #
-#  You should have received a copy of the GNU General Public
-#  License along with this library; if not, write to the Free Software
-#  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
+#       http://www.apache.org/licenses/LICENSE-2.0
 #
-# Author: Bryan Kearney <bkearney at redhat.com>
+#   Unless required by applicable law or agreed to in writing, software
+#   distributed under the License is distributed on an "AS IS" BASIS,
+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+#   See the License for the specific language governing permissions and
+#   limitations under the License.
 
 Puppet::Type.newtype(:augeas) do
   include Puppet::Util
diff --git a/lib/puppet/type/mcx.rb b/lib/puppet/type/mcx.rb
index 07c9348..d0306ca 100644
--- a/lib/puppet/type/mcx.rb
+++ b/lib/puppet/type/mcx.rb
@@ -1,22 +1,3 @@
-#--
-# Copyright (C) 2008 Jeffrey J McCune.
-
-# This program and entire repository is free software; you can
-# redistribute it and/or modify it under the terms of the GNU
-# General Public License as published by the Free Software
-# Foundation; either version 2 of the License, or any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-# Author: Jeff McCune <mccune.jeff at gmail.com>
-
 Puppet::Type.newtype(:mcx) do
 
   @doc = "MCX object management using DirectoryService on OS X.
@@ -81,9 +62,9 @@ MCX settings refer to, the MCX resource will autorequire that user, group, or co
   newproperty(:content, :required_features => :manages_content) do
     desc "The XML Plist.  The value of MCXSettings in DirectoryService.
     This is the standard output from the system command:
-        
+
         dscl localhost -mcxexport /Local/Default/<ds_type>/ds_name
-    
+
     Note that `ds_type` is capitalized and plural in the dscl command."
   end
 
diff --git a/spec/unit/provider/mcx/mcxcontent_spec.rb b/spec/unit/provider/mcx/mcxcontent_spec.rb
index 1189143..27aae68 100755
--- a/spec/unit/provider/mcx/mcxcontent_spec.rb
+++ b/spec/unit/provider/mcx/mcxcontent_spec.rb
@@ -1,22 +1,4 @@
 #! /usr/bin/env ruby
-#--
-# Copyright (C) 2008 Jeffrey J McCune.
-
-# This program and entire repository is free software; you can
-# redistribute it and/or modify it under the terms of the GNU
-# General Public License as published by the Free Software
-# Foundation; either version 2 of the License, or any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-# Author: Jeff McCune <mccune.jeff at gmail.com>
 
 require 'spec_helper'
 
diff --git a/spec/unit/type/mcx_spec.rb b/spec/unit/type/mcx_spec.rb
index aaf2d56..b35355a 100755
--- a/spec/unit/type/mcx_spec.rb
+++ b/spec/unit/type/mcx_spec.rb
@@ -1,24 +1,4 @@
 #!/usr/bin/env ruby
-#--
-# Copyright (C) 2008 Jeffrey J McCune.
-
-# This program and entire repository is free software; you can
-# redistribute it and/or modify it under the terms of the GNU
-# General Public License as published by the Free Software
-# Foundation; either version 2 of the License, or any later version.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-
-# Author: Jeff McCune <mccune.jeff at gmail.com>
-
-# Most of this code copied from /spec/type/service.rb
 
 require 'spec_helper'
 
diff --git a/test/test b/test/test
index c8b9b08..8d2659c 100755
--- a/test/test
+++ b/test/test
@@ -68,8 +68,8 @@
 #
 # = Copyright
 #
-# Copyright (c) 2005 Puppet Labs, LLC
-# Licensed under the GNU Public License
+# Copyright (c) 2005-2011 Puppet Labs, LLC
+# Licensed under the Apache 2.0 License
 
 require 'find'
 require 'getoptlong'

-- 
Puppet packaging for Debian



More information about the Pkg-puppet-devel mailing list