Revision history for GLPI agent

1.13 not yet released

core:
* fix #851: glpi-agent should also try to request CONTACT after GLPI 10+ answer on PROLOG
* Reworked target responses caching for event handling
* Support 'none' as proxy configuration to not try to use proxy set in environment variables

inventory:
* On windows, don't cache system is not 64 bits for the service lifetime as this can
  be the result of a failed WMI call at the service start.
* Fix PostgreSQL inventory when password is given by dedicated databaseinventory plugin
* Add "required-category" configuration support to always include listed categories in
  partial inventory generated while postponing full inventory. You can need to setup this
  option if you're using GLPI rules based on possibly not changing inventory part. For
  example, you can set it to "network" if you use rules to set asset location from asset
  ip address or network.
* Add "itemtype" configuration support to handle requirement for servers supporting genericity
  like GLPI 11+. Remark: This option is shared with remoteinventory task.
* fix #857: Support Microsoft Defender AV detection on Windows Server
* PR #869: Fix Proxmox/LXC memory conversion

remoteinventory:
* Add "itemtype" configuration support to handle requirement for servers supporting genericity
  like GLPI 11+. Remark: This option is shared with inventory task.

netdiscovery/netinventory:
* PR #836 from @eduardomozart: Enhanced HP wireless printers by reporting wifi ports
  as wireless
* Fix network ports ip support to avoid wrong allocation in rare cases, seen on a Ricoh printer
* Fix switch known macaddresses analysis

deploy:
* fix #854: Deploy task was not run when forced via httpd interface

esx:
* Add "esx-itemtype" configuration support to handle requirement for servers supporting genericity
  like GLPI 11+.

packaging:
* Update Windows packaging to use:
  - Perl 5.40.1 built using Perl::Dist::StrawBerry perl library processing
  - OpenSSL 3.4.1
  - msys2-base 20241208
  - liblzma from xz 5.6.4
  - libxml2 2.13.6
  - dmidecode 3.6
* Update MacOSX packages to use perl 5.40.1 and OpenSSL 3.4.1
* Fix Windows MSI installer server targets options panel:
  - User and password are for Basic Authentication support
  - Add OAuth Authentication fields (requires GLPI 11+)

1.12 Fri, 24 Jan 2025

core:
* fix #780: Avoid module loading path check error on windows if path includes a
  parenthesis
* fix #789: Avoid warning on commandline about possible confusion when reading quoted
  configuration value including a dash from configuration file
* fix #790: Fix server URL parsing when it doesn't include scheme
* Add glpi-version configuration support to handle inventory_format dependent features
* Handle /now request as an event. If inventory task run is triggered, it will now
  always by default generate a full inventory. /now supports a query string with the
  following possible values:
  - partial=yes or partial=1 to force a partial inventory
  - full=yes or full=1 to force a full inventory (the default)
  - task=all (the default) or "all" replaced by a comma-separated list of tasks
  - delay=0 (the default) can be set with the number of seconds to delay the tasks run
* Changes to index page from httpd interface:
  - "Force an inventory" link text is replaced by "Force running all targets planned tasks"
    to reflect the real behavior of the related action
  - Added a "Force an inventory" to only trigger inventory task for all targets
  - Targets list also show target planned tasks for trusted clients
* Refacto: Add Logger api to register a callback permitting to collect journaling events
* Fix ToolBox job events support
* Support ssl-keystore=system-ssl-ca on MacOSX to force using system known public CAs
* Cleanup server url in log and server vardir with automatic migration

inventory:
* Fix rare windows perl error during drives, ipv6 network or videos inventory
* Always keep disabled network interface on windows if it includes "vpn" string
  in description
* Add glpi-version configuration support to handle inventory_format dependent features
  - Remove check alerting on invalid storage interface for GLPI >= 10.0.4
* fix #811: Fix network interface inventory on lxc linux container, but also fix
  few other cases where more interfaces are found due to interface name aliasing
* Fix --partial option when used with glpi-agent script
* Update getProcesses() API to permit filtering and report processes only in the same
  namespace to not list containers processes. Refacto inventory module using this API.
* Add support for Trellix/McAfee agent as Antivirus on windows
* fix #827: Fix usb devices inventory on linux which have 0002 as PRODUCTID and are not root hub
* fix #652: Fix usb printers serialnumber on windows stripping leading zeros
* Updated pci.ids to 2025.01.13 version
* Updated usb.ids to 2025.01.14 version
* Bump Inventory task version to 1.19

remoteinventory:
* Store remote inventory part checksums in dedicated state files and support maintenance
  event to cleanup state files older than 30 days
* Bump RemoteInventory task version to 1.6

netdiscovery/netinventory:
* fix #768: Added Aerohive devices support
* fix #769: Added Intelbras devices support
* don't send discovery xml to server target for remoteinventory task event initiated
  from toolbox
* fix #781: Filter invalid firmware date on HP peripherals
* Added Raritan PDU devices support
* Updated sysobject.ids
* Added Avaya J100 series IP Phones support
* Updated Lexmark printers support
* Added Bachmann PDU devices support
* Added RNX PDU devices support
* Updated sysobject.ids
* Bump NetDiscovery task version to 6.5
* Bump NetInventory task version to 6.5

deploy:
* Fix checks on command run and clarify reason of success or failure. This fixes
  "return code is not" and "command output doesn't contain" checks which was always
  failing.
* fix #804: Don't scan network and broadcast addresses when using P2P
* Fix sha512 file checks to also accept provided digest in upper case
* Bump Deploy task version to 3.4

collect:
* Fix sha512 file check to also accep provided digest in upper case
* Change 'checkSumSHA2' file check meaning to compute sha256
* Add 'checkSumSHA256' params support for file checking to replace 'checkSumSHA2' one
  and it is mandatory over its alias 'checkSumSHA2'
* Bump Collect task version to 2.10

esx:
* Support reporting of ESX virtualmachines ip and operating system. It requires
  inventory_format schema v1.1.36 on server-side included in GLPI v10.0.17.
* Add --glpi-version option support to glpi-esx script
* Add guessed Total ESX memory size as memory component
* Bump ESX task version to 2.12

toolbox:
* Fix task log reset for enabled tasks
* Fix enabled jobs start up
* Fix event logger support to update counters even when debug is not enabled
* Bump ToolBox plugin version to 1.5

packaging:
* Update Windows MSI packing building process to use:
  - OpenSSL 3.4.0
  - libssh2 1.11.1
  - libxml2 2.13.5
  - libiconv 1.18
* Update MacOSX packages to use OpenSSL 3.4.0
* fix #816: Support --delaytime option in linux perl installer
* fix #797: Use option to disable local package gpg check when installing with dnf
  in linux perl installer

1.11 Tue, 24 Sep 2024

core:
* Prevent certificates overwriting during export from Windows Keystore
* Add new option to specify or disable Windows KeyStore support

inventory:
* fix #700: Add TacticalRMM Remote_Mgmt support for MacOSX
* fix #711: Update Bitdefender AV support on Windows, and also update enable support
  on Windows Server OS.
* fix #716: Don't fail on regexp error while running from a user folder which contains
  a parenthesis
* fix #748: Don't include lastloggeduser in hardware section in partial inventory
  if users section is being deleted after no change detected
* Updated pci.ids to 2024.09.20 version
* Bump Inventory task version to 1.18

netdiscovery/netinventory:
* Skip Konica printers firmware with "Registered" set as version
* Enhanced Hikvision devices support
* Updated sysobject.ids
* Bump NetDiscovery task version to 6.4
* Bump NetInventory task version to 6.4

deploy:
* Avoid perl syntax error when running Powershell script from Deploy task on windows
* Bump Deploy task version to 3.3

proxy-server-plugin:
* Always evaluate only_local_store to yes when glpi_protocol is set and no server is
  configured so default required format remains json
* Bump Proxy plugin version to 2.5

packaging:
* Update Windows MSI packing building process to use:
  - OpenSSL 3.3.2
  - libxml2 2.13.4
* Update MacOSX packages to use OpenSSL 3.3.2
* Windows MSI installer now supports AGENTMONITOR_NEWTICKET_SCREENSHOT as option to
  configure if GLPI-AgentMonitor should always create a screenshot on new ticket.
  The default set value is 1 and means to always create a screenshot.
* Updated Windows packages 7-Zip commandline tools to v24.08
* win32: Updated GLPI-AgentMonitor to v1.4.0

1.10 Tue, 09 Jul 2024

core:
* Add support for OAuth2 authentication included in next main GLPI version.
* Reduce drift on run date keeping not randomized time reference
* fix: Don't reset run date in hourly run for unmanaged mode
* Control concurrent calls to not thread safe apis on windows
* Little optimization on GLPI::Agent::XML objects check
* Use task expiration for SSL CA certs cache expiration when running in task threads

inventory:
* fix #680: Enhanced disk storage serialnumber support on Windows (one more case)
* fix #565: Add support for Cortex XDR Antivirus on windows.
  This is also an attempt to start antivirus support on Windows Server based on
  service detection.
* Add support for Cortex XDR Antivirus on MacOSX and linux
* fix #700: Add TacticalRMM Remote_Mgmt module for windows and linux
* Update Solaris OS installation date support
* Updated pci.ids to 2024.06.23 version
* Updated usb.ids to 2024.07.04 version
* Bump Inventory task version to 1.17

netdiscovery/netinventory:
* Always send netinventory jobs end messages from runners
* Fixed tasks blocking on windows with core concurrent calls control
* Avoid to expire SSL CA certs cache in threads
* Bump NetDiscovery task version to 6.3
* Bump NetInventory task version to 6.3

deploy:
* For job with P2P enabled, don't use hard-coded 62354 port, but agent httpd-port
  configuration to discover listening peer agents.
* For job with P2P enabled, use remote-workers configuration to optimize peers
  discovery keeping 10 workers as minimum default.
* Bump Deploy task version to 3.2

esx:
* fix #691: Fix perl error while checking esx configuration template
* Bump ESX task version to 2.11

proxy-server-plugin:
* Enhanced SSL connection cleaning when combined with ssl-server-plugin
* Bump Proxy plugin version to 2.4

ssl-server-plugin:
* Don't use SSL_no_shutdown while closing connection after a fork to fully cleanup
  connection on close.
* Bump SSL plugin version to 1.2

injector:
* Add support for OAuth2 authentication

packaging:
* Update Windows MSI packing building process to use:
  - gcc 13.3.0posix-11.0.1-msvcrt-r1
  - msys2-base 20240507
  - OpenSSL 3.3.1
  - liblzma from xz 5.6.2
  - libxml2 2.13.2
* Update MacOSX packages to use OpenSSL 3.3.1
* fix #619: Get rid of Archive::Extract dependency as upstream module has not been
  updated since years and has been removed from RockyLinux 9. The module is not
  embedded with few cleanup and adapted to GLPI Agent usage context.
* win32: Updated GLPI-AgentMonitor to v1.3.1
* Add --wait option support to AppImage installer. This option can only be used
  for unmanaged cron mode to force randomization of tasks run.

1.9 Tue, 28 May 2024

inventory:
* fix #676: Always include OPERATINGSYSTEM section if SOFTWARES one is in partial
  inventory as this is required by GLPI. This fixes issues with full-inventory-postpone
  new feature introduced in 1.8 and with --partial glpi-inventory script option.
* fix #673: Fix support of network port type on MacOSX
* fix #675: Enhanced MSSQL database inventory on Windows by discovering installed
  instances.
* fix #680: Enhanced disk storage serialnumber support on Windows
* Bump Inventory task version to 1.16

remoteinventory:
* fix special characters handling in passwords
* Bump RemoteInventory task version to 1.5

netdiscovery/netinventory:
* fix #642: Support snmp-retries configuration parameter to set snmp requests
  maximum retries in place of the default of 0.
  glpi-netdiscovery & glpi-netinventory supports --retries option.
* Bump NetDiscovery task version to 6.2
* Bump NetInventory task version to 6.2

deploy:
* Fix: Avoid possible crash on windows while using WTS for User Interactions
* Bump Deploy task version to 3.1

toolbox:
* fix #582, #596, #671: UTF-8 and special characters are now supported in user and
  password for RemoteInventory credentials
* Bump ToolBox plugin version to 1.4

packaging:
* Fix: Call SetDllDirectory system API to help finding provided DLL libraries on windows
* Fix: Fix OpenSSL to use zlib1__.dll provided library
* Fix: full-inventory-postpone not fully integrated in registry by windows MSI installer

1.8 Wed, 15 May 2024

core:
* Parallel::ForkManager must not use more than 60 workers on MSWin32 due to a
  perl limitation on this operating system
* Refacto events management to permit a task to trigger another one
* IPC long messages only have size limitation on windows
* Add new IPC message type to handle too long IPC_EVENT messages on windows
* Refacto XML parsing of plist files on MacOSX

inventory:
* Fix network default route discovery on linux
* Fix virtualmachine inventory on computer providing vmware-cmd command
* fix #589: Make additional-content option works as before when merging a json list
* Add new 'full-inventory-postpone' option which default to 14. The agent will try
  to submit partial inventory with only changed categories to limit the inventory
  size most of the time. The option can only be used with GLPI 10 and its JSON format.
* Update inventory to be generated in a consistent order as required by new
  'full-inventory-postpone' option to detect changes
* Update glpi-agent script with --full-inventory-postpone option support
* Update glpi-agent script with --full option support to force a full inventory
* fix #611: Wrong bios value as array on win32 bios when using WMI in proxmox vm
* fix #609: Fix rustdesk remote management version analysis
* fix #630: Enhanced support for linux on Raspberry Pi 3
* Fix ioreg command output parsing on MacOSX to avoid Deep Recursion perl warning
* Fix software publisher analysis in software inventory on MacOSX
* Enhance #430 fix: Don't make edid mandatory if monitor SERIAL & CAPTION are still
  found. This fixes monitors inventory on Apple M1.
* Fix MacOSX software arch should be set in ARCH field
* Fix Lenovo T24v-10 monitor serial number inventory
* Add base code to support usb device update on MSWin32, mainly to report expected
  or fix serialnumber for specific device with well-know method to get required
  datas. This base code is required to fix #650.
* fix #651: Detect missing prefix for BenQ monitors serialnumber
* Updated pci.ids to 2024.05.14 version
* Updated usb.ids to 2024.03.18 version

remoteinventory:
* Limit the number of attempts and reported errors when libssh2 fails but ssh command
  works. Libssh2 attempts will be disabled for a minute on failed attempt.
* Clarify debug, warning and error messages

netdiscovery/netinventory:
* Keep device mac address found via snmp during netdiscovery as this is the one
  which will be reported during netinventory. This will fix duplication issues
  while using "(by mac)" import & update rules in GLPI.
* fix #574: Updated page counters support for Ricoh printers
  Also updated with refacto in dedicated MibSupport module page counters support
  for Canon printers
  Add scanned counter on Ricoh
  Add page counters support for Xerox and Konica printers
* Added page counters support for Canon LPB7660 models
* Added Konica printer firmwares support
* Prevent multi-threading issues on win32 due to Netbios datas parsing
* Enhanced Brother devices support
* When looking for privateoid rule in MibSupport search, the rule must match on
  defined value, even if the private oid returns zero.
* fix #590: Add Pantum printer support
* Fix RemoteInventory not run during netscan if any of the other tests is failing,
  meaning RemoteInventory was functionnal only if at least ping works or the
  targeted computer was in the same network (arp works).
* Add support for Socomec PDU
* fix #653: Some values like LOCATION or CONTACT can be wrongly encoded
* Add Dell MibSupport dedicated module
* PR #657: Improve Ubnt serial and SSID detection, thanks to @eduardomozart
* PR #658: Improve Aruba SSID detection, thanks to @eduardomozart
* Updated sysobject.ids

deploy:
* Force agent to run a partial software inventory after the deploy task is done
  if this has been set as a requirement in any job sent by the server

proxy-server-plugin:
* Fix issues due to wrong support of long IPC messages

toolbox:
* fix #532: Make libssh2 use the right place when looking for known_hosts file
  on windows
* Fix RemoteInventory can not be started during netscan

packaging:
* [SECURITY] New fix for CVE-2024-28240: A local user could modify the GLPI Agent
  configuration to gain higher privileges if installed on windows with MSI packaging.
  The fix is now based on our own CustomAction Dll which not rely on our capacity
  to run an external command requiring elevated privilege.
  So it is far more robust than preivous one.
* Update Windows MSI packing building process to use:
  - gcc 13.2.0posix-18.1.5-11.0.1-msvcrt-r8
  - msys2-base 20240113
  - zlib 1.3.1
  - OpenSSL 3.2.1
  - libssh2 1.11.0
  - liblzma from xz 5.4.6
  - libxml2 2.12.7
  - StrawBerry Perl 5.38.2
* Windows MSI installer is only provided for x64
* Fix MSI "Back" button on "VerifyReady" dialog in Repair or Remove mode
* Updated Windows packages 7-Zip commandline tools to v23.01
* Fix the way Glpi-AgentMonitor is stopped during upgrade to prevent service
  installation issues
* Remove Deploy & Collect tasks from Typical installation on windows
* On MacOSX, by default, only enable inventory task on MacOSX. You'll have now to
  explicitely enable required tasks in an "etc/conf.d" ".cfg" file.
* Windows MSI installer now supports AGENTMONITOR_NEWTICKET_URL as option to configure
  GLPI-AgentMonitor new ticket url.
* win32: Updated GLPI-AgentMonitor to v1.3.0

1.7.3 Wed, 03 Apr 2024

packaging:
* Fix LOCAL was set to installation folder during windows MSI installation v1.7.2,
  even if LOCAL was not used or it was set empty in installer UI
* Enhanced CVE-2024-28241 fix to only apply folder security if install folder and
  eventually LOCAL folder are subfolders of system "Program Files" folder
* Fix MSI to reuse InstallDir set in registry on upgrade

1.7.2 Mon, 25 Mar 2024

packaging:
* [SECURITY] Fix CVE-2024-28241: A local user could modify the GLPI-Agent installation
  to gain higher privileges, but only on windows with MSI packaging when GLPI Agent
  is not installed in the default installation folder
* [SECURITY] Fix CVE-2024-28240: A local user could modify the GLPI Agent configuration
  to gain higher privileges if installed on windows with MSI packaging
* Update MacOSX to use perl 5.38.2, OpenSSL 3.2.1 and zlib 1.3.1

1.7.1 Fri, 22 Dec 2023

core:
* fix #567: Test ssl-fingerprint option as an empty array to still try to export
  windows keystore or macosx keychain for SSL certificate validation checks
  This fixes SSL connection issues appeared with 1.7 release on windows & macosx.

1.7 Thu, 21 Dec 2023

core:
* Make alt2canonical() always return a mac address in lower case if found one
* Fix HTTP::Client API to support timeout update
* Move runPowerShell() API remote case support in RemoteInventory API
* Update httpd default page to show targets id and server url or local path only
  for trusted clients
* Update local target API to support getFullPath() & setFullPath() calls
* Handle '.' local target when run as a service to save inventories in vardir
* Reduce internal IPC event supported size
* To optimize IPC support, read all event messages before triggering events
* fix #560: Skip export of keystore on win32 or keychain on MacOSX if any one of
  ca-cert-file, ca-cert-dir or ssl-fingerprint options is used

inventory:
* PR #531: Add SentinelOne Antivirus support on Linux, thanks to @MarcSamD
* Feature: Update support assetname-support as option for agent on most unix
  if 1 (the default), the short hostname is used as asset name
  if 2, the as-is hostname (can be fqdn) is used as asset name
  if 3, the fqdn hostname is used as asset name
  this feature does not apply on MacOS or Windows
  this feature now works for remote ssh and for option 3, it requires perl installed
  on targeted computer and perl mode enabled on defined remote.
* Feature: Make assetname-support option also works to compute agent deviceid when
  unknown
* Fix video card memory inventory on win32
* fix #554: Network inventory may be missing on linux with faulty default route parsing
* Add network speed discovery for wireless network devices on linux
* Fix rpm software summary encoding for rpm-based software inventory
* Bump Inventory task version to 1.15

remoteinventory:
* Fix connection timeout API to support timeout update 
* Update win32 fqdn inventory
* Add timezone inventory support
* Fix OS FQDN and domain for ssh remote inventory
* Add printers inventory support for ssh remote inventory with perl mode
* Fix error preventing software inventory of windows remote from a win32 agent
* Fix typo in ConnectTimeout option use with ssh command mode
* Add '--stricthostkeychecking' option to glpi-remote, supported values are the same
  than StrictHostKeyChecking ssh option (see ssh_config man page), default to 'accept-new'.
* Bump RemoteInventory task version to 1.4

netdiscovery/netinventory:
* Enhanced Toshiba printers support
* Fix LLDP support
* Update timeout to backend-collect-timeout configuration when scanning ESX or
  RemoteInventory after a successful scan requested by ToolBox
* Fix possible concurrency error leading to an unrecoverable blocked task
* Use new local target API to set expected saving folder
* Bump NetDiscovery task version to 6.1
* Bump NetInventory task version to 6.1
* Updated sysobject.ids

esx:
* Fix first connection timeout support
* Added --timeout option support to glpi-esx
* Fix wrong 'n/a' ko status report to tasks managed by GLPI Inventory plugin
* Bump ESX task version to 2.10

toolbox:
* fix #533: Fix Toolbox export buttons in inventory results
* Fix wrong remote inventory results when using a short timeout for quickier detection
* Handle agent folder as vardir folder when agent is running as a service
* Fix netscan task fails to submit remote inventories with JSON protocol
* Fix locking on logger IPC events when running netscan for server target on win32
* Bump ToolBox plugin version to 1.3

injector:
* fix #537: Make -x, --xml-ua & --json-ua options equivalent and update help text

packaging:
* Update MacOSX packages to use OpenSSL 3.2.0
* Update MacOSX packaging to use "com.teclib.glpi-agent" as AppID and service identifier
* Fix linux installer typo preventing configuration update when required

1.6.1 Fri, 17 Nov 2023

core:
* fix #530: Also include Mozilla::CA default store when including windows keystore
  or macosx keychains certificates as IO::Socket::SSL can't no more use them since
  LWP::Protocol::https update.
  This fixes SSL connection issues appeared with 1.6 release.

1.6 Wed, 15 Nov 2023

core:
* Rework of agent events support
* Add support for tasks cache & tasks events
* Support forbid_not_trusted option for all httpd server plugins. The option is set to "no"
  by default to keep compatibility with older configurations. If set to "yes", only trusted
  ips will be authorized to access related httpd plugin features.
* fix #434: Fix XML encoding when sent by OCS client code, thanks to Nikolay Chizhov (@nchizhov)
* fix #438: Fix forking when required on win32 for Proxy & ToolBox plugins, and so
  this fixes IPC support on win32
