# Change Log

## 2.0.0 alpha 2 20/10/2016
* Return md5sum and filesize in the list of images
* Disable binding to an IPV6
* Support symbol None (from old versions)
* Support named remote servers for VPCS
* Improve vmrun error messages
* If vmware raise an error about invalid host type we retry with player
* Do not trust client for the type of VMware host
* Improve error when default vm directory is not found
* Add a clear warning about /upload deprecated
* /duplicate support non opened projects
* Fix Snapshot restore does not work with IOS routers
* Use last zipstream version
* Strip space from all nodes names
* When checking for a free port check if the host and 0.0.0.0 are available
* If listen on all interface do not return localhost as console
* Fix HTTP console not working for docker containers
* Fix IPV6 server support
* Fix connection issue with IOU when a device as serial link
* Catch an error when docker is not running
* If docker container state failed to return we consider the container stopped
* Fix Error when converting some dynamips topologies from 1.3 => 2.0
* After conversion from 1.X check the topology before save to disk
* Keep forever .gns3 backup before version upgrade
* Update crash report key
* Fix save of topology size
* Missing busybox for docker
* GNS3 server can't be keep as zipped egg
* Check if GNS3 has access to all docker resssources
* Return the platform of a compute
* Handle errors when startup config path is wrong
* smm=off is only for 64bits
* Fix uploads of large images
* Stop raising error if VMware has not enough ram. Not working on some system
* Increase creation timeout for docker container
* Fix a rare crash in vbox
* Fix errors where free port as marked as used after an error
* Fix a bug when selecting a topology and deleting multiple linked device
* Set Qemu uuid for csr1000v
* Prevent connect a node to himself
* Fix BadZipFile: File is not a zip file
* The gns3_controller.conf is located in the same directory of gns3_server.conf
* Make sure the compute has an id
* Fix crash if you manually delete the project directory and use the delete button in interface
* Catch timeout error when closing project
* Fix a crash when importing some old topologies.
* Fix a crash if font information is missing

## 2.0.0 alpha 1 29/09/2016
* Save as you go
* Smart packet capture
* Capture on any link between any node
* Select where to run a VPCS node
* Delete a project from the GUI
* Project options
* The cloud is a real node
* Cloud templates
* New cloud interface
* VPCS / Ethernet Switch / Ethernet Hub templates
* Search OS images in multiple locations
* Periodic extraction of startup configs for Dynamips and IOU
* Custom cloud, Ethernet hub and Ethernet switch templates
* Snap to grid for all objects
* Synchronize the node templates when using multiple GUI
* Link label style
* New place holders in command line for opening consoles
* %i will be replaced by the project UUID
* %c will be replaced by the connection string
* Export a portable project from multiple remote servers
* New save as
* Snapshots with remote servers
* Better start / stop / suspend all nodes
* Edit config
* NAT node
* Support for colorblind users
* Support for non local server
* Support for profiles
* Suspend the GNS3VM when closing GNS3
* Edit the scene size
* New API


## 1.5.2 18/08/2016

* Move utils.vmnet to gns3 namespace
* Fix Exporting portable projects with QEMU includes base images even when selecting no.
* Catch error when md5sum file is corrupted
* requirements.txt : added support for newer aiohttp version
* Improve compaction of .gns3project
* Fix crash when winpcap is not installed

## 1.5.1 07/07/2016

* Increase the number of interface for docker
* Add the method in the bad request answer
* Fix a rare crash in IOU
* Fix a crash when docker is used but not installed
* Backport Docker node hot linking
* Allows hot-linking for Docker containers. Ref #267.

## 1.5.0 27/06/2016

* Fix import of project with no disk
* Allow for (a lot) more docker container ports. Fixes #593.
* Raise an error if you try to use Docker on non Linux host
* Fix a crash in Docker if daemon stop to respond
* Fix a crash if Dynamips router has no initial configuration
* Kill ghosts process at startup (Dynamips, VPCS, Ubridge)

## 1.5.0rc2 15/06/2016

