What's New in GNS3 1.3.2

Quick Update:

If you encountered issue like

  • "UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte"
  • Virtualbox vm Creation crash
Update to the latest GNS3 1.3.X in the GNS3 forum to resolve this issue.


What's New in GNS3 1.3.2

  • Fixes bug when IOS configs are not in VM settings.
  • Fixes small issue with Qemu VM monitor.
  • Fixes issue when only one port is added after a QEMU VM is created. Fixes #296.
  • Avoid Cygwin warning with VPCS on Windows.
  • Allows the warning message box to be displayed once only when moving an object to a background layer.
  • Check the config path is set when creating a IOU or IOS router.
  • Removes residual link when a NIO cannot be created on the server. Fixes #294.
  • Fix VPCS tests
  • Do not crash if an antivirus intercept a message and send non UTF-8
  • Avoid C++ runtime error when progress dialog is finished.
  • If project loading fail fallback to real temporary project
  • Do not crash if rotation is a string
  • I think it's prevent empty topologies
  • Explicit utf-8 decoding.
  • Fixes rare maximum recursion depth exceeded exception.
  • Check for invalid base VM configuration files.
  • Catch ValueError exception thrown by mmap(): cannot mmap an empty file.
  • Use QThreads the correct way (moveToThread).
  • Fixes broken serial console connection.
  • Fixes "RuntimeError: wrapped C/C++ object ... has been deleted" exceptions with item links.
  • Allows exported config files to be created even when there is no config set on VMs.
  • Do not try to export empty VPCS startup configs.
  • Prevent issues when a file with a simple number is considered valid JSON.
  • Explicit error when mmap throw an invalid argument exception.
  • Do not replace invalid utf-8 characters when reading the iourc file (we catch the exception to tell the user this is an invalid file).
  • Explicit utf-8 encoding where necessary to avoid Unicode errors on Windows (we require/set an utf-8 locale on other systems).
  • Save as dialog opens in the projects directory. Fixes #267.
  • Adds Terminal + nc for serial console connections on OSX. Fixes #228.
  • Improve warning when non unicode char in iourc
  • Crash report not for developers and new key
  • Do not crash if we can't change IOU permission
  • More checks when decompressing IOS images.
  • Warn users that they must provide their router images.
  • Display an error and link to the documentation if no router available
  • Display print() in std console and Qt Console
  • Fix tests and a potential issue where initial_content is not send
  • Fix a crash in Qemu loading
  • Removes unnecessary progress dialog when listing VirtualBox VMs.
  • Fixes issues when pushing configs for Dynamips and IOU.
  • Allow for empty initial-config path for IOU VM templates. Send IOU VM settings while creating it (POST) and not using the update API call immediately after (PUT).
  • Allow for empty startup-config and private-config paths for IOS routers.
  • Send QEMU VM settings while creating it (POST) and not using the update API call immediately after (PUT).
  • Include resources and tests in pypi packages
  • Fix issue during project import on Windows with non local server
  • Cleanup the VirtualBox Media Manager after closing a project.
  • TAP interface support for QEMU VMs.
  • Return an explicit error when a NIO type is not supported by a VM.
  • Check NIO exists when stopping an IOU capture.
  • Fixes c7200 NPE setting.
  • Fixes VPCS process termination.
  • Catch FileNotFoundError exception in os.getcwd()
  • Relative paths management with empty ones.
  • New crash report key and don'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.

From Source: GNS Community

What's New in GNS3 1.3.1

Quick Update:

When using GNS 1.3.1, the QEMU, the option -uuid <uuid> would pass that UUID to the QEMU VM.

