From Fedora Project Wiki

No edit summary
 
(16 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{header|docs}}{{Docs_beat_open}}
{{header|docs}}
[[Category:Docs Project]]
[[Category:Draft documentation]]
[[Category:Documentation beats]]
== jQuery ==


jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers. With a combination of versatility and extensibility, jQuery has changed the way that millions of people write JavaScript.
{{Docs_beat_closed}}


Traditionally, a copy of jQuery has been included with every web application that requires it. Starting with Fedora 21, many of those applications have migrated to a shared system copy of jQuery.
== PHP 7.0 ==
The PHP language libraries available from Fedora are now updated to version 7.0 of the popular web development language.  Much of the packaging work has been proven by veteran packager and PHP expert Remi Collet in his [http://rpms.remirepo.net/fedora/24/php70/x86_64/repoview/letter_p.group.html php70 repository for Fedora 24] and will now be available in the official Fedora 25 repositories.


If you're developing an application that uses jQuery on Fedora and don't want to download your own copy or rely on a third-party CDN, you can now install one of our jquery packages and use it instead.  You can find the 1.x branch of jQuery that supports Internet Explorer 6 in the js-jquery1 package, and the 2.x branch of jQuery that only works with modern web browsers in the js-jquery package.  For more information on using these packages in your applications, see https://fedoraproject.org/wiki/Web_Assets.
=== Migrating from legacy PHP ===
Early adopters of PHP 7.0 have reported substantial performance gains and reduced resource consumption, but many projects developed for PHP 5.x are not fully compatible with the newer version of the language.  For guidance on migrating their applications, developers should refer to upstream documentation:


== PHP 5.6 ==
- http://php.net/manual/en/migration70.php
- https://raw.githubusercontent.com/php/php-src/PHP-7.0/UPGRADING
- https://raw.githubusercontent.com/php/php-src/PHP-7.0/UPGRADING.INTERNALS


The PHP stack has been updated to version 5.6, the latest upstream version. The important changes in this new version include:
Consumers of popular CMS platforms such as Wordpress or Joomla should evaluate both the platform and any extensions or plugins they use.  PHP projects packaged by Fedora have been evaluated by the [https://fedoraproject.org/wiki/SIGs/PHP Fedora PHP Special Interest Group] but plugins and the like from other sources may not be compatible.


*Security:
=== PECL Extensions ===
**[https://wiki.php.net/rfc/tls-peer-verification TLS Peer Verification]
The move to PHP 7 brings new features, but many extensions to the language have not been updated for it, or have not been actively maintained.  While the **PHP SIG** strives to maintain a complete collection of PHP extensions in Fedora, some packages will be dropped due to incompatibility or lack of maintenance.  The [https://apps.fedoraproject.org/packages/ Fedora Packages App] provides up to date information on the state of Fedora's packages; retired extensions will show 'None' for their latest released version, or developers can refer to the [http://rpms.famillecollet.com/rpmphp/rpm.php?type=pecl status page] maintained by Remi.
**[https://wiki.php.net/rfc/improved-tls-defaults Improved TLS Defaults]


*Language improvements:
**[https://wiki.php.net/rfc/const_scalar_exprs Constant Scalar Expressions]
**[https://wiki.php.net/rfc/argument_unpacking Argument Unpacking]
**[https://wiki.php.net/rfc/variadics Syntax for variadic functions]
**[https://wiki.php.net/rfc/pow-operator Power Operator]
**[https://wiki.php.net/rfc/use_function Importing namespaced functions]


*New tool:
[[Category:Docs Project]]
**[https://wiki.php.net/rfc/phpdbg PHP debugger] provided in the new '''php-dbg''' subpackage (phpdbg command)
[[Category:Draft documentation]]
 
[[Category:Documentation beats]]
== Ruby on Rails 4.1 ==
 
Fedora 21 includes Ruby on Rails 4.1, the latest version of the well-known web application framework written in Ruby.  Highlights in this release include Spring application preloader, config/secrets.yml, Action Pack variants and Action Mailer previews.  The Release Notes are at http://guides.rubyonrails.org/4_1_release_notes.html.
 
Information for developers upgrading existing applications to Ruby on Rails 4.1 can be found in the Upgrading Ruby on Rails guide at http://guides.rubyonrails.org/upgrading_ruby_on_rails.html.
 
== Web Application Authentication ==
 
At an operating system level, there are numerous authentication and identity lookup mechanisms, some of them using sssd. With new Apache modules and new sssd, some of those mechanisms become more easily consumable by web applications. Web application environments and frameworks can then consume results of the authentication and information retrieval using environment variables similar to REMOTE_USER.  This will allow the better integration of web applications into enterprise-scale deployments.
 
With mod_authnz_pam, PAM authentication and access checks are available to web applications, allowing wider combination of authentication and access controls. One specific target is host-based access control rules of FreeIPA for Kerberos SSO via pam_sss and sssd.
 
The mod_intercept_form_submit module makes it possible to enable the PAM authentication of mod_authnz_pam on normal logon form handling paths, which can then be consumed by web application with fairly minimal changes.
 
The mod_lookup_identity uses sssd-dbus to retrieve additional attributes like name, email address, or group membership, and populates environment variables for easy consumption of this information by web applications.
 
The sssd-dbus implements new service ifp which provides access to additional user-related pieces of information.
 
More information can be found at: http://www.freeipa.org/page/Web_App_Authentication.

Latest revision as of 01:31, 20 September 2016

Beat Closed on Wiki
Work on beats has now moved to git at https://pagure.io/fedora-docs/release-notes. If you have changes or additions, please contact the docs team via #fedora-docs, docs@lists.fedoraproject.org, or with the release-notes BZ component.


PHP 7.0

The PHP language libraries available from Fedora are now updated to version 7.0 of the popular web development language. Much of the packaging work has been proven by veteran packager and PHP expert Remi Collet in his php70 repository for Fedora 24 and will now be available in the official Fedora 25 repositories.

Migrating from legacy PHP

Early adopters of PHP 7.0 have reported substantial performance gains and reduced resource consumption, but many projects developed for PHP 5.x are not fully compatible with the newer version of the language. For guidance on migrating their applications, developers should refer to upstream documentation:

- http://php.net/manual/en/migration70.php - https://raw.githubusercontent.com/php/php-src/PHP-7.0/UPGRADING - https://raw.githubusercontent.com/php/php-src/PHP-7.0/UPGRADING.INTERNALS

Consumers of popular CMS platforms such as Wordpress or Joomla should evaluate both the platform and any extensions or plugins they use. PHP projects packaged by Fedora have been evaluated by the Fedora PHP Special Interest Group but plugins and the like from other sources may not be compatible.

PECL Extensions

The move to PHP 7 brings new features, but many extensions to the language have not been updated for it, or have not been actively maintained. While the **PHP SIG** strives to maintain a complete collection of PHP extensions in Fedora, some packages will be dropped due to incompatibility or lack of maintenance. The Fedora Packages App provides up to date information on the state of Fedora's packages; retired extensions will show 'None' for their latest released version, or developers can refer to the status page maintained by Remi.