* fix #438: Also load XML::LibXML as late as possible to avoid multi-threading issues on win32
* Make http server supports CORS protocol for /now requests
* Update getCanonicalSize() to recognize kibibyte, mebibyte, gibibyte, tebibyte
  pebibyte and exbibyte units
* Always report first found route in unix getRoutingTable() API
* fix: Update GLPI::Agent::XML class to make calls in a dedicated thread on win32

inventory:
* Fix inventory failure due to Oracle database inventory on win32
* Fix AMD Epyc CPU inventory on win32
* fix #447, #464: Support Cgroup 2 resource limits on LXC containers inventory
* Fix local inventory when html format is requested as output format
* fix #430: Enhanced monitor support on MacOS Ventura with M1 CPU
* fix #449: Don't override storage size with null value reported by hdparm on win32
* Report storage size detected by WMI in Mib in place of Mb on win32
* Update RustDesk remote_mgmt support starting from RustDesk v1.2.2
* Fix Microsoft Defender Antivirus support on MacOSX
* fix #458: Add Microsoft Defender Antivirus support on Linux, thanks to @j-ldes
* Refactoring & enhanced Aix bios inventory to use lsconf as fallback
* PR #472: Add BitDefender Antivirus support on Linux, thanks to @ticgal
* fix #479: Fix monitor inventory when PNPDeviceID contains an underscore on win32
* fix #476: Support to retrieve last logged user UPN from authentication cache on win32
  to ease computers ans users linking in GLPI when using Azure AD
* fix #488: Fix memory & cpu supports for LXD virtualization
* fix #494: Fix video card memory size may be wrongly reported on win32
* Update manufacturer support for linux storages
* fix #511: First try to use ip route to find default gateway on linux
  Also fix default gateway suppport on most unix
* Fix no more available local users inventory since 1.5 on win32
* fix #519: Fix inventory of usb bar code scanner from Symbol Technologies
  On linux, skip wrong serialnumbers like "0000" on usb hubs
* Fix USB devices inventory on linux
* Support json format normalization based on regexp to remove unsupported virtualmachine status
* fix #463: Support lxc containers in Proxmox cluster
* Updated pci.ids to 2023.11.11 version
* Updated usb.ids to 2023.11.08 version
* Bump Inventory task version to 1.14

remoteinventory:
* Fix ssh connection issue
* Support connection timeout option
* Bump RemoteInventory task version to 1.3

netdiscovery/netinventory:
* Enhanced Aruba IAP models support
* Enhanced CheckPoint devices support
* Enhanced Cisco devices support
* Enhanced Citrix devices support
* Enhanced Zebra printers support
* PR #500: Enhanced Synology NAS support with drives & storages support
* Use Parallel::ForkManager for netdiscovery & netinventory tasks
* Preload mibsupport as optimization
* Add ESX & RemoteInventory scanning support to netdiscovery
* fix #327: Make task expiration a function of backend-collect-timeout configuration
  Add backend-collect-timeout support to glpi-netdiscovery & glpi-netinventory scripts
* fix #521: Keep compatibility with older platforms when using Parallel::ForkManager
* Updated sysobject.ids
* Bump NetDiscovery task version to 6.0
* Bump NetInventory task version to 6.0

esx:
* Refactoring to share more code between task & glpi-esx script and to support netscan
* Added --debug option support to glpi-esx
* Support timeout as netscan option or use backend-collect-timeout as timeout
* fixed & updated unittests
* Bump ESX task version to 2.9

proxy-server-plugin:
* fix #461: Fix XML content-type support for inventories sent by android agent
* Store json inventories with right name where locally storing inventories
* Fixed compressed content support
* Bump Proxy plugin version to 2.3

injector:
* Support --ssl-cert-file option to permit SSL client authentication

toolbox:
* Feature: Inventory is now a list of local inventory or netscan task job
* Feature: Support task job scheduling management in a dedicated page
* Feature: Support ESX & RemoteInventory as credentials type
* Feature: Support ESX & RemoteInventory credentials in IP range
* Feature: Inventory netscan job can be started to discover and inventory ESX or
  RemoteInventory computers
* fix #254: Add credential to iprange not working after adding first one
* Use tabler-icons v 2.24.0
* Store discovered snmp credentials and ip_range in dedicated storage in place of netdisco XML
* fix #255: Add ToolBox url on agent index page and support enabling agent home
  link in navigation bar
* Bump ToolBox plugin version to 1.2

packaging:
* Update MacOSX packages to use OpenSSL 3.1.4 & zlib 1.3
* Install basic-authentication-server-plugin.cfg plugin default configuration on debian
* fix #446: Always add Sys::Hostname dependency to rpm packaging
* fix #493: Add support for CONFIG=reset option for MSI Installer
* fix #522: Fix etc, log & var folders are not deleted from installation folder on MSI uninstall
* fix #527: Support AlmaLinux 9.2 in linux perl installer
* win32: Updated GLPI-AgentMonitor to v1.2.3 with spanish and russian translation

contrib:
* fix #429: Permit MSI package installation from current folder
* fix #505: [Idea] Improve VBS deployment with a check if installed correctly or retry
* fix #421: Fix installation on debian from a folder containing space

1.5 Wed, 21 Jun 2023

core:
* Avoid an error with IO::Socket::SSL error reporting on older platform (CentOS7 confirmed)
* Full refactoring of getFileHandle API usage to avoid bottlenecks during remoteinventory
  of libssh2 remotes
* Refactoring of inventory output to share same API between glpi-agent, glpi-inventory and
  glpi-esx
* Introduce GLPI::Agent::XML API based on XML::LibXML to get rid of deprecated XML::TreePP
* fix #242: Fix ca-cert-dir can't be used on win32 & macosx since v1.3
* Export all possible CA & Root certificates from Windows keystore for SSL support
* Fix #257: Also support SSL certificates included in User keystore on windows
* Cache trusted hosts to be able to resolv them in case of DNS resolving failure,
  fixes fusioninventory/fusioninventory-agent#1033
* Refactoring of communication with server to share compressing code between used classes and
  to better report import errors when refused by the server
* Handle early received SIGUSR1 signal as runnow request in place of killing the service
* Report dedicated warning when inventory support is disabled server-side
* win32: Add API to request win32 registry value with better Unicode support
* win32: Get rid of encodeFromRegistry() API after enhanced Unicode registry support
* Get rid of JSON::PP
* fix #393: Support ssl-fingerprint option as a comma-separated list

inventory:
* check if we are running in a container before checking we are running in a virtualmachine
* fix #135: Add MeshCentral as new recognized remote_mgmt, thanks to @miguelanruiz
* fix #171: Add support for Trend Micro Security Agent antivirus on win32
* fix #185: Normalize power supplies max power on Watt unit
* Fix KingMax memory module manufacturer detection
* Fix Positivo Informatica memory module manufacturer detection
* Fix Samsung S22E390 monitor serialnumber
* fix #196: don't inventory 2 times libvirt qemu virtualmachines on linux
* Enhanced network adapter type detection on windows 10
* fix #119: Use deviceid instead of agentid for json filename
* fix #199: Fix GPU VRAM inventory on win32
* Enhanced video card inventory on linux
* fix #198: Fix enhancing storage inventory on win32
* Fixed few minor issues while refactoring getFileHandle API
* fix #229: Wrong vm name with Proxmox
* MacOS: Refactoring to remove XML::XPath dependency
* MacOS: Don't detect usb tablet as storage
* MacOS: Support cd-rom reader inventory as storage
* Update system users detection for WSL inventory on win32
* fix #240: Update battery inventory on win32
* Use ORACLE_BASE environment so Oracle database inventory supports latest versions
* fix #232: Don't try to get profile username via WMI request to avoid timeout
  on ActiveDirectoy during WSL inventory
* Fix scan-profiles option to check softwares from not logged users on win32
* Filter out session info for MongoDB database inventory
* Update users inventory support on win32
* PR #261: Fix regexp for IPMI FRU Controller inventory, thanks to po1vo
* PR #262: Fix docker networks are virtual, thanks to po1vo
* fix #258: Fix slots support on AIX
* Fix HPUX slots support
* PR #295: Update aliased network interfaces support on linux, thanks to po1vo
* fix #323: Office license inventory was broken when a not expected value was found
  in registry
* fix #322, #328: Add new Acer monitor model support: V247Y, R240HY
* Fix perl error when enumerating batteries on linux and the system sees HID one,
  for a mouse as example
* fix #344: Fix manufacturer for AG Neovo monitors
* fix #346: Fix partition label for dirty vfat ones on linux
* Feature: support assetname-support as option for agent on most unix
  if 1 (the default), the short hostname is used as asset name
  if 2, the as-is hostname (can be fqdn) is used as asset name
  this feature does not apply on MacOS or Windows
* fix #349: Use API supporting Unicode to read sofwares name and publisher on win32
* Enhanced Unicode support when looking up registry values on win32
* Add vpn connection as virtual interface on win32
* fix missing category to Batteries module on win32 and fix perl error reported
  when battery report on win32 is empty
* fix #366: Don't inventory qemu guest agent process as qemu vm
* fix #371: Add new Acer monitor model support: B246HL, B246HYL, V243HL, CB241H, V193
* Fix inventory delay support for Local target to use the delaytime from configuration
  in place of always 3600 seconds
* Fix mysql/mariadb databases inventory if credentials includes special chars in password
* fix #360: Avoid more WMI timeout during software inventory using scan_profiles option
* Update service pack reporting on windows 10 and later to report BuildNumber + Update
  Build Revision (UBR) like reported by system winver command.
* fix #374: Better try to get profile username from powershell script
* fix #384: Enhance #374 fix to support domain deleted user witout falling back on WMI
* fix #367: Add Microsoft Defender Antivirus inventory support to MacOSX
* fix #399: Support OracleXE database inventory
* fix #409: Fix instance name in MSSQL database inventory
* Fix LPAR serialnumber support on AIX
* fix #420: Enhanced linux printer inventory based on CUPS
* Fix cpu thread inventory on x86 linux
* fix #411: Fix cpu thread on win32 when performance & efficiency cores are present
* Updated pci.ids to 2023.06.19 version
* Updated usb.ids to 2023.05.17 version
* Bump Inventory task version to 1.13

remoteinventory:
* Security fix: CVE-2023-34254
* Fix USERNAME & PASSWORD environment variable support with ssh remote inventory
* fix #157: failure when creating a new winrm remote if a ssh one has been defined
* Fix remoteGlob function for ssh remote inventory as it was preventing storage
  inventory to work properly when accessing remote via ssh command
* Don't try to register/update remotes when provided via --remote glpi-agent option
* Support 'remote-workers' configuration to define how many remoteinventory we can
  run in parallel
* Initialize libssh2 in workers
* Use vardir as home for .ssh/known_hosts file with libssh2 on windows
* Fix environment inventory
* Fix wrong encoding with winrm
* Fix current users inventory via winrm
* fix #160: Fix error when running winrm inventory from windows
* Optimize few more API while using libssh2
* More ssh inventory optimization while using libssh2
* Updated remote modes support: perl, ssh and libssh2 for remote ssh, ssl for winrm
* Fix libssh2 was missing from win32 packaging
* Fix remote hostname for ssh remote inventory run from a win32 agent
* Minor optimization by adding OSName caching to avoid recurrent same command request
* Don't fallback on ssh if mode has been set to libssh2 only
* Bump RemoteInventory task version to 1.2

netdiscovery/netinventory:
* Avoid to record invalid MAC Address from Netbios during netdiscovery task
* Enhanced Idrac support getting serialnumber, thanks to spinal_df on the forum
* Add support for option --v1 & --v2c to glpi-netdiscovery and glpi-netinventory scripts
* fix #277: Wrong IFNUMBER set in connections for some devices supporting LLDP
* Fix to support constraint on IFPORTDUPLEX, IFSTATUS & IFINTERNALSTATUS to prevent
  devices not respecting standards to be rejected by GLPI 10. This can fix the import
  of few Fortinet devices.
* Add support for Zyxel devices
* fix #337: Add TP-Link linux appliance support
* fix #343: Add SNMP-FRAMEWORK-MIB snmpEngineID support to linux appliance MIBSupport.
  It permits to import some Ubiquiti linux Appliance devices.
* Fix EDP/LLDP information reconciliation on Extreme devices
* Fix TRUNK flag setting: fixes a case on Extreme devices
* Add new mac address detection algorithm: get the mac address of the first interface
  for which speed is set
* fix #351: Add better Canon printers & plotters support
* Update LLDP support for Juniper devices
* fix #353: Don't crash task on invalid jobs which may be sent by the server
* Fix context switching reset with SNMPv3 which may prevent any new request to work
* fix #372: Add support connection detection using Cisco Port Security feature
* Enhanced Dell PowerConnect components support
* Add Aruba MibSupport to fix model on wifi master AP
* fix #382: Fix TOTAL page counter on Kyocera printers
* fix #396: SKip CDP info from Cisco Communicator installed on computers
* fix #417: Add Sophos UTM support
* Updated sysobject.ids

deploy:
* Fix possible failure when mirror is set but misses file parts
* Report friendly message if no mirror is defined to download file parts
* Refacto to keep deploy tree as clean as possible
* Refacto to add debug
* Fix copy & move actions failing under win32 while running as a service
* Add unit tests for ActionProcessor
* Bump Deploy task version to 3.0

esx:
* Add SERIAL number to virtualmachines as they will be seen in BIOS
* Updated glpi-esx: added --json option support, deprecated --directory option
  in favor of new --path option, added --stdout option
* fix #204: Fix wrong encoding
* Enhanced vCenter 7.x support
* Bump ESX task version to 2.8

collect:
* Better unicode support when looking up registry values
* Bump Collect task version to 2.9

injector:
* Support --proxy option or use current user proxy environment if set
* Add new injector source code written in golang

proxy-server-plugin:
* Fix file storage on windows
* Bump Proxy plugin version to 2.2

toolbox:
* Fix Inventory page not displayed when netdiscovery or netinventory tasks are not installed
* Default configuration now authorize to update toolbox interface from the UI
* Support remotes management and remoteinventory task start
* Bump ToolBox plugin version to 1.1

basic-authentication-server-plugin:
* New feature to support basic authentication on embedded http server via a dedicated plugin
* Bump BasicAuthentication plugin version to 1.0

packaging:
* Update MacOSX packages to use OpenSSL 3.1.1 & zlib 1.2.13
* Temporarily update PATH to use provided exe files when running agent from BAT scripts on win32
* win32: updated dmidecode to 3.5
* macosx: updated dmidecode to 3.5-macosx
* fix #298: Fix cron script for debian in linux perl installer
* fix #305: Support --proxy & --use-current-user-proxy options in linux perl installer
* fix missing --no-category support in linux perl installer
* fix #315: Add --user & --password options support in linux perl installer
* fix #386: Support Oracle Linux 7 in linux perl installer
* win32: Support GLPI-AgentMonitor v1.2.2 installation with MSI packaging

tools:
* Fix import command in netsim.sh script

contrib:
* Added an option to reconfigure installed agent in windows vbs script. It is enabled
  by default.

1.4 Fri, 01 Jul 2022

core:
* fix #150: 'ssl-fingerprint' option support is only possible when using at least
  IO::Socket::SSL v1.967. This fixes 'no-ssl-check' support on CentOS 7.
* fix #148: SSL no more supported in normal case as side-effect of #33 & #108
  implemented feature
* Enhanced error reporting with SSL connection issues

inventory:
* fix Oracle inventory when ORACLE_HOME is still found in environment variables
* fix Office License scan on win32 due to an unexpected value key
* fix #130: Add support for linux systemd-nspawn container
* Add new Acer monitor model support: B226WL

remoteinventory:
* fix #159: Re-use port from given ssh url when using non-standard ssh port

packaging:
* Update MacOSX packages to use OpenSSL 3.0.4
* fix #151: Linux perl installer Oracle Linux support

1.3 Thu, 16 Jun 2022

core:
* fix: detect if agent is run via AppImage to cleanup LD_LIBRARY_PATH & LD_PRELOAD.
  This avoid to use AppImage C library for binaries used during inventory.
* refacto: cleanup some api calls to re-used still provided config during object
  creation. This reduces code revue while checking HTTP::Client supported features.
* fix #33: support MacOSX keychain to look for glpi server CA or SSL certificat when
  communicating via SSL with GLPI server
* fix #108: support Windows keystore to look for glpi server CA or SSL certificat when
  communicating via SSL with GLPI server
* Add 'ssl-fingerprint' option support to being able to trust a SSL server via its
  server certificat known fingerprint
* When 'no-ssl-check' option is used, warning is shown in log and the peer server
  certificate fingerprint is also logged so it can be used in 'ssl-fingerprint'
  option to trust peer ssl server

inventory:
* database: Oracle database inventory update
* fix #114: JSON validation error on numeric monitor serial
* fix #116: for win32 software inventory, better use temporary file to run uwp
  powershell script on local computer. This prevents false positive alert from
  few anti-virus when agent is run locally.
* fix version for CentOS 7.x Operating System
* fix partial property missing in json while partial inventory requested
* fix #132: Missing LXC container memory limit
* PR #134: Fixed screen's edid fetch on linux, thanks to yweber-volta
* fix #127: Fix JSON UTF-8 encoding on MACOSX
* fix additional-content option support for json format
* Updated pci.ids to 2022.05.18 version
* Updated usb.ids to 2022.05.20 version
* Bump Inventory task version to 1.12

remoteinventory:
* fallback on ssh command access when libssh2 fails to connect
* fix LiteManager remote management inventory

netdiscovery/netinventory:
* Enhanced DefensePro support, thanks to @sectoolsacc
* Updated sysobject.ids

packaging:
* Windows MSI installer based on StrawBerry Perl 5.36.0
* fix #120: Fix windows service installation when PERL5LIB env is set
* fix #103: Embed Digest::MD5, Digest::SHA1, Digest::HMAC on windows for SNMP v3 authentication
* Windows MSI: Fix strings to name windows scheduler task and firewall exceptions
  This was preventing them from being deleted during upgrade and uninstall
  Also added a custom action to remove firewall rules wrongly generated by older installations
* Windows MSI: Use --force option while running now and using windows task scheduler configuration
* fix #117: Fix error when using windows task scheduler
* Windows MSI: Added support for few missing configuration parameters as MSI installer variable
  This includes: NO_COMPRESSION, ADDITIONAL_CONTENT, JSON, LISTEN, REMOTE, SSL_CERT_FILE
* Update MacOSX to use perl 5.36.0, OpenSSL 3.0.3 and zlib 1.2.12
* fix #99: Wrong GLPI Agent lib folder name in MacOSX systems based on APFS
* fix: AppImage support on older linux like CentOS 7
* fix: AppImage uninstall support on older linux like CentOS 7
* Update snap packaging to use perl 5.36.0
* fix #139: Linux perl installer openSUSE support

contrib:
* Added option to uninstall OCS Agent in windows vbs script

1.2 Wed, 13 Apr 2022

core:
* better error reporting on internal http client error

inventory:
* Use uts.name for Proxmox lxc containers
* Support customized AnyDesk client as remote management inventory on unix/linux
* Backport of @xo4yecTb patch: NoLog option for megacli util fusioninventory/fusioninventory-agent#996
* Fix teamviewer remote_mgmt inventory regression introduced in previous version
* linux: Added flatpak softwares inventory support
* database inventory: support default credential to inventory SQL Server 2012 Express
* linux: Update drive inventory to also try FS related tools to get more information
* feat: Add OS installation date inventory support for unix/linux
* Fix linux SLES 15 Service Pack detection, thanks to ncharles@gh
* Avoid blocking until timeout for snap softwares inventory when snapd is unavailable
* Add new Acer monitor model support: V226HQL, X193HQ, V193W, v193, V203W, V223HQ,
  V193HQV, V276HL, B247Y, P1206P, P1203, P1283, X125H, H6517ABD, X128H, XGA PJ,
  P5260i, AL1716, AL1717, AL1917, AL1916W, K242HQL, V226HQL, SA240Y, V246HQL,
  V193L, V196L, V203H
* Updated pci.ids to 2022.03.22 version
* Updated usb.ids to 2022.04.02 version
* Bump Inventory task version to 1.11

remoteinventory:
* Fix: Support username for SSH access
* Fix: Use BatchMode option for SSH access to not request password
* Fix: Use Net::SSH2 for user/password authentication
* Upgrade packaging to request libssh2 & NetSSH2
* Optimize SSH inventory by trying to use Net::SSH2 by default
* Add --vardir option support to glpi-remote script

netdiscovery/netinventory:
* New feature: Support device storages with first use for Infortrend SAN inventory
  This feature requires GLPI 10 server-side and disks are integrated as components
* Fix: don't rescan config on each thread but share parent config to avoid threading
  crash on win32
* Enhance Qnap storage inventory
* Update HP LaserJet Pro MFP printer series support
* Fix case of NULL char malformed CDP connection SYSNAME preventing XML import
* Updated sysobject.ids
* Bump NetDiscovery task version to 5.1
* Bump NetInventory task version to 5.1

deploy:
* fix: Fix UserInteraction messages encoding failure as perl 5.34 regression
* Bump Deploy task version to 2.10

collect:
* Make collect task more verbose when debug is enabled
* Bump Collect task version to 2.8

ssl-server-plugin:
* Fix: Support closing forked SSL connections without shutdown SSL to support Proxy server plugin
* Support "ssl_cipher" option to set SSL version to use or disable obsolete protocol version
* Bump SSL plugin version to 1.1

injector:
* Fix shortly named directory are skipped
* Use option bundling to fix -R option read as -r with wrong side-effect

contrib:
* Fix #73: Fix ADMX/ADML for agent configuration via GPO

packaging:
* Add Linux AppImage installer support

1.1 Fri, 04 Feb 2022

core:
* Define DateTime perl library as a requirement
* Fix: Replace JSON requirement by Cpanel::JSON::XS as JSON is not thread-safe
* Fix wrong next run date update after a long computer shutdown
* Few optimizations
* Support standard empty XML reply as server response

netdiscovery/netinventory:
* Make tasks compatible with GLPI 10 if GlpiInventory plugin is also installed
 - if that case, server URL should be set with:
  * /plugins/glpiinventory if the plugin has been manually installed in /plugins
  * /marketplace/glpiinventory if the plugin has been installed via marketplace
* Fix: Fix expiration time support to avoid aborting on legit short run
* Updated sysobject.ids
* Bump NetDiscovery task version to 5.0
* Bump NetInventory task version to 5.0

