You can still download the distribution package or install the whole framework using
Composer by requiring nette/nette in your composer.json. In addition, you
can use each of the components on its own, without installing the rest of the framework.

Latte

Latte was an integral part of the framework for a long time, and it was integrated with the rest of the framework (mainly with
the Nette\Templating namespace). In the new release, the Latte API was completely rewritten with stand-alone usage
in mind:

Latte now handles template loading and caching. The original FileTemplate and the Nette\Templating
namespaces have been deprecated.

In addition, Nette\Application provides its own Template class, which replaces
FileTemplate, and TemplateFactory, which creates and initializes the templates for use in presenters and
controls.

Tracy

The whole debugger and diagnostics classes were moved to the Tracy namespace. This means that the most important
class, Nette\Diagnostics\Debugger, was renamed to Tracy\Debugger.

Prefix of the CSS classes in the debugger panel was changed from nette- to tracy- and the
nette-toggle-collapsed CSS class was replaced by the pair of tracy-toggle and
tracy-collapsed. In old extensions, these classes are automatically rewritten.

Other Changes

Classes ArrayHash, ArrayList, DateTime, Image and ObjectMixin
are now part of the Utils package and they were moved from Nette to the Nette\Utils
namespace. NetteLoader automatically creates aliases for these classes so they can be referenced by their old name.
Aliases for other renamed classes are created at run-time (i.e. during the auto loading), and a warning is raised each time you
use class by its old name.

Nette\Utils\MimeTypeDetector class was deprecated, the Fileinfo should be used directly since PHP 5.3.

Support for @serializationVersion annotation and custom annotation classes lookup was dropped, since it was not
used and only decreased the application performance.

When an error during link creation occurs, the returned path starts with #error: instead of error to
prevent browser errors. If you are using CSS to highlight incorrect links, please update your CSS styles for invalid
links.

New Features

The do parameter for forms is now transferred in the POST data to keep the URL more user-friendly.
The form values are passed as the second parameter to the onSuccess callback, to spare you from writing
$form->getValues(); in each form handler. New validators, Form::MIN and Form::MAX, were
introduced.

data- attributes in Nette\Utils\Html now accepts arrays. They will be automatically encoded
to JSON.

@inject annotations now respect aliases defined by use statements. This means you are no longer
required to write fully qualified names when injecting dependencies.

Class Nette\Security\Passwords with static
methods for password hashing and verification was introduced. This class uses bcrypt algorithm and requires PHP 5.3.7 or higher.
The bcrypt algorithm is more secure than traditionally used MD5 and SHA-* hashing, so we recommend using bcrypt functions instead.
Semantics of these functions is compatible with the Password Hashing
extension from PHP 5.5.

Last, but not least, when defining users in the config.neon file, you can specify role for each user: