# 4.0.0~rc1 2016-10-20 Release candidate 1 of 4.0 branch * User story #1808: Add an Audit mode to Rudder: only check properties, no modification on nodes * Architecture #2787: Use Doobie or Slick in place of SpringTemplate / squeryl / pur JDBC * Architecture #6353: Generate access rules based on public keys * Architecture #6770: Rework rudder-agent makefile to make it more standard * User story #6832: Preliminary support for solaris package * Bug #7010: The new package Makefile doesn't work with nightlies * Bug #7018: The package doesn't build 3.2 on solaris * Bug #7022: The package doesn't build 3.2 on solaris and debian * Bug #7026: The package doesn't build 3.2 on solaris * Bug #7030: The package doesn't build 3.2 on solaris * Bug #7032: The package doesn't build 3.2 on solaris * Bug #7044: Cfengine tries to link with postgresql on solaris * Bug #7048: The package needs some adjustments on solaris 3.2 * User story #7050: Add a rudder server disable command * Architecture #7074: Merge rudder-agent postinstall into a single script * User story #7093: Include Timezone in Inventory * User story #7207: Select and display agent mode (verify/enforce) * User story #7221: Set dry-run mode on each directive call * Bug #7239: The solaris packaging is missing checkinstall packaging and dependencies * Bug #7352: Remaining cruft after postinst rewrite * User story #7358: Preliminary support for freebsd * Bug #7399: #7358 included merge errors and did not fix them * User story #7802: Make reading/writitng StringTemplate template a seperate service * User story #7820: Restore version-independant logo for master branch * Architecture #7822: Simplify generic_process_check_process bundle * User story #7824: Add a -u option to rudder agent run to run an update before the run * User story #7833: Upgrade to CFEngine 3.7.3 * Architecture #7865: use Hikari connection pool * User story #7868: Add calls to local API in rudder server commands * User story #7891: Remove asciidoc from the documentation repository and use the system version * Bug #7911: Add an output to all Rudder commands * Architecture #7915: Merge initial promises and system techniques * Architecture #7916: Use rudder-template-cli to build initial promises * Architecture #7917: Create a makefile to build initial promises with rudder-templates-cli * Architecture #7919: Merge rudder_lib from initial promises and system technique * Architecture #7921: Remove rootServerInitialPromises from initial promises * Bug #7926: initial-promises build should be in rudder-agent, no rudder-techniques * Architecture #7927: Remove .cf files from initial promises * Architecture #7928: Merge common from initial promises and system technique * Architecture #7934: Merge inventory from initial promises and system technique * Architecture #7937: Add ncf to the rudder-agent package * Architecture #7938: Add the generated version of rudder_lib for better TR * Architecture #7943: Merge distributePolicy from initial promises and system technique * User story #7945: Filter "rudder remote run" output like "rudder agent run" * Architecture #7957: Merge server-roles from initial promises and system technique * Bug #7992: Openssl build breaks debian packaging * Architecture #8015: Preliminary support for Slackware * Bug #8026: Slackware support for FusionInventory-Agent * Bug #8035: Missing version bump in parent-pom for rudder-version * User story #8053: Make signature problem easier to diagnose * Bug #8070: Rudder version on login page: not useful and potentially dangerous * User story #8076: rudder agent status/start/stop * User story #8152: Bootstrap all popup in Rudder interface * User story #8187: rudder remote-run should allow running for a group of nodes * Bug #8196: Tell if we are on a relay in rudder agent info * User story #8200: Create packages for Ubuntu 16.04 * User story #8205: Add a cfpromises check to rudder agent health * User story #8206: Change the order of the checks in rudder agent health as we exit on fist error. * Bug #8223: Rudder 3.3 doesn't build on RHEL3 * Architecture #8226: Adapt rudder agent thin to the new package makefile * Bug #8237: Adapt rudder agent thin to the new package makefile * Bug #8238: Adapt rudder agent thin to the new package makefile * Bug #8242: Adapt rudder agent thin to the new package makefile * User story #8250: Redesigning the Login Page * Bug #8253: rudder-agent package now build-depends on jre * User story #8263: Load environment variables from /etc/profile * Bug #8269: Adapt rudder agent thin to the new package makefile * Architecture #8273: Adapt rudder reports package to the initial promises merge * Bug #8274: Missing java dependency installation in rudder-agent packaging * Bug #8276: Merge distributePolicy from initial promises and system technique * Bug #8284: Packaging in master call build instead on localdepends * Bug #8285: Packages won't build on redhat * Bug #8311: Make signature problem easier to diagnose - rename tool * Bug #8312: Rename poorly named tool "signature.sh" * Bug #8313: Rename poorly named tool "signature.sh" and use it in rudder-techniques * User story #8316: Add a flag file to tell the agent not to restart cf-serverd * User story #8325: Update lmdb to 0.9.18 * User story #8326: Wrong folder name in #8325 * User story #8328: Update fusioninventory to 2.3.17 * Bug #8354: Add an output to all Rudder commands * Bug #8355: Add an output to all Rudder commands - missing end case in agent-update * User story #8359: Redesigning the main menu * Architecture #8383: Merge remaining files from initial promises and system technique * Architecture #8384: Adapt check-techniques script to new name for rudder-stdlib-core * Bug #8385: Load environment variables from /etc/profile - escape ampersands * Bug #8389: Merge rudder_lib from initial promises and system technique - adapt failsafe.cf for new rudder-stdlib-core.cf name * Architecture #8390: Merge remaining files from initial promises and system technique - bis * Architecture #8417: Merge promises.st from initial promises and system technique * Bug #8446: Missing function for #7833 * Bug #8447: Add some doc to the #8446 patch * Bug #8454: On SLES (at least), updating rudder-server-root does not update dependencies * Architecture #8464: Make environment variables parse easier * Architecture #8477: Remove initial promises building from the packaging * Bug #8478: Remove initial promises building from the packaging * User story #8486: Update embedded openLDAP to 2.4.44 * Bug #8491: The new makefile doesn't work with old make * Bug #8493: pcre is used instead on openssl in the new Makefile * Bug #8495: Old OS don't support the --retry-connrefused on wget * Architecture #8496: Remove old distribution specific patch files in package 3.3 * Bug #8497: References to the desdir in the destdir itself in rudder-agent (in perl files) * Bug #8499: Removed files are still in the source spec file on master * Architecture #8500: make rudder-perl able to call either rudder's perl or the local perl * Bug #8502: RPM package include some file twice * Bug #8504: do not package ld.so.conf.d in RHEL3 * Bug #8505: Conffile are not the same on debian and rehdat * Bug #8506: Rhel package have aix style build * Bug #8507: RPM package doesn't include /etc files * Bug #8508: Keep default/rudder-agent * Bug #8511: build fail on aix * Bug #8525: Missing "cron_setup..cf" in initial promises * Bug #8526: Error with java build dependency on SLES11 * Bug #8530: Error with java build dependency on SLES11 * Bug #8533: cpanm doesn't build on rhel 3 64 bits * User story #8551: Change the header bar of the manual to match #8359 * User story #8568: Default group type should be "dynamic" * User story #8636: Change the Login page's background image * User story #8669: Remove old node search and feature switch in Rudder 3.3 * Bug #8676: Rename rudder agent reinit to rudder agent factory-reset * User story #8711: Improve 4.0 menu * User story #8714: Use the embedded doc for the Documentation link in the login page * Bug #8718: Missing init script in rudder-agent package on Debian 7 * User story #8734: Rudder agent disable should have a stop option too * Bug #8805: Copy initial-ncf in rudder agent reset * Architecture #8806: Move check-rudder-agent to rudder-agent repo * Architecture #8807: Move key permission checks from postinst to check-rudder-agent * Architecture #8808: Use rudder agent commands when possible in postinst * Architecture #8809: Copy check-rudder-agent to rudder-agent repo * User story #8812: Update CFEngine to 3.7.4 * Architecture #8813: Use rudder agent commands in system techniques * Bug #8817: Broken tests after #8417 * Bug #8818: rudder_promises_generated is now called rudder-promises-generated * Bug #8831: Broken 3.3 builds * Bug #8833: Broken 3.3 builds - missing dependency * Bug #8834: Broken 3.3 builds - missing dependency * Bug #8835: Broken 3.3 builds - missing file * Bug #8837: Makke uuidgen a single point of uuid generation * Bug #8838: Broken "rudder agent reinit" on 4.0 * Bug #8839: Broken initial promises on 3.3 * User story #8844: Redesign Rudder web interface * Bug #8868: Failing CFEngine unit test on recent OSes - Remove patch in master * Bug #8894: Merge error in 8893 * Bug #8905: Broken 3.3 server builds because of missing file * Bug #8907: Broken rudder-agent deb postinst script * Bug #8914: Broken dependencies in 4.0 RPM because of epoch * Bug #8915: Syntax errors in rudder commands * Architecture #8923: Requires Java8 (jdk8) for Rudder 4.0 * User story #8924: Policy mode API (Global, Directive, Node) * User story #8927: Prepare manual for 4.0 * Bug #8931: The manual cannot build master but only branched versions * User story #8934: Rename Rudder 3.3 to 4.0 * User story #8938: Use system variables to configure postgres db name and user for rsyslog * Bug #8939: Wrong input icon alignment in login page * Bug #8942: Missing sed target in 8914 * Bug #8943: No newline after endif in 8839 * Architecture #8948: Use full path when calling subcommand * User story #8951: Agent sometimes fail to apply package actions because of global lock - 4.0 version * Architecture #8963: Update maven compilation target to java8 in rudder-paren-pom * Architecture #8965: Use latest minor jetty in Rudder 4.0 * Bug #8968: Postinst doesn't create the directories it needs * Bug #8970: Debian packages are build with embedded openssl * Bug #8978: error: service rudder-agent could not be stoped during agent install * Bug #8982: Server roles must be defined in the main file * Bug #8983: wrong_uuid is not a valid check in initial promises * Bug #8984: rudder-rsyslog-root.conf wrong name in initial promises * Architecture #8985: Add node key in managed_nodes system variable * Architecture #8987: call rudder-uuidgen in rudder agent check * Bug #8988: ncf.conf source has been renamed * Bug #8994: Fusion has a configuration but it is ignored * Bug #8995: OS FULL_NAME not detected in fusion 2.3.17 * Bug #8999: [rudder-packages] SLES12 SP1 is not detected properly * Bug #9000: [rudder-packages] Maven does not honor PROXY settings during build * Bug #9002: [rudder-packages] Make downloading files in Makefile be done in two steps * Architecture #9004: Change version from 3.3 to 4.0 in parent-pom * Architecture #9005: Change version from 3.3 to 4.0 in rudder-common * Architecture #9006: Change version from 3.3 to 4.0 in scala-ldap * Architecture #9007: Change version from 3.3 to 4.0 in ldap-inventory * Architecture #9008: Change version from 3.3 to 4.0 in hello-world plugin * Architecture #9010: Add an automatic network detection in rudder-init * User story #9012: Remove migration scripts for 2.10-3.0 in 4.0 * Architecture #9017: Remove database scripts for 2.10-3.0 in 4.0 * Architecture #9019: Document rudder versions in rudder-upgrade * Bug #9020: Fix typo of missing backslash introduced in #9000 * Bug #9026: cfengine stops processing a promise on symlinks * Bug #9027: Initial promises fail on policy_server * Bug #9028: Initial promises fail with rudder-server-uuid.txt * Bug #9029: initial promises fail on report * Bug #9033: qa-tests fails on master * Bug #9040: uuidgen should not be source packaged anymore * Bug #9047: Wrong WGET command in techniques makefile * Bug #9052: Some KVM virtual machines considered as physical nodes (branch 4.0) * Bug #9060: Specified action bodies override the dry-run policy - Techniques part * Bug #9067: The FusionInventory Rudder task does not work on Windows and will not return server roles (branch 4.0) * Architecture #9095: Use a 2 steps download in rudder agent makefile * Architecture #9097: Revert java8 requirement in rudder-paren-pom * Architecture #9098: Revert java8 requirement in packaging * Architecture #9104: Remove old conflicts in rudder-inventory-ldap package * User story #9111: Adapt quicksearch for 4.0 * User story #9151: Add capabilities in inventory (4.0 style) * Architecture #9202: Clean old fileFormat migration and fileFormat numbering policy * User story #9204: Clean up unused NodeXXXModified events * Bug #9209: Broken agent builds in 4.0 - missing bash completion file * User story #9211: Add Directive field with a graphical File Explorer for shared files * Bug #9214: Remove old migration script copy in packages in 4.0 * Bug #9215: Clicking on Enter does not log in atfer entering credentials * Bug #9217: Broken CSS in inventory tabs * Bug #9218: "rudder agent update" should not be quiet by default * Bug #9222: Wrong detection of rudder init parameters * Bug #9223: Rudder man page is missing in 4.0 package * User story #9227: Generation must fail if a node has non compatible audit/enforce mode on multi-instance technique * User story #9231: Remove migration script for (node properties, quicksearch) feature switch * User story #9232: Add an API to list shared files properties * Bug #9234: When upgrading from 3.2 to 4.0, nodes cannot get their promises * Bug #9237: Web interface tries to load inexistant css angucomplete-alt.css fails * User story #9241: Add new audit reports type to rudder command * Bug #9250: JS error on Rudder 4.0 that prevent compliance & software display * Bug #9251: Infamous "Server cannot be contacted at this time" when trying to access node details of a deleted node * Bug #9252: System variable "MANAGED_NODES_KEY" is empty * User story #9255: Add the bodydefault capability to 4.0 agent * User story #9258: Rename to audit instead of verify in backend * Bug #9259: Removal of maven parameter for database test * Bug #9260: Broken test after parent ticket #9252 * User story #9261: "change only" reporting mode is not accurate for "audit" policy mode * Bug #9263: Error on report batch: NULL for non option type & on eventlog * Bug #9265: Add support for audit_* reports in rudder stdlib * Bug #9270: Missing month selection arrows in eventlog datetime picker * Bug #9271: Selected directive in directive tree doesn't remain highlighed * Bug #9272: Directive edit form takes only 1/3 of the width * User story #9273: Process audit reports and adapt compliance displaying for audit mode * Bug #9275: Could not update the rules historization information in base * Bug #9276: The "fail" cross in generation is in success-green * Bug #9281: Error when generating policies: java.util.NoSuchElementException: key not found: XXXX * Bug #9282: Setting API has hardcoded context "/rudder/" in its urls path * Bug #9287: Database size doesn't show up on the Reports database * Bug #9288: Jobs are failling to clean database * User story #9290: Add an API endpoint to call rudder-remote-run * Bug #9294: Quicksearch doesn't display results at all * Bug #9295: The old bundlesequence system variable contains contains Bundle(...) * Bug #9297: When generation failed due to mixed mode on one technique, error says "plop" * Bug #9303: Policy Mode is not used to know if a node configuration changed * User story #9305: Document agent-server compatibility limits for 4.0 * Bug #9307: Syntax error in Add support for audit_* reports * Bug #9311: On Search nodes page, if I click on "Include Rudder server components" checkbox, I get a JS error * Bug #9313: Text on button on Parameters page are not centered * Bug #9314: Correct display of compliance for compliance error, non compliance * Architecture #9315: Update DB schema of expected reports to store policy mode * Bug #9316: Compliance and Software don't show on the node details page * User story #9318: Add Support for shared file input in metadata.xml * User story #9321: Replace the current Rudder logo with the new one. * Bug #9333: If we change the global policy mode, promises are not generated if we click on "update policies" * Bug #9337: 404 error on node details page * Bug #9341: Wrong alignement of fields on group page * Bug #9342: Error when trying to create a new Parameter * User story #9346: Compilation error because RestSharedFolder not found * User story #9348: Add the shared file constraint to copy from shared folder techniques * User story #9349: Improve UI of technique editor page * User story #9351: Create a dedicated abort report when enforce is used in place of audit * User story #9352: Prettify pages title * User story #9353: Adapt compliance computing to process abort message * Bug #9356: Change rudder_common_report to automatically convert the report type based on audit mode * Bug #9358: Build may fail on rhel6 * User story #9362: Change Jquery-ui buttons into Bootstrap buttons * Bug #9367: Build may fail on rhel6 * User story #9370: Replace file tree image by one with the Bootstrap theme * User story #9372: Repaire and improve Change Request page * Bug #9373: AIX packaging tries to package non-existent sources * User story #9374: Add an API to run agent on all Nodes * Bug #9376: Rudder remote run does not add classes set for remote run * User story #9378: Use new Rudder logo in the manual * Bug #9379: Rudder agent doesn't build on aix * User story #9380: Migration script for adding table nodeconfigurations * Bug #9381: Build may fail on rhel6 * User story #9382: Change the Rudder version in the sources to be substituted in the packaging script * User story #9383: Change hardcoded version number in Rudder * User story #9385: Require a recent ncf version for 4.0 * User story #9386: Only display major version on the login page * Bug #9396: Broken manual build due to missing 4.0 repo * Bug #9397: logback.xml doesn't contains most entries in 4.0 * Bug #9400: On accept node page, [Accept] button should be on right. Or green. Or both. * Bug #9401: Deleting a node should close its expected configuration * Bug #9404: The "Search Anything" in the search bar is not readable * Bug #9405: AIX doesn't build on 4.0 * User story #9408: Update list of supported OSes in the manual * Bug #9412: Unexpected dependency on XML::TreePP on rudder-technique on Centos7 * Bug #9414: AIX doesn't build on 4.0 * Bug #9415: Nodes have several open nodeconfigurations * Architecture #9417: Correct test on expected reports and clean code * User story #9418: Parse Timezone information in inventory * User story #9420: Define the _abort_rudder bundle that will be called in ncf * User story #9421: Add the Rudder abort handler to ncf.conf * Bug #9424: Scrollbar appears on technique editor page * Bug #9425: When a component value is on mixed mode, the message goes out of the compliance table * Bug #9427: Error message is displayed while loading API accounts table * Bug #9428: Popups should be closable/navigable with the keybord * Bug #9433: Incorrect inventory on Rudder server * User story #9435: Replace the old icon by the new one * Bug #9437: Unclear popup on compliance bar * Bug #9438: The link in the Rudder interface should not use french Normation website link * Bug #9443: When clicking on the "edit group" on the Rule details, we don't get redirected to the said group * Architecture #9446: Upgrade jdk version used to build the webapp * Bug #9449: Syntax error in promises.cf * Bug #9454: The query based search in the node details is inside the hardware table * Bug #9455: Changed compliance mode to allow overridable mode, but promises where not regenerated, and reporting was invalid * Bug #9458: Invalid display in compliance for non-compliant report: shows "Not applicable" when not compliance * User story #9459: Redesign the 404 error page * Bug #9463: Change rudder_common_report to automatically convert the report type based on audit mode * Bug #9465: Super slow query on dashboard loading * User story #9469: Change Unknown / Missing color * Bug #9471: test_inventory.pl is not properly generated in initial promises * Bug #9475: Create the tables for archived nodeconfiguration * Bug #9477: Empty table rudderproperties * User story #9478: Settings API * Bug #9479: non-compliant-reports.log does not contain audit logs * Bug #9480: Add a special case in fileAlterationMonitoring for non-compliance reporting in audit mode. * Bug #9486: An alert appears when saving changes in the Settings > Change Request form * Bug #9491: Broken policy update