* Fix black screen with Qt app in Docker container
* Detect when command in the container exit
* Docker when the aux console exit and restart it
* Pass by default the environment variable container=docker
* Fix busybox binary location
* Avoid loosing console port for Docker
* Workaround a crash in x11vnc
* Delete volume when dropping the container
* Catch connection reset in ioucon
* Delete vlan.dat for L2IOL during config import. Fixes #1285.
* Copy original ressources from VOLUMES

## 1.5.0rc1 01/06/2016

* Save an restore docker permission
* Export the list of volumes to a env variable accessible in the container
* Fix a crash when docker start command is None
* Ubridge 0.9.4 is require
* Generate a MAC address using the project + node UUID. Ref #522.
* Catch extra args in windows signal handler
* Allow to block network traffic originating from the host OS for vmnet interfaces (Windows only).
* Fix an import error when you have no GNS3 VM
* Warn if you can not export a file due to permission issue
* Do not delete adapters when stopping a VMware VM.  Ref #1066.
* Allocate a new vmnet interface if vmnet 0 1 or 8 is set to a custom adapter. Set adapter type to all adapters regardless if already configured or added by GNS3.
* Set default VMware VM adapter type to e1000.

## 1.5.0b1 23/05/2016

* Allow an IOS router to stop even the Dynamips hypervisor command fail to be sent. Ref #488.
* Extract private-config only when necessary (content is different than the default). Fixes #520.
* Fixes disabling the VPCS relay feature. Fixes #521.
* Fixes wrong exception in Docker VM implementation.
* Force Npcap DLL to be used first for Dynamips and uBridge (instead of the one from Winpcap if installed).
* Fixed startup-config is lost if you change any IOS router settings. Fixes #1233.
* Fixes check for NPF service and add check for NPCAP service on Windows.
* Fix ProcessLookupError X11VNC
* Force tag latest for docker image if no tag is specified
* Cleanup unbreakable space
* Do not raise error if vmrun.exe is named vmrun.EXE
* Load docker api only for Linux

## 1.5.0a2 10/05/2016

* Fix distribution on PyPi

## 1.5.0a1 10/05/2016

* Rebase Qcow2 disks when starting a VM if needed
* Docker support
* import / export portable projects (.gns3project)

## 1.4.6 28/04/2016

* More robust save/restore for VirtualBox linked clone VM hard disks.
* Prevent non linked cloned hard disks to be detached when using VirtualBox linked cloned VMs. Fixes #1184.
* Stricter checks to match VMware version to the right vmrun (VIX library) version. Also checks the VIX library version when only using the GNS3 VM running in VMware.
* Allow only .pcap to be downloaded from remote stream API
* Fix incrementation of qemu mac address
* Clear warnings about using linked clones with VMware Player.
* Alternative method to find the Documents folder on Windows.
* Add IOU support and install config in /etc

## 1.4.5 23/03/2016

* Stop the VMware VM if there is an error while setting up the network connections or console.
* Remote install on 14.04 ubuntu
* Include VMware VMs paths found preferences.ini
* Allow to stop a VMware VM from GNS3 even if halted within the VM. Fixes #1118.
* Keep Dynamips stdout log file in the project directory.
* Get MAC addresses for host interfaces to use for filtering frames from vmnet interfaces.
* Dynamips uuid hypervisor command is no longer supported.
* Restart NPF service after adding vmnet adapters on Windows.
* Support /etc/gns3/gns3_server.conf for the config
* Improve warning if fusion is not installed or in non standard location

## 1.4.4 23/02/2016
* Check if VMware Fusion is correctly installed when retrieving the VM list.

## 1.4.3 19/02/2016
* Nothing! (changes made in the GUI only).