What's New in GNS3 1.3.1

  • Fix race condition during old project import
  • Fix an issue with sending iourc when a topologies is reloaded
  • Allow less strict dependencies for easier install
  • Initial config file content of IOU can be empty (fix export issues)
  • Look in old IOU images location in order to smooth transition
  • Do not overwrite initial-config IOU if client send an empty
  • Fix crash when save as can't create a directory
  • Return more information about bad requests for crash reports
  • Fix missing IOU documentation
  • Add missing project name in curl documentation
  • Send HTTP errors 400 to the crash report system
  • Fix documentation about /ports/udp
  • Fix rare occasion when user manage to put text in port field
  • Fix a crash when exporting vpcs startup script
  • Solve issue when iourc contains non ascii characters
  • Handle corrupted zip file with IOS image
  • Don't crash if we try to contact a non GNS3 remote server returning JSON
  • Skip tests in package
  • Check port range
  • Add a warning about too much ram for IOS
  • Fix crash if project is already closed
  • Check if wait for connection thread still running before emitting a signal.
  • Check if process files thread still running before emitting a signal.
  • Fix crash if a dumped topology as no node during save as
  • Fix: remove old ID references for ATM and Frame-Relay switches.

From Source: GNS Community

What's New in GNS3 1.3

Quick Update:
- Optional IOU license key check

What has changed in the GUI?

I will start with the GUI. Essentially we mostly have adapted it to use the new server API, with a proper project management system and we have simplified the preferences a bit, the most noticeable change is the global UDP and console port ranges configuration which is now in the local server section.

Here are a few of the other changes:

"Save as" works

Now "save as" works as expected. It makes a copy of the project under a new name.

GUI preferences are stored in JSON format

The GNS3 preferences will not longer be stored in GNS3.ini or GNS3.conf but in a file named gns3_gui.ini on Windows and gns3_gui.conf on the other platforms. A migration of most of the preferences are done the first time you will start the alpha version.

All communication with servers will display a progress dialog

Previously only few actions displayed a progress dialog. Now all the operations with the server, provided they take more than 1 second, will show a progress dialog.

Revision number in the project file

Inside the project file you can find a revision number. This revision number is the version of the topology (pre 1.0, 1.0 => 1.2, 1.3). This simplify topology upgrades.

Qemu can run on a server without graphical interface

Previously a bug prevented to start Qemu on a server without a graphical interface.

Automated crash reports

In case of crash in the application, we automatically receive an error (sent to http://getsentry.com). This will help us finding out about new bugs and  prioritize them. This option can be disabled in the GNS3 preferences.

Automatically export IOS configurations when a project closes

IOS configs like the startup-config are automatically extracted from router nvrams when the project is closed. Now with this feature, a user just have to save the running configuration in IOS like it is done on a real network device.

Consoles open in alphanumerical order

The consoles will be opened in the node name alphanumerical order which is useful when using multi-tab terminal software.

 What has changed in the server?

The server is where we have spent most of our time re-factoring. While things are not yet perfect, we believe we have chosen the right technologies and tools.

One process instead of multi-process

The previous server was multi-process which was overkill because most of the CPU-bound work is done by emulators (Dynamips, Qemu etc.). It was a nightmare to maintain too and not very scalable (one process = one supported emulator). The new server uses an asynchronous I/O architecture which is really fast and has simplified a lot of code and allowed us to remove heavy dependencies like ZeroMQ.

HTTP REST API instead of WebSockets

A HTTP REST API replaces the previous WebSockets API which is much easier to use by third parties.

API documentation

GNS3 now have a documentation of their API (which is still work in progress).

Server.conf

Now the settings for the server are stored in a file named server.conf (server.ini on Windows) in the GNS3 configuration directory. If you change something in the server.conf the server will reload the config without restarting the server. This is how settings are passed from the GUI to the local server. We have plans to document all the configuration possibilities of this file (essential for remote server configuration).

Temporary projects are real project

Previously temporary projects were a hack, now they are real projects on disk. You will see temporary projects with a strange name in your ~/GNS3/projects directory until you quit GNS3. If GNS3 crashes the directory will be deleted on the next launch.

Use of UUIDs instead of numeric identifiers

We have replaced the use of auto incremented numeric IDs by UUIDs (Universally unique identifier) this guarantee the identifier of a VM or a project is unique on the user's machine, on multiple servers and across all GNS3 users (collision is possible but very very unlikely).  It will be easier to share projects and move resources across servers (for the cloud).

Remote servers are fully supported

Remote servers work as expected, including projects.

Optional IOU license key check

The server will check if the iourc file is correctly formatted and if your IOU license is valid. This can be deactivated.

From Source: GNS Community