inventory:
* Fix #44: Avoid double utf-8 encoding while sending JSON
* Fix #47: Problem related to expected date format in software inventory
* Fix: Make deprecated XML format compatible with GLPI 10 XML to JSON converter
* solaris: Add IPv6 addressing inventory support
* solaris: Add software install date and size inventory support
* Support customized AnyDesk client as remote management inventory on win32
* Update MongoDB database inventory
* Support Mysql & Porstgresql connection timeout on database inventory
* JSON could be modified following server version expected format
* Ad ssl-cert-file option support
* Updated pci.ids to 2022.01.28 version
* Updated usb.ids to 2021.12.24 version

remoteinventory:
* Fix #50: handle right remote OS name for ssh remote inventory
* Bump RemoteInventory task version to 1.0

collect:
* Make task compatible with GLPI 10 if GlpiInventory plugin is also installed
* Bump Collect task version to 2.7

deploy:
* Make task compatible with GLPI 10 if GlpiInventory plugin is also installed
* Bump Deploy task version to 2.9

esx:
* Make task compatible with GLPI 10 if GlpiInventory plugin is also installed
* Bump ESX task version to 2.7

packaging:
* Fix #40: Windows MSI installer, agent feature must always be installed
* Fix: Windows MSI Installer, fix logfile default on silent installation
* Fix: Windows MSI Installer, always set right logfile and vardir path after changing
  installation path in installer UI

contrib:
* vbs script can uninstall FusionInventory Agent

1.0 Fri, 10 Dec 2021

core:
* make internal HTTP server more responsive
* Fix #643, #863: Force XML UTF-8 encoding when communicating with server
* config: conf.d folder include is enabled by default
* HTTP daemon: added ToolBox dedicated web interface to add agent management features
* Removed support of deprecated options
* Fix: honor --force script option when lazy option is also enabled
* config: support vardir option to specify storage location for persitent datas
* Fix: honor server expiration between runs by disabling initial delay which
  should only be related to the first run on a given platform
* Support target event scheduling
* get rid of Scheduler target and Maintenance task
* Send httpd-port minimal configuration in CONTACT request
* win32: restart ourself when convenient while running as a service and we detect
  too much memory consumption
* support ssl-cert-file option to use a client SSL certificat as SSL authentication
* FusionInventory modules are renamed to GLPI to avoid any namespace collision

inventory:
* Feature: support json file with additional-content option when json is used as inventory format
* Feature: support partial inventory
* Feature: support database inventory (MySQL, MSSQL, PostgreSQL, MongoDB, Oracle, DB2)
* Category support has been refactored to permit partial inventory
* fix snap softwares inventory
* fix cpu thread count by core reported by dmidecode method
* win32: Support WSL virtualization inventory
* Add support for AnyDesk remote management inventory
* Added Acer monitor serial support (K272HL, ET221Q, AL1716, V193W, V173AB)
* win32: Fix cpu analysis to support inventory of different cpus
* win32: Refactor cpu analysis to make dmidecode safer to use under win32
* Enhanced EV2785 Eizo monitors support
* Removed support of no more used legacy values
* macosx: Add Apple M1 support
* win32: Fix OS Version on win10 20H1 and 21H1
* Added --list-categories option to glpi-agent script
* win32: support overrided EDID blocks for monitor inventory
* win32: fix memory components under HyperV 2019
* win32: updated dmidecode to 3.3-update-1
* macosx: updated dmidecode to 3.3-macosx-update-1
* win32: fix is64bit() caching with x86 version
* Updated pci.ids to 2021.12.10 version
* Updated usb.ids to 2021.10.24 version

remoteinventory:
* [linux/unix/macosx] SSH remote inventory support
* [win32] WinRM remote inventory support
* Merged glpi-remoteinventory script in glpi-remote

netdiscovery/netinventory:
* Add support for SonicWall devices
* Enhanced MibSupport to support Configuration plugin managed via ToolBox
* Log a warning when no credential is provided with a discovery or inventory job
* Add support for Ruckus devices
* Add support for Dell Wyse ThinClient devices
* Add support for Voltaire devices
* Support "authpassword" and "privpassword" in credentials option as replacement
  for "authpassphrase" and "privpassphrase"
* Fix glpi-netdiscovery --inventory option when --port or --protocol option is used
* Fix NetDiscovery task not stopping when a lot of ip range are setup on a job
* Optimization of NetDiscovery task start
* Log task defined expiration timeout every 10 minutes
* Send job exit message to server when aborting a job
* Fix Brother printer recognized as HP printer
* Add options --host and --file to glpi-netdiscovery script to support generating
  a discovery XML from a snmp walk
* glpi-netdiscovery supports now to not set --last so it creates a one ip scan
  with only the --first or --host ip address
* Updated sysobject.ids
* Bump NetDiscovery task version to 4.4
* Bump NetInventory task version to 4.4

deploy:
* Deploy maintenance task is now handled by core target event scheduling

esx:
* Support OPERATINGSYSTEM node
* Fix CONTROLLERS inventory

proxy-server-plugin:
* Bump Proxy plugin version to 2.1
* Fix glpi_protocol option support
* Fix legacy XML protocol fallback support

toolbox:
* Support run of local inventory task
* Support run of NetDiscovery and NetInventory tasks
* Support management of dedicated credentials and IP ranges
* Support management of MibSupport Configuration plugin
* Support management of CustomFields configuration
* Support basic management of inventory, netdiscovery and netinventory results
  with CustomFields support
* Support creating done inventory archives with download
* Support ToolBox configuration
* Bump ToolBox plugin version to 1.0

injector:
* Support json inventories

packaging:
* Windows MSI installer based on StrawBerry Perl 5.34.0
* Windows MSI installer signing support
* MacOSX with prebuilt perl 5.34.0 including OpenSSL 3.0.0 support (x86_64,arm64)
* MacOSX installer signing and notarization support
* Linux Snap package with prebuilt perl 5.34.0

tools:
* tools/netsim.sh: Added script to simulate a network environment which can be used
  to test netdiscovery and netinventory tasks.
  It is based on snmpsim project to emulate snmp agents.

Revision history for FusionInventory agent

2.6 Thu, 26 Nov 2020

core:
* as explain in Version.pm comments, actual versioning is problematic for CPAN versions,
  so any future version will probably be defined as only major.minor but evantually
  as major.minor_rev if a package revision is necessary. This policy could be revised
  after any major upgrade.
* Fix configuration reloading to keep set script options
* Avoid a not critical perl error while reloading HTTP server
* Fix #820: Fix config reading to permit completly empty settings

inventory:
* Bump Inventory task version to 1.10
* Fix #771: added Acer monitor serial support for models (G227HQL, G236HL, R221Q, S273HL)
* Fix #787: fix debian package reporting when size is not defined
* Battery capacity support provides now canonical values
* Battery capacity support permits to compute battery capacity usage, thanks to Thierry Bugier
* Fix #819: Surface Go 2 was recongized as Hyper-V
* Fix #825: Enhanced disk encryption detection under linux
* Fix #829: added other Acer monitor serial support (H226HQL, K222HQL, SA220Q)
* Enhanced Qemu KVM virtualization detection, thanks to Rico29
* Dmidecode output parsing cleanup
* Fix #804: Filter out virtual overlay FS while using docker
* Fix #540: Added powersupplies support on MacOS
* Fix #797: Fix ASM storage inventory
* Better canonical manufacturer reporting
* Fix Snap software inventory support with long summary on a package
* Added PartNumber API to enhanced inventory memory and controllers support:
 * Elpida, Hynix, Micron & Samsung memory partnumbers
 * Dell controller partnumbers
* thanks to Vadim Pisarev:
 * Storages can now use smartctl command
 * Enhanced HP Storage inventory with smartctl
 * Memory inventory includes partnumber as MODEL
 * Controller inventory includes SERIAL and MODEL
 * Enhanced memory and controllers inventory via IPMI
 * Better storage support
 * Micron memories PartNumber support
* Updated pci.ids to 2020.11.14 version
* Updated usb.ids to 2020.08.26 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 4.2
* Bump NetInventory task version to 4.2
* Updated Ricoh printers support with better hostname detection
* Updated Zebra printers support with better hostname detection
* Introduced Siemens industrial modules support
* Introduced Multitech industrial modules support
* Fix #823, #856: Add Ubiquiti UniFi AP linux appliance support
* Fix #772: Enhanced some HP switchs support
* Introduced Hwg support, thanks to Bertrand Keller
* Fix #830: Retrieve rigth model for Oki printers
* Updated sysobject.ids (tagged fia-2.6 tag on github repository)

ESX:
* Bump ESX task version to 2.6
* verify a user and password are provided before attemting to connect to ESX server

injector:
* Fix an issue with --xml-ua option triggering a perl fatal error on empty or wrong XML files
* Fix #855: detect error returned by server
* Fix typo in man page

2.5.2 Mon, 16 Dec 2019

core:
* fix HTTP server IPv6 support as HTTP::Daemon module now supports IPv6 natively
* Always compile IPv4 address as IPv6 too for trusted ips. This is needed when
  system default is to listen other IPv6 or you set httpd-ip to IPv6 address
  like '::' or '::1'.
* win32: always detach agent thread after 10 seconds when stopping the agent
  service when it is blocking on anything to guaranty the service stops in 10s max
* check agent persistent datas for a "forcerun" set flag. This is firstly intended
  to be used by win32 installer to handle the "start inventory after installation"
  option directly from the service.
  This can also be used to change or reset the agent deviceid.
* Add --set-forcerun option support to fusioninventory-agent script
* Add J-C-P contribution to simplify agent installation under linux debian/ubuntu
* fix: don't reschedule too early on a forced run at start
* fix: Don't use delaytime on config reload
* fix: use target counters reset to better support config reload
* feature: limit next run delay reduction
  Limit next run random delay reduction to max 1/6 of the delay if less than 6 hours,
  limit to max an hour for delay from 6 hours to 24 hours,
  and limit to max 1/24 of the delay for delay greater than a day.
  This would keep enough delay randomization to avoid mass agent server connection and
  keep next seen run more coherent with the requested delay.
* fix service shutdown when HTTP client close the connection before the agent
* fix HTTP server keep-alive support with a 8 requests by connection maximum limit
* service update to support a safe forking system to firstly support handling
  parallel http request for the Proxy HTTP server plugin.
* Proxy HTTP server plugin now support max_proxy_threads configuration which is
  set to 10 maximum concurrent requests by default.

inventory:
* Bump Inventory task version to 1.9
* unix: fix last log user after a reboot
* added Samsung monitor serial support for models: B1940MR, B1940W, S22A450BW,
  S22B420, S22E450, S22F350FHU, S27D390H, S27D850T, S27H850QFU, S19A450, SM943BM,
  S22C450, S27H650FDU
* macosx:
 - fix monitors inventory using ioreg as it provides EDID block from monitors
 - fix few perl error messages on exotic cases
* win32: fix hyperv host wasn't filtered from installed virtual machines
* win32: fix Adobe key detection, thanks to PR-gh
* Megacli storage support update, thanks to po1vo
* linux: Added macvlan/docker network interfaces support, thanks to po1vo
* win32: fix firewall inventory cases, thanks to PR-gh
* win32: fix Office license inventory, thanks to PR-gh
* win32: enhanced network card inventory, thanks to PR-gh
* linux: provides debian installed software filesize in bytes
* linux: Added support for installed softwares by Snap
* linux: double-check a network interface is not virtual
* fix #723: check debian linux version in /etc/debian_version
* fix #726: Added support for latest SPARC cpus on Solaris
* hdparm support fixes by, thanks to po1vo
* win32: fix software inventory failing due to unsupported UTF-16 Appx manifest XML
* improved HP storage support, thanks to po1vo
* fix minor edid parsing issue
* linux: fix downed network interface speed, thanks to po1vo
* linux: enhanced generic SCSI storage support, thanks to po1vo
* linux: added process to enhance storage support testing
* fix #769: fix Virtuozzo virtualization inventory
* fix #752: normalize video cards memory on macosx
* fix #452, #642: better macosx network cards support
* fix #359: try to obtain remote management litemanager ID under win32
* Updated pci.ids to 2019.12.11 version
* Updated usb.ids to 2019.11.05 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 4.1
* Bump NetInventory task version to 4.1
* linux: avoid to share HTTP client with threads to fix RHEL/CentOS 7 crash
* Add Tagged VLAN, work at least with HPE Switch, thanks to PR-gh
* Enhanced Qlogic support to report device serial number, thanks to po1vo
* Added StormShield support via FreeBSD MIBSupport, thanks to PR-gh
* Fix memory and storage size normalization in some cases, thanks to PR-gh
* fix #738: fix time expiration when netinventory is chained with netdiscovery
  while using fusioninventory-netdiscovery script --inventory option
* fix #741: device with empty description was no more inventoried
* fix #717: use cdpCacheSysName when available to enhance connection detection
  Try also to extract remote mac address from deviceId when possible (fix Meraki
  connection detection, even support Yealink SIP phones)
* fix #684: Added IAP Aruba serial number support
* moved APC pdu support to mibsupport, thanks to po1vo
* fix #751: Added Seagate storage support
* enhanced VLAN support
* fix #734: Fix issue with Ricoh printers
* fix #722: Enhance LinuxAppliance support with Sophos UTG support
* improved Ricoh printer support
* Updated sysobject.ids (tagged fia-2.5.2 tag on github repository)

2.5.1 Tue, 02 Jul 2019

core:
* build: fix fusioninventory-remoteinventory was not installed
* fix HTTP server plugins base configuration folder
* fix HTTP server plugins installation from Makefile
* fix HTTP server SSL plugin so SSL sessions are not closed after one second
* fix #679: Win32 service HTTP server wasn't answering during an inventory
* feature: Added Proxy and SecondaryProxy HTTP server plugins

inventory:
* Bump Inventory task version to 1.8
* fix error message while starting fusioninventory-inventory script
* fix #667: LG tv monitor inventory failure
* win32: VirtualBox or VPN network adapters are now set as virtual
* added Samsung S24E450 monitor serial support
* linux: fix megacli storage analysis
* linux: check package status before telling it is installed on debian/ubuntu
* fix #688: inventory on "windows x64 1903" takes too much time. That was only
  happen when an antivirus other than Windows Defender was enabled and it blocks
  WMI call toward MSFT_MpComputerStatus class.
* win32: Add Symantec/Norton antivirus support
* fix #399: Deduplicate logged users without being case sensitive on win32
* Updated pci.ids to 2019.06.30 version
* Updated usb.ids to 2019.05.08 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 4.0
* Bump NetInventory task version to 4.0
* add Hygon Dhyana Support
* refactor: the multi-threading scheme has been re-worked so it is now working for
  netinventory task and more efficient for netdiscovery while scanning many range
  by job
* refactor: Collected datas are also sent to server from threads
* Added 2 options to fusioninventory-netdiscovery to save XMLs as file and
  automatically start netinventory when convenient:
  * add --inventory option to netdiscovery to automatically start netinventory
  * add --save option to define a folder where to save related XML
* Updated sysobject.ids (tagged fia-2.5.1 tag on github repository)

esx:
* Bump ESX task version to 2.5
* Support EnclosureSerialNumberTag and SerialNumberTag values as availables since
  VMware ESXi 6.5, Patch Release ESXi650-201811002 (build-10884925) and in latest
  VMware ESXi 6.7.
* add esx script new options:
  Add --dump and --dumpfile option to help ESX support debugging

2.5 Fri, 12 Apr 2019

core:
* linux: reload logger during daemonize to avoid issues like not listening http
  daemon if logger has still not been used before starting the listener
* Fix #646: HTTP daemon not starting on CentOS 7
* revert dfcb64573e as now more generic fix has been implemented in a538abaed7
  (tested on CentOS 6)
* win32: don't show service memory usage on OS not supporting GetProcessMemoryInfo
* Fix #601: Log URL for server target and log path for local target
* win32: add early stderr logging support for service
  Just rename "fusioninventory-win32-service.rc.sample" removing ".sample" part
  to enable this feature. This can be handy to investigate start service failures.
* Added support for HTTPD plugins
* Added Inventory HTTPD plugins to permit remote inventory request (disabled by default)
* Added Listener target to permit agent to only answer http requests
* Updated configuration to support HTTPD plugins dedicated configuration file
* Added fusioninventory-remoteinventory script to request agent with Inventory
  HTTPD plugin enabled
* Fix HTTPD local address reuse
* Added SSL HTTPD plugins to support SSL in any server plugins
* Limit the reload target check to 30 seconds
* win32: report memory usage as Working Set Size (WSS) and Page File Usage (PFU)
* win32: revert handling service with callbacks. Even if Win32::Daemon proposes
  the callbacks usage obsoletes the typical skeleton code, the callbacks usage
  is known to leak memory and tests with latest Win32::Daemon shows that's true.
* win32: handle task run in a managed thread as this is more efficient than using
  perl fork with thread emulation under win32 and preserve a little memory usage.
* win32: wait service control manager is ready before really starting the service
* logger: don't use File::stat module to just get logfile file size, better use -s
  as File::stat module seems to fail in rare case.

inventory:
* Bump Inventory task version to 1.7
* Fix lspci command subsystem parsing
* Fix hponcfg.exe can output on stderr on win32 when not really usable
* Skip not working under win32 Generic::Users inventory
  Also avoid error in log on /etc/passwd and /etc/group not found files
* Fix #601: Log deviceid as agentid and related target when running an inventory
* Fix #644: Make WORKGROUP inventory consistent
* Fix #541: Don't try to scan virtualbox VM in win32 users directories
* Updated pci.ids to 2019.04.12 version
* Updated usb.ids to 2019.03.20 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 2.9
* Bump NetInventory task version to 3.3
* Add Lancom in networking devices recognized by description parsing
* Fix #650: discard empty consumable level elements
* Fix #651: discard empty type element
* Add Netdisco export contrib script from Stoatwblr, see contrib/netdisco
* Fix #638: Fix Kyocera counters handling thanks to Stoatwblr
* Printers: assume -2 counter value means a WARNING level and report it
  Thanks Stoatwblr for the deep investigation
* Add Oki printer support
* Add APC serialnumber support
* Fix #612: Enhanced Ubnt AccessPoint support
* Updated sysobject.ids (tagged fia-2.5 tag on github repository)

deploy:
* Bump Deploy task version to 2.8
* Fix #394: Check file parts source/mirror url to guaranty it ends with a slash
  and trigger an error if it doesn't look like a valid URL.

collect:
* Bump Collect task version to 2.6
* WMI properties can now be a list of properties with comma or space as separator

2.4.3 Fri, 22 Feb 2019

core:
* fix some cases where a file handle was not closed
* win32: fix a handle leak case when agent was running as service
* Fix #637: Don't depend on GNU install during "make install" to support
  more Unix systems
* daemon/service: reload target when the stat file has been updated by
  another script to use the updated next run timeout
* For server target, server connection attempts are delayed from 60 seconds,
  doubled at each new failed attempt, now until reaching max defined by delaytime
  configuration parameter.

inventory:
* Bump Inventory task version to 1.6
* win32 antivirus support update:
 - nicer product name report for ESET
 - report expiration date for ESET
* Fix #582: Add other Acer monitors support
* Fix #687: Virtuozzo inventory task doesn't include first container
* Add few minor fix to virtuozzo containers inventory
* Fix LXC containers support to support recent LXC versions
* Fix #625: Container UUID is the same than host UUID
* Fix #624: Skip incomplete battery infos from dmidecode (seen on MacOS)
* Fix #631: Fix duplicated memory inventory on MacOS
* linux: fix storage size inventory
* linux: try to set storage serialnumber from mbr partition id or even
  PV UUID when not found (hdparm missing or virtual drive)
* Fix #604: Only inventory Windows Store on recent win32 platforms
* Fix #596: Openstack container seen as Physical on win32
* Fix #593: Correct detection of machine type when /var/log/dmesg is too short
* Fix #583: Add BitDefender antivirus support
* Encrypted filesystems support added
* Updated pci.ids to 2019.02.20 version
* Updated usb.ids to 2019.01.17 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 2.8
* Bump NetInventory task version to 3.2
* Add BlueCoat proxy appliance serialnumber support
* win32: Support arp table check for NetDiscovery task
* Fix #634: Net::Ping version may not numeric with win32 installer
* Add Panasas PanFS support
* Add few HP/Compaq serialnumber cases support
* Fix #605: try 'ip neighbor show' if 'arp' is not available for netdiscovery
* Add UPS-MIB support for Riello, S2S & APC
* Components support added
* Updated sysobject.ids (tagged fia-2.4.3 tag on github repository)

2.4.2 Wed, 03 Oct 2018

core:
* Linux: fix agent not listening on http port when syslog logger is active
  and Sys::Sylog module is too old

inventory:
* Bump Inventory task version to 1.5
* Fix physical memory error correction detection via WMI under win32
* Fix #299: Added UWP/APPX/Windows Store software inventory
* win32 antivirus detection enhanced support:
  - add support for few antivirus base versions (defender, kaspersky,
    EST, avira, MSE, McAfee, F-Secure)
  - try to set license expiration date for F-Secure, kaspersky & avira
* Fix #442: kaspersky not fully recognized in russia
* Fix #501: wrong status was reported when windows defender was disabled
* Enhanced software inventory under Arch Linux
* Fix #453: under MacOS, skip XML DTD validation for software inventory as
  parsing may fail if a proxy is enabled
* Fix #473: fix arch detection under MacOS
* Fix #475: fix video cards support under MacOS
* Fix #504: support non-standard ssh port to report local ssh server pubkey
* Updated pci.ids to 2018.10.02 version
* Updated usb.ids to 2018.08.15 version