## 1.4.2 17/02/2016
* Fix missing format in IOU export
* Fix number of arguments to the UDP errors on VBOX
* Add verification when UDP tunnel is created in a VirtualBox VM. Ref #899.
* Fixes VMware linked clone cleanup bug. Fixes #420.
* Removed docker support from 1.4 (drop unused code)
* Fix a crash if you create a file named IOS in the image dir
* Disallow creating project with " in the path
* Always look at the registry to find vmrun.exe on Windows.
* Check for VMware VIX library version. Fixes #413.
* Fixes VDE not working #345.
* Do not list qemu binary with -spice in the name
* Send command line used to start the VM to client
* Fix crash if you have a { in your user name

## 1.4.1 01/02/2016
* VMware raise error if version is not found
* For topologies before 1.4 manage qemu missing
* Fixes issue with packet capture on VMware VMs. Fixes #396.
* Fixes concurrency issue when closing multiple VMware linked clone VMs. Fixes #410.
* Fixes "can only use tap interfaces that both already exist and are up". Fixes #399.
* Send machine stats via the notification stream
* Check for /dev/kvm instead of kvm-ok
* Show a warning when starting ASA8
* Fix error when setting Qemu VM boot to 'cd' (HDD or CD/DVD-ROM)
* Fixed the VMware default VM location on Windows, so that it doesn't assume the "Documents" folder is within the %USERPROFILE% folder, and also support Windows Server's folder (which is "My Virtual Machines" instead of "Virtual Machines").
* Improve dynamips startup_config dump
* Dump environment to server debug log
* Fix usage of qemu 0.10 on Windows
* Show hostname when the hostname is missing in the iourc.txt

## 1.4.0 12/01/2016
* Release 1.4.0

## 1.4.0rc3 05/01/2016

* API documentation update
* Fix race condition when killing iouyap
* Catch exception if we can't change process priority on Windows
* Adds a handler for getting the Qemu related capabilities of the server. Currently includes just a check for KVM architectures.
* Fixed showing of Qemu hdb_disk_interface - it showed hda_disk_interface instead, which resulted in an odd visual glitch in the GUI.
* Made the gns3server.bat successfully start the server independent of the CWD at the time of running. It's now relative to the location of the .bat file itself.
* Add more informations in the debug status page
* Fix status link in GNS3 homepage
* Fix tests on Windows
* Fix missing boot priority order
* A debug status page embed in the server
* Fix test on Windows
* Update links for new website.
* Contributing instructions


## 1.3.13 11/12/2015

* Update links for new website.

## 1.3.12 11/12/2015

* Contributing instructions
* Correctly display log messages.
* Tentative fix for "WinError 64 The specified network name is no longer available" issues.
* Fix minor errors reported by codacy.com
* Add doc on how to got code coverage
* Raise an error when you use a port outside the ranges
* Fix asyncio error when closing the app
* Release UDP ports when closing a Qemu VM. Fixes #323.

## 1.4.0rc2 10/12/2015

* Add log about wher iou capture packet
* Replace by another TCP port if port is already used
* Fix ProcessLookupError in Qemu
* Increase vmrun timeout to 120 seconds. Ref #360.
* Fixes termination notification to indicate the right process name (IOU vs iouyap). Ref #359.
* Fixes error with non initialized uBridge. Fixes #367.
* Remove debug that can crash qemu
* Support VM usage for qemu
* Raise an error if psutil version is invalid

## 1.4.0rc1 12/11/2015

* Raise error if server received windows path
* Update sentry key
* Remove NIO FIFO and Mcast (unused). Fixes #348.
* Support VPCS 0.6.1
* Fix duplicate of -no-kvm options
* Raise an error if user send a non local path to remote server
* Fix minor issues
* Apply pep8 fix
* Sets console end port to 7000. Fixes #343.
* Drop netifaces (replaced by psutil). Fixes #344.
* Correctly display log messages.
* Tentative fix for "WinError 64 The specified network name is no longer available" issues.
* Return relative path for dynamips images
* Fix add existing IOS not working
* Correctly enable faulthandler for dev version
* Avoid test crash if GNS3 is running on the same computer
* Allow to return an empty project name because it's allowed in creation
* Test with python 3.5
* Add doc on how to got code coverage

## 1.4.0b5 02/11/2015

* Freeze requirements for aiohttp because 0.18 doesn't support Python 3.4.
* Fix crash in IOU config export.
* Raise an error when you use a port outside the ranges. Fixes #739.
* Fixes Windows named pipe issue. Fixes #340.

## 1.4.0b4 19/10/2015

* Support for modifications to a base Qemu VM (not a linked clone).
* Force canceling all task when shutdown server
* Update api documentation
* Enforce console port for VNC
* Fixes issue when loading a project using VMware vmnet interfaces. Fixes #319.
* Support for NAT connection with cloud for VMware VMs. Fixes #322.
* Change message when VMware is not installed on Linux. Ref #326.
* Send a warning notification if there is not enough RAM left to start a VM. Implements #329.
* Asyncio Qemu fix and raise error if coroutine not used
* Fix asyncio error when closing the app
* Removes VMware lock check. Fixes #328.
* Wait for pipe file to be created before starting the remote console for VMware and VirtualBox VMs. Fixes #331.
* Release UDP ports when closing a Qemu VM. Fixes #323.
* Escape other usage of glob
* Fix Dynamips identifier is already used by another router
* Protect Dynamips against bad glob.
* Fix issue with Qemu networking following merge.
* OVA file support
* Support listing images in subdirectories.
* Catch ProcessLookupError in Qemu VM.
* Fixes uncalled coroutine.
* Use the correct UDP tunnel Qemu syntax for version > 1.1.0 when legacy networking is enabled.
* VMware player linux support.
* Prevent launching a packet capture with a non-ASCII path when using Dynamips.
* Do not require a TAP interface to already exist. Fixes #321.
* Do not automatically delete Dynamips bootflash file because they are necessary to restore VLANs on the c3600 platform.

## 1.3.11 07/10/2015

* Escape other usage of glob
* Fix Dynamips identifier is already used by another router
* Protect dynamips against bad glob
* Catch ProcessLookupError in Qemu VM.
* Use the correct UDP tunnel Qemu syntax for version > 1.1.0 when legacy networking is enabled.
* Prevent launching a packet capture with a non-ASCII path when using Dynamips.
* Do not automatically delete Dynamips bootflash file because they are necessary to restore VLANs on the c3600 platform.
* Fix dynamips configuration lost when you delete a node
* Clarify error message when we got UTF-8 chars in the iourc file
* Check for valid FR or ATM switch mappings. Fixes #300.

## 1.4.0b3 22/09/2015

* Fix dynamips configuration lost when you delete a node
* Clarify error message when we got UTF-8 chars in the iourc file
* Use custom VMnet interfaces without host adapter when uBridge is not used. Fixes #673.
* Automatically add the -no-kvm option if -icount is detected to help with the migration of ASA VMs created before version 1.4
* Check for valid FR or ATM switch mappings. Fixes #300.
* Catch exception when a process cannot be killed. Fixes #296.


## 1.4.0beta2 17/09/2015

* Fix a crash at vmware stop
* Fix a crash when starting a VMware vm
* Add how to add vmnet interfaces explantion in the error message
* Fix path of VMinventory for fusion
* Force close the keep alive when sending a 401
* Do not automatically delete Dynamips bootflash file because they are necessary to restore VLANs on the c3600 platform.
* Wait that an user press a key to stop gns3vmnet.exe on Windows.
* Throw an error if ubridge as incorrect permissions. Fixes #312.
* This may fix "The semaphore timeout period has expired" error on Windows. #311.
* Fixes bug with VMware VM connections + moves some uBridge code to BaseVM.
* Support for packet capture on VMware VM links.
* Fix ProcessLookupError on _checkAlive Qemu
* VMware Fusion support with uBridge.
* Updates vmnet script to support Windows.
* Do not block on .lock for VMware OSX
* Require Dynamips version 0.2.16 to change the default QinQ Ethernet type.
* Initial Docker support from Google Summer of Code (not enabled)
* Check for valid FR or ATM switch mappings. Fixes #300.
* VirtualBox VMs can only be started if powered off. Fixes #299.
* Support of VPCS 0.8
* Allows VMware VMs to use vmnet interfaces for connections without using uBridge. Fixes #295.
* Fixes path to vmnet-cli on Mac OS X.
* Updates vmnet script to support Mac OS X.
* Fix closing project when multiple project is open
* Fix project not closing
* Qemu user options are at the end. It's allow user to add his own net interfaces
* Change the way we look for Qemu path
* Lock qemu vm during start / stop operations
* In the error message explain how to turn off KVM support
* Fix when you stop qemu on windows you have an error
* Fix Qemu cannot be used on Windows
* Allow to start server with python -m gns3server
* Should solve the BufferError by avoiding using thread
* Catch UnicodeEncodeError when passing unicode char as qemu options
* EthernetSwitch: Allow to choose ethertype for QinQ outer tag.
* Backport: fixes NAT NIO for Qemu VMs (do not launch any legacy scripts)
* Fixes NAT NIO for Qemu VMs (do not launch any legacy scripts)
* Lower VMware requirements to Workstation version 10 and Player version 6.
* Fixes Unicode error. Fixes #290.
* Don't delete Dynamips ROM files. They are used to restore the nvram.
* Adds pywin32 dependency in setup.py for Windows.

## 1.3.10 04/09/2015

* Catch exception when a process cannot be killed. Fixes #296.
* Backport: fixes NAT NIO for Qemu VMs (do not launch any legacy scripts)
* Fixes Unicode error. Fixes #290.
* Don't delete Dynamips ROM files. They are used to restore the nvram.

## 1.4.0beta1 07/08/2015

* Fix ram setting for Qemu
* Explicit set qemu memory as MB
* Turn off KVM for non x86 architectures
* Send an error when vmware executable cannot be found on Linux. Fixes #288.
* Support for CPUs setting for Qemu VMs.

## 1.4.0alpha4 04/08/2015

* Quote command in qemu debug logs so you can copy/paste them
* Support for Qemu disk interfaces, cd/dvd-rom image and boot priority. Fixes #278.
* Check for VMware Player version >= 7 and VMware Workstation >= 11. Fixes #286.
* Catch GeneratorExit exception when trying to create a Ghost IOS image.
* Backport: removes code that deletes IOS router instance files.

## 1.3.9 03/08/2015

* Backport: removes code that deletes IOS router instance files.

## 1.4.0alpha3 28/07/2015

* Raise error if qemu image already exist when creating disk
* Prevent user to create a qemu to a different directory on non local server
* VMnet manager on Linux: check that VMware has been installed.
* Fixes UnicodeDecodeError when reading a VMware file.
* Fixes KeyError: "ethernet0.connectiontype". Fixes #276.
* Fixes replace errors. Fixes #284.
* Catch ProcessLookupError when updating iouyap config. Fixes #255.
* API for creating a qemu disk image
* Prevent starting different hypervisors that leverage hardware virtualization (VT-x/AMD-V). Fixes #548.
* Fixes IOS adapters and WICS cannot be removed. Fixes #282.
* Makes sure the loop is running when closing the app.
* Catch Permission denied when writing to VMX file while closing VMware VM. Fixes #277.
* Catch GeneratorExit exception. Fixes #231.
* Fixes missing chipset info for VirtualBox VM (maybe some older VirtualBox version don't have it). Fixes #254.
* Changes how to look for the vmrun.exe location.
* Update documentation
* API for listing current projects

## 1.3.8 27/07/2015

* Catch ProcessLookupError when updating iouyap config. Fixes #255.
* Fixes IOS adapters and WICS cannot be removed. Fixes #282.
* Makes sure the loop is running when closing the app.
* Catch GeneratorExit exception. Fixes #231.
* Fixes missing chipset info for VirtualBox VM. Fixes #254.
* Fixes IOURC upload.
* Restore images & projects tarballs
* Allow users to backup projects and images.
* Update gns3.conf.upstart.
* Fix incorrect vboxmanage sudo command.
* Backport from 1.4: option to drop nvram & disk files for IOS routers in order to save disk space.
* Backport from 1.4: Remove timeout to wait for connections to finish.
* Backport from 1.4: Fixes RuntimeError: Event loop is closed.
* Backport from 1.4: Bind host on 0.0.0.0 when checking for a free UDP port.

## 1.4.0alpha2 22/07/2015

* Deactivate uBridge process monitoring (process returns 1 on Windows when stopping).
* Prevent using different hypervisors that leverage hardware virtualization. - Implemented for Qemu when a VMware or VirtualBox VM with hardware virtualization is already running. - Implemented for VirtualBox only when a Qemu VM with KVM is already running.
* Check for uBridge version and catch uBridge errors.
* Remove default FLASH when no hda disk for Qemu VMs. Fixes  #535.
* Use the registry to find vmrun if the default VMware install path does not exist.
* Bind host on 0.0.0.0 when checking for a free UDP port.
* Fixes RuntimeError: Event loop is closed. Fixes #266.
* Update gns3.conf.upstart
* Implements uBridge hypervisor.
* Take VMware file encoding into account. Fixes #261.

## 1.4.0alpha1 09/07/2015

* Update API documentation
* Allow to send the iourc when starting the VM
* Return stdout when a process crash for IOU, Dynamips, uBridge and VPCS.
* Adds -no-kvm to the ASA template and ignore -no-kvm on platforms other than Linux. Should resolve #472.
* Allow user to change the configuration file
* Fix double loading of config from working directory
* CORS support
* Support server config in current working directory
* List only valid existing IOS images (for IOS router wizard).
* Checks if IOS image exist at startup and not during node creation. Fixes #240.
* When a qemu VM crash send the log to the client.
* Add a vm_directory field
* Check for /dev/kvm. Fixes #245.
* Moves KVM setting to Qemu server preferences. Fixes #244.
* VNC console support for Qemu VMs.
* Test all IOU requirements at VM startup
* ACPI shutdown support for VMware VMs. Fixes #436.
* Compute a md5sum of images for futur purpose
* Adds gns3-netifaces to dependencies only if netifaces isn't already installed otherwise this requires a compilation and therefore the Python development files.
* Adds an IP address for each interface returned by the interfaces API method.
* Add log when we didn't close a project due to another client
* Limit file size during upload
* Convert old -enable-kvm to kvm settings for Qemu
* Cleanup SSL certificate support
* Improve memory consumption of file upload with the HTML form
* systemd start script 
* Enable KVM acceleration option.
* Check interface is up before connecting a NIO (Linux only). Fixes #277.
* IPv6 support.
* Import/Export support for IOU nvrams.
* Install qt5 for travis
* Option to drop nvram & disk files for IOS routers in order to save disk space.
* Drop python 3.3
* Support for base MAC address for Qemu VMs.
* ACPI shutdown support for Qemu VMs.
* ACPI shutdown support for VirtualBox VMs.
* Upload images API
* A notification stream with process monitoring
* VMware support 

## 1.3.7 22/06/2015

* Prevent install on Python 2

## 1.3.6 16/06/2015

* Fix an issue with 1.4dev compatibility

## 1.3.5 16/06/15

* Ignore invalid characters when reading the output of a process
* Turn on / off authentication
* Ensure no colored output on Windows
* Do not stop saving IOS router configs when there is an exception while a project is committed.
* Create a private config file if expected
* Distribute our own version of netifaces working with python 3
* Fix crash if a private config exist in IOS but no private config file
* Basic Auth support
* Fix crash when virtualbox list of VMS return an empty line

## 1.3.4 02/06/15

* Drop useless dependencie dateutil
* Check if port or adapter is connected before starting/stopping a packet capture. Fixes #196.
* Prevent users to add links to running Qemu VMs and start a capture on running VirtualBox VMs.
* Fixes bug: couldn't set PCMCIA disk1 size for IOS routers.
* Fix crash if you pass an invalid hostname
* Catch VPCS kill errors
* Raise a VirtualBox error if adapter doesn't exists
* Ignore VirtualBox VM Name with a carriage return in name
* Cleanup the temporary project after modules have been notified of the path change
* Do not return error if we can't remove the old project directory
* Catch encoding errors in windows logger
* Use setter for the qemu_path (allow to pass only the binary name)
* Fixes TAP connection when using VPCS.
* Fix crash launching qemu on OSX from another location.
* Adds NAT NIO in device schema validation so they can return an error that it is not supported.

## 1.3.3 14/05/15

* Check for empty iourc path.
* Fixes bugs with IOS router configs. Fixes #354.
* Use a temporary directory as egg cache
* Catch crash error in IOU in case of permission denied

## 1.3.3rc1 07/05/2015

* Return an error if an adapter slot doesn't exist on an IOS router.
* NIO NAT support for VirtualBox VMs.
* NIO NAT support for QEMU VMs (user mode back-end is used).
* Throw an error if user put an invalid port range in config file
* Turn off configuration parser interpolation
* Catch configuration file parsing errors
* Force closing the event loop to avoid warning with Python 3.4.3
* Catch error when you can't mark a project as no longer temporary
* Catch BrokenPipeError for OSX frozen server
* Match how IOU initial-config is set for VPCS VM.
* Refactors how startup-config and private-config are handled for IOS routers.
* Catch the "WinError 0 The operation completed successfully" exception at a higher level.
* Fix temporary project not cleanup with save as
* If image is not found in VM directory look in images folder
* Ordered MAC addresses for QEMU based VMs.
* Merge remote-tracking branch 'origin/master'
* Force utf-8 configuraton files reading
* Do not list file starting with a . in upload handler
* Do not crash when closing a project if VirtualBox is not accessible
* Catch connection reset errors


## 1.3.2 28/04/2015

* Cleanup the VirtualBox Media Manager after closing a project.
* Avoid Cygwin warning with VPCS on Windows.
* Close VirtualBox VM linked clone disks after the VM is unregistered.
* TAP interface support for QEMU VMs.
* Return an explicit error when a NIO type is not supported by a VM.
* Do not erase the IOU config
* Explicit utf-8 decoding.
* Check NIO exists when stopping an IOU capture.
* Fixes c7200 NPE setting.
* Fixes VPCS process termination.
* Catch FileNotFoundError exception in os.getcwd()
* Explicit utf-8 encoding where necessary to avoid Unicode errors on Windows (we require/set an utf-8 locale on other systems).
* Fixes #270. Relative paths management with empty ones.
* New crash report key and doesn't send report for developers
* Catch COM errors when connecting to WMI.
* Don't assume the PATH environment variable exists.
* Use UUIDs instead of the VM names for VirtualBox pipe paths.
* Add --log options for daemon support
* Basic upstart script
* Add qemu-kvm to the list of binary
* Fix IOU licence check flag
* Config paths are not used when updating Dynamips or IOU VM settings.
* Fixes initial-configs that were not restored when opening a project containing IOU VMs.
* Prevent parallel execution of VBox commands
* Fix a crash when in some cases you can't access to VBOX state
* Fix crash if VirtualBox doesn't return API version
* Fix a crash in VirtualBox vm creation
* Allocate random names for Dynamips NIOs.
* Explicitly delete Dynamips NIOs and unmap VCs for ATM and Frame-Relay switches.

## 1.3.1 11/04/2015

* Release

## 1.3.1rc4 09/04/2015

* Initial config file content can be empty (fix export issues)
* Fix crash if IOU initial config is emtpy
* Return more informations about bad requests for crash reports
* Allow less strict dependencies for easier install
* Missing project name in documentation
* Some spring cleaning


## 1.3.1rc3 07/04/2015

* Fix missing IOU documentation
* Add missing project name in curl documentation
* Look in old IOU images location in order to smooth transition

## 1.3.1rc2 06/04/2015

* Do not overwrite initial-config IOU if client send an empty
* Fix documentation about /ports/udp

## 1.3.1rc1 05/04/2015

* Fix issues with macos X dynamips not freeing UDP port
* Fix encoding error when saving dynamips configuration
* The upload web page return a 200 in case of error (IE compatibility)
* Do not crash if dynamips config contain non ascii chars
* Test path with chinese charcaters in Qemu
* Do not crash if no console port is available for VBox
* Raise a DynamipsError if we can't access to VM status
* Check name of the VBoxManage executable
* Exclude docs and tests package from distribution
* Catch error when qemu additional options are invalid
* Fix ClientDisconnectedError
* Fix crash when NIO doesn't exist
* Turn off crash report if raven not available
* Fix crash when IOU script file is incorrect

## 1.3.0 30/03/2015

* Fix issue when asyncio read is cancelled and data is still sent by Dynamips hypervisor.
* Fix unicode decode error when saving IOS router configs.
* Fix error when missing adapter in Dynamips IOS router.
* Fix crash if we call stop on dynamips on non started process.
* Fix use_default_iou_values param was not set.
* Fix issue when IOURC environment variable is set to None.
* Fix issue when exporting IOS router configs.
* Fix check if VPCS process is running.
* Fix bug when remove_nio() is not a coroutine for ATM and FR switches.
* Fix how to test if iou and iouyap are running.
* Allocate a random port for Qemu monitor. Fixes issue with pre 1.3 projects.
* Fix default chassis bug.

## 1.3.0rc2 23/03/2015

* Update sentry key
* Prevent error when suspend/resume is not supported in QEMU VM.
* Adds project id when requesting UDP port.
* Make sure used ports in a project are cleaned up when closing it.
* Save configs when project is committed.
* Initialize chassis when creating an IOS router. Fixes  #107.
* Lock the dynamips reader an writer

## 1.3.0rc1 19/03/2015

* Save IOS router config when saving the project
* Look in legacy IOU images directory
* Support IOURC upload
* Configuration on UNIX
* Support all QEMU status
* Bind tunnel UDP to the correct source index

## 1.3.0beta2 13/03/2015

* Fixed issue when VBoxManage returns an error.
* Server handler to shutdown a local server.
* List the iourc file in upload handler.
* Fixed hostid error.
* Support RAM setting for VirtualBox VMs.
* Alternative local server shutdown (intended for Windows).
* Request user permission to kill the local server if it cannot be stopped.

## 1.3.0beta1 11/03/2015

* Optional IOU license key check.
* Relative path support of IOU, IOS and Qemu images.
* Do not give attachment warning for generic attachments in VirtualBox.
* Support for HDC and HDD disk images in Qemu.
* Fixed bug when starting a packet capture in VirtualBox with the project path containing spaces.
* Renames server.conf and server.ini to gns3_server.conf and gns3_server.ini respectively.
* Use TCP instead of Telnet to communicate with Qemu monitor.
* Have the server look in the right place for relative image paths.
* Fixed bugs when checking if this is a local project.
* Concert old projects on remote servers.
* Properly restore configs for Dynamips routers.
* Fixed rename bug for linked clones in VirtualBox.
* Makes absolute path checks work on Windows.
* Upload IOURC file via the web interface
* Upload interface allows users to choose an image type.
* Fixed Qemu networking.
* Fixed suspend and resume for Qemu VMs.
* Fixed crash when you start capture on a non running IOU.
* Fixed Telnet server initialization issue in VirtualBox.
* Disconnect network cable if adapter is not attached in VirtualBox vNIC.

## 1.3.0alpha1 03/03/2015

* HTTP Rest API instead of WebSocket
* API documentation
* Create a dedicated configuration file for the server: server.conf
* Temporary projects are real project
* Use UUID instead of id

## 1.2.3 2015/01/17

* Fixed broken -netdev + legacy virtio in Qemu support.
* Ping and traceroute added to the IOU VM.

## 1.2.2 2015/01/16

### Small improvements / new features

* Auxiliary console support for IOS routers.
* Suspend / resume support for Qemu.
* Dynamically configure network connections of running Qemu VMs (only with recent Qemu versions).
* VPCS multi-host support (useful for old .net labs).
* Possibility to run VirtualBox as another user (Linux/OSX only).
* Support for IOURC file on the server side.
* Bumped the maximum network adapters to 32 for Qemu (depending on Qemu version you cannot go above 8 or even 28, Qemu will just not start).
* Added snapshot named 'reset' to linked cloned VirtualBox VMs.
* More network interface options to the Qemu VM configuration interface as well as descriptions for all NICs.
* More checks on minimum RAM for IOS routers and updates default values to match the latest IOS image requirements.
* Fixed bug when importing Host node with UDP NIOs.

## 1.2.1 2014/12/04

* Early support for IOSv and IOSv-L2 (with Qemu for now, which is slow on Windows/Mac OS X).
* Support for CPU throttling and process priority for Qemu.
* Fixed C7200 IO cards insert/remove issues and makes C7200-IO-FE the default.
* Updated the IOU VM with iouyap version 0.95 (packet capture).


## 1.2 2014/11/20

* New VirtualBox support
* New Telnet server for VirtualBox.
* Add detection of qemu and qemu.exe binaries.
* New host node (cloud with all available Ethernet & TAP interfaces added).
* Option to allow console connections to any local IP address when using the local server.
* VirtualBox linked clones support (experimental, still some problems with temporary projects).


## 1.1 2014/10/23

* Serial console for local VirtualBox.

