* Fix mouse offset issues with VNC in Qemu. Fixes #2335
* Add project.created, project.opened and project.deleted controller notification stream. Move project.updated and project.closed from project notification to controller notification stream.
* Do not stop searching for Qemu binaries if one binary cannot be executed. Ref #2306
* Fix Ethernet switch and Ethernet hub port validations. Fixes #2334
* Do not enforce Compute.Audit and Template.Audit privileges due to current web-ui limitations
* Support to create empty disk images on the controller
* Fix issue with importlib.resources.files() and Python 3.9
* New RBAC system with resource pools support.
* Use controller vars file to store version and appliance etag
* Pydantic v2 migration
* Allow connection to ws console over IPv6
* Allow computes to be dynamically or manually allocated
* Add UEFI boot mode option for Qemu VMs
* Mark VMware and VirtualBox support as deprecated
* Make port name for custom adapters optional. Fixes https://github.com/GNS3/gns3-web-ui/issues/1430
* Support for database schema migrations using alembic
* Add config option to change the server name. Ref #2149
* Option to disable image discovery and do not scan parent directory
* Allow raw images by default. Fixes https://github.com/GNS3/gns3-server/issues/2097
* Fix bug when creating Dynamips router with chassis setting
* Stricter checks to create/update an Ethernet switch and add tests
* Fix schema for removing WICs from Cisco routers. Fixes #3392
* Fix some issues with HTTP notification streams
* API endpoint to get the locked status of a project
* Global project lock and unlock
* Require name for custom adapters. Fixes #2098
* Allow empty adapter slots for Dynamips templates. Ref https://github.com/GNS3/gns3-gui/issues/3373
* Custom adapters should not be in node (compute) properties returned to clients. Fixes https://github.com/GNS3/gns3-gui/issues/3366
* Optionally allow Qemu raw images
* Ignore image detection for IOU user libraries in image directory
* Checks for valid hostname on server side for Dynamips, IOU, Qemu and Docker nodes
* Only check files (not directories) when looking for new images on file system.
* Support user defined loader/libraries to run IOU
* Remove explicit Response for VPCS endpoints returning HTTP 204 status code
* Remove explicit Response for endpoints returning HTTP 204 status code
* Make 'vendor_url' and 'maintainer_email' optional for template validation.
* Allow auth token to be passed as a URL param
* Add controller endpoints to get VirtualBox VMs, VMware VMs and Docker images
* Detect new images added to the default image directory. * Images can be present before the server starts or while it is running * Images are recorded in the database
* Support delete Qemu disk image from API Return the real disk image name in the 'hdx_disk_image_backed' property for Qemu VMs
* Fix ComputeConflictError import
* Handle creating Qemu disk images and resizing
* Finish to clean up local setting usage. Ref #1460
* "Local" command line parameter is only for stopping a server that has been started by the desktop GUI
* Fix AsyncSession handling after breaking changes in FastAPI 0.74.0 See https://github.com/tiangolo/fastapi/releases/tag/0.74.0 for details.
* Detect image type instead of requesting it from user
* Add connect endpoint for computes Param to connect to compute after creation Report compute unauthorized HTTP errors to client
* Replace CORS origins by origin regex
* Allow empty compute_id. Ref #1657
* Secure controller to compute communication using HTTP basic authentication
* Secure websocket endpoints
* Allocate compute when compute_id is unset
* Return the current controller hostname/IP from any compute
* Remove Qemu legacy networking support
* Appliance management refactoring: * Install an appliance based on selected version * Each template have unique name and version * Allow to download an appliance file
* Add isolate and unisolate endpoints. Ref https://github.com/GNS3/gns3-gui/issues/3190
* Allow images to be stored in subdirs and used by templates.
* Use uuid5 to create new compute_id. Fixes #1641 #1887
* Migrate PCAP streaming code to work with FastAPI.
* Refactor WebSocket console code to work with FastAPI. Fix endpoint routes.
* qemu : with network adapter_type equal to "virtio-net-pci", fix the speed to 10000 and duplex to full. The values are actually fake. (https://github.com/GNS3/gns3-gui/issues/3476)
* Parse name for request to node creation from template
* Remove Xvfb + x11vnc support
* Require a Host-Only Network to start the VirtualBox GNS3 VM on macOS with VirtualBox 7
* Catch ConnectionResetError when waiting for the wrap console
* Fix open IPv6 address for HTTP consoles on controller. Fixes https://github.com/GNS3/gns3-gui/issues/3448
* Use proc.communicate() when checking for subprocess output As recommended in https://docs.python.org/3/library/asyncio-subprocess.html#asyncio.subprocess.Process.stderr
* Use default symbol theme if none is provided when loading appliances
* Allow default symbol theme to be configured in config file
* Optionally allow Qemu raw images
* Ignore image detection for IOU user libraries in image directory
* Don't show optional token param in API docs
* Fix check for 32-bit in ELF header
* Checks for valid hostname on server side for Dynamips, IOU, Qemu and Docker nodes
* Only check files (not directories) when looking for new images on file system.
* Support user defined loader/libraries to run IOU
* Make 'vendor_url' and 'maintainer_email' optional for template validation.
* Allow auth token to be passed as a URL param
* HTTP middleware create issues when streaming project archive
* Add zstandard compression support for project export
* Make sure that the temporary image file is removed after uploading an image
* Do not cache to md5sum file in some situations
* Detect new images added to the default image directory. * Images can be present before the server starts or while it is running * Images are recorded in the database
* Support delete Qemu disk image from API Return the real disk image name in the 'hdx_disk_image_backed' property for Qemu VMs
* Handle creating Qemu disk images and resizing
* Finish to clean up local setting usage. Ref #1460
* "Local" command line parameter is only for stopping a server that has been started by the desktop GUI
* Fix AsyncSession handling after breaking changes in FastAPI 0.74.0 See https://github.com/tiangolo/fastapi/releases/tag/0.74.0 for details.
* Detect image type instead of requesting it from user
* Drop Python 3.6 support and require Python >= 3.7
* Drop Windows support
* Add connect endpoint for computes Param to connect to compute after creation Report compute unauthorized HTTP errors to client
* Replace CORS origins by origin regex
* Change default config settings
* Update Docker image for tests
* Fix calls to static methods in server.py
* Do not require the local server param to open a .gns3 file. Fixes https://github.com/GNS3/gns3-gui/issues/2421 Ref #1460
* Do not automatically install appliance after uploading image
* Ignore OSError when closing websocket
* Allow empty compute_id. Ref #1657
* Secure controller to compute communication using HTTP basic authentication
* Secure websocket endpoints
* Fix issue when updating a template
* Allocate compute when compute_id is unset
* Return the current controller hostname/IP from any compute
* Remove Qemu legacy networking support
* Add a custom version to an appliance
* Appliance management refactoring: * Install an appliance based on selected version * Each template have unique name and version * Allow to download an appliance file
* Finalize image management refactoring and auto install appliance if possible
* Sqlite doesn't allow BigInteger to be used as an primary key with autoincrement
* Add isolate and unisolate endpoints. Ref https://github.com/GNS3/gns3-gui/issues/3190
* Small db tables adjustments
* Add index for "name" field in role table
* Allow images to be stored in subdirs and used by templates.
* Option to prune images when deleting template.
* Associate images when creating or updating a template.
* Add prune images endpoint. Use many-to-many relationship between images and templates.
* Check if user has the right to add a permission
* Only use the necessary HTTP methods for default permissions
* Add /permissions/prune to delete orphaned permissions
* Check a permission matches an existing route before it is allowed to be created.
* Remove busybox and copy system busybox in setup.py
* Save image size + start to automatic template creation based on image checksum.
* Upgrade dependencies
* Fix "-machine accel=tcg" check
* Allow logged in user to change some of its data. Administrators can lock users using the `is_active` field.
* Change RBAC field names from builtin to is_builtin
* Add user permissions + RBAC tests.
* Add description for user permission.
* Save/restore appliances Etag.
* Allow to set the initial super admin username / password in server config file. Ref #1857
* Require authentication for get_user_memberships endpoint.
* Change method to prevent forbidden directory traversal. Ref #1894
* Add user groups support.
* Add delete cascade on foreign keys for appliance table
* Enable SQL foreign key support for SQLite
* Add missing CORS origins.
* Show topology path when check topology schema fails.
* Protect controller notification endpoints. Ref #1888 (WebSocket endpoint is not secured, it takes an optional token).
* Use uuid5 to create new compute_id. Fixes #1641 #1887
* Protect the API and add alternative authentication endpoint.
* Secure users API and handle manual password recovery.
* Add default super admin account in controller db.
* Complete type annotations for API endpoints.
* Detect the app is exiting and avoid reconnecting to computes.
* Move schemas between compute and controller subpackages
* Remove traceng code.
* Move error responses to API routers.
* Wait for local compute to be started. Don't reconnect to local compute when server is being stopped.
* Rename ssl and auth configuration file settings. Add enable SSL config validator. Strict configuration file validation: any error will prevent the server to start. Core server logic moved to a Server class.
* Generate new config for each test. Fixes tests.
* Use Pydantic to validate the server config file.
* Add symbol dimensions endpoint and SSL support for packet capture with remote HTTPS server.
* Save computes to database
* Generate a new list in template schema defaults.
* Generate JWT secret key if none is configured in the config file. Change location of the database.
* User authentication with tests.
* Refactor tests and start work on database integration.
* Move endpoints to routes & preparations to use a database.
* Providing the path to create a project is now deprecated.
* Add back script to create a self-signed SSL certificate.
* Make sure all HTTP exceptions return JSON with a "message" field instead of "detail"
* Make Swagger Ui the default for API documentation
* Move to version 3 of the REST API. Rename packet capture endpoints.
* Use pydantic for data validation (instead of jsonschema) Fix/improve various pydantic schema models.
* Automate API documentation publishing.
* Publish API documentation generated by FastAPI.
* Overwrite uvicorn loggers.
* Do not automatically connect to local compute.
* Add HTTP client to reuse the aiohttp session where needed. Remove unnecessary aiohttp exceptions.
* Warn not to use the private compute API. Fixes #1593.
* Migrate PCAP streaming code to work with FastAPI.
* Refactor WebSocket console code to work with FastAPI. Fix endpoint routes.
* Use dependencies and group common HTTP responses in endpoints.
* Migration to FastAPI
* Prioritize the config disk over HD-D for Qemu VMs. Fixes https://github.com/GNS3/gns3-gui/issues/3036
* Create config disk property false by default for Qemu templates
* Set default disk interface type to "none". Fail-safe: use "ide" if an image is set but no interface type is configured. Use the HDA disk interface type if none has been configured for HDD.
* Add explicit option to automatically create or not the config disk. Off by default.
* Auxiliary console support for Qemu. Ref #2873 Improvements for auxiliary console support for Docker and Dynamips.
* Fix AUX console not allocated for Dynamips IOS routers.
* Disallow to rename a running node. Fixes https://github.com/GNS3/gns3-gui/issues/2499
* Support to reset all console connections. Ref https://github.com/GNS3/gns3-server/issues/1619
* Support to reset links. Fixes https://github.com/GNS3/gns3-server/issues/1620
* Add maxcpus property for Qemu VMs. Ref #1674
* QEMU config disk support
* Read folder structure correctly for custom symbols. Fixes https://github.com/GNS3/gns3-gui/issues/2856
* Add total RAM, CPUs and disk size to servers summary as well as disk usage in percent. Fixes https://github.com/GNS3/gns3-server/issues/1532
* Resource constraints for Docker VMs.
* Update IOUtools. Ref #1627
* Use parent directory as working directory for project duplication and snapshots. Fixes https://github.com/GNS3/gns3-gui/issues/2909
* Support for "usage" for "Cloud" nodes. Fixes https://github.com/GNS3/gns3-gui/issues/2887 Allow "usage" for all builtin nodes (not exposed in Ui).
* Fix error when updating a link style. Fixes https://github.com/GNS3/gns3-gui/issues/2461
* Some fixes for early support for Python3.10 The loop parameter has been removed from most of asyncio‘s high-level API following deprecation in Python 3.8.
* Fix warning: 'ide-drive' is deprecated when using recent version of Qemu. Fixes https://github.com/GNS3/gns3-gui/issues/3101
* Fix bug when starting of vpcs stopped with "quit". Fixes https://github.com/GNS3/gns3-gui/issues/3110
* Fix WinError 0 handling
* Stop uBridge if VPCS node has been terminated. Ref https://github.com/GNS3/gns3-gui/issues/3110
* Allow cloned QEMU disk images to be resized before the node starts, by cloning the disk image in response to a resize request instead of waiting until the node starts.
* Fix(readme): update python version from 3.5.3 to 3.6
* Use HDD disk image as startup QEMU config disk
* Create config disk property false by default for Qemu templates
* Set default disk interface type to "none".
* Add explicit option to automatically create or not the config disk. Off by default.
* Support to activate/deactive network connection state replication in Qemu.
* Possible fix for problem connecting to the GNS3 VM. Ref https://github.com/GNS3/gns3-gui/issues/2969 #1760
* Option to reset or not all MAC addresses when exporting or duplicating a project.
* Fix bug when changing properties for closed project. Fixes #1754
* Fix issues with crash reporting & bump version to 2.2.9dev2. Ref https://github.com/GNS3/gns3-server/issues/1758
* Lock listing VMs. Ref #1755
* Try to fix error when listing Hyper-V VMs. Ref #1755
* Catch VirtualBox errors when listing VMs. Fixes #1759
* Deprecate running with Python 3.5
* aiocontextvars is only necessary for Python < 3.7
* Replace Raven by Sentry SDK. Fixes https://github.com/GNS3/gns3-server/issues/1758
* Require setuptools>=17.1 in setup.py. Ref https://github.com/GNS3/gns3-server/issues/1751 This is to support environmental markers. https://github.com/pypa/setuptools/blob/master/CHANGES.rst#171
* Default port set to 80 for server running in the GNS3 VM. Fixes #1737
* Make the Web UI the default page. Ref https://github.com/GNS3/gns3-server/issues/1737
* Support controller reloading for templates, appliances and projects. Ref #1743
* Return exit status 1 if server fails to start. Fixes #1744
* Use Environmental Markers to force jsonschema version. Fixes https://github.com/GNS3/gns3-gui/issues/2849 Version 3.2.0 with Python >= 3.8 Version 2.6.0 with Python < 3.8
* Use Environmental Markers to force jsonschema version 2.6.0 on Windows/macOS. Ref https://github.com/GNS3/gns3-gui/issues/2849
* Implement a minimum interval between cpu_percent() calls. Fixes #1738
* Add clipboard support for TigerVnc
* Sort snapshots by (created_at, name)
* Unprotected access for websocket consoles. Ref https://github.com/GNS3/gns3-gui/issues/2883#issuecomment-580677552
* Add Xvnc command to the VNC servers list. Fixes #172
* Allow controller to reconnect to compute if communication is lost. Ref #1634
* Improvement of support for docker USER directive. Fixes #1727.
* Fix cannot delete Dynamips router the content of the "usage" field. Fixes https://github.com/GNS3/gns3-gui/issues/2947
* Prevent locked drawings to be deleted. Fixes https://github.com/GNS3/gns3-gui/issues/2948
* Fix issues with empty project variables. Fixes https://github.com/GNS3/gns3-gui/issues/2941
* Upgrade psutil to version 5.6.6 due to CVE-2019-18874 https://github.com/advisories/GHSA-qfc5-mcwq-26q8
* Remove 'format=raw' from the Qemu options of the disk interfaces. Ref #1699
* Allocate application IDs for IOU nodes on the controller. An application ID is used by IOU to generate its interface Mac addresses. They must be unique across all opened projects sharing the same computes to avoid Mac address collisions.
* Require VirtualBox >= 6.0 on AMD and >= 6.1 on Intel processors (for GNS3 VM only). Fixes #1610
* Add nvme disk interface and fix scsi disk interface for Qemu VMs.
* Disallow using "legacy networking mode" with Qemu >= 2.9.0
* Add latest Qemu nic models.
* Attempt to fix error when loading wmi module. Fixes #1712
* Handle "aborted" state for VirtualBox VMs. Fixes #1702
* Handle builtin entry does not exist when adding node from template.
* Upgrade aiohttp to version 3.6.2
* Fix issue when linking to more than one NAT node with allowed_interface option enabled. Fixes #1671
* Prevent deleting a GNS3 project outside the project directory. Ref #1669
* Do not send "console_type" property to computes for all builtin nodes excepting Ethernet switches. Fixes https://github.com/GNS3/gns3-gui/issues/2882
* Fix QEMU link detection flaky on last port. Fixes #1666
* Use compatible shlex_quote to handle case where Windows needs double quotes around file names, not single quotes. Ref https://github.com/GNS3/gns3-gui/issues/2866
* Use 0.0.0.0 by default for server host. Fixes https://github.com/GNS3/gns3-server/issues/1663
* Improvement to validate HTTP authentication config. Ref #1662
* Use versioned config directory for profiles. Fixes #1664
* Enable nested hardware virtualization by default for GNS3 VM running in VirtualBox. Fixes #1377 No error is sent by VBoxManage is this feature is not available, for instance with Intel processors.
* Set default host to "localhost". Fixes https://github.com/GNS3/gns3-server/issues/1663
* Improve process to get guest IP address from GNS3 VM running in VMware workstation/player. Ref https://github.com/GNS3/gns3-gui/issues/2866
* Fix error with console type in Ethernet switch schema. Fixes #1659
* Revert "Force aiohttp version to 2.3.10 and aiohttp-cors version to 0.5.3" Ref https://github.com/GNS3/gns3-server/issues/1583 Ref https://github.com/GNS3/gns3-server/issues/1592
* Fix invalid reStructuredText for long description in setup.py
* Change behavior when an IOU license is verified. Fixes https://github.com/GNS3/gns3-server/issues/1555
* Fix Qemu VM state support after closing a project and check for JSON data returned by qemu-img. Fixes #1591
* Ensure Qemu monitor commands are executed. Ref #1582.
* Set console type to "none" by default for Ethernet switches and add a warning if trying to use "telnet". Fixes https://github.com/GNS3/gns3-gui/issues/2776
* Add %console-port% variable for additional Qemu options. Fixes https://github.com/GNS3/gns3-gui/issues/2786
* Fix invalid reStructuredText for long description in setup.py
* Support for additional persistent docker volumes
* Force aiohttp version to 2.3.10 and aiohttp-cors version to 0.5.3 This is to fix build issue for Ubuntu 19.04 package on Launchpad. Ref #1583 https://github.com/GNS3/gns3-gui/issues/2774
* Use the full version number for path to config files. Ref https://github.com/GNS3/gns3-gui/issues/2756
* Support for docker images that set the USER directive. Changes the docker user to root for the init script to configure the network, then drops to the configured user (or root if one is not defined) for continuing booting the image.
* Fix packet filter not working for Ethernet switch and Ethernet hub. Fixes https://github.com/GNS3/gns3-gui/issues/2754
* Fix remote packet capture for Dynamips.
* Fix remote packet capture and make sure packet capture is stopped when deleting an NIO. Fixes https://github.com/GNS3/gns3-gui/issues/2753
* Fix issue when loading and quickly closing a project and opening it again. Fixes #1501.
* Disable unreliable nested virtualization check.
* Fix issue not checking build number on Windows.
* Change Hyper-V requirement checks.
* Early support for symbol themes.
* Re-order handlers in order to prevent CORS
* Download custom appliance symbols from GitHub Fix symbol cache issue. Ref https://github.com/GNS3/gns3-gui/issues/2671 Fix temporary directory for symbols was not deleted Fix temporary appliance file was not deleted
* Option to export snapshots.
* Support tags versioned WebUI when bundling
* Support selecting a compression type when exporting a project.
* Change how VPCS executable is searched.
* Use aiofiles where relevant.
* Update paths for binaries moved to the MacOS directory in GNS3.app
* Locked state should not be used when duplicating a node.
* Handle locking/unlocking items independently from the layer position.
* Tune how to get the size of SVG images. Ref https://github.com/GNS3/gns3-gui/issues/2674. * Default for missing height/width is "100%" as defined in the SVG specification * Better error message, if viewBox attribute is missing * Removal of "%" in percent more fault tolerant by using rstrip("%")
* Fix issue with coroutine not awaited. Fixes #1499
* Remove "deprecated" node for VirtualBox based GNS3 VM support. Ref #1377
* Fix wrong controller method call.
* Move appliance and template management code in their own classes.
* Try to delete saved VM state only if a snapshot has been saved.
* Set socket options SO_KEEPALIVE and TCP_NODELAY for embedded Telnet server. Ref #1335
* Fix issue with notification queue that prevented to properly close projects. Fix #1493
* Fix issue with "usage" variable for Dynamips VMs. Fixes #1495
* New node information dialog to display general, usage and command line information. Ref https://github.com/GNS3/gns3-gui/issues/2662 https://github.com/GNS3/gns3-gui/issues/2656
* Support "usage" field for Dynamips, IOU, VirtualBox and VMware. Fixes https://github.com/GNS3/gns3-gui/issues/2657
* Automatically create a symbolic link to the IOU image in the IOU working directory. Fixes #1484
* Merge remote-tracking branch 'origin/2.1' into 2.1
* Fix link pause/filters only work for the first interface of Docker containers. Fixes #1482
* Fix ConnectionResetError issues and switch to aiohttp version 3.4.4. Fixes #1474.
* Fix server authentication.
* Fix issue when there is no gns3_controller.conf. Fixes https://github.com/GNS3/gns3-gui/issues/2644
* Fix non responsive console for Docker VMs. Fixes https://github.com/GNS3/gns3-gui/issues/2645
* Back to classic symbol theme. Ref https://github.com/GNS3/gns3-gui/issues/2644
* docker_vm: fix x11vnc not starting
* Use "template" to name what we use to create new nodes.
* Use project instead of topology where appropriate.
* Make sure nothing is named "compute server".
* Allow usage property in Docker appliance.
* Use "node" instead of "appliance" for grid support.
* Telnet console resize support for Docker VM.
* Allow appliances to be loaded from file without the appliance id.
* Update schema to allow for drawing grid size to be part of project.
* Avoid _fix_permissions() to be called twice when stopping Docker VM. Ref #1428
* Fix _fix_permissions() garbles permissions in Docker VM. Ref #1428
* Fix "None is not of type 'integer'" when opening project containing a Qemu VM. Fixes #2610.
* Remove useless warning.
* Normalize symbol ID on Windows.
* Use POSIX path for symbol ID.
* Early support for symbol themes.
* Fix broken examples in API documentation.
* Add more information about appliances to the API documentation.
* Use Python3.6 to build the API documentation.
* Add missing files for API documentation.
* Restore previously removed test.
* Update API documentation for appliance endpoints. Ref https://github.com/GNS3/gns3-gui/issues/2630
* Require privileged access for uBridge when using VMware VMs and Docker containers. Fixes #1461.
* Only require privileged access for uBridge when connecting a cloud to an Ethernet/TAP interface. Fixes #1461.
* Allow virtual machines to use files in project directory as disk images.
* Support to duplicate an appliance.
* Fix mac address schema validation for Qemu VM appliance. Fixes https://github.com/GNS3/gns3-gui/issues/2629
* Support "L1 keepalives" in IOU appliance schema.
* Remove problematic test when run on Travis.
* Change test that randomly fails on Travis.
* Fix small bugs when using the new appliance management API.
* Fix bug with custom adapters and categories for Docker VM. Fixes https://github.com/GNS3/gns3-gui/issues/2613
* Handle custom adapters in schemas.
* Reorganize how appliance creation is validated against JSON schemas. This allows for clearer error messages when validation fails.
* Use schema to set appliance default values and better schema validation error messages.
* Schema validation for appliance API. Ref #1427.
* Remove generic controller settings API endpoint.
* Working dedicated appliance management API. Ref https://github.com/GNS3/gns3-server/issues/1427
* Support Xtigervnc restart.
* Only require Xtigervnc or Xvfb+x11vnc for Docker with vnc console. Ref #1438
* Support tigervnc in Docker VM. Ref #1438
* Base for dedicated appliance management API. Ref https://github.com/GNS3/gns3-server/issues/1427
* Reorder routes in order to get working CORS
* Fix CORS response on node deletion, Fixes: #1446
* Disable CORS cache, Fixes: #1445
* Refactor how clients access PCAP capture files. Fixes https://github.com/GNS3/gns3-gui/issues/2438.
* Remove static dir configuration
* FIX PUT CORS for nodes, Fixes: #1434
* Fix installation with Python 3.7. Fixes #1414. Fix deprecated use of aiohttp.Timeout. Fixes #1296. Use "async with" with aiohttp.ClientSession(). Make sure websocket connections are properly closed, see https://docs.aiohttp.org/en/stable/web_advanced.html#graceful-shutdown Finish to drop Python 3.4.
* Drop Python 3.4 and switch to async / await syntax for asyncio. Fixes #1425
* Added "/sbin" to init script PATH variable so that its possible to use more sophosticated dhcp clients (compared to the udhcpc that is provided by busybox) by installing them into the docker image in the normal way.
* Notify users if x11vnc process has crashed. Fix #1401.
* Return compute port information via API. Ref #1420.
* Fix platform.linux_distribution() is deprecated. Fixes https://github.com/GNS3/gns3-gui/issues/2578
* Update minimum VIX version requirements for VMware. Ref #1415.
* Include HTTP error code when reporting an error while download appliance templates from GitHub repository.
* Optimize appliance templates update from GitHub repository by only downloading when the repository has been updated. Ref https://github.com/GNS3/gns3-gui/issues/2490
* Fix appliance template tests.
* Update appliance templates from online registry. Ref #2490.
* Add missing doc pages.
* Update docs for controller_notifications and project_notifications.
* The server has now 2 notification streams * A new one for controller related events (compute, appliance templates etc.) * The existing one for project related events (links, nodes etc.)
* ACPI shutdown for GNS3 VM running on Hyper-V. Ref https://github.com/GNS3/gns3-gui/issues/763
* Hyper-V support for GNS3 VM. Fixes https://github.com/GNS3/gns3-gui/issues/763
* Get IP address from guest Hyper-V VM. Ref https://github.com/GNS3/gns3-gui/issues/763
* Early Hyper-V support to run the GNS3 VM. Ref https://github.com/GNS3/gns3-gui/issues/763.
* Add appliance UUID added to the node data. Fixes #1334.
* Clean GNS3 close if one remote server is down. Fixes #1357.
* Mark VirtualBox support for running the GNS3 VM as deprecated. Ref #1377.
* Change default z value for nodes to 1
* Re-enable static directory
* Disable static/ dir, Ref: #2532
* Fix tests on Windows
* Use mocked dir for web-ui redirection test
* Use mocked dir of web-ui for tests
* Gitkeep for web-ui directory
* Serve WebUI handlers and update-bundled-web-ui script, Ref: #1362
* Support /static/ files serving, Ref: #1362
* Console support for clouds (to connect to external devices or services).
* Fix switching console type from telnet to VNC throws error. Fixes #2489.
* Fix saved VM state was not deleted correctly.
* Fix problem with VM saved stated.
* Returns the ports' adapter types and mac addresses when available.
* Support for console auto start.
* Possibility to customize port names and adapter types for Qemu, VirtualBox, VMware and Docker. Fixes #2361. MAC addresses can customized for Qemu as well.
* Allow to have projects with the same name in different locations.
* Save state feature for VirtualBox and VMware. New "On close" setting to select the action to execute when closing/stopping a Qemu/VirtualBox/VMware VM.
* Support for suspend to disk / resume (Qemu).
* Fix bug with 'none' console type for Ethernet switch. Fix some tests related to traceng.
* Allow to resize a Qemu VM disk (extend only).
* Allow to select the default NAT interface in preferences for local server.
* Spice with agent support for Qemu VMs.
* Check if the HAXM service is running when starting a Qemu VM with hardware acceleration. Ref #1242.
* Support for console type "none".
* Support for none console type (Qemu & Docker only)
* Fix bug and add optimizations when connecting and sending commands to QEMU monitor after starting a VM. Fixes #2336.
* Check if HAXM support is installed on macOS. Ref #1242.
* Fix some issues with hardware acceleration support for Qemu.
* Support Qemu with HAXM acceleration. Ref #1242.
* Fix packet filters for Dynamips.
* Fix link filters/suspend tests.
* Improve suspend a link for Qemu and VirtualBox VMs. A suspended link will be unplugged allowing the VMs to be notified of the change.
* Qemu VM support to detect when a link is plugged/unplugged.
* Allow to configure the interface to be used by the NAT node. Fixes #1175.
* Restrict the list of available Ethernet/TAP adapters. Fixes #352.
* Basic project stats.
* Filter snapshots directory during the snapshot, Fixes: #1297
* Calculate MD5 on thread and before json response, Ref. gui#2239
* Cancellable md5sum calculation on thread, Ref. gui#2239
* Compute md5sum on thread and don't block main server, Ref. gui#2239
* Replace asyncio.async with ensure_future because of deprecation, Fixes: #1269
* Refactor asyncio locking system for Python 3.7 support. Ref https://github.com/GNS3/gns3-gui/issues/2566 Ref https://github.com/GNS3/gns3-gui/issues/2568
* Use asyncio.ensure_future() instead of asyncio.async() with conservative approach to support Python < 3.4.4. Fixes https://github.com/GNS3/gns3-gui/issues/2566
* Improve error message when IOU VM process is unexpectedly stopped.
* Improved error message when the number of network adapters is above the maximum for VirtualBox VMs. Better support for potential future chipsets in addition of PIIX3 and ICH9.
* 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.
* 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.
* 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").
* 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.
* 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.
* 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.