deploy:
* Bump Deploy task version to 2.7
* Fix deployment of private packages: their downloaded parts were not
  fully found when download were too long (closes: #542)
* Handle retention duration differently for p2p and not p2p files
* P2p files have a default retention of 3 days by default
* P2p files have a default retention of 3 times the target prolog delay
  after download, parts retention is reset to the same delay for all file parts,
  so the retention duration applies at the time parts has been downloaded
* P2p file parts are now cleaned up after job success if retention duration
  is null
* Fix WinKeyNotEquals audit check to also be true when the registry key is
  simply missing
* Add support to "startjob" key for failing deploy audit check to permit
  to skip remaining checks when a failing condition makes them obsolete.

esx:
* Bump ESX task version to 2.4
* Support 2 ServiceTags case to cover chassis & lame board S/N inventory
* Updated AssetTag support
* fix wrong cpu core computation when only one package is available

netdiscovery/netinventory:
* Bump NetDiscovery task version to 2.7
* Bump NetInventory task version to 3.1
* Thanks to @QuickNerd357, Brocade devices will now show serial number and
  firmware informations.
* Sanitize VLAN names. This fixes an issue with Cisco Small Business Switches.
* Get rid of unofficial Net::Ping::TimeStamp support to only use official
  support if available. Net::Ping v2.67 is now mandatory to discover
  devices thanks to timestamp ping.
* Fix #481: Add Synology NAS support
* Fix #480: Add CheckPoint support
* Fix #488: Update HP Printers support
* Updated LLDP/CDP connection match checks
* Updated sysobject.ids (tagged fia-2.4.2 tag on github repository)

collect:
* Bump Collect task version to 2.5
* Thanks to David Durieux, add support for dynamic pattern in registry key
  collect under win32. The dynamic pattern is '**' to glob subkeys like in:
   HKEY_USERS/**/Software/**/**/CurrentVersion

maintenance:
* Bump Maintenance task version to 1.1
* Disable Maintenance task if no maintenance module could be used

test suite:
* Make snmp walk tests faster

2.4.1 Fri, 29 Jun 2018

core:
* Update setup & FusionInventory::Agent::Version modules during make install
* Can set FusionInventory::Agent::Version module VERSION & COMMMENTS during
  perl Makefile.PL configuration stage
* Normalized Target class APIs
* Register planned tasks at target level so target class can filter out
  unsupported tasks
* Add Scheduler target support to be used at the same time than Server target
  but more often to make maintenance other server target storage
* One scheduler target is created for each configured server target
* Scheduler target will trigger between one to 2 minutes
* Get rid of Time::Piece dependency

maintenance:
* New Maintenance v1.0 task
* Maintenance task handles quick server target storage cleanup to deploy
  packages are really removed afetr their expiration time
* Task only supported by Scheduler target

inventory:
* Fix BSD Storages support
* Don't try to run dmidecode inventories if it returns no output
* Set Bios && Hardware from /sys/class/dmi on recent Linux when dmidecode is missing
* Add PowerSupplies support
* Add BSD batteries support
* Add UUID to LXD containers under Linux
* Fix #439: Wrong network interface speed under win32
* Fix #472: On MacOS, add monitors serial number when available
* Fix #479: No virtual machine memory under Proxmox
* Fix #485: Fix df output parsing under MacOS
* Fix #500: Add Acer monitor EDID id match
* Better SQL Server software inventory under win32
* Update Xen Server support
* Fix get-edid command output parsing, thanks to David Durieux
* Updated pci.ids to 2018.06.29 version
* Updated usb.ids to 2018.05.04 version

netdiscovery/netinventory:
* Bump NetDiscovery task version to 2.6
* Bump NetInventory task version to 3.0
* fusioninventory-netdiscovery & fusioninventory-netinventory scripts
  now support '--port' and '--protocol' options for not standard snmp support.
* Fix RAM & CPU are missing from net inventory
* Fix MEMORY/RAM OID support
* Added support for HP Net Peripheral, involving better HP printers inventory
 * Get Serial number & firmware version
 * Fix total printed pages counter in many case
 * Added total color pages counter support
* Don't assume colors table was read: fixes black toner detection on many HP printers
* Added Microtik devices support
* Enhanced Epson printers support, including model name, serial number and firmwares
* Updated LLDP support
* NetInventory task protocol upgrade to fix multithreading scheduling according to
  upgrades done server-side.
* Fix discovery of devices with only ping responding and without found hostname. In
  that case, we default the DNSHOSTNAME to the scanned ip.
* fix entity option in fusioninventory-netdiscovery script
* Get rid of nmap support for NetDiscovery task
* Add Zebra printer support
* Add QuesCom Appliance detection
* Add Linux Appliance template support
* Closes: #441,#519
* Update extmod function calls, thanks to Vadim Pisarev
* Add custom OID for Canon printer counters
* Updated sysobject.ids (tagged fia-2.4.1 tag on github repository)

deploy:
* Bump Deploy task version to 2.6
* Fix file retention support
* Add P2P peers caching to reduce peers discovery load in the meantime
* Reduced timeout for peer discovery and file parts downloading for P2P. This
  efficiently limits the time passed to discover the local peers and disqualify
  any busy or not responding peers in a more acceptable delay.
* For better P2P support, agent ajusts its 404 message to "Nothing found" when it
  has nothing to share with other agents. So peers won't ask again and again for
  any file part during 20 minutes by default.

2.4 Fri, 29 Dec 2017
core:
* Cleanup confdir use in task so using deprecated etc/softwares folder is no more
  logged in journal
* Get rid of confdir setup in setup.pm
* Added "include" directive support while reading configuration file to make
  configuration maintenance easy
* Update syslog name to fullname agent
* Get rid of List::Util & Proc::PID::File module dependencies
* Try to load more recent IDS database files if found in well-known places
* Fixed default daemon pid filename
* When --pidfile is used, don't permit to manually start daemon even in foreground
  unless --pidfile parameter is different
* Makes --pidfile filename optional to compute a default one
* Check if we need to include libdir while daemonize
* Class refactoring: Get rid of discouraged 'use base' syntax in favor of lighter
  'use parent' and as fields pragma is not used (see 'base' man)
* Logger refactoring: no more an Exporter based class to simplify its usage and
  as Logger object should be commonly shared everywhere it is used.
* Fix command run to also time out while an alarm has been set
* Fix WMI calls to also time out under win32
* Few code refactoring
* remove devtom30 from maintainers

inventory:
* Bump Inventory task version to 1.4
* Fixed Provider program name in agent context
* Fixed HyperV VM issue while BIOSGUID is not defined
* Fix #349: Include last logged user as usual computer user on win32 platform
* Linux distro: Add support for reading os-release file and removing LSB support
* Fix Solaris drives df output parsing adding better zfs handling
* Make backend-collect-timeout working even while waiting on command output
* Support ASM filesystems on Oracle Grid
* Introduce getDeviceId() API on Inventory class so it returns task deviceid if set
  or set a new deviceid (aka agentid or machineid) in case of remote inventory
* Fix #161: Support retrieving License software via WMI, including Office 2016
* Fix #364: [win32] Get antivirus version from software installation and get
  Windows Defender version via WMI
* Added Windows 10 version support
* Updated pci.ids to 2017.12.20 version
* Updated usb.ids to 2017.12.28 version

netdiscovery/netinventory:
* Bump NetDiscovery & NetInventory task version to 2.5
* Added section support for MODEMS, SIMCARDS & FIRMWARES
* Added new detection algorithm based on exposed device supported MIB (sysORID list)
  and/or sysObjectID
* Added support for HP iLO cards
* Added support for Digi devices with enhanced MODEMS, SIMCARDS & FIRMWARES support
* Updated sysobject.ids with a lot of new devices support
* Keep first MAC address found while discovering
* Try first to select MAC address from SNMP session during SNMP device scan
* Updated sysobject.ids (tagged fia-2.4 tag on github repository)

deploy:
* Bump Deploy task version to 2.5
* ddurieux fixed a regression introduced in 2.3.18 preventing to re-use known
  good peer to download file parts.

esx:
* Bump ESX task version to 2.3
* Removed no more needed createFakeDeviceid() API

injector:
* Support --no-ssl-check option to avoid checking server SSL certificate

wmi-inventory:
* Added new task and script to permit agent-less inventory on win32 platform based
  on remote WMI support.

2.3.21 Mon, 31 Jul 2017
core:
* Service/daemon refactoring:
 * Move all daemon method to dedicated FusionInventory::Agent::Daemon package
 * Win32 service now based on private FusionInventory::Agent::Service inheriting
   from FusionInventory::Agent::Daemon
 * support configuration reloading on SIGHUP signal (unix)
 * support pausing service under win32
 * support run now on SIGUSR1 signal (unix)
 * and a lot of daemon/service optimizations and enhancements
 * daemon process renamed to provider derivated name under unix-like systems with
   tag if defined. Example: "fusioniventory-agent (prod)"
* Report http proxy error to help debug communication problems: #324
* Prevent setup.pm indexing in CPAN as requested by CPAN admins
* Other fixed issues: #321

inventory:
* Bump Inventory task version to 1.3
* Fixed win32 softwares finally missing when 2 'inventory' are set in tasks
* Fixed bug: last dmidecode block wasn't parsed
* Updated pci.ids to 2017.07.27 version
* Updated usb.ids to 2017.07.29 version
* Updated storage inventory on MacOS supporting Firewire storages: #309 #310
* Fixes on dmidecode memory inventory: #320
* Update memory component capacity on virtual systems: #339
* Fix lenovo system information product name read from dmidecode: fix #311
* Include TL in AIX OS version: #328
* Fix Xen vm with space in name not colleted: #176

netdiscovery/netinventory:
* Bump NetDiscovery & NetInventory task version to 2.3
* Fix credentials option support
* Fixed duplicated mac addresses: #315
* Also accept LLDP notifications on sysName
* Force MANUFACTURER to match real vendor, VENDOR inventory key removed
* Better cleanup of canonical strings with invalid characters
* Support more alternate mac address formats
* Fix some string field encoding
* Support Digi devices serial
* Support ups model oid
* Fixed Juniper serial retrieval
* Enhanced Konica printer discovery
* Enhanced mac address discovery
* Fixed wrong result on snmp read case: #139
* Enhanced error messages in netdiscovery task
* Updated sysobject.ids

deploy:
* Bump Deploy task version to 2.4
* Added new audit checks winkey not equals support
* Support User Interaction under win32 using WTS API (need server-side plugin upgrade)

injector:
* Support xml file extension: #360
* Fixed returns exit code 0 even on error: #329
* Enhanced displayed error messages

2.3.20 Thu, 1 Jun 2017
core:
* Fix #224, #254, #268
* Fix 2.3.19 regression while installing from sources
* Fix bad initialization while computing inventory checksum involving crash in rare case
* Include new CONTRIB.md file to reference not mergeable contributions
* Fix scheduling issue restarting tasks too early
* Avoid a warning on Socket module version check, issue found on Debian and MacOS
* Fix: Support SSL debugging at verbosity 2 on Stderr only

inventory:
* Bump Inventory task version to 1.2
* Fixed Docker support
* Added system software category support
* Added firewall status innventory support
* Fix last user computation on some unix systems
* Add CPU CORECOUNT support based on dmidecode output
* Fix STORAGES support on some platforms
* MacOS: Refactoring to replace Tie::IxHash dependency with XML::XPath to better
  parse system profiler output
* Fix: block device inventory still possible even if fdisk command is missing on linux
* Fix #289: Add ARM Board support
* Support UUID for lxc containers

netinventory:
* Fix #221, #275
* Command documentation updated
* a lot more of additional devices in sysobject.ids
* Fix Juniper new model and firmware detection

deploy:
* Bump Deploy task version to 2.3
* Audit checks refactoring and fixes
* Fix win32 registry key check
* Added new audit checks like winkey values, needs a server plugin upgrade
* Enhanced audit checks error reporting
* Fix and enhanced command action to really report output, may require a server plugin upgrade
* Fix command action exit code while target command is not found on unix

wakeonlan:
* Bump WakeOnLan task version to 2.2
* Fix thanks to Ludovic Pouzenc: send magic packets to all non-loopback non-dumb interfaces

2.3.19 Fri, 17 Feb 2017
core:
* Version & provider refactoring to simplify release process
* Provided agent versions can now been commented by providers and  programs will
  expose comments for --version argument
* Tasks version is now read more efficiently and should reduce agent memory
  footing while running under daemon or service mode
* Bump tasks versions to reflect new way of reading task version
* Support no-compression option: useful for debugging or while server do not
  support compression
* Replace JSON dependency with JSON::PP pure perl version
* Fixed configuration parsing
* Fix sigterm support on win32
* Reduced agent memory footprint on win32
* Service optimizations limiting inventory run time on win32
* Fix service registration on win32 while requested from sources
* Try to reschedule target sooner on network error
* add Thomas Lornet aka devtom30 as maintainer

inventory:
* Fix VERSIONCLIENT not set
* Screen inventory refactoring introducing ALTSERIAL inventory value which may
  show a better serial number for some manufacturer. This will ease future
  screen serial number fix integration: comparing expected S/N toward ALTSERIAL
  will tell us we just need to update dedicated subclass for a given monitor.
* Some portable computer screens are now recognized
* Previously undefined screen caption may now contains additionnal informations,
  mostly for lcd internal panel, like panel model. These are taken from EDID
  "monitor_text" when found.
* Few more Acer serial number are fixed
* Fix some memory size read using canonical API
* add --no-compression|-C option to disable compression of communication with server
* Fix HOSTNAME for MacOS
* Add docker container support for linux
* Fix install date while using rpm packaging or for MacOS
* solaris support update
* macos support updates & fixes
* rudder updates
* virtualization/container detection updates (HyperV, VMWare, KVM, LXC/LXD, VirtualBox)
* Added TeamviewerID support for win32 & MacOS
* Fix win32 key registry reading while it contains white space
* Add batteries support on MacOS
* Add HOSTID support on linux & solaris

deploy:
* Bump Deploy task version to 2.2
* Deploy task audit refactoring
* Add support for fileSHA512mismatch check processor in audit
* Fix #205 - Improve software package's audits
* Support optional audit check name in reported status (needs server update)
* Add checkprocessor unit tests

injector:
* add --no-compression|-C option to disable compression of uploaded files

2.3.18 Thu, 16 Jun 2016
core:
* Many bug fixes
* enhance daemon/service mode:
 - running tasks are killed while service is stopping
 - httpd daemon is now made not blocking so daemon/service handles
   external events quickly
* full win32 service refactoring introducing Windows 10 support
* win32 service can be registered/deleted from sources
* support new option --tasks to specify tasks to execute and their order
* support new option --conf-reload-interval to ask to reload conf at
  regular time interval while running in daemon or service mode.

inventory:
* Many bug fixes
* enhanced McAfee antivirus reporting
* added REMOTE_MGMT section to report infos related to installed remote
  management tools. Actually reports Teamviewer ID
* Eventually try ethtool syscall on linux to find network cards
* Fixed memory reporting on Solaris
* Enhanced installdate for softwares on many platforms
* Enhanced drive a storage reporting on win32
* Fix #584: Acer B196HQL S/N support

deploy:
* Bump Deploy task version to 2.1.0
* trigger error on servers missing Digest::SHA library to help diagnostic
* Backport some master branch work done by guillomovitch on P2P support
* Net::Ping & Parallel::ForkManager library are now mandatory for P2P support
* POE & POE::Component::Client::Ping requirements are now obsolete
* Also add few fixes and enhancement to P2P support
* Added unittest for P2P support
* fixed issues related to JSON support
* Enhanced run command output to help debugging failures

injector:
* add --recursive|-R option to scan sub-folder for OCS files

* add g-bougard as maintainer

2.3.17 Sun, 27 Sep 2015
inventory:
* add collect task support
* fix CPU frequency retrieval on Windows (#2876)
* fix CPU core and thread retrieval on Windows (#2894)
* small fixes for DragonFlyBSD (#2899)
* fix interface speed retrieval in Solaris zones (#2939)
* fix memory information retrieval on Solaris (#2907)
* fix recurrent timeout for system_profile usage on MacOS (#2913)
* fix hangup when enumerating ovirt virtual machines (#2917)
* fix virtuozzo virtual machines identification (reported on mailing-list)
* fix offline xen virtual machines properties retrieval (#2988)
* fix warning and parsing issues with LSI RAID adapter
* retrieve Rudder agent information for all kind of Unix systems (#2999)

netdiscovery:
* fix multi-threading issues

netinventory:
* better serial retrieval (#2912)
* better VLAN retrieval for non-Cisco devices
* fix firmware retrieval issues leading to malformed XML (#2908, #2956, #2994)
* fix multi-threading issues
* add support for Kyocera printers page counters
* additional devices in sysobject.ids (#2912, #2932, #2965, #2966, #2994)
* minor fixes in sysobject.ids
* relax constraints on sysobjectid syntax

wake-on-lan:
* fix communication issue with latest FusionInventory for GLPI (#2937)

fusioninventory-injector:
* allow to mimic agent in user-agent HTTP header

fusioninventory-netinventory:
* support multi-threading via --threads option
* support inventory toward multiple hosts
* dropped unused --entity option

test suite:
* more robust SSL connection tests

2.3.16 Sun, 1 Mar 2015
inventory:
* fix Rudder server UUID file location (#2865)
* use BIOS ID as guest ID for HyperV hypervisor (#2881)
* filter disabled CPUs in DMI data (#2525)
* minor fixes in CPU information retrieval

netdiscovery:
* fix communication with latest FusionInventory for GLPI (#2862)
* add multiple H3C/SMC/HP models in sysobject.ids (#2873)
* change sysobject.ids file format

netinventory:
* fix communication with latest FusionInventory for GLPI (#2862)
* add hirschman-specific firmware and serial OIDs (#2631)

2.3.15 Tue, 6 Jan 2015
inventory:
* retrieve attached network gateway from default gateway
* do not report 0.0.0.0 as address for non-configured IPMI interfaces
* fix last user retrieval with 32 bit agent on 64 bit Windows

netinventory:
* better firmware retrieval (#2806)

test suite:
* fix Perl version check for POE tests
* force IPv4 for connection tests

2.3.14 Mon, 15 Dec 2014
core:
* fix ESX and Deploy task execution from server request (#2809, #2820, #2823)
* manage PID file explicitely (#2796)
* make PID file location configurable, through --pidfile option (warning:
  default location is now in agent state directory)

netdiscovery:
* add a few H3C/HP models in sysobject.ids (#2812)

netdiscovery:
* fix fast interface speed computation (#2833)

install:
* add versioned dependencies on IO::Socket::SSL and Thread::Queue

2.3.13 Thu, 6 Nov 2014
core:
* log HTTP replies status
* log agent stop event (#61)
* better logging of task initialisation process
* fix syslog logger usage with debug level >= 2 (#2780)
* fix SNMPv1 multiple values queries

netdiscovery:
* skip SNMP scan immediatly if there is no answer from remote host
* send task termination message to server when shutting down (#185)
* thread usage cleanup

netinventory:
* propagate error messages to server
* fix null-character presence in XML output (#2670,#2746,#2754,#2784)
* fix WWN physical address parsing (#2759)
* send task termination message to server when shutting down (#185)
* thread usage cleanup

inventory:
* add support for FibreChannel controller on Linux (#2759)
* fix HyperV machines enumeration (#2141)
* fix typo in printer property name on Windows (#2782)
* fix wrong function call on BSD i386 (#2797)
* fix wrong function call on Solaris (#2799)
* fix parsing of psrinfo -vp output on Solaris (#2798)

test suite:
* disable tests requiring POE under perl 5.8

2.3.12 Mon, 06 Oct 2014
core:
* drop Socket::GetAddrInfo usage, and use Socket directly for name to address
  resolution

inventory:
* fix networks interface enumeration on Windows XP (#2733)
* fix BIOS date format error on Solaris (#2735)
* retrieve OS minor version on Solaris (#2736)
* identify dockers containers (#2731)
* fix adobe license key format (RT #99164)

2.3.11.1 Wed, 25 Sep 2014
core:
* update MANIFEST to fix missing files

2.3.11 Wed, 25 Sep 2014
core:
* additional distribution metadata
* more flexible message filtering in logger

inventory:
* additional exclusion categories
* more detailed log message for inventory execution
* utf8 encoding fixes for local users and groups on Windows
* fix mac address retrieval for bonded addresses on Linux (#2622)
* fix network interface type identification on Windows
* add network interface type on BSD and Linux (#1838,#2622)
* add WIFI info for network interfaces on BSD and Linux ()
* identify interfaces aliases on Linux (#2622)
* add PCIID for network interfaces and video cards 
* better Xorg log file parsing on Linux
* fix disk size computation on Linux (#2718)
* prevent abusive /etc/blkid.tab update on Linux
* ignore whitespace-only disk serial numbers on Windows (#2665)
* fix architecture identification on Solaris (#2672)
* add publisher for dpkg-based distribution on Linux

netinventory:
* drop consumables database in favor of standard consumable identification data
* no more arbitrary consumables number limit
* report unknown and approximate consumable level values as such
* fix negative consumable level values
* report multiple IP addresses associated with each port (#1421)
* report aggregated network ports (#2179,#2564,#2575)
* log sysdescr lookup in devices database
* additional Hischmann and Fortinet devices IDs (#2631)

2.3.10.1 Mon, 04 Aug 2014
inventory:
* fix regression introduced in 2.3.10 wrt hostname on Windows (#2647)
* fix regression introduced in 2.3.10 wrt last logged user on Windows
* provide error messages for name to resolution failures

netdiscovery and netinventory:
* avoid crash for missing logger with command-line tools

2.3.10 Wed, 30 Jul 2014
inventory:
* fix serial key retrieval regression on Windows (#2632,#2641)
* fix office 32bits serial retrieval on 64bits Windows (#2616)
* fix duplicate network interface on AIX (#2527)
* fix warnings for non-parsable etime on Unix (#2636)
* fix global zone identification on Solaris (#2620)
* fix software retrieval on recent BSDs (#2637)
* better file system types identification on Solaris
* add support for HyperV machines enumeration (#2141)
* add support for LXC container identification (#2311)
* add --scan-profiles option to fusioninventory-inventory (#2625)

netdiscovery:
* fix nmap parameters computation (#2618)
* better device identification (#2601, #2194)

netinventory:
* fix invalid character presence in XML output
* add support for Extreme Discovery Protocol (EDP)
* better handling of CDP implementation differences
* better handling of multiple discovery protocols

2.3.9.1 Tue, 15 Jul 2014
install:
* fix sysobjectid and consumables databases files installation

2.3.9 Tue, 15 Jul 2014
core:
* disable lower-level SSL checks when no-ssl-checks is used

netinventory and netdiscovery tasks:
* merge all files from sysobjectid database into a single one
* update sysobjectid database

netdiscovery task:
* catch more SNMPv3 authentication errors
* allow multiple SNMP credentials for netdiscovery executable

netinventory task:
* better printer consumable identification, using vendor references
  (#2581,#2582,#2583,#2584,#2587,#2589,#2591,#2592,#2593,#2594)
* externalize consumable ids in a data file
* report 0% level instead of 100% for wastetoners with OK status (#2593) 
* skip problematic address only for non-existing interfaces (#2599)
* mark --model option as deprecated for netinventory executable

inventory task:
* disable user profile scanning for software by default on Windows (#2555)
* avoid fatal dmidecode usage on Windows 2003 for CPUs (#2562)
* fix last loggued user identification on Windows (#2553)
* fix product key decoding on Windows 8 (#2544)
* fix IE 10+ version retrieval on Windows (#2528)
* more details for USB devices on Windows (#2598)
* get OS UUID for SPARC on Solaris (#2539)
* add Xen Citrix server VM support (#2529)

2.3.8 Sun, 11 May 2014
netinventory task:
* add support for trunk port identification on non-cisco hardware (#2386)
* add VENDOR element, and keep MANUFACTURER bound to original manufacturer
* add H3C hardware database
* better error messages for non-existing interfaces

inventory task:
* fix multiple crashes introduced by command logging
* fix crash in Windows License module when office is not installed (#2202)
* fix last loggued user retrieval on Windows (#2458)
* fix 32bits software in user environment retrieval on Windows 64bits

test suite:
* transfer hardware tests in private hardware repository

2.3.7.1 Wed, 30 Apr 2014
inventory task:
* fix crash introduced by command logging on BSD hosts

2.3.7 Tue, 29 Apr 2014
install:
* do not rely on GNU install specific options

netinventory and netdiscovery tasks:
* drop support for SNMP dictionary
* drop support for SNMP models
* large code cleanup
* enhance firmware and serial number retrieval
* update extreme networks models database

inventory task:
* fix multiple warnings for missing commands (#2460)
* fix 'broken pipe' error messages on Solaris (#2460)
* fix warnings for NIS/NIS+ external references in /etc/passwd (#2460)
* log executed commands with debug level >= 2
* fix a crash in Windows storage inventory (#2471)
* fix process inventory on AIX (#2481)
* fix firmware version retrieval on AIX (#2480)
* fix mac address extraction for infiniband interfaces (#2432)
* fix CPU identification on newer ARM kernels (#2485)
* fix inconsistencies in process runtime computation (#2491)

test suite:
* ship missing LXC test file (#2483)

2.3.6 Mon, 10 Mar 2014
core:
* abort with explicit error message when there is 
  no available task
* when receiving a push request from a server, reschedule
  contact for this server only

inventory task:
* fix a warning with LXC 1.0.x

netinventory task:
* fix SNMPv3 credentials handling
* fix mac address retrieval on non-default VLANs
* fix LLDP info retrieval for some hardware
* fix memory exhaustion for some hardware (#2414)
* use get-next-requests instead of get-bulk-requests, slower but safer,
  especially with large gaps in indexes

netdiscovery task:
* fix SNMPv3 credentials handling
* do not report errors for non-responding host with SNMPv3

wake-on-lan task
* honour all mac addresses from server request (#2353)

test suite:
* fix network interface test on Solaris (#2438)

2.3.5.1 Tue, 14 Jan 2014
inventory task:
* fix AIX LVM regression introduced by incorrect fix (#2384)
* fix another potential warning on AIX

2.3.5  Tue, 14 Jan 2014
netinventory task:
* add more default OIDs for mappings undefined in SNMP model
* fallback on default OID if SNMP model mapping doesn't bring any result
* restore and enhance mac adressses extraction for connected devices on
  non-default VLANs
* fix trunk port identification
* fix model loading with fusioninventory-netinventory

inventory task:
* get size for Adaptec RAID controller disks on Linux (#2360)
* fix size reporting for LSI RAID controller disks on Linux
* add support for modern MegaRAID controllers on Linux (#2361)
* better identification for hard disk manufacturers (#2362)
* fix timeout for user enumeration in AD environment on Windows (#2201)
* fix a potential crash in software inventory on Windows
* cleanup whitespace for DMI and /proc values (#2391)
* fix multiple potential warnings on AIX (#2384)

test suite:
* fix test files list (#2394)
* fix network interface enumeration test on Solaris (#2346)

2.3.4  Fri, 29 Nov 2013
netdiscovery task:
* install missing sysobjectid database files
* add additional device types (phones, storage, etc...) support

netinventory task:
* add default OIDs for mappings undefined in SNMP model
* add IFALIAS support for interfaces
* allow SNMPv3 usage from fusioninventory-netinventory
* allow discovery without model from fusioninventory-netinventory

netinventory and netdiscovery tasks:
* fix infinite recursion in mac address canonicalisation, leading to memory
  exhaustion (#2336)
* fix SNMPv3 usage without optional parameters

linux:
* OpenVZ: disable the Virtuozzo module if libvirt is already plugged on OpenVZ

2.3.3  Wed, 06 Nov 2013
core
* clean up in the distribution, thanks Olivier Mengué <dolmen@cpan.org>

inventory task
* fix missing 32bits software on 64bits windows (#2212)

netinventory task
* fix SNMP reconnection when issuing VLAN-specific queries on some Cisco
  devices (#2178)
* use longer default SNMP timeout, and make them configurable
* handle MAC addresses with embedded VLAN identifier

netdiscovery task
* backport device model identification from sysobjectid value

2.3.2  Fri, 20 Sep 2013
core
* avoid some warning messages

netinventory task
* fix: properly pass the SNMP credentials
* better handling of mac addresses

2.3.1  Mon, 09 Sep 2013
inventory task
* report when running in a BSD Jail or a LXC system, thanks Igor Morozov
* better strategy for extracting USB printer serial on windows (#2213)
* force lowercase identifiers for USB and PCI lookups (#2122)

netdiscovery task
* fix invalid log message and spurious warnings during discovery (#2200)
* fix dictionary update handling, breaking fusioninventory-netdiscovery usage
* use sysobjectid for better identification
* more sysdescr-based identification rules
* fix loss of information when applying sysdescr-based identification rules
* normalize sysdescr better before dictionary lookup

netinventory task
* ensure device type is set in agent answer
* emits warnings when retrieved values are obviously wrong
* better handling of mac addresses
* large code cleanup and optimisation

wake-on-lan task
* fix wrong mac address pattern check

2.3.0  Thu, 01 Aug 2013
distribution:
* Deploy, Network and ESX tasks are now integrated in the distribution
* new fusioninventory-inventory executable, dedicated to inventory task

core:
* no more thread usage for HTTP interface
* no more token usage for HTTP interface, request source address is enough
* --httpd-trust option now allows multiple values
* --daemon and --no-fork options are now available from command-line only 

inventory task:
* add DNS_DOMAIN, BOOT_TIME and FQDN in OPERATINGSYSTEM section (#1197, #1347, #1358)
* collect public SSH keys
* collect local users and groups (#1570, #1870)
* collect license key for MS Office on Windows (#152)
* collect software from user profile on Windows(#1674)
* collect license key for Adobe suite, Panic's Transit, VMware Fusion on MacOs
* collect service package version on AIX (#1896)
* collect manufacturer information for memories (#1735)
* enforce consistent handling of USB and PCI identifiers (#1861)
* enforce consistent TYPE values for network interfaces (#1838)
* various UTF8 encoding fixes
* better stripping of bogus values
* Megaraid and 3ware RAID controller support on BSD (Egor Morozov)
* Megaraid controller support on Linux (Egor Morozov)
* support new OpenVZ configuration on Linux (Alessandro Iurlano)
* LPAR support on AIX (#950, #952)
* FreeBSD jail support on BSD (#736, #1555)
* better caching of system_profiler output (#2076)
* better Qemu support (#2106)
* better OpenVM support (#1774)
* better HyperV support (#1989, #1990, #1991)
* fix CPU inventory for non-i386 arches on Linux (#2172)
* better CPU inventory on Solaris (#1741, #1905, #2152)
* better memory inventory on Solaris (#1711, #1714, #1737)
* better slot inventory on Solaris (#1730)
* fix VXFS filesystem identification on Solaris (#1696)
* minimal support for busybox-specific command output (#1372)
* no more memconf usage on Solaris
* no more Mac::SysProfile usage on MacOS (#1646)

wake-on-lan task:
* ethernet and udp methods support on all systems

netdiscovery task:
* fix for regression introduced during code refactoring regarding printers
  identification

test suite:
* check the link for 404 error in the doc
* check for warnings generated during parsing
* check entries generated from parsing match expected inventory format
* normalize list before comparaison, for perl 5.18 hash randomisation

2.2.8  unreleased

AIX:
* minor fixes in LVM support

2.2.7  Tue, 13 Nov 2012

General:
* additional hack for LG screens (#1848)
* additional model for ACER screens hack (#1840)
* fix directory creation error handling with older File::Path versions (#1817)
* fix initial delay randomness (#1809)
* fix spurious null character in decoded strings (#1837)

Windows:
* fix missing bios release information on some machines (#1820, #1825)

2.2.6  Fri, 14 Sep 2012

Installation:
* fix installation with older MakeMaker versions
* do not generate html version of man pages
* minor fixes to dependencies list

General:
* better fix for size parsing with HP RAID controllers, avoiding warnings
  (#1807)
* implement model-specific hack for ACER screens serials (#1607)

Linux:
* fix parsing of newer ifconfig output, such as used on Fedora 17

2.2.5  Thu, 16 Aug 2012
General:
* Fix: deal with broken last_state file
* Fix: fix HP RAID size parsing
* Fix: virtual machine inventory with VMware desktop
* Fix: add /usr/local/{bin,sbin} in default $PATH

Windows:
* Fix: do not run dmidecode.exe on Win2003
* Fix: software inventory

Solaris:
* Fix: improve ZFS support
* Fix: get memory on solaris on Sun-Fire-V490

HP-UX:
* Fix: variou syntax issues (Drives, Uptime, etc)
* Fix: get network interfaces from netstat -nrv
* Fix: import VXFS 7 volumes

Test suite:
* Add an AIX slot test
* Deals properly with disabled thread support
* use the first available TCP port for network tests
* Enable SSL test even in IPv6 environment

2.2.4  Sun, 22 Jul 2012
General:
* Fix: non blocking flock() on log file

MacOSX:
* Fix: STORAGES uses MiB instead GB
* Fix: add Fiber Channel storage support
* Fix: Don't ignore second screen, if both have the same name

Linux:
* Fix: collect qemu -drive information (Alexander Evseev)

Windows:
* Fix: OCS Inventory registry support
* Fix: some time the softwares were not collected

Solaris:
* Fix: Collect ZFS drives properly

2.2.3  Mon, 25 Jun 2012
General:
* Fix battery voltage and capacity retrieval
* Add --timeout option

MacOSX:
* Fix global memory and CPU inventory
* Fix drives inventory

Linux:
* LXC support (Egor Morozov)

2.2.2  Wed, 30 May 2012
General:
* Improve README
* Fix Screen.pm syntax error
* Add a test_requires dependency on LWP::Protocol::https

Windows:
* fix command execution

7ff3260 fix warning if getDevicesFromUdev returns nothing

Linux:
* detect Virtuozzo VM (Alexander Evseev)

2.2.1  Thu, 24 May 2012
General:
* failure encoding with UTF8 content when using Fusion protocol (#1663)
* wrong CSS path (#1580)
* missing test suite dependency (#1575)
* improve CPU details (#1597)
* --no-category process support (#1630)
* replace IS64BIT software property with more general ARCH property (#1581)
* sync EDID parsing code with mandriva
* more EDID manufacturer codes

Windows:
* various encoding issues (#1550)
* network addresses collecting failure (#1549)
* inventory all the KB on Win Vista/7 (#1668, #197, #706)
* Store the XML file with the local codepage (#272)

Virtualization:
* wrong character in Xen machine ID (#1562)
* additional disk emulation types for qemu and kvm support (#1630)

BSD:
* multiple network addresses per interface support (#1565)

Solaris:
* no swap/memory informations for unknown hardware (#1594)
* solaris container zone bug (#1586)
* sparc T3-1 CPU support (#1583)
* solaris 8/9/10 swap bug (#1577)

Linux:
* bad name for physical volumes (#1587)
* missing volume group ID (#1585)
* wrong volume group ID (#1584)
* duplicate volume groups (#1582)
* fix Lsilogic raid controller support (#1630)
* get device name from udev file content, not file name (#1630)
* get more disk informations from smartctl (#1630)
* sparc arch mismatch (#1573)
* read EDID data directly from /sys when available

2.2.0  Sat, 07 Apr 2012

Major changes:
* large speed improvement: up to 150% for a local inventory
* better multitasking support:
 - the agent use fork() to run task if needed, instead of running a new process
   from scratch, avoiding the need to use a temporary file to transmit
   parameters, with related security risks
 - the agent only forks to run a tasks when running as a server, making tracing
   and debugging easier
 - the agent only use one thread for the web interface
* better SSL support:
  - IO::Socket::SSL perl module is now required for certificate validation
  - Crypt::SSLeay perl module still allow HTTPS support, but without
    certificate validation, and the connection will be aborted unless
    certificate checking is disabled
  - validation is now performed by SSL library, and honours alternative subject
    names, and other subtilities
* large cleanup of values returned from inventory:
  - unknown values are filtered out
  - strings are trimmed for trailing spaces
  - irrelevant values, such as windows internal USB serial number, or
    controllers type and manufacturer on AIX and HPUX, are filtered out
* installation procedure automatically setup configuration and data directories
  locations in executable, there is no need to manually configure them anymore
* removal of useless features:
  - support for OCS account info have been dropped, the agent doesn't store
    arbitrary informations locally anymore
  - support for OCS network discovery and software deployment features within
    inventory task have been removed, we have better alternatives
  - useless Ping task has been dropped
* cleanup of available options:
  - deprecated --nosoft and --nosoftware options have been removed
  - --devlib, --share-dir, --basevardir and --realm options have been
    deprecated, as their values are now computed automatically at installation
  - --daemon-no-fork option has been deprecated, and replaced by --daemon
    --no-fork options
  - --info option has been deprecated, as it had no effect
  - --rpc-trust-localhost option has been deprecated, in favor of a more
    generic --http-trust option, allowing an arbitrary IP adresse or range
  - --debug option can be specified multiple times, for additional verbosity
  - --no-inventory, --no-ocsdeploy, --no-snmpquery, --no-netdiscovery options
    have been deprecated in favor of a generic --no-task option
  - --no-software, --no-printer options have been deprecated in favor of a
    generic --no-category option, and 'environment' value support has been added
* new --config option allows to select configuration backend, allowing to use
  file configuration if needed under windows, or to ignore any external
  configuration
* fusioninventory-agent-config executable has been dropped, in favor of better
  documentation
* documentation has been reviewed for consistency in various places where it
  appears (--help output, man page, configuration file)
* XML::TreePP perl module is now used instead of XML::Simple, reducing native
  perl modules dependencies
* OcsDeploy task is now deprecated. Please continue to use the 2.1.x agent is
  you need it.

Minor changes:
* Add the HARDWARE/CHASSIS_TYPE information
* Linux: report all IP addresses used by each interfaces (#854)
* HPUX: don't report unoccupied memory slots
* AIX: add LVM support

2.1.14  Wed, 22 Feb 2012

LINUX
 ✔ Detected OS is &quot;RedHat&quot; for CentOS servers if lsb_release not available
       commit:d3a252
     http://forge.fusioninventory.org/issues/1193
   thanks: Jonathan Clarke

MACOSX
 ✔ no-software option doesn't work as advertised
       commit:18dfaf
     http://forge.fusioninventory.org/issues/1476
   thanks: Ronan Mejecaze
 ✔ syntax error in Video module
   thanks: Walid Nouh

WINDOWS
 ✔ No 2007 Microsoft Office system into XML
       commit:39f3c7
     http://forge.fusioninventory.org/issues/1065
   thanks: Walid Nouh, Xavier Caillaud, jerome slayer
 ✔ On Windows Vista Office 2007 is not correctly gathered
       commit:39f3c7
     http://forge.fusioninventory.org/issues/1425
   thanks: Walid Nouh, Xavier Caillaud
 ✔ VM System incorrect
       commit:259996
     http://forge.fusioninventory.org/issues/1436
   thanks: Mario Gzuk
 ✔ Inventory Internet Explorer when it's not present in Add/remove programs
       commit:39f3c7
     http://forge.fusioninventory.org/issues/1441
   thanks: Walid Nouh, Xavier Caillaud, jerome slayer

2.1.13  Wed, 14 Dec 2011

TEST-SUITE
 ✔ 2.1.10 Test suite fails
       commit:8035bd
     http://forge.fusioninventory.org/issues/1161
   thanks: Remi Collet

WINDOWS
 ✔ VM System incorrect
       commit:b59a09
     http://forge.fusioninventory.org/issues/1391
   thanks: Mario Gzuk
 ✔ Fix the CPU detection on Windows
   thanks: Anthony Facchin

2.1.12  Wed, 23 Nov 2011

GENERIC
 ✔ Memory: Add ECC / no ECC information
       commit:b01f6f
     http://forge.fusioninventory.org/issues/1234
   thanks: Walid Nouh, jerome slayer

LINUX
 ✔ Duplication virtualmachine name on the same machine
       commit:982c08
     http://forge.fusioninventory.org/issues/1140
   thanks: DuyLong LE

WINDOWS
 ✔ [windows] Virtual network adapter reported as physical - and breaks all computer linking in GLPI
       commit:5b4a1e
     http://forge.fusioninventory.org/issues/1166
   thanks: David Durieux, V'yacheslav Stetskevych
 ✔ use $ENV{COMPUTERNAME} is HARDWARE/NAME is empty
       commit:44c07b
     http://forge.fusioninventory.org/issues/1330
 ✔ 2.1.11 - Total amount of total RAM memory incorrectly detected on some Windows 7 computers
       commit:f93d24
     http://forge.fusioninventory.org/issues/1334
   thanks: Tomás Abad, Andre Silva
 ✔ Dual screen configuration ignored on Windows Vista/7
       commit:6cbf8b
     http://forge.fusioninventory.org/issues/1351

SOLARIS
 ✔ Fix some warnings for spurious stat() calls
 ✔ Fix hostname being forced to 'SOLARIS'

2.1.11  Mon, 12 Sep 2011

WINDOWS
 ✔ Fix the BIOS information collect on Win2003 <= system
       commit:8c2427da5, commit: fe345815
     http://forge.fusioninventory.org/issues/1156

2.1.10  Tue, 06 Sep 2011

 ✔ Model and SSN don't correct
       commit:7bb7b1
     http://forge.fusioninventory.org/issues/1061
   thanks: DuyLong LE

INTERNAL
 ✔ Report Linux distribution version number
       commit:c7e958
     http://forge.fusioninventory.org/issues/1066
   thanks: Guillaume Rousse, Jonathan Clarke
 ✔ incorrect FSF postal address
       commit:190a04
     http://forge.fusioninventory.org/issues/965
   thanks: Remi Collet
 ✔ Incorrect test for LWP version
       commit:ebd880
     http://forge.fusioninventory.org/issues/994
   thanks: Guillaume Rousse

LINUX
 ✔ Use of uninitialized value in pattern match on CPU.pm
       commit:ba5ee3
     http://forge.fusioninventory.org/issues/1068
   thanks: DuyLong LE

SOLARIS
 ✔ Can't get network interface
       commit:c54339
     http://forge.fusioninventory.org/issues/1056
   thanks: DuyLong LE
 ✔ Agent segfault on Opensolaris when trying to send an inventory using https
       commit:fcfb8a
     http://forge.fusioninventory.org/issues/332
   thanks: Walid Nouh

TEST-SUITE
 ✔ FusionInventory::Agent::RPC build fails is no JSON
       commit:914cb5
     http://forge.fusioninventory.org/issues/955
 ✔ New build-deps: Test::Exception, HTTP::Server::Simple::CGI,
   HTTP::Server::Simple::Authen

WINDOWS
 ✔ use BIOS/MMODEL instead of BIOS/SMODEL on Win32 &lt;= 2003
       commit:0b5ce8
     http://forge.fusioninventory.org/issues/1139
 ✔ keyboard with same serial added twice in connected items
       commit:ce7244
     http://forge.fusioninventory.org/issues/788
   thanks: David Durieux, Fabrice Flore-Thebault, jerome slayer

2.1.9  Tue, 14 Jun 2011

HPUX
 ✔ HARDWARE/MEMORY missing on HPUX PA-RISC 11.11
       commit:262392
     http://forge.fusioninventory.org/issues/737
   thanks: Amir Pakdel, yanick durant
 ✔ machinfo on HP-UX 11.31 ia64 (tukwila chip) reports differently - breaks Fusioninventory CPU reporting
       commit:0a9037
     http://forge.fusioninventory.org/issues/757
   thanks: Earl Flack
 ✔ HP-UX: typo in CPU name
       commit:050ead
     http://forge.fusioninventory.org/issues/760
 ✔ Serial and bios informations are missing on 11.31
       commit:2e5608
     http://forge.fusioninventory.org/issues/761
   thanks: yanick durant
 ✔ HPUX Superdome CPU not correctly identified
       commit:0a9037
     http://forge.fusioninventory.org/issues/767
   thanks: yanick durant
 ✔ HPUX: Error in execution of fsdb in Drive.pm
       commit:9d1045
     http://forge.fusioninventory.org/issues/773
   thanks: yanick durant
 ✔ should we use fsdb on HP-UX to get the FS creation date?
       commit:39cd5a commit:ecd475
     http://forge.fusioninventory.org/issues/778
   thanks: Guillaume Rousse, Amir Pakdel

INTERNAL
 ✔ Change message &quot;Force run now&quot;
       commit:03c651
     http://forge.fusioninventory.org/issues/535
   thanks: Walid Nouh
 ✔ RPC: do not regenerate a token if RPC request come from local loopback
       commit:96915c
     http://forge.fusioninventory.org/issues/730
 ✔ regression if --rpc-trust-localhost --scan-homedirs have no argument
       commit:d9a436
     http://forge.fusioninventory.org/issues/741
 ✔ Agent should follow HTTP err 301 redirection
       commit:7f61f3
     http://forge.fusioninventory.org/issues/776
 ✔ on linux, type of computer not reported
       commit:d01560
     http://forge.fusioninventory.org/issues/791
   thanks: Fabrice Flore-Thebault
 ✔ use full name key for LVM inventory
       commit:75bb13
     http://forge.fusioninventory.org/issues/863
 ✔ missing RPC port in the agent log
       commit:504d53
     http://forge.fusioninventory.org/issues/870
 ✔ LWP 6 support
       commit:5953dc
     http://forge.fusioninventory.org/issues/878
 ✔ add Hyper-V virtual machine detection
       commit:9152c7
     http://forge.fusioninventory.org/issues/910
 ✔ set TAG in local mode
       commit:000fcb
     http://forge.fusioninventory.org/issues/946

LINUX
 ✔ rhn inventory
       commit:e13d10
     http://forge.fusioninventory.org/issues/713
   thanks: Remi Collet
 ✔ HP DL servers - Harddisk
       commit:caa030
     http://forge.fusioninventory.org/issues/768
   thanks: Amir Pakdel, Walery Wysotsky
 ✔ Add Linux LVM support
       commit:5f861e commit:0a3aa5 commit:9e6d79
     http://forge.fusioninventory.org/issues/802
   thanks: Sébastien Dagnicourt
 ✔ Vmware desktop virtual machines not detected on Linux
       commit:88b545
     http://forge.fusioninventory.org/issues/808
   thanks: Walid Nouh
 ✔ With newer gentoolkit software query is failing
       commit:a07afd
     http://forge.fusioninventory.org/issues/852
   thanks: Guillaume Rousse, İbrahim Özgür Erişen

MACOSX
 ✔ Software installed on parallel virtual guest listed in physical host inventory
       commit:69ffe5
     http://forge.fusioninventory.org/issues/716
   thanks: Guillaume Rousse
 ✔ Error during Vmware Fusion inventort on Mac OS X
       commit:3eecb1
     http://forge.fusioninventory.org/issues/762
   thanks: Walid Nouh
 ✔ Error running Parallels Desktop on Mac OS X
       commit:4ec184
     http://forge.fusioninventory.org/issues/763
   thanks: Walid Nouh
 ✔ Improve Parallels Desktop support
       commit:823aec
     http://forge.fusioninventory.org/issues/769
   thanks: Walid Nouh
 ✔ Fix MONITORS/VIDEOS detection on MacOSX
       commit:974fd8
     http://forge.fusioninventory.org/issues/936
   thanks: Loic Lhermitte

SOLARIS
 ✔ SolarisZones module ignored in fusioninventory-agent  2.1.8_rc1
       commit:9368ea
     http://forge.fusioninventory.org/issues/787
   thanks: Christian Lete

TEST-SUITE
 ✔ FusionInventory::Agent::RPC build fails is no JSON
       commit:782834
     http://forge.fusioninventory.org/issues/955
   thanks: Remi Collet

WINDOWS
 ✔ The agent still conflicts with Oracle Perl
       commit:a63eba commit:1d18c6 commit:4afe98
     http://forge.fusioninventory.org/issues/889
   thanks: GuruNot
 ✔ GLPI plugin imports duplicate entries with software from Windows Agent
       commit:4553aa
     http://forge.fusioninventory.org/issues/927
   thanks: David Durieux, Peter Luk

2.1.8  Fri, 25 Mar 2011
       * Show a larger part of the string returned by the server in case of
         error
       * Win32: Decrease the severity of a winkey read error
       * add FusionInventory::Agent::Tools::Win32::getValueFromRegistry()
         unused for now.
       * Win32: getWmiProperties() depends on Win32::OLE, load it first.
       * Win32/AntiVirus: avoid pointless OLE error
       * Add BNQ screen manufacturer support
         https://bugs.launchpad.net/bugs/736095
       * scan-homedirs and rpc-trust-localhost don't works in command line
         http://forge.fusioninventory.org/issues/636
       * Update the Inventory XML documentation
       * HPUX: use NAME instead of TYPE to set the CPU name (Yanick Durant)
         http://forum.fusioninventory.org/viewtopic.php?id=278
       * Document NETWORKS/{BSSID,SSID}
       * Add VIRTUALMACHINES/COMMENT and OWNER keys
       * VirtualBox: major rewrite of the mostly broken Vbox mod
       * add support for the task called «Deploy»
       * add support for the task called «ESX»

2.1.8_rc1  Sat, 05 Mar 2011
       * Linux, correctly read the number of core from /proc/cpuinfo
       * MacOSX: KB unit in missing in Mac OS X Drive.pm
         http://forge.fusioninventory.org/issues/521
       * FusionInventory::Agent::Task::Base, correctly preinitialize
         'myData' by loading the expected file.
       * A yum plugin in contrib to trigger FusionInventory after the updates
         (Remi COLLET)
       * SSL certificat check: Accept wild card in the hostname
         http://forge.fusioninventory.org/issues/542
       * Linux/CPU: avoid a warning is $serial is undef, thanks Raúl who
         pointed the issue
       * SSL: try to use the default CA if now --ca-cert-* is avalaible,
         thanks Kevin Cousin who suggested the idea
       * Inventory must be run after the deployment (OcsDeploy)
       * Linux: fix Knoppix version format
       * fix month number in process list start date
       * Avoid failure if the agent can't load the .dump file, see: #542
         thanks Kevin Cousin for the report
       * Decrease the severity of the error message when a optional module
         is missing
       * MacOSX/Drives: do not ignore the / filesystem
       * MacOSX/USB: no empty devices
       * Win32/Software: avoid a warning
       * Networks: improve the error message if deflat fails, thanks Walid Nouh
         for the suggestion
       * HP-UX/CPU: add a test-suite
       * HP-UX/CPU: identify the CPU on HP RX4640, (Yanick Durant)
       * HP-UX/Memory: hack to preinitialize the memory map (Yanick Durant)
       * t/README.t: only run the test if TEST_AUTHOR=1
       * Makefile.PL: add XML::TreePP in test_requires
       * RPM: feed the PUBLISHER field (Stéphane Urbanovski)
       * MacoSX/Software: Avoid breakage if .app's plist file is corrupted
       * Solaris: SUNWCzone is optionnal, use zonename instead (Raphaël SurcouF)
       * Inventory: look for backend module in @INC+$archname.'/auto' too, thanks
         to Philip Grodzki who helped to point out the issue.
       * Inventory: improve POD documentation
       * Inventory: Display a debug message if the STORAGES/INTERFACE is invalid
       * backport from master FusionInventory::Agent::Tools::getCanonicalManufacturer()
       * Linux/CPU rename AuthenticAMD to AMD
       * injector: --help show usage menu
       * injector: minor clean up in the --help menu
       * Add 2011 in the copyright years
       * Win32: set HARDWARE/DESCRIPTION
       * Tools: move the code used to find .pm in @INC in getFusionInventoryLibdir()
       * Linux/Network: set the IPv6 network address (Ludovic Hutin)
       * HP-UX/CPU: improve the machinfo parsing, thanks Amir Pakdel for
         the machinfo output on HP-UX 11.23
       * AIX: collect EMC/Clariion LUN storage (Sébastien Dagnicourt)
       * Win32: fix NETWORKS/VIRTUALDEV on OS prior Vista (David DURIEUX)
       * Internal: add and use getFusionInventoryLibdir(), getFusionInventoryTaskList()
       * Linux/Storage: collect WWN from SAS / SATA disk using hdparm
       * Win32/Networks: avoid duplicated IP in HARDWARE/IPADDR, thanks Fernando Lagrange
         for the bug report
         http://forge.fusioninventory.org/users/603
       * Gentoo: fix the regex to collect packages,
         https://bugs.launchpad.net/ocsinventory-contact/+bug/720626
       * Linux: dhcp-leases file now always detected, mostly on Redhat hosts (Bernhard Denner)
         https://bugs.launchpad.net/ocsinventory-unix-agent/+bug/720628
       * Win32: retrieve Antivirus information from //./root/SecurityCenter2 on Win7
         http://forge.fusioninventory.org/issues/583
       * Add VIRTUALMACHINES/MAC key
       * Win32: software, do not ignore software with very few information
       * Win32: better detection of product key on 64bit system, thanks Ionut Bujor for
         the feedbacks http://forge.fusioninventory.org/issues/582
       * Drop the Ping task. Was not used.

2.1.7  Sun, 12 Dec 2010
       * RPC: Better message if access is denied
       * add --no-p2p parameter
         http://forge.fusioninventory.org/issues/507
       * initialize $config->{'rpc-trust-localhost'} to avoid a warning
         with --help
       * injector: fix the --help, there is no default server
       * fusioninventory-agent, do not load lib with use to be able to change the @INC first.
         this is needed for AIX 6.1 prebuilt.
       * AIX/CPU: use addCPU() and collect the CORE/THREAD
       * AIX/hardware: fix a typo sysplanar0 instead of sysplana00
       * AIX/storage: reinitialise temp var correctly
       * AIX/storage: store the harddrive serial number
       * AIX/storage: use addStroage
       * AIX/user: use addUser()
       * Big Oops, CPUID != CPU serial number, see:
         http://en.wikipedia.org/wiki/CPUID
         Revert commit a1c4c665, which is broken because of that:
         Win32: try to identify dual core CPU even if Windows thinks it two physical CPU
       * Linux/resolution: fix the parsing for Nouveau, than Remi Collet
       * Linux: improve the Harddrive detection if lshal is not avalaible,
         thanks Bernhard DENNER for the initial patch
         https://bugs.launchpad.net/bugs/682689
       * No warning if ddcprobe is not avalaible

2.1.7_beta1  Fri, 19 Nov 2010
       * replace Cwd::abs_path with File::Spec->rel2abs
         abs_path fails if the directory doesn't exist yet. This was breaking
         --basevardir on UNIX system.
         The problem was fixed on Win32 with the 2.1.5 release. See commit
          6f376013c8584145a8f824632f1292b3212bd3ca
          a1f32c62145c46fa176165bba1695420505290b7
       * Fix regression: Do not empty log file if logfile-maxsize is undef
         or 0, thanks Remi Collet
         http://forge.fusioninventory.org/issues/414
       * Linux/PPC: Fix various warnings in CPU.pm
       * Linux/PPC: ignore some wrong warning
       * Linux: CPUS/TYPE renamed to CPUS/NAME
       * POD: add doc for BIOS/{S,B}MANUFACTURER
       * POD: fix a syntax error in fusioninventory-agent
       * use the default basevardir.
       * POD: clarify, we ignore virtual filesystem like /proc in <DRIVES />
       * Solaris: move showrev output example in ressources/solaris
       * Solaris: ignore Zone on Solaris < 5.10
       * Solaris: collect the UUID on x86
         http://forge.fusioninventory.org/issues/428
       * OpenSolaris: collect firmware information even if showrev is not installed
       * OpenSolaris: support GNU df to collect partition
       * Solaris: identify zfs filesystem and collect serial number (UUID)
       * Solaris/Drives.pm code clean up
       * Solaris/Storages.pm Don't set revision to 'Serial' if revision is empty
       * MacOSX: No serial & uudi gathered on Mac OS X 10.5 running VirtualBox
         fail back on ioreg when system_profiler do not give the wanted information
         http://forge.fusioninventory.org/issues/431
       * import a dmidecode output on OpenBSD 4.5
       * BSD/Storage: Avoid warning if model is unknown
       * BSD/CPU: failback on CPU Family if Version is empty in dmidecode, closes: #439
         http://forge.fusioninventory.org/issues/439
       * Linux, distro detection: ensure /etc/issue is parsed last if lsb_release is
         missing. This way /etc/debian_version is used on Debian
       * Linux: correctly parse /etc/resolv.conf to identify the domain
       * Linux: don't save 2 time the same domain
       * Linux/ARM: collect the Hardware information from /proc/cpuinfo
       * BSD: use sysctl -n hw.model to get the CPU name and frequency
       * MacOSX: Mem.pm, convert hex string to ASCII when needed, thanks Sylvain la Gravière
         for the bug report
         http://forge.fusioninventory.org/issues/440
       * Screen.pm: Add support for 3 new manufacturer. Backport Adam Buchbinder changes on
         1.1.x branch
       * Linux/ARM: collect the Hardware information from /proc/cpuinfo
       * Windows: Disable dmidecode.exe on Win2003
         http://forge.fusioninventory.org/issues/379
       * MacOSX/Drives: don't ignore autofs filesystem, thanks François Legastelois
         for the bug report
         http://forge.fusioninventory.org/issues/446
       * BSD: use mount to identify the filesystem type, this shoud fix bug #450
         http://forge.fusioninventory.org/issues/450
       * Win32: try to identify dual core CPU even if Windows thinks it two physical CPU
       * Win32: no need to change %PATH% anymore
         http://forge.fusioninventory.org/issues/151
       * fusioninventory-agent-config, better question for server address
       * BIOS: clean up
          - do not mix motherboard and system information anymore
          - do not use CPU information do create fake serial anymore
          - retrieve the SKU number
       * MacOSX: use ioreg to get the machine serial number
         http://forge.fusioninventory.org/issues/442
       * Logger: ensure the logger is load just one time
       * add fusioninventory-injector in the distribution
       * Linux: fix: Agent don't give video ram size and video resolution,
         Eric FREYENS for the fix suggestion.
	 We now use ddcprobe or Xorg to get the resolution of the main screen.
	 This fix will be improved in the futur and should be seen as experimental
	 http://forge.fusioninventory.org/issues/316
       * Win32: ignore garbage character in the XML, and filter SOFTWARES/VERSION
         to deal with some very strange case, thanks Mario GZUK for the bug report
         and RDP access
         http://forge.fusioninventory.org/issues/415
       * MacOSX: ignore a warning in Drives.pm
         http://forge.fusioninventory.org/issues/441
       * MacOSX: retrieve partition UUID on MacOSX 10.4
       * Linux, use ddcprobe and Xorg log file to detect the X resolution, turn
         off the generic Screen.pm module
       * Solaris/Networks: no ugly hack to detect the Perl bin path to launch kstat
         http://forge.fusioninventory.org/issues/497
       * Solaris/Networks: no useless grep call
       * HTML: add the deviceid in the HTML file
       * Linux/CPU: workaround if cpuinfo has broken "physical id"
         http://forge.fusioninventory.org/issues/505
       * BSD: add support for DragonFlyBSD! :D
       * VirtualBox: Don't use process list (ps) to find running process
       * MacOSX/VirtualBox: looks for user dir in /Users on MacOSX
       * Linux/Storage: ignore fdisk -l error message
         http://forge.fusioninventory.org/issues/503
       * Linux/Storage: avoid error message with fdisk -s on invalid devices
       * RPC: Allow access to / from everywhere

2.1.6    Tue, 05 Oct 2010
       * Ensure the RPC serivce URL printed in the log message targets
         http://127.0.0.1::62354 with the default settings
       * Restore the Storage even if the target is not a server.
         Enable --tag and keep the DeviceID
       * fix 2.1.5 regression, correctly initialise $basevardir default value
       * POD, explain the registry is used on Windows, thanks Stéphane URBANOVSKI
       * Add support for MontaVista Linux, thanks Luka KODRIC
       * BSD: Fix a syntax error in Domain
       * BSD: Some adjustement for Debian GNU/kFreeBSD
       * BSD: avoid warning if the lease file can't be parsed
       * BSD: Drives.pm hide, df messages on STDERR
       * BSD: convert the IP mask from hex to dec
       * Win32: workaround to add timeout for HTTPS on Windows
       * OpenBSD: Do not fails if dmesg is in /sbin/dmesg instead of /bin/dmesg
       * AIX: ignore /proc filesystem like on Linux
         http://forge.fusioninventory.org/issues/397
       * Logger: avoid breakage if log file is > 5MB, thanks Benoit Machiavello
         http://forge.fusioninventory.org/issues/406
       * AIX: Error running AIX::Mem module on AIX 6.1, thanks Luka KODRIC
         http://forge.fusioninventory.org/issues/399
       * AIX: Erroor in harddrive module on AIX 6.1, thanks Luka KODRIC
         http://forge.fusioninventory.org/issues/398

2.1.5    Wed, 15 Sep 2010
       * Win32: Do not fail if the log file doesn't exist yet, thanks Igor
       * Win32: Correclty launch the sub Perl process, thanks Igor
       * Fix: Some NETWORKS/VIRTUALDEV were set to yes instead of 1
         http://forge.fusioninventory.org/issues/352

2.1.4    Wed, 15 Sep 2010
       * Save the realm if we found it by ourself. With this changes
         we avoid useless request with the wrong realm from sub module
       * Add Win32::OLE and Win32::TieRegistry dependency on Win32
       * MacOSX: fix the memory size inventory, thanks Eric Freyens for the
         bug report
       * Do not use dmidecode if it fails to give valuable information,
         use WMI instead on Win32
       * ensure basevardir and share-dir are canonical pathname
       * POD doc, add this sentence:
         "The command line parameters overwrite the configuration file."
       * Fix several issues in agent.cfg file (Walid NOUH)
       * Corrected a lot of english sentences (Benoit MORTIER)
       * Win32, avoid warning if the CPU has no name
         http://forge.fusioninventory.org/issues/349
       * if envvar REALLIB is defined, we use it to overright @INC, this in order
         to relocate the perl tree easily
       * Pass @INC content to the subprocess
       * Vmsystem, ignore some normal warning (missing /proc on some OSes)
         http://forge.fusioninventory.org/issues/326
       * fix Solaris Zone detection and add a test and some Solaris release file
         http://forge.fusioninventory.org/issues/323

2.1.3    Wed, 01 Sep 2010
       * Linux: Avoid error on system with no /proc/bus/input/devices
       * agent.cfg, add more server= parameter example
       * --server remove spaces at the begin and end of the server parameter
       * Networks.pm: fix is_success, load use HTTP::Status;
       * fix t/xml-query-inventory.t to not fail on non i486-linux-gnu-thread-multi
         arch
       * fix t/app.t on Windows

2.1.2    Mon, 23 Aug 2010 
       * set a default SNMP version to really avoid warnings
       * Add ./t/README.t to check is README{,.html} files are present
       * Really set a default SNMP version, and bails out if an invalid version
         is used
       * Fix compatibility with snmpquery and netdiscovery plugins
       * Fix some warnings in Screen.pm
       * Ensure Xen PVH host identification
       * Linux: fix DNS domain detection
       * t/modules.t: do not fail on Syslog on Windows

2.1.1    Wed, 18 Aug 2010
       * Turn daemon mode off in the base configuration file
       * Fix some POD warnings
       * POD: document the common server URL for OCS and FusInv for GLPI
       * Add resources/hal/rh4-kvm and test it with t/drives.t
         adjustment needed
       * RH4, avoid false STORAGES (partition instead of disk)
       * Proc::Daemon close all the file descriptors including the file logger.
         We reopen it if needed
       * Print rpc-trust-localhost value in --help
       * RPC, cosmetic adjustement in debug message format
         http://forge.fusioninventory.org/issues/290
       * Linux/Storage: avoid breakaging if there is no disk in HAL
       * FusionInventory::Agent::SNMP clean up to avoid warning at run time
         (Guillaume Rousse)
       * Linux: parseLshal(): do not return empty hash ref anymore, thanks
         Guillaume Garson
       * Fix bypassing of virtualised system detection
       * Fix error message for non-present zoneadmin command
       * Do not call getCapacity() in parseUdev(), thanks Michał Panasiewicz

2.1      Sun, 15 Aug 2010
       * cleanup Makefile.PL
       * enhance documentation with optional and mandatory dependencies
       * drop README file lost in the middle of perl modules
       * Fix some warnings on Windows
       * agent.cfg, fix a syntax error
       * turns most call to carp() and die() into logger usage
       * Linux: storage, hdparm gives more reliable serial number
       * XML, storage, rename STORAGES/SERIAL to STORAGES/SERIALNUMBER, thanks
         azman
       * Win32: uses WMI to collect Environment vars to get correct UTF-8 data
       * Win32: ensure the hostname is in UTF-8
       * Win32: fix: load Win32::OLE in UTF-8
       * Win32: get the hostname from WMI in unicode
       * Win32: use the standard codepage to access the registry
       * Big thank you to Denis Linvinus who gave RDP access to a Russian
         Windows
       * Win32: don't put BIOS ROM in STORAGES, thanks EmpereurZorg
       * Win32: add Modem.pm
       * Fix: Virtuozzo containers memory unit (Jan JUNGMANN)
       * Win32: Ignore network it the network interface has no PNPDeviceID
         http://comments.gmane.org/gmane.comp.monitoring.fusion-inventory.devel/34
       * HP-UX: fix --no-software support
       * Win32: retrieve the Windows key on Windows 64 bit,
         http://forge.fusioninventory.org/issues/267
       * Win32: Push the default monitor in <MONITORS />
         http://forge.fusioninventory.org/issues/252
         http://forge.fusioninventory.org/issues/269
       * Win32: Use the GUID as software name is NAME is empty
       * Solaris: Various fixes (CPU, memory, storage)
       * Fix HTTP auth on non HTTPS server, _BIG_ thinks to Mario Gzuk and
         Michael Kolowicz
       * Linux: Avoid a warning if /sys/class/net/%INTERFACE%/device/uevent doesn't
         exist
       * Basic HTTP Auth: if the realm parameter is missing, the agent reuse the one
         from the server
       * Initialize PROLOG_FREQ to 1h for every target
       * Don't fail is RPC module can't be loaded. threads and HTTP::Daemon are optional
         and it may be normal.
       * web interface: do not open a new windows when an inventory is forced

2.1_rc3  Sun, 25 Jul 2010
       * MacOSX: fix if diskutils gives size in GB/MB instead of GiB/MiB
       * MacOSX: ignore printer if name start with:
         The printers list is empty. To add printers (fixes: #169)
       * MacOSX, BSD, Linux: unify domain name computation to use host name
         as primary information source, and avoid using windows-specific
         'workgroup' as default value
       * Add resources/cpuinfo/linux-686-samsung-nc10-1
       * Fix, restore ability to specify server as an host name rather
         than a full URL
       * Fix, restore --noinventory support, print a warning saying
         --no-inventory should be used instead
       * Fix: Linux, PC: detect CPU configuration of machine with one
         CPU with one core and 2 threads (Samsung NC10)
       * Fix: Linux, PC: support /proc/cpuinfo with no "physical id:"
         thanks Sébastien Prud'homme
       * Fix: Linux, PC: get the number of core from dmidecode if
         avaible
       * Win32 and Linux, PC: get the CPU frequency from the CPU name, if
         possible. That's the most reliable way to get the
         information since 'Max Speed' in dmidecode is most of the
         time on crack and /proc/cpuinfo is not reliable because of
         the frequency scaling
       * Linux, PC: the cpu detection can work if only dmidecode is
         here
       * remove --perl-bin-dir-in-path, turns it on only in the Windows
         service
       * test scripts: fix is_deeply() argument order
       * RPC: print "now" as next contact date instead of 1/1970
       * Inventory, correctly store user list
       * Fix the noDuplicated to avoid duplicated XML sections in inventory
       * Import the new FusionInventory logo
       * Fix, HP-UX errors when listing drives
         http://forge.fusioninventory.org/issues/188 (Amir PAKDEL)
       * Win32, network: Filter interfaces with no IP, IPv6 and MAC
       * Win32, printer: restore the DRIVER field
       * Win32, drive: restore the SIZE field
       * Win32, get the memories from WMI only if dmidecode is missing
       * Dmidecode, drop the unit from the memory speed like the Win32 OCS
         agent do
       * Win32, set the BIOS/TYPE field
       * Win32, storage: clean up. Reduce the number of hdparm call.
       * Win32, set USBDEVICES/NAME
       * RPC: rewrite the thread management to reduce the memory consumption
         on Windows
       * Win32: Users, we need to use Get() to retrieve Win32::OLE::Variant
         object content
       * Add more test scripts: xml-query-inventory.t,
         xml-query-simplemessage.t, t/xml-response.t
       * Fix a typo scanhomedirs → scan-homedirs
       * HP-UX: add HP-UX VM support (Sébastien PRUD'HOMME)
       * Linux, PC: CPU fixes for VMware ESX, thanks Benoit Machiavello
       * Linux: set correctly HARDWARE/WORKGROUP with the domain name,
         thanks Benoit Machiavello
       * HARDWARE/USERID: don't put more than one time in row the same user
       * Makefile.PL: Turns off the post-installation script. The hack is broken.
       * Solaris: imporove CPU, Mem, Slots (Lucas MASSE)
       * Solaris: imporove Bios, Controllers, Domains, Drives, IPv4, Memory,
         Networks, Packages, Storages and Users (Jérome LEBAS)
       * Add comment and default settings in agent.cfg (Walid NOUH)
       * UUID, improve the code to support old dmidecode
       * VirtualBox, improve Virtualbox detection, closes: #230
       * MacOSX: Set the UUID
       * MacOSX: rewrite storage.pm without Mac::SysProfile
       * MacOSX: collecte IPv6 address
       * Win32: set the NT Domain for the WORKGROUP if avalaible like OCS agent
       * MacOSX: Collect Firewire disk

2.1_rc2  Thu, 01 Jul 2010
       * MANIFEST.SKIP, we need the resources files for the test suite
       * Linux: set back DRIVES/FREE
       * Linux: CONTROLLERS/NAME drop the trailing whitespace
       * addEntry(), do not ignore $noDuplicated parameter
       * remplace --html-dir by --share-dir
       * use pciid to know the pci device name and manufacturer, thanks
         Sébastien Prud'homme
       * load dmidecode from $PATH
       * fix VirtualBox VM detection (David DURIEUX)
       * Makefile.PL, UNIVERSAL::require is a dependency now
       * Document --logger
       * Fix --logger: to not overwrite other loggers if --logfile is on
       * POD, add for PROCESSES inventory
       * tools/ fixes for Solaris shell
       * Add CONTROLLERS/REV
       * Fix: Linux/i386: retrieve the number of CORE correctly
       * Fix: Vmsystem, don't load 'version', we don't use it anymore
       * Fix: Linux/ARM: drop a debug print
       * Fix: Linux Storages, fix fdisk parsing
       * MacOSX: use addCPU to collect cpu information
       * MacOSX: the number of core of the CPU
       * MacOSX: Collect all the net devices and set VIRTUALDEV=1/0
       * MacOSX: collect all the drives (fixes: #119)
       * MacOSX: DRIVES, swap VOLUMN and TYPE fields
       * Makefile.PL, no parameter for install_share, thanks Act from GLPI
         forum (http://www.glpi-project.org/forum/viewtopic.php?pid=107979#p107979)
       * Network.pm: drop the dependency on Net::SSLeay and IO::Socket::SSL,
         we don't need them (!)
         Fix: HTTP proxy with HTTPS
       * Network.pm: drop the dependency on Net::SSLeay and IO::Socket::SSL,
         we don't need them (!)
         Fix: HTTP proxy with HTTPS
       * Makefile.PL, no parameter for install_share, thanks Act from GLPI
         forum (http://www.glpi-project.org/forum/viewtopic.php?pid=107979#p107979)
       * Fix: don't ignore 0 values in the XML
       * MacOSX: don't use Mac::SysProfile to get memory info
       * Linux/i386: Igore empty CPU socket, thanks Sébastien Prud'homme,
         bug: #177
       * MacOSX: USB devices inventory
       * LInux/PC: Fix the core detection on multiCPU system
       * in tools:build-perl-tree.sh  download-perl-dependencies.sh
         merge-fusinv-with-perl-tree.sh and README are now in a new git
         repository 'agent-tools.git'
       * Linux + Lsilogic, avoid a warning if smartctl is installed
       * Linux Storage, parseUdev() use SERIALNUMBER _SHORT if avalaible

2.1_rc1 Sat, 26 Jun 2010
       * Add Windows support for 2000/XP/2003/Vista/2008/Seven
       * Windows: Add new values for SOFTWARES key
       * Add Windows service
       * disable --color for Windows for now
       * Collect Solaris process informations (Emengao)
       * VirtualMachine: Add Vserver.pm
       * VirtualMachine: Check is the status is correct
       * detect Slackware packages (David DURIEUX)
       * Libvirt.pm switch SUBSYSTEM and VMTYPE values.VMTYPE is "libvirt"
         now
       * Better error handling if it's not possible to create basevardir
       * Inventory: reduce the number of debug messages
       * Add DRIVES/SYSTEMDRIVE to know if it's the system partition
       * Inventory.pm, fix: addStorages is deprecred, not addStorage
       * Inventory.pm, addSection() is now deprecated and a warning is
         printed everytime the function is called
       * Linux/PC/CPU: set CPU name and detect CORE/THREAD
       * Stores environement variables
       * Bios, add ENCLOSURESERIAL BASEBOARDSERIAL and BIOSSERIAL keys
       * Identify USB devices (Windows, Linux)
       * --realm was two time in --help
       * LoggerBackend/Syslog.pm: fix https://bugs.launchpad.net/bugs/571655
         (Guillaume Rousse)
       * LoggerBackend/File.pm: don't reopen file descriptor for every new
         message (Guillaume Rousse)
       * Cups.pm: gets all installed printers and their drivers names
        (Aurelien Bondis)
       * ocsinventory-ng is not more the default server hostname, you've to
         set it yourself in agent.cfg
       * Inputs.pm: adds Inputs support for Linux clients (Aurelien Bondis)
       * Turns off interactive mode of GNU fdisk (Aurelien Bondis)
       * Add a few new PNP monitor IDs (Alex Mauer)
       * Makefile.PL: Define Perl 5.8 as the minimal version.
       * RPC: Add http://hostname:62354/status to get the current status of
         the agent
       * Add --rpc-trust-localhost
       * RPC: serve a basic page to present the agent
       * --html-dir parameter
       * Linux/Domains. Use Sys::Hostname to get the domain
       * Exit if no --server or --target is defined
       * Inventory: If two modules with the same name are found, only load
         the first
       * Linux/Storages: detect floppy and block devices (Amir PAKDEL)
       * Linux/Storages: don't attempt to run df on cdrom devices
         (Guillaume Rousse)
       * Linux/Storages: factorize redudant code for udev devices detection
         (Guillaume Rousse)
       * HP-UX numerous improvement (Amir PAKDEL)
       * Add NETWORKS/SPEED (in MB/s) (Amir PAKDEL)
       * HP-UX/Drives: Swapped "Type" and "File System" (Amir PAKDEL)
       * Inventory: POD doc for NETWORKS part
       * add --no-printer parameter
       * BSD: don't use uname to get the OSName, but $^O aka $SNAME
       * BSD: chomp() the number of CPU
       * HP RAID disk detection is now in Generic directory and so, can be
         used by Windows and probably HP-UX.
       * Linux: use blkid to get the partition serial number
       * Task: Add the Ping.pm module for debugging purpose
       * HTTP::Daemon::get_request is not thread safe and must be called from
         the master thread. The timeout is set at 5 seconds to avoid
         blockage
       * Linux: HP Integrated Lights-Out (iLO) (Management Interface of HP
         ProLiant servers) (Amir PAKDEL)
       * HP-UX: HP Management Processor (MP) (Management Interface of HP
         Integrity servers) (Amir PAKDEL)
       * Add --perl-bin-dir-in-path parameter for the Windows package
       * Collect Batteries information
       * Add --disable-perllib-envvar to be able to ignore PERLLIB and
         PERL5LIB envvar
       * turns off PERL5LIB envvar in win32-service
       * Get CONTROLLERS/PCISUBSYSTEMID
       * Simplify a lot Inventory.pm, add _addEntry() function
       * Do not set CPU Id as MBoard serial number anymore
       * XML: Only set the non empty field to decrease the final file
         size and improve the performance
       * Add a template config file in etc/agent.cfg
       * Add --conf-file=XXX parameter to allow the user to use another
         config file
       * Fix, allow dash in key name in config file
       * Rethink the script in ./tools, see ./tools/README
       * Inventory: use encode('UTF-8', $string) to reencode to UTF-8
         string detected invalide.
       * print help messages on STDERR
       * Linux: factorize redundant modules for non-LSB Linux distribution
         identification (Guillaume Rousse)
       * rewrite lshal and dmidecode parsing code for readability and
         efficiency (Guillaume Rousse)
       * don't test umask() result, it always succeed
       * don't test Sys::Hostname availability, it's a core module
       * RPC: ignore when socket::accept return an undef $socket
       * RPC: display the date of the next inventory planned
       * testing: test modules loading (Guillaume Rousse)
       * testing: test PBP compliance (Guillaume Rousse)
       * testing: test dmidecode and lshal parsing tests (Guillaume Rousse)
       * code cleanup: ensure consistent 4-spaces indentation step everyhwere
        (Guillaume Rousse)
       * code cleanup: use strict and warning pragmas everywhere
        (Guillaume Rousse)
       * code cleanup: use lexical file handles (Guillaume Rousse)
       * code cleanup: use 3-args open statement (Guillaume Rousse)
       * code cleanup: use block-style eval statement (Guillaume Rousse)
       * code cleanup: use english names for magic variables (Guillaume Rousse)
       * code cleanup: use explicit return statement (Guillaume Rousse)
       * code cleanup: ensure all opened file handles are proprely closed
        (Guillaume Rousse)
       * code cleanup: ensure all open failure are signaled to user with a
         meaningful message (Guillaume Rousse)
       * code cleanup: ensure object constructors can handle subclasses
         (Guillaume Rousse)
       * Linux/Storages: Rename addStorages to addStorage finally
       * Add Virtuozzo support (Jan JUNGMANN)
       * merge README file with the fusioninventory-agent POD documentation
       * File::Find is required
       * Add --html parameter
       * Improve --help presentation

2.0.7    Mon, 14 Jun 2010
       * Avoid a warning if --stdout is used.
       * print help messages on STDERR
       * --wait: no need to wait before the final exit
       * Inventory PROCESSES. Support more different date format and avoid
         warning

2.0.6    Fri, 28 May 2010
       * Fix DRIVES/CREATEDATE for ext* filesystem
       * Inventory: Always generate a CHECKSUM, OCS is not able to import
         inventory is the key is missing, thanks Eric Feron
       * Ipdiscover: Fix, wrong IP/MAC pair, thanks anto1ne
         https://bugs.launchpad.net/bugs/585753
       * Fix dmidecode version comparaison
         https://bugs.launchpad.net/ocsinventory-unix-agent/+bug/586321
         (Guillaume Rousse)
       * Mismatch between xen dom0 and xen PV host
         https://bugs.launchpad.net/ocsinventory-unix-agent/+bug/586337
         (Guillaume Rousse)

2.0.5    Wed, 12 May 2010
       * Don't use dmidecode with -t and -s parameter since it's not
         supported on RHEL4
       * Remove wrong code to detect problem with umask. umask(077) will
         returns the previous umask. In daemon mode, the umask is set to
         0 which was seen as an error code
       * Fix a minor typo in Storage.pm
       * daemon mode: don't change current directory to / if --devlib is
         on
       * Add MIME::Base64 as recommended package
       * A Fedora RPC spec file in contrib/fedora (Remi COLLET)
       * RPC: drop the sleep(1) before every new request
       * RPC: avoid threads::running to keep compatiblity with Perl < 5.10
       * SSL: --ca-cert-file correctly detect if the cert is present
       * Don't use ExtUtils::Installed to identify the installed files,
         ExtUtils::Installed looks all the @INC directory for .pack files,
         including '.'. When the agent was launched by a cron task or in
         daemon mode, the current directory is / and so the whole system was
         scanned, thank you Remi COLLET for pointing this issue.
       * BIOS: correctly set SMANUFACTURER and SSN instead of
         SMANUFACTURERSSN

2.0.4    Thu, 06 May 2010
       * Add debug message on WOL and correction when no mac address comes
         in xml file from server (David DURIEUX)
       * etc/cron.d/fusioninventory-agent, call fusioninventory-agent
         instead of ocsinventory-agent
       * limit the number of RPC connection, and fix the Win32 issue
       * Restore --wait XXX
       * Fix --wait documentation.
       * Avoid an error with --lazy, thanks Remi Collet
       * Bump "Next server contact planned for ..." message severity from
         debug to info

2.0.3     Sun, 11 Apr 2010
       * Fix a syntax problem in FusionInventory::Agent::Network

2.0.2     Sat Apr 10
       * fusioninventory-agent-config: Fix a typo, thank you Act
       * --delaytime really read the parameter, thanks Walid NOUH
       * fix --no-socket
       * Fix a typo in fusioninventory-agent-config, logtotate (Girish NAVUDA)
       * Fix: between two server query, really wait during a random period
         still based on server PROLOG_FREQ
       * Do not load Crypt::SSLeay and IO::Socket::SSL at the same
       * POD doc, explain how to use more than one server
       * Fix: between two server query, really wait during a random period
         still based on server PROLOG_FREQ
       * SNMP.pm: Correct bug when oid result is pack and put mac in right format
         (David DURIEUX)
       * Set 2.0.1 release date in Changes file

2.0.1 (Solarium)    Sun, 28 Mar 2010
       * tools/build-perl-tree.sh: clean up
       * Only use thread if Perl has got thread support, thank you
         Lei Andy Shi for the bug report (LP: #545477)
       * -D/-d avoid unless loop if --local is used too
       * RPC: correctly initialize $logger in new()
       * Add a warning for the Storage.pm breakage with pre 2.0 tasks
       * SNMP.pm: fixes (David DURIEUX)

2.0 (Zygotene Bouquet)   Tue, 23 Mar 2010
       * OcsDeploy: avoid a warning when the server don't send DOWNLOAD
         option
       * Drop the Net::Walk dependency
       * README, add File::Copy::Recursive in the list of dependency
       * OcsDeploy: use 'df -Pm' to get a consistent output with GNU tools
       * Task exec: Log the errcode return by the system()
       * Debug: do not drop the FusionInventory-Agent.dump to help debbuging
       * VERSION is not defined in $FusionInventory::Agent::VERSION
       * README: Clean up
       * Storage: Use only hashref to pass arguments
       * SNMPQuery: translate in english some comments
       * FusionInventory::Agent::Task::{OcsDeploy,NetDiscovery,SNMPQuery} are now
         maintained in new sub-projects
         - drop their dependencies in Makefile.PL
       * backport a fix from ocsinventory in fusioninventory-agent-config to fix a typo
         thanks Guillaume PROTET and Jean-Sebastien NORMAND
         ocsinventor-agent → ocsinventory-agent
       * Don't try to parse empty response from server
       * fusioninventory-agent-config: RPM/DEB mode turn off by default
       * Check if the module is installed before the execution
       * fusioninventory-agent-config: add a minimalist POD doc
       * FusionInventory::Agent::RPC add POD documentation
       * Network.pm: Load LWP::UserAgent and HTTP::Status in an eval to get these
         dependencies loaded only when needed
       * Makefile.PL add Net::CUPS is recommended
       * Linux, retrieve the PCI Class

2.0beta4 Thu, 04 Mar 2010
       * Drop the dependency on Net::SSLGlue::LWP because its own dependencies
         are not avalaible on RHEL5.x, thank you Remi Collet for pointing
         this issue.
       * Makefile.PL: suggest IO::Socket::SSL for SSL
       * Drop the Dependency on LWP::Simple
       * RPC: Do not die if client send random data
       * HP-UX: Use can_run to know if machinfo if avalaible  (François MERMET)
       * HP-UX: code clean up  (François MERMET)
       * Net::IP is now required.
       * OcsDeploy: Fix 2 malformed regex, thank you Mario Gzuk
       * OcsDeploy: avoid a warning if $rc in unset on Perl 5.8
       * OcsDeploy: Archive::Extract is just recommended now
       * Network: load HTTP::Status
       * standalone.sh dropped, was deprecated with the 2.0 changes
       * Do not ignore --server if --local is present
       * Inventory: No need to generate in local mode
       * Inventory: create one last_state file per server
       * Inventory: save last_state if server send a response
       * Storage: use umask 077 for stored files
       * Target and Logger: fix the lock, use a global var now
       * Inventory: Set the VERSIONCLIENT XML key
       * HPUX: Software, fix the package name
       * MacOSX, move the MacOSX packing files from the main branch to
         lp:fusioninventory-agent/macosx
       * SNMPQUERY : Update Dico to known new devices (David DURIEUX)
       * SNMPQUERY : Corrections of ports, mac address and other things (David DURIEUX)
       * NETDISCOVERY : Correction of NMAP discovery (David DURIEUX)
       * NETDISCOVERY : Correction of many bugs (empty devices, data send to server...) (David DURIEUX)
       * rename FusionInventory::Agent::Task::NetDiscovery::dico in FusionInventory::Agent::Task::NetDiscovery::Dico;
       * WAKEONLAN : Begin to rewrite good WOL, so send magic packet directly on OSI2 of network card (ONLY FOR LINUX UNDER ROOT) (David DURIEUX)

2.0beta3 Mon, 22 Feb 2010
       * README: clean up
       * Do not use IPC::Run, thanks Mario Gzuk
       * Fix --local
       * fix: Invalid type 'W' in pack in RPC.pm, thanks Mario Gzuk
       * HP-UX: fix the module. They'd been broken during the merge
       * Turns Off FusionInventory::Agent::Storage
       * Correctly checks if $basevardir exist (-d instead of -f)
       * --no-ssl-check, show warning just one time
       * Libvirt.pm: ignore stderr
       * HP-UX: Fix CPU/serial detection on HP-UX 11.31 (Marty RIEDLING)
       * POD documentation for FusionInventory::Agent::Network
       * POD documentation clean in FusionInventory::Agent::XML::Query::Inventory
       * POD documentation for FusionInventory::Agent::XML::Query::SimpleMessage
       * Linux: Handle channel bonding interfaces (Stéphane URBANOVSKI)
       * XML: clean up addNetwork (Stéphane URBANOVSKI)
       * CPU: Add CORE/THREAD
       * Inventory: use the standard Inventory object
       * Inventory: correctly save OcsDeploy package ID
       * NetDiscover/SNMP: Various changes (David DURIEUX)

2.0beta2 Wed, 17 Feb 2010
       * Update dico for detected devices in NETDISCOVERY module
         (David DURIEUX)
       * Changes file clean up

2.0beta1 Wed, 17 Feb 2010
       * Use Sys::Hostname instead of uname for better portability
       * add --daemon-no-fork
       * post-install.pl: Don't ask the user if Download.pm should be
         enabled
       * Drop the linux_agent modules compatibility layer
       * Rename module hook functions:
          check()    → isInventoryEnabled()
          run()      → doInventory()
          longRun()  → postInventory()
       * Add isPostInventoryEnabled() function
       * Drop AccountConfig. replaced by Storage
       * Move Ocsinventory::Agent::XML::{Inventory,Prolog,SimpleMessage} in
         Ocsinventory::Agent::XML::Query
       * WakeOnLan support (David DURIEUX)
       * Ocsinventory renamed to FusionInventory
       * OcsDeply jull rewrite
       *  P2P mode in daemon mode (-d or -D)
       * add --rpc-ip
       * SNMP support (David DURIEUX)
       * Network discovery (David DURIEUX)
       * WakeOnLan (David DURIEUX)
       * postinst.pl is now and is installed in the $PATH
       * Solaris: use regex to identify CPU class (Jerome LEBAS)
       * Solaris/Network: support Zone (Jerome LEBAS)
       * HP-UX: initial support, tested on RP3440 (François MERMET)
       * Changed arguments to dpkg-query for compatibility (Scott HANNAHS)
       * MacOSX: Distinguish clearly between "OS Name" and "System Version" by
         parsing output carefully for both variables. Clean up language in
         description. (Scott HANNAHS)
       * Add an in contrib example of script to identify specific software
         (Simon CLARA)
       * Upgrade memconf to V2.13
       * Use parameters to simplify the way dmidecode is called (Dmitry ILYIN)
       * Solaris: Bonding support (Stéphane URBANOVSKI)
       * Remove exec flag on
         lib/Ocsinventory/Agent/Backend/OS/MacOS/Hostname.pm (Remi COLLET)
       * spelling in manpage authentification → authentication
       * MacOSX: Correctly identify the CPU frequency on MacOSX 1.6 French,
         thanks Grek
       * Improve the README about non-interactive installation
       * Bump copyright date from 2009 to 2010
       * Linux/PPC: Frequency is an integer, not a float
       * run dosfslabel on the correct device
       * Nmap: Check ip send by server

1.1.2    Sun, 27 Dec 2009
       * Avoid problem with dmidecode -V output on RHEL3.9 (Remi COLLET)
       * Fix internal --delaytime handling. That's seconds, not hours!
       * Download.pm: improve a error message

1.1.1    Mon, 21 Dec 2009
       * NETWORKS/VIRTUALDEV should be 1 or 0
       * FreeBSD: Fix CPU detection (David DURIEUX)
       * Virtualization::Qemu, fix kvm detection
       * Don't run brctl if it's not installed
       * Various wording fixes (Vincent KNECHT)
       * Improve README (Barius DRUBECK)
       * Get serial number from ext4 partition if ext4dev driver is used
       * LP: #494908 Agent fails to retrieve info file when a package is
         activated only with the server name (Pascal DANEK)
       * LP: #495398 Fix RedHat version detection (Stéphane URBANOVSKI)
       * Improve README (Barius DRUBECK)
       * LP: #490774 Fix PowerPC CPU detection on Linux, thanks darkpep for
         the bug report

1.1     Fri, 06 Nov 2009
       * addMemorie() renamed to addMemories(), this had been broken during
         the addMemories() → addMemory() transition
       * Debug mode: msg "check function failed" changed to "ignored" since
         the fails may be wanted by the check() function
       * CompatibilityLayer: $self->{params} changed to $self->{config},
         this restore the debug mode in Download.pm
       * Continue XML::Inventory functions name clean up. Rename:
        - addSlots() calls to addSlot()
        - addMemories() calls to addMemory()
       * Move ocsinventory-agent POD documentation frol Ocsinventory::Agent
         to the ocsinventory-agent shell script. So now the manpage has the
         correct name
       * Fix RPM output parsing (Remi COLLET)
       * VMWareESX: avoid breakage is VM has spaces in its name
         (Christian Michallek)
       * Try to detect kvm --uuid value
       * Makefile.PL, check for Net::SSLeay
       * Move Ocsinventory::Agent in a .pm and add a wrapper script to load
         in order to by able to process --devlib
       * Parallels.pm: doesn't use sudo anymore and check for
         --scan-homedirs
       * Prune 'Mac OS X' from the version on Mac + typo fixes (Scott HANNAHS)
       * POD doc, add a paragraph about the config file
       * LP: #462529, Fix EDID screen detection, thanks Sergio MERINO
       * Use boolean for networks/virtualdev
       * Generic/Screen: chomp uuencode output
       * Generic/Screen: HSD code for "Hanns.G" (Remi COLLET)
       * postinst.pl, put user $PATH in /etc/cron.d/ocsinventory-agent

1.1_beta1    Fri, 18 Sep 2009
       * Can use Net::CUPS to find the default printer
       * AIX: Hide procfs in Filesystem
       * OS::Linux::Storages, correctly retrieve the serial (Vladimir ELISSEEV)
       * load $http_proxy env settings and --proxy option is available
       * Add OS::Linux::Distro::NonLSB::ArchLinux (Julien SAFAR)
       * New Backend OS::Generic::Processes
       * Linux/BSD: detect DNS servers config
       * Solaris: Better output for $OSVErsion (Vladimir ELISSEEV)
       * Solaris: Sun Fire T1000 patches for memory (Vladimir ELISSEEV)
       * Solaris: memory SPARC Enterprise T5220 (Vladimir ELISSEEV)
       * Solaris: CPU SPARC Enterprise T5220 (Vladimir ELISSEEV)
       * Solaris: CPU SPARC Enterprise T5220 (Vladimir ELISSEEV)
       * Linux: split the /proc/cpuinfo parsing depending on the arch
       * Linux: drop Linux::Controllers which is duplicated with
         Generic::Lspci::Controllers (Vladimir ELISSEEV)
       * AIX: Various fixes in Memory.pm (Sebastien DAGNICOURT)
       * AIX: Storages.pm, Virtual disks support and fixes (Sebastien DAGNICOURT)
       * Backend.pm: Bump the default timeout from 30 to 180 secondes
       * Agent/XML/Inventory: Fix when version == 0, bug found by neisen
       * AIX: device type adjustment (Sebastien DAGNICOURT)
       * Solaris: Sun-Fire-V440 support (Sebastien DAGNICOURT)
       * Add a missing space is the name banner in --debug mode
       * Agent/XML/Inventory.pm: Add FROM and INSTALLDATE fields in software
         list and LASTLOGGEDUSER DATELASTLOGGEDUSER
         in HARDWARE (Nicolas EISEN)
       * Initialize etcdir key even if there is no config file
       * CompatibilityLayer: correctly set $debug
       * CompatibilityLayer: better log messages
       * getOptionInfoByName return an array ref now
       * rename getOptionInfoByName to getOptionsInfoByName
       * --debug print the XML on STDERR
       * Rename the params key to config to avoid ambiguity
         with $params
       * set HARDWARE/DEFAULTGATEWAY (Nicolas EISEN)
       * RPM: collect the install date and the size (Nicolas EISEN)
       * Linux: Collect LASTLOGGEDUSER and DATELASTLOGGEDUSER (Nicolas EISEN)
       * DPKG: collect the Installed-Size (Nicolas EISEN)
       * Linux: Collect the ext{2,3,4} and xfs serial number
       * Linux: Collect the ext{2,3,4} creation date
       * Add a warning when no certificat is found
       * Turns off alarm once it's backend run is finish
       * Fix the IPMI module detection
       * Linux: Store the PCISLOT and the driver name
       * NETWORKDS, only store Networks with an address
       * Linux: detect virtual network device
       * Linux: Store CONTROLLERS/DRIVER and CONTROLLERS/PCISLOT
       * Linux: Collects xfs, ext{2,3,4} and vfat label
       * runs the backend module from main() it's possible to
         reuse the Backend object.
       * Linux: filter non standard MAC address returned by ifconfig like
         00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 mac
       * Linux: Fix the Uptime check()
       * Preliminary libvirt support
       * Partial rewrite of the Download.pm backend
       * Add a warning if the user is no root, thanks Nicolas EISEN and
         Sylvain LUCE
       * SPARC-Enterprise M4000 and M5000 support (Sylvain LUCE)
       * Libvirt: collect VCPU info (Philippe LIBAT)
       * Add Virtualization::Xen module (Philippe LIBAT)
       * Solaris: add a warning if memconf is not in $PATH
       * Switch the XML content from ISO-8859-1 to UTF-8, BTW we force
         LC_ALL=C...
       * Fix the history flood in Download.pm (Pascal DANEK)
         https://sourceforge.net/tracker/index.php?func=detail&aid=2806585&group_id=58373&atid=487492
       * Stores PCIID in CONTROLLERS/PCIID
       * Storage the monitor EDID string in BASE64 and UUENCODE
       * Linux: Storages: reorganize the code base and use lshal
       * Linux: Drives, complete inforamtions with lshal (Nicolas EISEN)
       * Linux: fix the PowerPC CPU detection
         https://sourceforge.net/tracker/?func=detail&atid=487492&aid=2043221&group_id=58373
       * Warns the user during the install process if one of
         the recommended module is not installed
       * Update out copy of memconf, thanks WeatherDave who notified the new
         revision and of course Tom Schmidt who do a great job
       * MacOSX: Avoid a scalar used has hash ref error, thanks Adadov
       * Save VIDEOS/MEMORY and VIDEOS/RESOLUTION
       * MacOSX: Correctilly detect Up/Down network interfaces
         (David OLIVIER)
       * AddNetwork() doesn't ignore network with no IP address
         (David OLIVIER)
       * add --backend-collect-timeout parameter (Nicolas EISEN)
       * MacOSX: convert the IP mask from hex (David OLIVIER)
       * MacOSX: add a workaround to avoid Mac::SysProfile failure on
         MacOSX 10.5.7 (David OLIVIER)
       * Add Virtualization::VirtualBox module (Nicolas EISEN)
       * Add Virtualization::Qemu module (Nicolas EISEN)
       * Add Virtualization::Vmsystem module (Nicolas EISEN)
       * Better smartctl detection (Nicolas EISEN)
       * optimization and vm users detection Virtualization::VirtualBox (Nicolas EISEN)
       * Add Virtualization::VmwareFusion module (Walid NOUH)
       * Don't use hdparm prior 9.2.2 anymore to avoid crap in kernel log, see
         http://forums.ocsinventory-ng.org/viewtopic.php?pid=20768
       * Correctly detect ipmitool
       * Solaris: i86pc Memory support (Jean-François BOUCHER)
       * Solaris Zone support (Maurizio BERTABONI)
       * Always send tag, even if server already has one
       * Add the byHand software collect method (Sébastien DAGNICOURT)
       * add logging to can_read(), can_load() and can_run()
       * use addUser() instead of setHardware()
       * Add the runcmd() in the Backend modules

1.0.1    Sun, 22 Mar 2009
       * Fix a typo in Ocsinventory::Agent::Backend::OS::AIX::Memory

1.0    Sun, 22 Mar 2009
       * Hide warning messages when tw_cli or hpacucli are not present on CentOS
       * Avoid unnecessary about missing 'http://' in local mode
       * Ipmi.pm: use can_run do detect ipmitool
       * LSB.pm: properly use can_run
       * Avoid a warning in CompatibilityLayer.pm in local mode
       * Improve the README file
       * Avoid a warning at runtime if rpm is not correctly installed
       * BSD: Detect AMD64 arch (David DURIEUX)
       * HP.pm: force detection even if slot 1 is 0 (Remi COLLET)
       * HP.pm minor clean up + indentation
       * HP.pm send the $model as NAME to avoid NAME == 'unknown' (Remi COLLET)
       * New backend module ServeRaid for IBM ServeRAID card (Remi COLLET)
       * Linux::Storages, fix the hdparm call (Remi COLLET)
       * OS::Generic::Dmidecode::Bios, fix for RHEL2 dmidecode (Remi COLLET)
       * launch backend modules with a 30sec timeout
       * post-inst.pl: use prompt() from ExtUtils::MakeMaker to avoid
         unexpected error with cpan
       * avoid the "No LSB modules are available." warning message
       * Backend: --debug print a warning when arun() function is not found
       * Fix the Debian/Ubuntu detection for non lsb system
       * postinst.pl also drop /etc/cron.d/ocsinventory-client is the user
         want to drop the old linux_agent
       * Backend::OS::Solaris::Memory: use the Logger instead of "print"
       * Solaris: Drop unwanted spaces around OSVERSION and STORAGES/DESCRIPTION
       * Solaris: Avoid warning is the user can't use fstyp
       * MANIFEST.SKIP: ignore .git/ and .gitignore
       * add a workaround for http://rt.cpan.org/Ticket/Display.html?id=38067
       * build-perl-tree.sh use cpanp and perl 5.10 now
       * Backend.pm: do a eval around require File::Find
       * Add a workaround to find the backend modules for PAR::Packer
       * Backend.pm: internal change, now do eval 'use $pmodule' instead of require
       * fix serialnum detection in Lsilogic.pm and Adaptec.pm (Edouard GAMIN)
       * Makefile.PL: drop wait(), not used
       * Makefile.PL: fix a syntax error
       * add tools/makedist.sh to document the workaround used to avoid
         http://rt.cpan.org/Public/Bug/Display.html?id=43060
       * Fix --logfile=/somewhere.log, see
         http://forums.ocsinventory-ng.org/viewtopic.php?id=3092
       * tools/build-perl-tree.sh, add a new script
       * Don't print ugly error if next_timefile can't be saved
       * OS::Linux::Domains, improve the way it deals with multiple
         domaine entries (Remi COLLET)
       * AIX: Record the last memory Slot (Wilfried BRUNKEN)
         http://sourceforge.net/tracker/?func=detail&atid=487492&aid=2350694&group_id=58373
       * Bump 0.0.10 to 1.0 because it's the first release to be officially part
         of the OCSInventory distribution

0.0.10beta2    Wed, 24 Sep 2008
       * README: add a not about the $PATH varible on Solaris.
       * Added extra section support for backends (Pascal DANEK)
       * Fix the way submodules are disabled with $runMeIfTheseChecksFailed
       * Linux: Use lsb_release if presents to detect the OS, this will fix
         the Ubuntu detection
       * Hide a Perl warning if the agent is run by the user want the last_state
         file is missing
       * Add Ipmi backend module (Jean PARPAILLON)
       * Drop the control characters from the inventory XML
         https://sourceforge.net/tracker/index.php?func=detail&aid=2100606&group_id=58373&atid=487492
       * Apply a little change in standalone.sh that may fix the ParserDetails.ini problem,
         thanks tharoun

0.0.10beta1    Thu, 04 Sep 2008
       * Fix a "ocs server name" => URI side effect (Pascal DANEK)
       * Download::Store: used absolute path to "cp" on STORE action (Pascal DANEK)
       * Download::Store: set -dpR flags to "cp" (Pascal DANEK)
       * Solaris: Replaced hostid in serialnumber by real serialnumber (Nicolas DORFSMAN)
                  (SUNWsneep becomes mandatory on sparc)
       * Solaris: Return only one IP address (trying to guess which one corresponds to hostname) (Nicolas DORFSMAN)
       * Solaris: return disks SERIALNUMBER and FIRMWARE as XML fields (Nicolas DORFSMAN)
       * Redirection and stderr issue on Solaris (Nicolas DORFSMAN)
         - Removed close of stderr fd
         - Modified lspci and screen check() to avoid pollution of stdout/stderr
       * fix the previous changelog entry, the 0.0.9.1 fix had been done by Nicolas DORFSMAN
       * postinst.pl checks for MANIFEST present
       * improve the backend module detection by also scanning the symlinked directory
       * add the --devlib flag to load ./lib only if wanted and remove '.' from the directory to scan
         with File::Find.
       * import the can_run, can_load and can_read functions in the Backend modules
       * the backend module can have no check function, in this case OCS assume it's ok
       * apply a patch by Etienne GUILLAUMONT to fix CPU detection on AIX 4
       * standalone.sh checks PAR::Packer presence now
       * only inventory installed .deb
       * postinst.pl: accept another vardir if the first one was invalide
         https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1961771&group_id=58373
       * postinst.pl Download.pm correctly actived in modules.conf is the user needs it
       * add MacOSX support thanks to Wes YOUNG (Wes YOUNG)
         - Added tools/darwin/ support scripts/code for OS X enterprise deployment
       * add the follow_skip==2 flag to File::Find in Backend.pm so it doesn't detect the same
         file two time
       * import of backend module for RAID controler on Linux (3ware, Adaptec, HP and Lsilogic)
         (Edouard GAMIN)
       * remove a warning in Debug mod, if a backend module has no run() function
       * don't crash in Daemon mode if the server is unreachable (Wes YOUNG)
       * Net::IP is just (strongly) suggested now
       * fix --basevardir so it really accepts a parameter, thanks Gubluts from the forum who
         pointed out the bug
       * postinst.pl use which to find ocsinventory-agent location
       * Makefile.PL, Perl 5.6 doesn't have Config::config_re, I call it from an eval now
       * Added --delaytime option as commandline / .cfg file adjustable (Wes YOUNG)
       * standalone.sh, don't use grep -v since it's not POSIX
       * doesn't die if Storable.pm is missing like with perl 5.6
       * avoid a warning with gzip -h on AIX if Compress::Zlib is missing
       * README: depends on Perl 5.8
       * README: On solaris the Makefile needs gmake
       * README: Add a note about crontab and PATH
       * Linux: redirect hdparm error to /dev/null
       * postinst.pl yes/no questions have a default value now
       * postinst.pl fix a bug in the import of the old ocsinv.adm
         https://sourceforge.net/tracker/index.php?func=detail&aid=1991668&group_id=58373&atid=487492
       * postinst.pl doesn't create two vardir directories anymore
       * do not print a wrning is --nosoftware is used. Thanks Knarfling and Remi who pointed the issue
         out.
         http://forums.ocsinventory-ng.org/viewtopic.php?pid=12569
       * fix the POD documentation, some mistakes were detected by Perl 5.10's perldoc.
       * the agent doesn't crash anymore if ocsinv.adm or ocsinv.conf is corrupted
       * Makefile.pl: install memconf on Solaris
       * Solaris: apply patches to use memconf for CPU, Drives and Memory (Christoph HALMES)

0.0.9.2 04/18/2008 Bug fix
       * Add /ocsinventory in the server path if the user enter just the hostname
         https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1945865&group_id=58373

0.0.9.1 04/03/2008 Bug fix
       * fix a error in the previous release that was forcing the local mode (Nicolas DORFSMAN)
         https://sourceforge.net/tracker/?func=detail&atid=487492&aid=1945863&group_id=58373

0.0.9 04/01/2008 April Fool release!
       * Added fallback for --lazy if no prolog freq was found and server error (Pascal DANEK)
       * Fixed accountinfos handling bugs (Pascal DANEK)
       * Changed --wait behaviour (--wait=number_of_seconds || "server") (Pascal DANEK)
       * PROLOG_FREQ is handled in prolog phase (Pascal DANEK)
       * the random value for file_nexttime is computed only if prolog_freq has changed since last prolog (Pascal DANEK)
       * import the documentation documentation by adding a description of the
         agent and pointer to the official website
       * --nosoft option renamed to --nosoftware, --nosoft still works but with a warning
       * add --basevardir to be able to use a specific place to store the var file
       * add the --lazy parameter: send an inventory only if the a random delay between 0 and PROLOG_FREQ had been run over. Usefull for package maintainer (Remi COLLET)
       * return 1 to the shell is the agent failed to contact the server
       * postinst.pl asks for the basevardir
       * postinst.pl write the modules.conf
       * OS::Linux::Network::Networks, correctly reset the ipaddress before every loop so
         now a network can't have the address of the previous one
       * rename the key $params->{conffile} to $params->{accountconfig}
       * fix the way accountinfo information are stored
       * improve (a bit) tools/standalone.sh to avoid error if people launch it
         from the tools directory
       * --server is ignore if --local is in use
       * adjust Backend::OS::Generic::Screen to be able to use monitor-edid with DVI link (Remi COLLET)
       * OS::Linux::Storages, add NEC as a know manufacturer add assume the manifacturer is Seagate if
         the model doesn't match the others and begin with ST (rjhill)
       * fix the CPU detection on Linux Sparc64 and ARM (Linksys NSLU2)
       * improve the Solaris version detection by reading the /etc/release file (Nicolas DORFSMAN)
       * Solaris: fix the MAC addresses when the leading zeros is missing (Jean-Jacques MICHEL)
       * Solaris: Add publisher is possible in the software list (Nicolas DORFSMAN)
       * Solaris: improve the hard drive detection (Nicolas DORFSMAN)
       * postinst.pl can remove the previous linux_agent
       * postinst.pl reuse linux_agent old config file to set the default server and tag
       * return the SERIALNUMBER and the FIRMWARE on Linux with hdparm, the feature is not supported
         yet by the server (egamin)

0.0.8.1 02/20/2008
       * postinst.pl, correctly save the realm, do not override the password
       * Added "CAPTION" field to memory (Pascal DANEK)
       * Fix a bug with "NUMSLOTS" memory field (Pascal DANEK)
       * improve the parsing of the config file to accept quote and spaces in the value
       * postinst.pl save the configfile with 0600 right since the server
         password maybe be stored in it
       * standalone.sh doesn't scan the inc/ directory anymore
       * remove the BUNDLE packages which seem to break the install process
       * change Solaris::CPU to use psrinfo -v to get the CPUs which works fine on x86
       * fix a path error in Ocsinventory::LoggerBackend::File (Remi COLLET)
       * fix: don't send the inventory if the server doesn't need it (Remi COLLET)

0.0.8 02/05/2008
       * fix the deviceid and old_deviceid handling (Pascal DANEK)
       * fix a debug message in Network.pm (Pascal DANEK)
       * different fixes on Compress.pm (Pascal DANEK)
       * fix an event message name in Option/Download.pm (Pascal DANEK)
       * fix the Compatibility Layer with prolog_read hook (Pascal DANEK)
       * merge PowerPC and PC code to detect the CPU and improve/fix the regex
       * looks for config file in /etc/ocsinventory /usr/local/etc/ocsinventory and
         /etc/ocsinventory-agent
       * add a pod documentation about the different config files and directories
       * Compress::Zlib is required but recommended now. In fact, you need it with
         ocs server prior 1.02

0.0.7.2 01/16/2008
       * fix the post installation script to avoid invalid cron time

0.0.7.1 01/14/2008
       * add setup.sh in the MANIFEST.SKIP to keep it out of the tarball

0.0.7 01/13/2008
       * Ocsinventory::Agent::AccountInfo does not warn accountinfofile if runned in debug mode
         without root privilege
       * fix params->{etcdir} to /etc/ocsinventory, /etc/ocsinventory-agent/modules.conf must be moved
         to /etc/ocsinventory/modules.conf
       * Solaris: Improve the CPU detection (Olivier ROUSSY)
       * AIX: Return the directory with the AIX package name (Olivier ROUSSY)
       * Ocsinventory::Agent::XML::Inventory can now write software inventory
         value of FILESIZE, FOLDER and PUBLISHER
       * processChecksum() and feedInventory() are called by Ocsinventory::Agent::XML::Inventory
         directly now
       * the server responses are not parsed in the main script anymore
       * do not create an inventory if the server doesnn't need it
       * new parameters for the backend modules (run and check functions):
         - prologresp, the Ocsinventory::Agent::XML::Response::Prolog object returned by
           the prolog
         - storage: an hashref stored on the harddrive at the end of the execution of the module
       * a backend module without a run function is accepted now
       * Inventory.pm: add addIpDiscoverEntry() to add host from the same network
       * @runMeIfTheseChecksFailed: new optional setting for Backend module
       * Ipdiscover is now a backend module and nmap can be used instead of ipdiscover
       * --nosoft disable the Ocsinventory::Agent::Backend::OS::Generic::Packaging modules
       * Remove the deprecated modules Ocsinventory::Agent::Option::Ipdiscover and
            Ocsinventory::Agent::Option::Update
       * the check function of the backend accepts the same parameter than the run function
       * Linux::Archs::I386 regex are more robust
       * perldoc documentation for the ocsinventory-agent command
       * minor improvment on the Makefile.PL
       * change the way --server parameter is read. Now we can have a full URL, --remotedir
         is now useless
       * fix: correctly load the last_state
       * improve the Makefile.PL by using inc::Module::Install and adding new check
       * add a --version parameter and improve the --help
       * come with bundled dependency to simply the build process
       * fix the login/passwd/realm authentification
       * remove Agent/Pid.pm, I've to prepare a better system to keep the pid first
       * try to read the config in /usr/local/etc/ocsinventory/ocsinventory-agent.cfg if the
         standard one is missing

0.0.6.2 07/16/2007 Bug fix release

       * remove a debug "die" in the code

0.0.6.1 06/12/2007 Bug fix release
       * Fix an undef value in Ocsinventory::Agent::Backend::OS::BSD::Mem
       * AIX: retrieve correctly the MAC address of some FibberChannel card
       * now standalone.sh will try to find every module before the build to
         avoid unexplicated error

0.0.6  06/07/2007
       * Enable "verbose" is debug is turned on
       * AIX: Ocsinventory::Agent::Backend::OS::AIX::Networks rewrote
       * AIX: Memory.pm, remove the spaces from the end of the DESCRIPTION
       * add standalone.sh, a script designed to prepare a stand-alone binary of the agent
       * AIX: Retrieve all the gateway of every subnet instead of just the default one
       * Config.pm renamed to AccountConfig.pm
       * New flag: --stdout to print the inventory directly on STDOUT
       * If the use want write on the system var directory, the agent create one in
         ~/.ocsinventory/var
       * The agent setting can be preinitialised with /etc/ocsinventory/ocsinventory-agent.cfg or
         ~/ocsinventory/ocsinventory-agent.cfg.
       * remove two debug messages printed during accountinfo rewrite and the
         daemon starting process
       * remove a stupid check in Ocsinventory::Agent::AccountConfig, the
         accountconfig file was not written unless the file was already present
       * add a recMkdir function in ocsinventory-agent to create directory recursivly
       * do not process checksum in local mode

0.0.5  04/17/2007
       * AIX: use lslpp -c -l to find installed packages
       * AIX: fixes on CPU.pm, Networks.pm and Memory.pm
       * AIX: fetch the serial number with lscfg unless it was found with lsvpd
       * add the .ocs extension to local written files
       * with --local flag: don't not warn if last_state doesn't exit
       * Solaris: retrieve installed package
       * downgrade some message important from info to debug
       * read screen serial number in the EDID (DDC screen)
       * Xorg.pm replaced by Screen.pm
       * Screen.pm all the data are read from EDID now
       * Initial Linux PPC support (tested in Debian Etch).
         thanks Walid Nouh for the hardware
       * Apply patch by Remi Collet to fix an issue with Linux distro detection and Perl 5.6.1
       * Turn of STDERR during the module execution to avoid useless message (e.g: foo: not found)
         use --debug to turn them back
       * If the system side vardir can't be created. The agent try to create one in ~/.ocs-inventory-agent
       * Add a THANKS file

0.0.4 03/20/2007
       * use of gzip when Compress:Zlib is not avalaible. OCS server 1.01 and
         prior are not supported.
       * dmidecode parsing improved
       * lspci stuffs moved to generic
       * Linux: find Wifi connection
       * fix: pass correctly the logger to the modules
       * don't write the last_state is the connexion failed
       * Deals correctly with the accountinfo if it's internaly stored in a
         array ref
       * BSD support by Thierry Lacoste