From Fedora Project Wiki

Revision as of 20:36, 26 August 2014 by Bancinco (talk | contribs) (Python)

DocsProject Header docTeam1.png
Beat is open
This beat is now ready to have Fedora 25 content added by the beat writer


Python 3.4

With this release, Python has been upgraded to version 3.4, which provides various bug fixes, enhancements and security improvements over the previous version. For example, several new library modules and features have been added and multiple library modules have been significantly improved.

See Python 3.4 Release Schedule and What’s New In Python 3.4 for details.

Python 3 as the default Python implementation

In Fedora 21, the default Python implementation is Python 3. The main reason for this change is that Python 2 is in maintenance mode only and therefore new features are no longer implemented to it. Also, support for Python 2 is guaranteed only until May 2015 but the upstream support for Python 3 is currently not limited by time.

Ruby 2.1

Ruby 2.1 is the latest stable version of Ruby, and brings major increases in speed, memory efficiency, and reliability.

The update brings a soname bump. Therefore, Ruby packages which use binary extensions should be rebuilt. Nevertheless, since upstream payed great attention to source compatibility, no changes to your code should be needed. Additionally, RubyGems with binary extensions need to be updated to conform to the recent package guidelines to ensure compatibility with the new RubyGems release.

Also note that starting with this release, Ruby is adopting semantic versioning.

You can find a full list of changes in Ruby 2.1 in the changelog. Full documentation is available at the Ruby documentation page.

Review Board 2.0

Fedora now provides Review Board 2.0, a powerful, web-based patch review and management tool.

Version 2.0 adds the ability to post committed changes from a branch directly from the web UI, adds review of text file attachments, greatly extends the capabilities of the public API and extension framework, and offers significant performance improvements, usability enhancements, and visual cleanups.

Significant enhancements have been made to the diff viewer, as well as adding support for reviews on non-code files (such as binary file formats).

Documentation for Review Board 2.0 is available at the Review Board Manual website.

Upgrading to Review Board 2.0 from a previous release will modify your database schema. The migration will be performed when you restart Apache for the first time after the upgrade, and the process is irreversible. Back up your database before upgrading.

RPM 4.12

The RPM package manager has been updated to version 4.12, which brings Fedora in line with the latest upstream version.

This update brings a number of improvements, including:

  • Ability to package files larger than 4 GB.
  • Support for weak dependencies. (Note that this does not automatically mean Fedora packages and other tools support this feature.)
  • API users will be able to access file data more cleanly.
  • Payload data is now accessible over the API.
  • A new tool, rpm2archive, will allow converting rpm packages to tar files instead of the outdated cpio format. The new tool will work with files larger than 4 GB, while cpio (and rpm2cpio) does not.

See the RPM 4.12 Release Notes for a full list of changes.

Using some of the new features will break forward compatibility. Packages using these features will not be able be built or be installed on older Fedora versions. Backward compatibility is expected to be maintained.

TCL/TK 8.6

In Fedora 21, TCL/TK has been upgraded to version 8.6.1, which includes numerous bug fixes and enhancements. Some of the notable features include:

TCL 8.6

  • Support for IPv6 networking for both client and server sockets
  • Support for SQL Database - The bundled tdbc package which contains the Tcl DataBase Connectivity interface now enables writing SQL database-powered scripts decoupled from any particular database engine. The bundled sqlite3 and tdbc::sqlite3 packages supply a powerful and popular SQL database engine ready to use.
  • Support for Object Oriented Programming - The commands of the TclOO package are now part of the TCL language itself. This gives TCL a built-in fully dynamic, class-based object system and also includes advanced features such as meta-classes, filters, and mixins. A new version 4 of the popular package Itcl (also known as "incr TCL") is also included, now built on a TclOO foundation, granting support for some traditional Object Oriented TCL programming out of the box as well.
  • Support for multi-thread operations - a thread-enabled default build, a bundled Thread package, and a new command interp cancel enable multi-threaded programming tasks on TCL 8.6

TK 8.6

  • PNG Image Support - Photo images now support read/write in the PNG format, with the ability to set the alpha channel.
  • Angled Text - The new -angle $degrees to $canvas create text option rotates the displayed text.

For the full list of changes, see the TCL/TK Release Notes.


In Fedora 21, the Erlang programming language has been unpgraded to version R17 which provides better integration with the rest of the system. It also includes initial support for Ellyptic Curves (EC), enabling the use of some Ellyptic Curves, which was not possible in the previous version. Other notable changes include:

  • Better interaction with systemd and improved EPMD integration.
  • Centralized unified logging from all Erlang applications.
  • It is now possible to install Erlang without installing the graphical libraries, if the user is not planning to use a GUI on the target machine.
  • Improved packaging process. It now takes less time to package Erlang software for Fedora.
  • rpmlint messages regarding marking architecture-independent packages as architecture-dependent ones have been removed

See the Erlang/OTP 17.1 release article for the full list of changes.