%META:TOPICINFO{author="ProjectContributor" date="1773573919" format="1.1" version="1"}%
%META:TOPICPARENT{name="ReleaseHistory"}%
---+!! Release Notes 2.1.x

%TWISTY{showlink="Table of Contents..." hidelink="hide TOC"}%
%TOC%
%ENDTWISTY%

---++ Foswiki - The Free and Open Source Wiki

Foswiki is an enterprise collaboration and information sharing tool targeted for professional use in many types of organizations: from small businesses to multi-nationals, from one-product open source groups, to worldwide research networks.

Foswiki is a wiki: fundamentally, a website with editable web pages. It looks like a normal web site but it encourages contributions, edits, updates, questions, and answers from its users. It's a powerful way of enabling a community to communicate asynchronously using intranet and public Internet websites. Foswiki is simple to learn and use. It aims to provide a transparent way for you to publish and exchange your ideas with others over the web and eliminates the one-webmaster syndrome of outdated intranet content.

Foswiki is a structured wiki with tools that enable users without programming skills to build powerful yet simple applications to process information and support workflows. Developers can extend the functionality of Foswiki with plugins.

Foswiki is backwards compatible with content generated on all previous Foswiki versions, and even content and many plugins from TWiki installations (Foswiki ships with a !TWikiCompatibilityPlugin, thus enabling most extensions made for TWiki to work in Foswiki. TWiki<sup>&reg;</sup> is a registered trademark of Peter Thoeny.)

Foswiki is released under the GNU General Public License.

---++ Foswiki Releases

%TWISTY{showlink="Release 1.0 releases..." hidelink="hide Release 1.0"}%
   * Foswiki 1.0.0, the first Foswiki was released on 09 Jan 2009.
   * Foswiki 1.0.1, 1.0.2 and 1.0.3 were released internally in the development community, but were never publicly released.
   * Foswiki 1.0.4 was built 19 Mar 2009. It is a patch release with more than 120 bug fixes relative to 1.0.0 and only very few minor enhancements.
   * Foswiki 1.0.5 was built 25 Apr 2009. It is a patch release with more than 150 bug fixes relative to 1.0.0 and a few enhancements. This patch release further enhances the robustness and the security of the Foswiki software.
   * Foswiki 1.0.6 was built 21 Jun 2009. It is a patch release with more than 200 bug fixes relative to 1.0.0 and some enhancements. This version introduces a major enhancement in security against Cross-Site Request Forgery. Further more a central translation framework got introduced which ease the translation process and enables all users to contribute to translations.
   * Foswiki 1.0.7 was built 20 Sep 2009. It is a patch release with more than 240 bug fixes relative to 1.0.0 and some enhancements. This release fixes some serious issues introduced by the CSRF fix and the redirect cache fix in 1.0.6. Major enhancement that also fixes many annoying editor bugs is the upgrade of the !Tiny MCE editor to version 3.2.2.
   * Foswiki 1.0.8 was built 29 Nov 2009. It is a patch release with more than 280 bug fixes relative to 1.0.0 and some enhancements. This release fixes a short list of quite annoying old bugs incl a bug that prevented efficient use of MailerContrib for producing newsletters. The Wysiwyg editor has been upgraded with the latest Tiny MCE editor release 3.2.7.
   * Foswiki 1.0.9 was built 17 Jan 2010. It is a patch release with more than 320 bug fixes relative to 1.0.0 and several enhancements. This release fixes many bugs in the Wysiwyg editor, bugs related to more advanced wiki applications and bugs in the Plugin API. It contains several bug fixes and enhancements related to security and spam fighting.
   * Foswiki 1.0.10 was built 08 Sep 2010 as a patch release with more than 410 bug fixes relative to 1.0.0. It is assumed to be the last 1.0.X release.
%ENDTWISTY{}%
%TWISTY{showlink="Release 1.1 releases..." hidelink="hide Release 1.1"}%
   * Foswiki 1.1.0 was built 04 Oct 2010. It is a release with more than 270 bug fixes relative to 1.0.10 and more than 680 bug fixes relative to 1.0.0. And the release adds more than 100 enhancements. Foswiki 1.1.0 introduces jQuery Javascript user interface framework, improved topic history display, new QUERY and FORMAT macros, better user interfaces for groups, much improved WYSIWYG editor, facelift of the default skin, much improved configure tool, and many more enhancements.
   * Foswiki 1.1.1 was built 25 Oct 2010. It is a release that fixes some important bugs that were introduced in 1.1.0. It is highly recommended that all running 1.1.0 upgrade to 1.1.1.
   * Foswiki 1.1.2 was built 09 Nov 2010. It is a release that fixes some very important bugs incl. a security related bug. Installations running 1.1.0 and 1.1.1 should be upgraded to 1.1.2
   * Foswiki 1.1.3 was built 16 Apr 2011. It is a release that fixes more than 150 bugs. jQuery has been updated to 1.4.3. The default PatternSkin has some usability improvements.
   * Foswiki 1.1.4 was built 20 Dec 2011. It is a release that fixes some very important including some security related issues. It contains 143 fixes and 27 enhancements. jQuery has been updated to 1.7.1.
   * Foswiki 1.1.5 was built 10 Apr 2012. It is a release that fixes some very important issues including some security related issues. It contains 100 fixes and 20 enhancements.
   * Foswiki 1.1.6 was built 02 Dec 2012. It is a release that fixes some important issues including some minor security related issues. It contains 94 fixes and 27 enhancements.
   * Foswiki 1.1.7 was built 01 Feb 2013. It is a release that fixes *CVE-2012-6329* and *CVE-2012-6330*. It contains 20 fixes and 4 enhancements.
   * Foswiki 1.1.8 was built 28 Feb 2013. It is a release that fixes *CVE-2013-1666*. It contains 4 fixes.
   * Foswiki 1.1.9 was built 18 Nov 2013. It is a release that contains 44 fixes and 4 enhancements..
   * Foswiki 1.1.10 was built 23 Nov 2015. It is a release that contains 8 fixes and 8 enhancements.
%ENDTWISTY{}%
%TWISTY{showlink="Release 2.0 releases..." hidelink="hide Release 2.0"}%
   * Foswiki 2.0.0 was built on 04 Jul 2015. It is a release that contains 312 fixes and 157 enhancements, and closes 59 Feature Requests.
   * Foswiki 2.0.1 was built on 03 Aug 2015. It is a release that contains 28 fixes and 3 enhancements.
   * Foswiki 2.0.2 was built on 01 Oct 2015. It is a release that contains 65 fixes and 5 enhancements.
   * Foswiki 2.0.3 was built on 15 Nov 2015. It is a release that contains 17 fixes and 1 enhancement.
%ENDTWISTY{}%
   * Foswiki 2.1.0 was built on 02 Feb 2016. It is a release that contains 37 fixes and 14 enhancements. It closes 7 Feature Requests.
   * Foswiki 2.1.1 was built on 30 Apr 2016. It is a release that contains 36 fixes and 21 enhancements.
   * Foswiki 2.1.2 was built on 02 May 2016. It is a release that contains 1 fix.
   * Foswiki 2.1.3 was built on 12 Feb 2017. It is a release that contains 68 fixes and 21 enhancements.
   * Foswiki 2.1.4 was built on 31 May 2017. It is a release that contains 31 fixes.
   * Foswiki 2.1.5 was built on 22 Jan 2018. It is a release that contains 43 fixes and 5 enhancements.
   * Foswiki 2.1.6 was built on 27 Feb 2018. It is a release that contains 11 fixes, including some critical security related fixes.
   * Foswiki 2.1.7 was build on 29 Mar 2022. It contains 119 fixes, including 7 critical security fixes.
   * Foswiki 2.1.8 was build on 06 Aug 2023. It contains 61 fixes, including 9 critical security related fixes
   * Foswiki 2.1.9 was build on 18 Dec 2024. It includes 57 fixes.
   * Foswiki 2.1.10 was build on 18 Dec 2025. It includes 59 fixes, including 4 critical security related fixes.
   * Foswiki 2.1.11 was build on 15 Mar 2026. It includes 18 fixes, including 3 critical security related fixes.


---++ Pre-installed Extensions

Foswiki 2.1 is shipped with the following:
   * *Plugins:* AutoViewTemplatePlugin, CommentPlugin, ConfigurePlugin, EditRowPlugin, EmptyPlugin, HistoryPlugin, HomePagePlugin, InterwikiPlugin, JQueryPlugin, NatEditPlugin, PreferencesPlugin, PubLinkFixupPlugin, RenderListPlugin, SlideShowPlugin, SmiliesPlugin, SpreadSheetPlugin, SubscribePlugin, TablePlugin, TinyMCEPlugin, TwistyPlugin, UpdatesPlugin, WysiwygPlugin
   * *Contribs:* CompareRevisionsAddOn, FamFamFamContrib, FastCGIEngineContrib, JEditableContrib, JSCalendarContrib, JsonRpcContrib, MailerContrib, ModPerlEngineContrib, PlainFileStoreContrib, RCSStoreContrib, TipsContrib, TopicUserMappingContrib
   * *Skins:* PatternSkin
   * *Compatibility support* - TWikiCompatibilityPlugin

---++ Known issues
For up-to-date information, see [[https://foswiki.org/Support/KnownIssuesOfFoswiki02x01][Known issues of Foswiki 2.1]]

---+++ Use of non-default ={Store}{Encoding}=

*WARNING* About ={Store}{Encoding}=: If you intend to use high-bit characters in attachment filenames (such as umlauts and accents), then links to these
attachments on Foswiki pages *will not work* on a non-utf-8 Store without modification. This is because Foswiki works internally using Unicode, but the store saves files to disk using your chosen
{Store}{Encoding}. Running the Store with other than =utf-8= encoding is considered a transitional step and not recommended for long-term operation.
The *strongly recommended* solution is to convert your store to UTF8 at the earliest opportunity.

A partial workaround is implemented in the PubLinkFixupPlugin This Plugin will attempt to rewrite broken links.  This _generally_ gets linked images and other attachments working.
However the TinyMCEPlugin is still unable to render image links while editing a topic.

See [[%BUGS%/Item13696][Item13696]] for up-to-date details.

---++ Important changes in Foswiki 2.1.10

Important security fixes:

   * [[https://foswiki.org/Tasks/Item15458][Item15458: Ignore remote "Host" Header by default (OWASP: Host Header Attack)]]
   * [[https://foswiki.org/Tasks/Item15507][Item15507: cross site scripting vulnerability in a paged search]]
   * [[https://foswiki.org/Tasks/Item15508][Item15508: content spoofing vulnerability in password reset procedure]]
   * [[https://foswiki.org/Tasks/Item15509][Item15509: cross site scripting vulnerability in attachment comments]]


---++ Important changes in Foswiki 2.1.8

   * [[https://foswiki.org/Support/SecurityAlert-CVE-2023-24698][CVE-2023-24698]]: Local file inclusion vulnerability in viewfile
   * [[https://foswiki.org/Support/SecurityAlert-CVE-2023-33756][CVE-2023-33756]]: SpreadSheetPlugin's EVAL feature exposes infromation about paths and files on the server

---++ Important changes in Foswiki 2.1.7

---+++ Multiple cross-site scripting vulnerability in jQuery and jQuery UI

These fixes are described in 

   * [[https://nvd.nist.gov/vuln/detail/CVE-2021-41182][CVE-2021-41182]]: XSS in the `altField` option of the Datepicker widget in jQuery UI &lt; 1.30.0
   * [[https://nvd.nist.gov/vuln/detail/CVE-2021-41183][CVE-2021-41183]]: XSS in `*Text` options of the Datepicker widget in jQuery UI &lt; 1.30.0
   * [[https://nvd.nist.gov/vuln/detail/CVE-2021-41184][CVE-2021-41184]]: XSS in the `of` option of the `.position()` util in jQuery UI &kt; 1.30.0
   * [[https://nvd.nist.gov/vuln/detail/CVE-2016-7103][CVE-2016-7103]]: XSS in closeText option of Dialog in jQuery UI &lt; 1.12.0 
   * Fixes for [[https://www.cvedetails.com/cve/CVE-2015-9251/][CVE-2015-9251]] and [[https://www.cvedetails.com/cve/CVE-2019-11358/][CVE-2019-11358]] have been backported from jquery-3.x to jquery-2.x which is being used by default

---+++ Regular Expression Denial of Service vulnerability in jquery.validate

Details in CVE-2021-21252

---+++ Possible server site request forgery exposing the session id

For decades Foswiki and TWiki had ways to access the session id of a user and make it available on a wiki page using the =%SESSIONID= macro. 
Anybody that has got access to a session id can use this session in behalf of the user that is associated with it.
There are multiple ways to leak this information to the outside using this macro. Therefore the two related macros =%SESSIONID= and =%SESSIONVAR=
are deprecated for security reasons and have been disabled by default using the ={Sessions}{HideSessionVariable}= setting. Note that these macros
will be removed completely in the next minor release.

---+++ QUERY macro does not check access rights

While macros such as =%FORMFIELD= only allowed access only to information the current user has got view rights for, the =%QUERY= macro does __not__.

---+++ Reimplementation of =livequery= using mutation observer

The =LiveQuery= module is at the core of Foswiki's javascript framework, alas was abandoned upstream. In the meantime modern browsers now
all support a feature called "mutation observer" to monitor changes to the DOM in an efficient standardized way. Thus a new module called =Observer= has been implemented 
on this base to initialize javascript modules in a declarative way as it has been done before using =LiveQuery=.
---++ Important changes in Foswiki 2.1.6

---+++ CVE-2018-7446

This is a critical Security Release, addressing CVE-2018-7446. In addition to installing this patch release, site adminstrators should follow the
recommended changes in Support.SecurityAlert-CVE-2018-7446 to ensure that certain critical topic are protected.

---+++ Additional default topic protections

A number of "operational" topics shipped in the Main and Sandbox web are not
protected from modifications by users. This release adds an ACL to most of the
default topics shipped in the Main and Sandbox webs to restrict modifications
to the Admin group.

The =_default= template web does not provide individual topic protections. The site
administrators should customize the desired permissions before allowing users
to create new webs.

---+++ Issues with NatEditPlugin Permissions tab not supporting certain ACLs.

It was discovered that the NatEditPlugin under some conditions will lose topic ACLs:
   * When a topic is copied, the ACLs in the source topic are not applied to the new topic.
   * If a topic contains crafted ACLs set using the  =More topic actions= -> =Edit settings= dialog, they can be lost when the topic is edited by NatEdit.  Specifically:
      * DENYTOPIC* ACLs (except for DENY = WikiGuest)  are not supported by NatEdit and were silently discarded.
NatEditPlugin version 9.21 (shipped with this release) resolves this issue by disabling the "Permissions" tab when unsupported ACLs are detected.a

---+++ Support for CaptchaPlugin in User Registration

A change has been made to the =validate.js= javascript used by the !UserRegistration page. This will permit easier integration
of the [[%FO%/Extensions/CaptchaPlugin][Captcha Plugin]] to the default user registration page.

---++ Important changes in Foswiki 2.1.5

---+++ New zone added as a default zone.

The =body= zone has been added as a default zone.  It is rendered at the end
of the body, just before the =&lt;body&gt;= tag.  This improves compatibity of PatternSkin with Foswiki:Extensions.NatSkin. A number of extensions released for !NatSkin will not
function correctly without this zone.   No changes are required unless you
have replaced the =foswiki.tmpl= or =foswiki.pattern.tmpl= with a local
version.

---+++ Additional support for Proxy configurations.

Foswiki has a new option under bin/configure -&gt; Security and Authentication -&gt; Proxies: ={PROXY}{UseForwardedHeaders}=.  Enable this setting
if the Foswiki is accessed through a reverse proxy. Foswiki will the use the =X-Forwarded-For= header to determine the Client IP address.  This has several effects:
   * Foswiki will log the real Client IP address instead of the address of the reverse proxy server.
   * Session IP matching will use the real client IP when determining if the CGI Session is for the correct client.
   * Plugins that perform security functions based upon the IP address will see the real client IP address.
This setting should only be enabled if the majority of the clients access the server via the reverse proxy.  It is possible for clients to spoof the
=X-Forwarded-For= header, so only enable this setting when appropriate to avoid client IP Address spoofing.

---+++ Change in HTTP status return for authentication failures.

The fix for [[%BUGS%/Item14445][Item14445]] changes the HTTP status return for authentiation errors from =401 - Unauthorized= to =200 - OK=
when returning the Template Login screen. The 401 status is not valid unless it returns a WWW-Authentication challenge that can be processed by the
_agent_. This is only valid when using HTTP authentication. The REST and JSONRPC actions will still return a 401, so that it can be handled by javascript.

*Note:* This change requires a corresponding fix for the !LdapContrib.  If you use the !LdapContrib, you should not apply this release until an update of
!LdapContrib is available.

---+++ Running Foswiki on a Windows based web server

This release fixes a critical error that prevented Foswiki from being installed on Windows.  Foswiki mistakenly used a reserved filename for
a module which blocked installaion on Windows.   This has been corrected in this release.

---++ Important changes in Foswiki 2.1.3

---+++ Security issues addressed in this release.

This release addresses 7 Severity 3 security vulnerabilities which are described in further detail
in [[https://foswiki.org/Support/SecurityAlert-XSSIssues-2017-0201][Support.SecurityAlert-XSSIssues-2017-0201]].
See [[https://foswiki.org/Development/SecurityAlertProcess][Security Alert Process]] for more details on how the Foswiki project handles security issues.

---+++ Possible data loss in DataForms

A possible data loss issue was discovered in DataForms migrated from Foswiki 1.x. A new configuration setting (={LegacyFormfieldNames}=) was added to restore the old Foswiki 1.x behavior.

If your site uses DataForms that use non-Ascii field names, the form data will require manual migration, or you must enable ={LegacyFormfieldNames}= in
the configuration.
   * Releases prior to Foswiki 2.0 stripped characters other than A-Z, a-z, 0-9 and _.  So a field named =F&uuml;hler= would be stored as =Fhler=.
   * The same DataForms definition on Foswiki 2.0 would be stored as =F&uuml;hler=.
With the mismatch of field name, the form field will be lost when the topic is saved.

If you do not enable ={LegacyFormfieldNames}=, then you will need to find and update the =META:FIELD= definitions in the topics. This would need to be done external to Foswiki.
<pre>
  %<nop>META:FIELD{name="Fhler" title="F&uuml;hler" value="123"}%
</pre>
would need to be changed to
<pre>
  %<nop>META:FIELD{name="F&uuml;hler" title="F&uuml;hler" value="123"}%
</pre>

See [[%BUGS%/Item14256][Item14256]] for more details.

---+++ Cookie changes

The optional (expert) configuration parameter ={Sessions}{CookieRealm}= now applies to the Domain of all cookies generated by the Foswiki core. In addition, if your site is accessed
over HTTPS, all cooikes will now have the =Secure= flag set.   In prior releases, only the Foswiki session cookie used the =CookieRealm= and =Secure= flag. After upgrade to 2.1.3, users may
lose saved preferences and/or fail strikeone validation due to the cookie domain change.  If using a non-default =CookieRealm= setting, users may need to delete all domain cookies after this update.

---+++ User Registration

The stored format of pending registrations has been changed to perl "Storable" in order to better support Unicode user names and other registration fields.
As this format is binary and not generally human readable, a new report: [[System.PendingRegistrations]] has been added.  It shows registrations that are
awating email verification and registrations awating approval.  Registrations awaiting approval can be directly approved from the new page.

Any existing pending registrations should be resolved prior to upgrading to Foswiki 2.1.3.  Existing submissions will be lost.

---+++ Usability on small screens

A user contributed !WebSideBar toggle button can be enabled.  This renders a small "hamburg" icon to restore the side bar when viewing
Foswiki on a small device.  See [[System.PatternSkinCssCookbookSidebarToggle]].

---+++ Configuration bootstrap

Bootstrap should be able to detect operation behind a proxy server, and will try harder to get the protocol (HTTP or HTTPS) and the hostname used by the user
correct.  If bootstrap fails to properly set up a proxy configuration, we would appreciate bug reports that will help us improve operation.  Note that 
operation behind a chain of multiple proxy servers is not currently detected.

---+++ Page cache tuning.

A new optional (expert) configuration parameter ={Cache}{TrackInternalLinks}=
is available for tuning how the cache tracks dependencies of topic references.
Default is =on= which is the same as prior releases.  Foswiki will record
every topic link as a dependency.   This can result in extrememly large cache
dependency tables, especially when using a WebLeftBar that displays a large
number of webs and/or topics.

Set this to =authenticated= to track these topic references only for logged in
users.  Set to =off= (not recommended) to disable all reference link tracking.

The side effect of not tracking a link dependency is that cached pages will
not reflect updates that remove or add a topic.

Note that the PageCache should be globally flushed whenever any configuration
changes are made, or after updating Foswiki or any Extensions.

---+++ JQuery
This release updates to a newer maintenance version of JQuery.  You should
visit =bin/configure= and select the updated versions of JQuery.

---++ Important changes in Foswiki 2.1.1
---+++ Page Caching
The Foswiki PageCache has added another index on the dependencies table.
After installing this update, you should issue the =refresh=all= option to
drop the foswiki cache tables, and allow them to be recreated.  This will
create the new index.

---+++ New CPAN dependency, and foswiki.org changes
Due to upstream changes, the Perl LWP package has been split into two
packages.  You may need to install =LWP::Protocol::https= for https support in
extension installation and accessing remote sites with the INCLUDE macro.

---++ Important changes in Foswiki 2.1

---+++ Deprecations

The =%<nop>HTTP%= and =%<nop>HTTPS%= macros are deprecated and will be removed in a future release.  These macros now restrict the available information to the
=Accept-language= and =User-Agent= headers.  The list of available headers is now configurable.

The PatternSkin created =contentheader= and =contentfooter= as aliases for the =beforetext= and =aftertext= templates and deprecated the older templates.  As
this broke compatibity with other skins, that deprecation has been reversed.  For best compatibiliy continue to use =beforetext= and =aftertext=.

---++ API Change

The Foswiki API version is incremented to version 2.4 in Foswiki 2.1.0.  Foswiki 2.1 permits template names using Unicode characters.

---+++ New Perl CPAN dependencies!
<div class="foswikiHelp">
*Foswiki now requires CPAN:Email::MIME*. Foswiki will be unable to send email without this module. SystemRequirements has more details on CPAN dependencies and
package names for most *nix distributions.
</div>

---+++ Enhanced Registration form

The registration form now accepts the parameter =templatename= to override the default NewUserTemplate.  In addition the registration topics have been
restructured to permit multiple custom registration pages. Customization of the registration form is greatly simplified.

---+++ Easier to restrict access to the System web.

Some sites prefer to block access to the System web documentation for guest users.  Duplicated content can result in lowered search engine rank, so it is
advantageous to restrict access to the System web. Foswiki now includes =ALLOWTOPICVIEW= settings for critical system topics that are required for guest access.

---+++ Changes in permitted characters in topic and attachment names.

Foswiki has split the topic and attachment name filters. The topic name filter has become more restrictive. Attachment names now permit embedded spaces, and
attachments with spaces will no longer be renamed to underscores. If you would prefer to use the old behavior, enable =$Foswiki::cfg{AttachmentReplaceSpaces}=.

<div class="foswikiHelp"> *Action Required:* The colon (:) has been removed from the list of legal characters permitted in topic names.  The colon was in
conflict with the InterWiki links. If your existing topic use the colon in topic names, you should remove the colon from the configuration setting
=$Foswiki::cfg{NameFilter}=.
</div>

---+++ Improvements in International Character Set support

Foswiki 2.1 has further improved support for =utf-8= based character sets. Topics and data forms can use utf-8 characters.  They will be properly rendered and
preserved during edit.   The Foswiki core has been fully converted to utf-8 and unicode. All encoding / decoding is done "at the edge", when reading from
/ writing to the Foswiki store.

   * Foswiki 2.1 International support
      * Emails sent by Foswiki now fully support International Character Sets.
      * Foswiki now uses NFC Normalization of Unicode characters. This greatly improves compatibility with Operating Systems like OSX which use NFD form characters by default.
      * Template names are no longer restricted to ASCII characters. 

   * Foswiki 2.0 International support
      * New sites will use utf-8 by default.  Internationalizaiton should just work.
      * Sites migrating data from a previous installation have two choices:
         * Set ={Store}{Encoding} to match the previous ={Site}{CharSet}=. (Default was =iso-8859-1=)
         * Migrate the data to utf-8 by using the =tools/bulk_copy.pl= script. This is the recommended solution.
      * Support for Locales is still known to have issues.  ={UseLocales}= should not be enabled in the configuration.

<div class='foswikiHelp'>%X% *ACTION REQUIRED* If you are upgrading an existing system, you
should review the existing data and determine if migration to utf-8 should be performed.
See the [[%FO%/System.UpgradeGuide][UpgradeGuide]] for more details. Note that the topic and
attachment name filters no longer filter international characters, so migration to utf-8 is
strongly recommended.

Due to the extensive internal changes, extensions may require changes for
compatibility with this release.
   * See [[%FO%/Support.Utf8MigrationConsiderations][Utf8MigrationConsiderations]] for guidance on upgrading local extensions
   * See [[%BUGS%/Item13483][Item13483]] for known extensions compatibility issues.
</div>

---++ Translation Status

As of this release,
   * Italian and Ukrainian are 100% complete.
   * Traditional Chinese, French and German are >99% complete.
   * Czech, Danish are >95% complete.

For more details on translation status,  see [[%FO%/Community.TranslationTeam][TranslationTeam]] and [[http://translate.foswiki.org/projects/foswiki][Foswiki's Weblate translation server]].
Foswiki thanks the Translators for their efforts.  If you are interesting in helping with the translation, please contact foswiki-translations@lists.sourceforge.net.

---++ Foswiki Release 2.1 Details
---+++ New Features

| [[%FO%/Development.AddConcatOptionToAttrs][AddConcatOptionToAttrs]] | Add +"more" and key+"more" options to Foswiki::Attrs |
| [[%FO%/Development.CompleteMIMESupportInEmail][CompleteMIMESupportInEmail]] | Wrap all outgoing mails into uniform and safe MIME envelope. |
| [[%FO%/Development.CustomNewUserTemplates][CustomNewUserTemplates]] | Enhance register script to specify a =templatetopic= param instead of hard-coded 'NewUserTemplate' |
| [[%FO%/Development.DeprecateHTTPandHTTPS][DeprecateHTTPandHTTPS]] | Deprecate and restrict System.VarHTTP and System.VarHTTPS macros due to security concerns |
| [[%FO%/Development.MakeItEasierToBlockSystemWebGuestAccess][MakeItEasierToBlockSystemWebGuestAccess]] | Simplify hiding the System web documentation. |
| [[%FO%/Development.MakeZonesLessIntrusive][MakeZonesLessIntrusive]] | Make zones less intrusive, especially for non-HTML output |
| [[%FO%/Development.SplitTopicAttachmentNameFilters][SplitTopicAttachmentNameFilters]] | Separate the topic and attachment name filters, allow spaces in attachment names, remove colon from Topic names. |

---+++ Fixes

| [[%BUGS%/Item10916][Item10916]] | Pencils disappear after row move when both js and non-js controls are present. |
| [[%BUGS%/Item11609][Item11609]] | No information how to un-set a topic parent. |
| [[%BUGS%/Item12067][Item12067]] | Removing members via WikiGroups not possible when login name different from WikiName. |
| [[%BUGS%/Item12569][Item12569]] | Sorting in tableplugin is wrong in German. |
| [[%BUGS%/Item13405][Item13405]] | Unicode Normalisation. |
| [[%BUGS%/Item13677][Item13677]] | regression: extension tabs in configure aren't sorted alphabetically anymore. |
| [[%BUGS%/Item13699][Item13699]] | Mail sending fails when non-latin text in utf8 is being sent. |
| [[%BUGS%/Item13857][Item13857]] | Mac OS X RCS "not found" by configure. |
| [[%BUGS%/Item13860][Item13860]] | UploadFilter isn't blocking HTML attachments. |
| [[%BUGS%/Item13863][Item13863]] | FileAttachment: generated filenames are not correct foswiki 2.0.3 mod_cgi, utf-8 store when uploaded from OS X. |
| [[%BUGS%/Item13865][Item13865]] | Configure file permissions checker detects ,pfv directories as possible webs. |
| [[%BUGS%/Item13869][Item13869]] | FoswikiServerInformation warns about undefined variables. |
| [[%BUGS%/Item13870][Item13870]] | RCSStoreContrib configure check error by syntax  shell  command error in RCSChecker.pm. |
| [[%BUGS%/Item13875][Item13875]] | Configure fails to perserve permissions when backing up config. |
| [[%BUGS%/Item13877][Item13877]] | Certificate wizards not functional, always generates CSR,  dependencies not documented. |
| [[%BUGS%/Item13880][Item13880]] | TML rendered in =head= and =script= zones causes malformed html in WebCreateNewTopic. |
| [[%BUGS%/Item13881][Item13881]] | Table header problem in unicode named web/topic. |
| [[%BUGS%/Item13885][Item13885]] | PatternSkin should be backwards compatible to Foswiki 1.1. |
| [[%BUGS%/Item13886][Item13886]] | Default id="foswikiTOC" creates illegal duplicate CSS IDs when multiple TOC macros are present. |
| [[%BUGS%/Item13889][Item13889]] | Processing of dynamically generated META in a new topic template is displayed as plain text until saved. |
| [[%BUGS%/Item13890][Item13890]] | bulk_copy ignores --latest option.  |
| [[%BUGS%/Item13891][Item13891]] | bulk_copy.pl does not copy user information for attachment histories. |
| [[%BUGS%/Item13893][Item13893]] | Performance fixes for Foswiki 2.0.4. |
| [[%BUGS%/Item13894][Item13894]] | RcsStore double-encodes utf8 comments into the attachment revision log. |
| [[%BUGS%/Item13896][Item13896]] | TWISTY incorrectly used in Sandbox.WebHome, generates broken HTML. |
| [[%BUGS%/Item13898][Item13898]] | JQueryAjaxHelper =jumpbox= code does not work with short URLs. |
| [[%BUGS%/Item13899][Item13899]] | save: ignores new topic text if it is empty. |
| [[%BUGS%/Item13900][Item13900]] | Logout redirects to wrong path when ForceDefaultHostUrl is enabled. |
| [[%BUGS%/Item13903][Item13903]] | Redirect for authentication breaks utf8 topic names. |
| [[%BUGS%/Item13906][Item13906]] | EditRowPlugin create table row without spaces. |
| [[%BUGS%/Item13912][Item13912]] | perldoc does not process bulk_copy.pl correctly because of missing POD marker. |
| [[%BUGS%/Item13913][Item13913]] | CLI scripts broken on windows.  setlib.cfg issues "require CGI" which sets binmode on STDIN and breaks prompts. |
| [[%BUGS%/Item13917][Item13917]] | NameFilter not working on 2.0 / 2.1 if configure reset to default is used. |
| [[%BUGS%/Item13924][Item13924]] | Old style UserRegistration pages not working on 2.1 beta 1. |
| [[%BUGS%/Item13925][Item13925]] | Leading spaces in DefaultUrlHost causes malformed URL links. |
| [[%BUGS%/Item13926][Item13926]] | ModPerlEngineContrib is not backwards compatible with Foswiki 1.1.x. |
| [[%BUGS%/Item13927][Item13927]] | Configure rcs checker crashes if configured command is not found. |

---+++ Enhancements

| [[%BUGS%/Item12560][Item12560]] | NameFilter should reject colon, conflicts with Interwiki links.  Restructure filters to improve flexibility. |
| [[%BUGS%/Item13436][Item13436]] | Adding the class parameter to the TablePlugin. |
| [[%BUGS%/Item13444][Item13444]] | Foswiki::Net::getExternalResource does a poor job of parsing URLs. |
| [[%BUGS%/Item13553][Item13553]] | Add form-definition-table template. |
| [[%BUGS%/Item13554][Item13554]] | Foswiki doesn't work with accented Template names. |
| [[%BUGS%/Item13594][Item13594]] | Implement feature AddConcatOptionToAttrs. |
| [[%BUGS%/Item13848][Item13848]] | Deprecate, and restrict HTTP and HTTPS macros. |
| [[%BUGS%/Item13849][Item13849]] | Implement MakeZonesLessIntrusive. |
| [[%BUGS%/Item13854][Item13854]] | Implemement MakeItEasierToBlockSystemWebGuestAccess. |
| [[%BUGS%/Item13864][Item13864]] | Implement CustomNewUserTemplates - Registration can override the template for the user topic. |
| [[%BUGS%/Item13866][Item13866]] | Add a file permission fixer script to tools. |
| [[%BUGS%/Item13867][Item13867]] | bin/upload failed from the command line. |
| [[%BUGS%/Item13874][Item13874]] | Don't encode URLs in links inserted by Upload. |
| [[%BUGS%/Item13914][Item13914]] | rewriteshebang should use setlib,  don't make user enter -I ../lib. |

---++ Foswiki Release 2.1.1 Details
---+++ Fixes

| [[%BUGS%/Item975][Item975]] | BulkRegistration should work with ApacheLogin. |
| [[%BUGS%/Item13795][Item13795]] | Redundant url params generated by %SCRIPTURLPATH macro. |
| [[%BUGS%/Item13941][Item13941]] | %EDITTABLE macro visible in print mode. |
| [[%BUGS%/Item13944][Item13944]] | Foswiki::Func::addToHEAD  (deprecated in 2010) breaks with Foswiki 2.1 Zones rewrite. |
| [[%BUGS%/Item13945][Item13945]] | Software error with Perl 5.10. Can't find Ascii Unicode entity. |
| [[%BUGS%/Item13947][Item13947]] | Issues in Store Implementaton and Cache Implementation checkers. |
| [[%BUGS%/Item13950][Item13950]] | Refresh cache needs better controls, to minimize bot clicks. |
| [[%BUGS%/Item13957][Item13957]] | TinyMCEPlugin does not handle indent correctly. |
| [[%BUGS%/Item13958][Item13958]] | The indent feature with colon does not render an empty line. |
| [[%BUGS%/Item13960][Item13960]] | Wysiwyg editor cannot right align a table cell if the content of the cell is a "0". |
| [[%BUGS%/Item13975][Item13975]] | Do a deep merge gathering foswikiPreferences. |
| [[%BUGS%/Item13989][Item13989]] | When you disable guest sessions you also disable all registration and reset of password. |
| [[%BUGS%/Item13995][Item13995]] | Search  $changes renders a simple summary.   |
| [[%BUGS%/Item13997][Item13997]] | Incorrect assumption about encodings in Foswiki::Store. |
| [[%BUGS%/Item14000][Item14000]] | Wrong row is deleted by EditRowPlugin in full table edit mode. |
| [[%BUGS%/Item14004][Item14004]] | EditRowPlugin textarea doesn't honor the dimensions. |
| [[%BUGS%/Item14008][Item14008]] | Configure checker should warn/error if AutoAttachPubFiles is used with PlainFile store. |
| [[%BUGS%/Item14010][Item14010]] | Add mime type for woff2. |
| [[%BUGS%/Item14011][Item14011]] | Make sure HTTP2 is always compressing HTML.  |
| [[%BUGS%/Item14012][Item14012]] | Prevent page caching under certain conditions. |
| [[%BUGS%/Item14013][Item14013]] | Make sure zones are stable when reloading a page. |
| [[%BUGS%/Item14014][Item14014]] | Comment plugin unable to use template files in hierarchical webs in Foswiki 2.1. |
| [[%BUGS%/Item14022][Item14022]] | All internal links should be changed to https://foswiki.org to avoid redirects. |
| [[%BUGS%/Item14024][Item14024]] | JQueryPlugin (v6.32) might not initialise correctly with current JSON (v2.90) / JSON-XS (v3.02) modules w/o allow_nonref. |
| [[%BUGS%/Item14025][Item14025]] | JsonRpcContrib requires allow_nonref (when using JSON-XS v3.02). |
| [[%BUGS%/Item14032][Item14032]] | INCLUDE doesn't rewrite other webs' links in 2.1. |
| [[%BUGS%/Item14035][Item14035]] | Plain file logger fails to rotate the log. |
| [[%BUGS%/Item14037][Item14037]] | PageCache needs an index on the to_topic field. |
| [[%BUGS%/Item14038][Item14038]] | PageCache generates too many dependencies on System.ParentList. |
| [[%BUGS%/Item14039][Item14039]] | System.SkinBrowser takes too long to render due to Search performance. |
| [[%BUGS%/Item14042][Item14042]] | Typo in JQueryPlugin defaults causes missing jquery version. |
| [[%BUGS%/Item14049][Item14049]] | Configure hangs if URL has a trailing slash. |
| [[%BUGS%/Item14050][Item14050]] | Link to missing topic in WelcomeGuest. |
| [[%BUGS%/Item14051][Item14051]] | Page cache not respecting the Host URL. |
| [[%BUGS%/Item14053][Item14053]] | Registration confirmation emails BCC the Webmaster. Causes too much noise. |
| [[%BUGS%/Item14055][Item14055]] | If beforeUploadHandler modifies an attachment, it is recorded with the wrong size. |

---+++ Enhancements

| [[%BUGS%/Item13970][Item13970]] | Modernize BUTTON. |
| [[%BUGS%/Item13971][Item13971]] | Add latest jquery and remove some outdated versions. |
| [[%BUGS%/Item13972][Item13972]] | Update fontawesome and extend %JQICON to be able to use fontawesome icons. |
| [[%BUGS%/Item13973][Item13973]] | Deprecate bgiframe and media jquery plugins. |
| [[%BUGS%/Item13974][Item13974]] | Update jquery.form to latest upstream version. |
| [[%BUGS%/Item13976][Item13976]] | Update localScroll, scrollTo and serialScroll. |
| [[%BUGS%/Item13977][Item13977]] | Update JQuery maskedInput. |
| [[%BUGS%/Item13978][Item13978]] | Update JQuery masonry and externalize imagesLoaded module. |
| [[%BUGS%/Item13979][Item13979]] | Update jquery.migrate. |
| [[%BUGS%/Item13980][Item13980]] | Update jquery.queryObject. |
| [[%BUGS%/Item13981][Item13981]] | Update jquery.render. |
| [[%BUGS%/Item13982][Item13982]] | Update jquery.sprintf. |
| [[%BUGS%/Item13983][Item13983]] | Update jquery.stars. |
| [[%BUGS%/Item13984][Item13984]] | Update jquery superfish. |
| [[%BUGS%/Item13985][Item13985]] | Update jquery.tabpane. |
| [[%BUGS%/Item13996][Item13996]] | BulkRegistration should process the AddToGroups field. |
| [[%BUGS%/Item14005][Item14005]] | Custom registration needs to pass user template name to email templates. |
| [[%BUGS%/Item14028][Item14028]] | Add jquery-1.12.1 / jquery-2.2.1. |
| [[%BUGS%/Item14042][Item14042]] | Add jquery-1.12.3 / jquery-2.2.3. |
| [[%BUGS%/Item14047][Item14047]] | Simplify the htaccess configuration examples. |
| [[%BUGS%/Item4992][Item4992]] | Work out how to translate Javascript strings. |

---++ Foswiki Release 2.1.2 Details
---+++ Fixes

| [[%BUGS%/Item14061][Item14061]] | Non-admin users are unable to refresh the page cache using the =refresh= query param. It's silently ignored. |

---++ Foswiki Release 2.1.3 Details
---+++ Fixes

| [[%BUGS%/Item11548][Item11548]] | INCLUDE{warn="custom"} only works for topic-missing warnings. |
| [[%BUGS%/Item13206][Item13206]] | Upgrade to latest jquery-ui. |
| [[%BUGS%/Item13785][Item13785]] | ExtensionInstaller fails to replace files under some conditions. |
| [[%BUGS%/Item13831][Item13831]] | JS error in !System.LanguageSelector |
| [[%BUGS%/Item13892][Item13892]] | CALC doesn't work in %SEARCH despite of what documention says. |
| [[%BUGS%/Item13928][Item13928]] | Mistypes to be fixed in the core. |
| [[%BUGS%/Item13929][Item13929]] | FileUtil doesn't work correctly with BSD tar. |
| [[%BUGS%/Item13963][Item13963]] | Foswiki::Form::getField() might generate 'use of undefined value' warnings. |
| [[%BUGS%/Item13986][Item13986]] | Any changes to a topic text made after pushing the topic to the context stack are ignored even changes are related to topic-level preferences.  |
| [[%BUGS%/Item14009][Item14009]] | Comment plugin does not properly identify location to insert comment. |
| [[%BUGS%/Item14063][Item14063]] | Bootstrap fails to correctly detect path when mod_rewrite engine is disabled.  |
| [[%BUGS%/Item14064][Item14064]] | Bad link in index.html in 2.1.0 and 2.1.2. |
| [[%BUGS%/Item14066][Item14066]] | Performance issue sorting list based on NFKD. |
| [[%BUGS%/Item14068][Item14068]] | Excessive calls of getPreferences(LINKTOOLTIP) causes performance issues. |
| [[%BUGS%/Item14069][Item14069]] | Attach filename parameter needs further sanitization. |
| [[%BUGS%/Item14071][Item14071]] | Register script reports zero values as missing registration fields. |
| [[%BUGS%/Item14077][Item14077]] | INCLUDE{"topic,list"} fails if first topic is access denied. |
| [[%BUGS%/Item14078][Item14078]] | Wysiwyg merges horizontal rules (---) into a preceeding list and looses the TML markup. |
| [[%BUGS%/Item14098][Item14098]] | Approve User Registration should not require Verify User Registration. |
| [[%BUGS%/Item14102][Item14102]] | Documentation suggest a Short URL configuration (renaming view script to xview) which is no longer supported. |
| [[%BUGS%/Item14104][Item14104]] | Plain text password is sent by email in registration approval request. |
| [[%BUGS%/Item14107][Item14107]] | Cancel doesn't undo add/delete row or move row actions. Document the restriction. |
| [[%BUGS%/Item14125][Item14125]] | "Start Presentation" button needs further sanitization. |
| [[%BUGS%/Item14128][Item14128]] | WebTopicEditTemplate not readable in restricted system web. |
| [[%BUGS%/Item14139][Item14139]] | debugenableplugins not correctly handled. |
| [[%BUGS%/Item14146][Item14146]] | Configure permissions checker fails to check some files, excessively checks others and crashes trying to report utf8 names. |
| [[%BUGS%/Item14150][Item14150]] | Reload of a page in the cache fails to recompute strikeone keys. |
| [[%BUGS%/Item14169][Item14169]] | Verification for {FeatureAccess}{Configure} in configure fails to handle login names. |
| [[%BUGS%/Item14171][Item14171]] | Error message of jquery.render needs sanitization. |
| [[%BUGS%/Item14172][Item14172]] | jquery.stars width incorrect in modal dialogs. |
| [[%BUGS%/Item14173][Item14173]] | Invalid call to foswiki.getScriptUrl() in foswiki.getPreference(). |
| [[%BUGS%/Item14174][Item14174]] | Missing files in MANIFEST of EditRowPlugin. |
| [[%BUGS%/Item14176][Item14176]] | Don't add POSTDATA to TOC or QUERYSTRING. |
| [[%BUGS%/Item14195][Item14195]] | Loop in Foswiki::UI::View::revisionsAround under some conditions. |
| [[%BUGS%/Item14199][Item14199]] | Registration confirmation process corrupts utf-8 wiki names. |
| [[%BUGS%/Item14202][Item14202]] | PageCache tweaks to control dependency growth. |
| [[%BUGS%/Item14204][Item14204]] | Port JsonRpcContrib unit tests from master to Release02x01 - and fix error with redirectto revealed by test. |
| [[%BUGS%/Item14205][Item14205]] | Autoconfig Email failing with recent versions of IO::Socket::SSL. |
| [[%BUGS%/Item14209][Item14209]] | Email wizard for SSLCaFile and SSLCaPath doesn't return any results. |
| [[%BUGS%/Item14211][Item14211]] | System.DataForms topic use the NEW macro. Should be N. |
| [[%BUGS%/Item14213][Item14213]] | EditRowPlugin: "Use of uninitialized value in addition" warning when clicking on Edit button. |
| [[%BUGS%/Item14216][Item14216]] | MailerContrib mailnotify fails with wide character print when run from Web when unicode webnames are in use. |
| [[%BUGS%/Item14218][Item14218]] | EditRowPlugin: edit button does not work when using Internet Explorer. |
| [[%BUGS%/Item14227][Item14227]] | Potential use of uninitialized value in a rating formfield. |
| [[%BUGS%/Item14235][Item14235]] | Sanitize some template fields. |
| [[%BUGS%/Item14236][Item14236]] | EditTablePlugin doesn't create compressed / gzipped css and js. |
| [[%BUGS%/Item14238][Item14238]] | Documentation for the reverted META:CREATEINFO is still in the release. |
| [[%BUGS%/Item14249][Item14249]] | Foswiki::Net uses userinfo functions not available in older versions of LWP. |
| [[%BUGS%/Item14250][Item14250]] | Wait for images by default in jquery.masonry. |
| [[%BUGS%/Item14251][Item14251]] | Remove non-functional caching of dialogs loaded via ajax. |
| [[%BUGS%/Item14253][Item14253]] | WysiwygPlugin inserts extra spaces in front of square bracket links. |
| [[%BUGS%/Item14256][Item14256]] | Data loss of certain formfield names when moving content from 1.x to 2.x. |
| [[%BUGS%/Item14258][Item14258]] | EditRowPlugin will crash with empty column format. |
| [[%BUGS%/Item14263][Item14263]] | Mistype in Foswiki::Configure::Item |
| [[%BUGS%/Item14265][Item14265]] | NatEdit plugin leaves UI blocked after some save errors |
| [[%BUGS%/Item14266][Item14266]] | Error enabling internationalization and languages |
| [[%BUGS%/Item14279][Item14279]] | CLI =tools/configure= fails to encode Password when run in prompting mode |
| [[%BUGS%/Item14281][Item14281]] | Cookie related changes. Inconsistent use of the domain and secure flags. |
| [[%BUGS%/Item14285][Item14285]] | Don't try to action upon disabled toobar buttons |
| [[%BUGS%/Item14286][Item14286]] | PatternSkin*Navigation topics are broken, and difficult to tailor. |
| [[%BUGS%/Item14287][Item14287]] | Configure needs to encode reported configuration values. |
| [[%BUGS%/Item14305][Item14305]] | Eliminate sporadic alert() by TinyMCE.  |
| [[%BUGS%/Item14308][Item14308]] | Configure extensions review crashes for some older extensions. |
| [[%BUGS%/Item14309][Item14309]] | Old SVN based extensions don't compare as older than new Decimal versioned extensions. |
| [[%BUGS%/Item14312][Item14312]] | Don't destroy dialogs on close. |
| [[%BUGS%/Item14315][Item14315]] | ASSERT in Meta.pm when viewing prior revisions of topics with attachments. |
| [[%BUGS%/Item14317][Item14317]] | Under some conditions, JEditableContrib attempts to load an <code>.uncompressed.js</code> source, which is not in the distribution. |
| [[%BUGS%/Item14321][Item14321]] | Some InterwikiPlugin links are out of date. |

---+++ Enhancements

| [[%BUGS%/Item10918][Item10918]] | Improve javascript api to address individual tabs. |
| [[%BUGS%/Item13578][Item13578]] | Configure guesses relative path names with .. in them. |
| [[%BUGS%/Item13936][Item13936]] | Need an altenate from address for wiki generated email. |
| [[%BUGS%/Item14086][Item14086]] | FCGI Service file is needed for systemd systems. |
| [[%BUGS%/Item14092][Item14092]] | =attach.pattern.tmpl= needs a hook for plugins to add properties. |
| [[%BUGS%/Item14120][Item14120]] | Remove outdated yuicompressor tool. |
| [[%BUGS%/Item14121][Item14121]] | Use svg in jquery.stars. |
| [[%BUGS%/Item14122][Item14122]] | Upgrade to fontawesome 4.7.0. |
| [[%BUGS%/Item14123][Item14123]] | foswiki.getPubUrlPath() fails with an uninitialized parameter. |
| [[%BUGS%/Item14124][Item14124]] | Make skin of a jquery.loader backend configurable. |
| [[%BUGS%/Item14143][Item14143]] | Configure should recommend setting SafeEnvPath  for improved security. |
| [[%BUGS%/Item14145][Item14145]] | PatternSkin deprecation of beforetext/aftertext templates breaks compatibility with other skins. |
| [[%BUGS%/Item14170][Item14170]] | Improve slideshow navigation - increase size of buttons. |
| [[%BUGS%/Item14180][Item14180]] | Bootstrap enhancements and refactoring. |
| [[%BUGS%/Item14181][Item14181]] | Bootstrap detects incorrect hostname, and may mis-detect https when behind a proxy. |
| [[%BUGS%/Item14201][Item14201]] | Add Pending Registrations report. |
| [[%BUGS%/Item14219][Item14219]] | Add a contributed WebSideBar toggle cookbook. |
| [[%BUGS%/Item14226][Item14226]] | Performance improvements to $.i18n(). |
| [[%BUGS%/Item14228][Item14228]] | Upgrade JQueryPlugin to blockui 2.70. |
| [[%BUGS%/Item14229][Item14229]] | Upgrade JQueryPlugin to jsrender 0.9.83. |
| [[%BUGS%/Item14230][Item14230]] | jquery.maskedinput initializer does not match documentation. |

---++ Foswiki Release 2.1.4 Details
---+++ Fixes

| [[%BUGS%/Item12090][Item12090]] | Field name -with description- in Forms not working properly. |
| [[%BUGS%/Item13246][Item13246]] | Context =header_text= needs better documentation. |
| [[%BUGS%/Item13339][Item13339]] | Warning or errors icons in configure get stuck unless page is reloaded. |
| [[%BUGS%/Item13766][Item13766]] | EditRowPlugin columns widths are jumping to wider size when you hoover the mouse over the table. |
| [[%BUGS%/Item13907][Item13907]] | UpdatesPlugin Report of required update should list the backlevel extensions. |
| [[%BUGS%/Item13954][Item13954]] | Extensions with "pluggable" components cause errors: No such value {Store}{Implementation}. |
| [[%BUGS%/Item14234][Item14234]] | Clicking pencil for first row (erp_row=0) opens editor on entire table.  |
| [[%BUGS%/Item14324][Item14324]] | Perl 5.25.10 reports unescaped left brace in regular expression errors. |
| [[%BUGS%/Item14328][Item14328]] | Foswiki::Net crashes with uninitialized value in pattern match when sending email for older CPAN modules. |
| [[%BUGS%/Item14337][Item14337]] | SCRIPTURL paths and inline scripts make javascript signing more difficult than needed. |
| [[%BUGS%/Item14346][Item14346]] | Systemd service file has issues, needs better documentation. |
| [[%BUGS%/Item14347][Item14347]] | Prune the cruft from the tools dir and improve tools script documentation. |
| [[%BUGS%/Item14349][Item14349]] | EditRowPlugin Edit Table button not functional on IE 11. |
| [[%BUGS%/Item14350][Item14350]] | OopsException documentation has incorrect example. |
| [[%BUGS%/Item14351][Item14351]] | Uninitialized value warning when changerows is used with EditRowPlugin. |
| [[%BUGS%/Item14366][Item14366]] | =use CGI::Carp= in bin scripts BEGIN block cannot be found via LocalLib.cfg override. |
| [[%BUGS%/Item14368][Item14368]] | Failure to handle edge cases leads to obscure bug in RCS. |
| [[%BUGS%/Item14369][Item14369]] | Document parameters for USERNAME, WIKINAME and WIKIUSERNAME macros. |
| [[%BUGS%/Item14370][Item14370]] | Foswiki::Func::removeUserFromGroup docmentation is incorrect. |
| [[%BUGS%/Item14372][Item14372]] | JQueryPlugin ui-draggable got dropped from  Config.spec. |
| [[%BUGS%/Item14377][Item14377]] | Error message requires some encoding. |
| [[%BUGS%/Item14381][Item14381]] | mod_perl unexpectedly decodes the URI, and X-FoswikiURI header should be debug only. |
| [[%BUGS%/Item14388][Item14388]] | NatEditPlugin does not honor the ScriptSuffix setting, and doesn't accommodate short URLs. |
| [[%BUGS%/Item14392][Item14392]] | WebPreferences topics contain empty DENY rules that would be honored if ={AccessControlACL}{EnableDeprecatedEmptyDeny}= is enabled. |
| [[%BUGS%/Item14396][Item14396]] | Don't redirect to relative paths. 302 redirects should be absolute Locations. |
| [[%BUGS%/Item14400][Item14440]] | Configure settings leak into the global $Foswiki::cfg hash in fcgi environment. |
| [[%BUGS%/Item14401][Item14401]] | Foswiki crashes if PageCache is enabled with missing dependencies. |
| [[%BUGS%/Item14402][Item14402]] | Invalid default in FastCGIEngineContrib example foswiki.defaults file. |
| [[%BUGS%/Item14404][Item14404]] | NatEdit Save and Continue action fails on mod_perl systems. |
| [[%BUGS%/Item14405][Item14405]] | Redirect after validation with HTTPS proxy for HTTP site results in unsafe redirect. |
| [[%BUGS%/Item14406][Item14406]] | Configue LANGUAGES pluggable crashes in Locale::Code for unknown languages with Perl 5.26. |

---++ Foswiki Release 2.1.5 Details

---+++ Fixes

| [[%BUGS%/Item11491][Item11491]] | FCGI has de facto file upload limit - add note in documentation for fix. |
| [[%BUGS%/Item12495][Item12495]] | In form fields of type "select", space after a value and before the delimiting comma makes the value selectable and it saves but will reset on next edit. |
| [[%BUGS%/Item13350][Item13350]] | Document why Mailnotify appears to skip notification of some changes. |
| [[%BUGS%/Item13380][Item13380]] | Remove the Web/Topic from the login URL to prevent flooding the browser password cache. |
| [[%BUGS%/Item13835][Item13835]] | Title Field in Natedit gone, even when used. |
| [[%BUGS%/Item14395][Item14395]] | InterwikiPlugin failure to check result from readTopic causes error. |
| [[%BUGS%/Item14415][Item14415]] | TopicUserMapping places non-ASCII users in wrong position in WikiUsersTopic. |
| [[%BUGS%/Item14429][Item14429]] | tools/configure generates invalid perl structure. |
| [[%BUGS%/Item14431][Item14431]] | Dependencies check for DBD and DBI::Pg are broken by unexpected VERSION strings. |
| [[%BUGS%/Item14434][Item14434]] | Translated text with reserved characters used in System.WebCreateNewTopicComponents will create wrong HTML. |
| [[%BUGS%/Item14445][Item14445]] | Excel fails to open a password protected link to Foswiki. |
| [[%BUGS%/Item14446][Item14446]] | Unwritable =work_area= results in mega-spam with mailnotify run. |
| [[%BUGS%/Item14448][Item14448]] | UpdatesPlugin plugin list is empty on page reload. |
| [[%BUGS%/Item14455][Item14455]] | Malformed System.AdminDocumentationCategory. |
| [[%BUGS%/Item14460][Item14460]] | Login/Logon actions should create session when guest sessions are disabled. |
| [[%BUGS%/Item14461][Item14461]] | Formfield select values containing entities will reset on next save. |
| [[%BUGS%/Item14462][Item14462]] | {AuthScripts} is hidden unless Template Login is in use.  |
| [[%BUGS%/Item14471][Item14471]] | HistoryPlugin not properly rendering date tokens as stated in documentation. |
| [[%BUGS%/Item14472][Item14472]] | Use jquery.prop instead of attr to get/set properties. |
| [[%BUGS%/Item14488][Item14488]] | PatternSkin is missing "body" zone used by NatSkin and many extensions |
| [[%BUGS%/Item14490][Item14490]] | EditRowPlugin Edit button image not displaying correctly. |
| [[%BUGS%/Item14492][Item14492]] | HtPasswdUser implements bcrypt with a hard coded cost.  {Htpasswd}{BCryptCost} is ignored. |
| [[%BUGS%/Item14515][Item14515]] | Foswiki 2.1.3 cannot run on Windows   "Aux" is a reserved filename on windows. |
| [[%BUGS%/Item14529][Item14529]] | UpdatesPlugin should not use the cookie realm. |
| [[%BUGS%/Item14536][Item14536]] | Configure leaves "wait" cursor spinning while waiting for user action. |
| [[%BUGS%/Item14544][Item14544]] | SCRIPTURL breaks when X-FORWARDED-HOST has multiple values. |
| [[%BUGS%/Item14549][Item14549]] | Prevent User/WikiName cache pollution by faulty call of internal user api. |
| [[%BUGS%/Item14550][Item14550]] | Wrong initialization of {_options} hash reference in list formfields. |
| [[%BUGS%/Item14554][Item14554]] | Remove link to unused wikiring.com domain. |
| [[%BUGS%/Item14556][Item14556]] | Clean up page header area with PatternSkin. |
| [[%BUGS%/Item14557][Item14557]] | PerlDependencyReport crashes under some conditions. |
| [[%BUGS%/Item14559][Item14559]] | Regression via Item13898 -  broken topic selectors. |
| [[%BUGS%/Item14560][Item14560]] | WikiWord changes don't trigger a change event on the target element. |
| [[%BUGS%/Item14566][Item14566]] | Don't cache a null result in foswiki.getPreference(). |
| [[%BUGS%/Item14573][Item14573]] | Fix auto-height calculation of tabpane. |
| [[%BUGS%/Item14574][Item14574]] | HTML cellspacing attribute has no effect. |
| [[%BUGS%/Item14584][Item14584]] | jquery.wikiword changed interpretation of source parameter in a incompatible way. |
| [[%BUGS%/Item14586][Item14586]] | Blinking scrollbar in natedit caused by incorrect window height. |
| [[%BUGS%/Item14588][Item14588]] | mailnotify fills debug log with errors about "surprising mapping" and "missing mapping". |
| [[%BUGS%/Item14589][Item14589]] | Invalid help link when editing topic preferences. |
| [[%BUGS%/Item14590][Item14590]] | Missing closing tag in html diff of mailnotify. |
| [[%BUGS%/Item14591][Item14591]] | Store fails to read old revisions with RcsWrap store, if <code>.txt</code> file is modified. |
| [[%BUGS%/Item14605][Item14605]] | Unescaped brace in Regular Expression, Perl 5.27.8. |

---+++ Enhancements

| [[%BUGS%/Item14518][Item14518]] | JQueryPlugin should warn configure if an older version of jquery is selected. |
| [[%BUGS%/Item14532][Item14532]] | Allow process name override for FCGI task. |
| [[%BUGS%/Item14565][Item14565]] | Bundle jquery.validate js files into one. |
| [[%BUGS%/Item14570][Item14570]] | Add "use strict" to farbtastic's init and fix js errors. |
| [[%BUGS%/Item14577][Item14577]] | Add user contributed sartup script for FreeBSD. |

---++ Foswiki Release 2.1.6 Details

---+++ Fixes

| [[%BUGS%/Item14537][Item14537]] | The EditRowPlugin makes tables "shaky". |
| [[%BUGS%/Item14616][Item14616]] | The generic tools/extension_installer no longer functions on perl 5.26+. |
| [[%BUGS%/Item14622][Item14622]] | UserRegistration validate.js is not compatible with CaptchaPlugin. |
| [[%BUGS%/Item14626][Item14626]] | Incorrect example in System.Macros / System.PreferenceSettings. |
| [[%BUGS%/Item14629][Item14629]] | Certain topics can be overridden without permission. |
| [[%BUGS%/Item14630][Item14630]] | Topic ACLs are lost when copying to a new topic. |
| [[%BUGS%/Item14632][Item14632]] | Topic autocompletion not functional anymore. |
| [[%BUGS%/Item14633][Item14633]] | wrong language in &lt;html&gt; tag. |
| [[%BUGS%/Item14634][Item14634]] | Use jquery.i18n for translations in jquery.natedit. |
| [[%BUGS%/Item14636][Item14636]] | jquery.wikiword not setting the regex options correctly. |
| [[%BUGS%/Item14639][Item14639]] | Operational topics in Main, Sandbox webs should be protected from editing non-admins. |

---++ Foswiki Release 2.1.7 Details

---+++ Security

| [[%BUGS%/Item14903][Item14903]] | change password accepts "1" as an old password |
| [[%BUGS%/Item14918][Item14918]] | backport fix of CVE-2015-9251 and CVE-2019-11358 |
| [[%BUGS%/Item14936][Item14936]] | eliminate use of 2-args open() |
| [[%BUGS%/Item15024][Item15024]] | QUERY macro does not check access rights |
| [[%BUGS%/Item15033][Item15033]] | update jquery.validate |
| [[%BUGS%/Item15048][Item15048]] | disable access to sessionid |
| [[%BUGS%/Item15061][Item15061]] | multiple cross-site scripting vulnerability in jQuery UI |

---+++ Fixes
| [[%BUGS%/Item14687][Item14687]] | SET macro documentation related to INCLUDE and topic scope is incorrect. |
| [[%BUGS%/Item14688][Item14688]] | Typos in InterwikiPlugin documentation. |
| [[%BUGS%/Item14773][Item14773]] | configure documentation refers to =FastReport=. Should be =JsonReport= |
| [[%BUGS%/Item14809][Item14809]] | System/InstallGuide Step 2: Ownership table lists wrong FreeBSD group |
| [[%BUGS%/Item14902][Item14902]] | Add new Ubuntu 20.04 required perl module to requirements |
| [[%BUGS%/Item14660][Item14660]] | missing tab id causes a javascript error |
| [[%BUGS%/Item14662][Item14662]] | comment type "return" not functional |
| [[%BUGS%/Item14721][Item14721]] | fix loading of language files for jquery.i18n |
| [[%BUGS%/Item14722][Item14722]] | add jquery.browser as a separate module being removed from newer jQuery |
| [[%BUGS%/Item14725][Item14725]] | wrong initial color of jquery.farbtastic dialog |
| [[%BUGS%/Item14729][Item14729]] | fix regular expression for headings trying to support ExplicitNumberingPlugin |
| [[%BUGS%/Item14730][Item14730]] | can't use path with a 0 (zero) in it |
| [[%BUGS%/Item14731][Item14731]] | illegal json returned by attachments rest handler  |
| [[%BUGS%/Item14741][Item14741]] | EVAL(0) should return 0 not the empty string |
| [[%BUGS%/Item14762][Item14762]] | jquery.loader does not clear timeout properly for automated reloading |
| [[%BUGS%/Item14873][Item14873]] | rewrite and simplify UpdatesPlugin |
| [[%BUGS%/Item14874][Item14874]] | deprecate uglify-js and yuicompressor in favor of terser and csso |
| [[%BUGS%/Item14890][Item14890]] | breadcrumbs won't line-break on mobile devices |
| [[%BUGS%/Item14910][Item14910]] | Remove Taint::Runtime |
| [[%BUGS%/Item14929][Item14929]] | Single '0' (zero) not displayed in any table if plugin is activated for that topic |
| [[%BUGS%/Item14931][Item14931]] | Error moving file with [space]WikiWord[space] name. |
| [[%BUGS%/Item14933][Item14933]] | remove dependency on jquery.livequery module |
| [[%BUGS%/Item14934][Item14934]] | language file compression isn't experimental anymore |
| [[%BUGS%/Item14935][Item14935]] | leave absolute_urls context when an exception occured during registration |
| [[%BUGS%/Item14937][Item14937]] | error parsing dotted triplets ip addresses  |
| [[%BUGS%/Item14938][Item14938]] | don't return compressed content when calling foswiki on the command line |
| [[%BUGS%/Item14941][Item14941]] | only load comment.js and comment.css on pages where it is required |
| [[%BUGS%/Item14942][Item14942]] | make sure isValueMapped is defined for any formfield |
| [[%BUGS%/Item14943][Item14943]] | document =publicOnly= parameter in %INCLUDE and make it a true boolean |
| [[%BUGS%/Item14945][Item14945]] | improve performance of template loader |
| [[%BUGS%/Item14946][Item14946]] | RCS storage tests fail with a one-off second difference sometimes |
| [[%BUGS%/Item14990][Item14990]] | remove explicit undef from return statement |
| [[%BUGS%/Item14991][Item14991]] | improve performance of =isGroup()= call |
| [[%BUGS%/Item15000][Item15000]] | fix button's behavior in disabled state |
| [[%BUGS%/Item15004][Item15004]] | use relative urls wherever possible |
| [[%BUGS%/Item15007][Item15007]] | extender.pl too loud on STDERR  |
| [[%BUGS%/Item15008][Item15008]] | bring back support for "dontnotify" in natedit |
| [[%BUGS%/Item15026][Item15026]] | modernize default link protocol pattern |
| [[%BUGS%/Item15027][Item15027]] | add jquery-3.6.0 |
| [[%BUGS%/Item15029][Item15029]] | Meta::getPreferences() sometimes fails when called too early |
| [[%BUGS%/Item15030][Item15030]] | encoding error including attachments |
| [[%BUGS%/Item15031][Item15031]] | be less restrictive checking compatible acl settings in editor |
| [[%BUGS%/Item15032][Item15032]] | tinymce cannot attach a file when strike one is disabled |
| [[%BUGS%/Item15038][Item15038]] | select2 formfields were not validated |
| [[%BUGS%/Item15057][Item15057]] | Add support for MariaDB |
| [[%BUGS%/Item15058][Item15058]] | script tags for javascrit i18n should not use src attribute |
| [[%BUGS%/Item15066][Item15066]] | rating formfield is not mergeable |
| [[%BUGS%/Item15067][Item15067]] | jquery-ui's dialogs maniplulate the z-index of the widget on every mouseclick |
| [[%BUGS%/Item15069][Item15069]] | improvements to radio, checkbox and label |
| [[%BUGS%/Item15070][Item15070]] | use of uninitialized variable when there is no text  |
| [[%BUGS%/Item15071][Item15071]] | add some more useful entries to mime.types |
| [[%BUGS%/Item14564][Item14564]] | add jquery-3 and an appropriate migrate module |
| [[%BUGS%/Item14685][Item14685]] | permissions read from the wrong topic |
| [[%BUGS%/Item14689][Item14689]] | Email::Address is deprecated,  Email::Address::XS is the preferred module. |
| [[%BUGS%/Item14732][Item14732]] | statistics script blocks all of foswiki |
| [[%BUGS%/Item14739][Item14739]] | regression: cannot control logged actions anymore |
| [[%BUGS%/Item14766][Item14766]] | deprecate all 1.x jquery, deprecate all 2.x except the latest |
| [[%BUGS%/Item14819][Item14819]] | lost content on specific editor interactions |
| [[%BUGS%/Item14839][Item14839]] | fix default value in textboxlist formfields |
| [[%BUGS%/Item14840][Item14840]] | fix tooltip position in draggable elements |
| [[%BUGS%/Item14884][Item14884]] | performance problem listing webs (hotfix available) |
| [[%BUGS%/Item14906][Item14906]] | OP_ref has to read data relative to the topic being queried  |
| [[%BUGS%/Item14908][Item14908]] | cannot use zero as a formfield default |
| [[%BUGS%/Item14944][Item14944]] | cannot use zero in alttext of FORMFIELD |
| [[%BUGS%/Item14970][Item14970]] | INCLUDEing an url does not decode the retrieved content according to its charset |
| [[%BUGS%/Item14992][Item14992]] | always display date _and_ time of revisions |
| [[%BUGS%/Item14996][Item14996]] | wrong url host if foswiki called via localhost |
| [[%BUGS%/Item15006][Item15006]] | missing cpan dependencies for core engine |
| [[%BUGS%/Item15010][Item15010]] | configure fails to accept newer rcs versions |
| [[%BUGS%/Item15014][Item15014]] | prevent password fields from being autofilled in configure |
| [[%BUGS%/Item15022][Item15022]] | Change notifications not send out under certain conditions |
| [[%BUGS%/Item15023][Item15023]] | Eliminate local cache in FORMFIELD macro |
| [[%BUGS%/Item15025][Item15025]] | FORMFIELD and QUERY don't read the correct topic object |
| [[%BUGS%/Item15028][Item15028]] | store password during registration  |
| [[%BUGS%/Item15041][Item15041]] | global FOSWIKI_BROADCAST not initialized correctly |
| [[%BUGS%/Item15045][Item15045]] | getRevisionInfo of an attachment always returns the revision info of the first attachment on the topic |
| [[%BUGS%/Item15047][Item15047]] | Deep recursion if UserInterfaceInternationalisation is enabled yet no languages are enabled |

---+++ Enhancements
| [[%BUGS%/Item14454][Item14454]] | Bundle JsViews as an option with JsRender |
| [[%BUGS%/Item14567][Item14567]] | add keyboard navigation to jquery.stars |
| [[%BUGS%/Item14568][Item14568]] | add chili recipes for autolisp and ini |
| [[%BUGS%/Item14569][Item14569]] | deprecate jquery.placeholder |
| [[%BUGS%/Item14571][Item14571]] | add manual sorting mode to textboxlist |
| [[%BUGS%/Item14572][Item14572]] | upgrade jquery.livequery  |
| [[%BUGS%/Item14720][Item14720]] | upgrade animate.css to latest release |
| [[%BUGS%/Item14723][Item14723]] | upgrade jquery.sprintf |
| [[%BUGS%/Item14724][Item14724]] | enhance Makefile system to support sass and babel |
| [[%BUGS%/Item14726][Item14726]] | better support for +values in textboxlist |
| [[%BUGS%/Item14727][Item14727]] | improve locale support of datepicker |
| [[%BUGS%/Item14728][Item14728]] | forward "open" event of ui-dialogs to jqUIDialogLink element |
| [[%BUGS%/Item14735][Item14735]] | use animate.css for jquery.loader effects instead of jQuery's own ones |
| [[%BUGS%/Item14767][Item14767]] | implement a proper icon service |
| [[%BUGS%/Item14837][Item14837]] | update animate.css to latest upstream version |
| [[%BUGS%/Item14838][Item14838]] | add "remember" feature to tabs |
| [[%BUGS%/Item14875][Item14875]] | various maintenance fixes |
| [[%BUGS%/Item14897][Item14897]] | rationalize edit template structure for better customization |
| [[%BUGS%/Item14901][Item14901]] | Add support for XML and CERT data types in configure pages |
| [[%BUGS%/Item14963][Item14963]] | add warmup parameter |
| [[%BUGS%/Item14994][Item14994]] | don't generate inline @import-ed css |
| [[%BUGS%/Item15002][Item15002]] | improve placement of content in jquery.loader  |
| [[%BUGS%/Item15003][Item15003]] | improve freebsd init script for foswiki service |
| [[%BUGS%/Item15005][Item15005]] | too many log messages in fastcgi procmanager |
| [[%BUGS%/Item15018][Item15018]] | rework some old css code in jQuery |
| [[%BUGS%/Item15019][Item15019]] | give logos a proper dimension |
| [[%BUGS%/Item15021][Item15021]] | multiple enhancements to SlideshowPlugin |
| [[%BUGS%/Item15040][Item15040]] | add include cover |
| [[%BUGS%/Item15043][Item15043]] | unable to configure zero max requests |
| [[%BUGS%/Item15044][Item15044]] | improve free bsd startup scripts |
| [[%BUGS%/Item15059][Item15059]] | JQICONs create a stray html attribute |
| [[%BUGS%/Item15060][Item15060]] | add validation rule for foswikiMandatory css class |
| [[%BUGS%/Item15065][Item15065]] | add jsonRpc api to foswiki namespace in javascript |
| [[%BUGS%/Item15068][Item15068]] | don't bubble up jquery.loader events |

---++ Foswiki Release 2.1.8 Details

---+++ Security

| [[%BUGS%/Item15135][Item15135]] | directories in working directory are created as world writable 777 permissions |
| [[%BUGS%/Item15141][Item15141]] | possible XSS attack in attachment comments |
| [[%BUGS%/Item15158][Item15158]] | update to jquery-ui 1.13.2 |
| [[%BUGS%/Item15163][Item15163]] | Local file inclusion vulnerability in viewfile |
| [[%BUGS%/Item15182][Item15182]] | restricted allowed protocols to http and https |
| [[%BUGS%/Item15190][Item15190]] | potential XSS vulnerability in jQuery |
| [[%BUGS%/Item15192][Item15192]] | SpreadSheetPlugin's EVAL feature exposes infromation about paths and files on the server |
| [[%BUGS%/Item15198][Item15198]] | Default to a secure location for temporary files not vulnerable to symlink attacks |
| [[%BUGS%/Item15200][Item15200]] | possible XSS vulnerability in topic title field |

---+++ Fixes

| [[%BUGS%/Item14380][Item14380]] | Foswiki should have option to use X-Forwarded-For to determine Client IP in reverse proxy configuration. |
| [[%BUGS%/Item14580][Item14580]] | DIFF_TEXT rarely used ... and buggy |
| [[%BUGS%/Item15074][Item15074]] | remove hardcoded options from build.pl of some extensions |
| [[%BUGS%/Item15075][Item15075]] | deep recursion on innocent code |
| [[%BUGS%/Item15076][Item15076]] | RCS store does not properly encode topic information |
| [[%BUGS%/Item15077][Item15077]] | broken api to show/hide tabs in jquery tabpane |
| [[%BUGS%/Item15078][Item15078]] | body zone merged to script zone |
| [[%BUGS%/Item15080][Item15080]] | make ={DefaultDateFormat}= a text field  |
| [[%BUGS%/Item15081][Item15081]] | handle hash changes of own tabpane only |
| [[%BUGS%/Item15090][Item15090]] | mailnotify script must run as admin user |
| [[%BUGS%/Item15091][Item15091]] | only notify people of topics that they have view access to |
| [[%BUGS%/Item15113][Item15113]] | jsonrpc doesn't set the web-topic context properly |
| [[%BUGS%/Item15129][Item15129]] | FORMFIELD rev parameter broken |
| [[%BUGS%/Item15131][Item15131]] | natedit doesn't validate mandatory formfields properly |
| [[%BUGS%/Item15136][Item15136]] | Foswiki::Meta::save() sets topic and web too late when copying a topic |
| [[%BUGS%/Item15137][Item15137]] | REVINFO doesn't return the top revision info with a zero rev parameter |
| [[%BUGS%/Item15142][Item15142]] | better default labels for twisty links |
| [[%BUGS%/Item15145][Item15145]] | add support for uploading multiple files in one request |
| [[%BUGS%/Item15146][Item15146]] | require packages during compile time, not during runtime  |
| [[%BUGS%/Item15160][Item15160]] | Permissions editor can only auto-complete users and groups found in a topic of the users web |
| [[%BUGS%/Item15162][Item15162]] | perl error when parsing email address of an empty header |
| [[%BUGS%/Item15173][Item15173]] | add same-site policy to cookies |
| [[%BUGS%/Item15174][Item15174]] | jquery.stars in +values mode |
| [[%BUGS%/Item15175][Item15175]] | page with multiple jquery.loader mix their options |
| [[%BUGS%/Item15176][Item15176]] | mailer fails to load language preferences for users |
| [[%BUGS%/Item15178][Item15178]] | wrong set of permissions selecting "registered users" access in natedit |
| [[%BUGS%/Item15179][Item15179]] | always load a proper I18N class when internationalisation is enabled |
| [[%BUGS%/Item15180][Item15180]] | broken SCRIPTURL macro for json-rpc links |
| [[%BUGS%/Item15183][Item15183]] | Fix version number of EditRowPlugin  |
| [[%BUGS%/Item15184][Item15184]] | don't translate < and > to their html entity counterparts |
| [[%BUGS%/Item15185][Item15185]] | email tests fail on newer Email::MIME |
| [[%BUGS%/Item15186][Item15186]] | random unit test failures in rcs store |
| [[%BUGS%/Item15189][Item15189]] | Redirectto parameter breaks preview function |
| [[%BUGS%/Item15191][Item15191]] | an uploaded html file is secured by appending txt multiple times |
| [[%BUGS%/Item15201][Item15201]] | fix detection of edge browser |
| [[%BUGS%/Item15203][Item15203]] | improve detection of module versions |

---+++ Enhancements

| [[%BUGS%/Item15138][Item15138]] | IconSearchPath can't be set to empty |
| [[%BUGS%/Item15139][Item15139]] | add optional t parameter to jquery.loader to prevent browser caching |
| [[%BUGS%/Item15140][Item15140]] | a natedit formfield cannot be checked for mandatoryness |
| [[%BUGS%/Item15144][Item15144]] | remove unused files from TwistyPlugin |
| [[%BUGS%/Item15147][Item15147]] | in spec files, all {Module} settings are expert level |
| [[%BUGS%/Item15148][Item15148]] | core's RELEASE and VERSION scheme should follow standards established in skins and extensions |
| [[%BUGS%/Item15149][Item15149]] | improve perl doc renderer |
| [[%BUGS%/Item15153][Item15153]] | report version numbers not release strings exploring installed extensions in configure |
| [[%BUGS%/Item15154][Item15154]] | keep images and links in rss and atom feeds |
| [[%BUGS%/Item15155][Item15155]] | add spaceOutWikiWord() to foswiki javascript API |
| [[%BUGS%/Item15157][Item15157]] | update to jquery.validate 1.19.5 |
| [[%BUGS%/Item15181][Item15181]] | update to jquery-3.6.3, remove previous jquery-3.x packages |
| [[%BUGS%/Item15187][Item15187]] | remove stray quote from TML citations |
| [[%BUGS%/Item15194][Item15194]] | make edit toolbar more configurable |
| [[%BUGS%/Item15199][Item15199]] | add showcompleted and hidecompleted javascript events when the twisty opened/closed |
| [[%BUGS%/Item9012][Item9012]] | make TwistyPlugin's =mode= attributes more meaningful |


---++ Foswiki Release 2.1.9 Details

| *#* | *Task* | *Priority* | *Component* | *Summary* |
| 1 | [[%BUGS%/Item15225][Item15225]] | Urgent | Engine | update attachment -> changeproperties -> do nothing |
| 2 | [[%BUGS%/Item15331][Item15331]] | Urgent | Engine | TLS version problem when sending email |
| 3 | [[%BUGS%/Item15333][Item15333]] | Urgent | Foswiki::UI::Rename | optionally skip fixing backlinks when renaming/deleting webs |
| 4 | [[%BUGS%/Item15334][Item15334]] | Urgent | Engine | renderForDisplay is called without knowing the topic it renders the formfield for |
| 5 | [[%BUGS%/Item15336][Item15336]] | Urgent | PlainFileStoreContrib | only change revision information of top revisions, not of older revisions. |
| 6 | [[%BUGS%/Item15350][Item15350]] | Urgent | Engine | copying attachments is broken |
| 7 | [[%BUGS%/Item12511][Item12511]] | Normal | JQueryPlugin | deprecate jquery.metadata |
| 8 | [[%BUGS%/Item15206][Item15206]] | Normal | Engine | Re-implement Foswiki::MetaCache and ACL cache |
| 9 | [[%BUGS%/Item15209][Item15209]] | Normal | NatEditPlugin | block editor interface when clicking on save and continue of an autoinc topic |
| 10 | [[%BUGS%/Item15210][Item15210]] | Normal | Engine | only create a new user profile page if it doesn't exist already |
| 11 | [[%BUGS%/Item15211][Item15211]] | Normal | Engine | make sure templates link even when autolinking is switched off |
| 12 | [[%BUGS%/Item15212][Item15212]] | Normal | Engine | unable to configure registration groups |
| 13 | [[%BUGS%/Item15213][Item15213]] | Normal | Engine | add support for avif, heic and heif image formats |
| 14 | [[%BUGS%/Item15217][Item15217]] | Normal | JQueryPlugin | deprecate jquery themes |
| 15 | [[%BUGS%/Item15219][Item15219]] | Normal | NatEditPlugin | prevent autolinking in title |
| 16 | [[%BUGS%/Item15220][Item15220]] | Normal | Engine | minor performance improvement for web filter |
| 17 | [[%BUGS%/Item15221][Item15221]] | Normal | Engine | clear logout url param from login url |
| 18 | [[%BUGS%/Item15222][Item15222]] | Normal | Engine | ignore SFOSWIKISTRIKEONE in page cache variation key |
| 19 | [[%BUGS%/Item15223][Item15223]] | Normal | Engine | replace all pseudo macros in edit action, not only the first one found |
| 20 | [[%BUGS%/Item15226][Item15226]] | Normal | Engine | inserting an image link to a topic creates over-complicated code |
| 21 | [[%BUGS%/Item15228][Item15228]] | Normal | RCSStoreContrib | better error reporting in RCS store |
| 22 | [[%BUGS%/Item15236][Item15236]] | Normal | EditRowPlugin | css and js for EditRowPlugin not loaded properly |
| 23 | [[%BUGS%/Item15323][Item15323]] | Normal | Engine | multiple errors found by perlcrit |
| 24 | [[%BUGS%/Item15337][Item15337]] | Normal | Engine | fix unit tests for plain file logger |
| 25 | [[%BUGS%/Item15340][Item15340]] | Normal | Engine | only call expandCommonVariables when there are some |
| 26 | [[%BUGS%/Item15341][Item15341]] | Normal | Engine | perl error in I18N calling next outside of a loop |
| 27 | [[%BUGS%/Item15344][Item15344]] | Normal | JQueryPlugin | remove support for IE11 in debug component |
| 28 | [[%BUGS%/Item15347][Item15347]] | Normal | Engine | remove unused FormTypes configuration setting from core |
| 29 | [[%BUGS%/Item15351][Item15351]] | Normal | Engine | significant performance problem in Foswiki::UI::View |
| 30 | [[%BUGS%/Item15296][Item15296]] | Low | Engine | typo in lib/Foswiki.spec, line 1415: "on these sysetms" |
| 31 | [[%BUGS%/Item15342][Item15342]] | Low | Engine | use compatible ACLs in shipped topics |
| 32 | [[%BUGS%/Item15343][Item15343]] | Low | JQueryPlugin | remove inline css from documentation |
| 33 | [[%BUGS%/Item15349][Item15349]] | Low | Engine | remove Tip of the Day from System WebHome |
| 34 | [[%BUGS%/Item13722][Item13722]] | Enhancement | JQueryPlugin | remove deprecated and obsolete modules from JQueryPlugin |
| 35 | [[%BUGS%/Item15062][Item15062]] | Enhancement | JQueryPlugin | upgrade jquery-ui to latest version |
| 36 | [[%BUGS%/Item15214][Item15214]] | Enhancement | JQueryPlugin | upgrade to jquery-3.7.1 |
| 37 | [[%BUGS%/Item15215][Item15215]] | Enhancement | NatEditPlugin | menu buttons too close to each other in natedit |
| 38 | [[%BUGS%/Item15216][Item15216]] | Enhancement | Engine | remove warning from auth script checkers about non-template login managers |
| 39 | [[%BUGS%/Item15218][Item15218]] | Enhancement | Engine | implement homeweb feature |
| 40 | [[%BUGS%/Item15224][Item15224]] | Enhancement | JQueryPlugin | minimize number of loaded js files |
| 41 | [[%BUGS%/Item15227][Item15227]] | Enhancement | Engine | implement lateInitPlugin() handler for plugins |
| 42 | [[%BUGS%/Item15229][Item15229]] | Enhancement | JQueryPlugin | combine assets of jquery modules |
| 43 | [[%BUGS%/Item15230][Item15230]] | Enhancement | Engine | add context to configure |
| 44 | [[%BUGS%/Item15232][Item15232]] | Enhancement | Engine | add Makefile for old JavaScriptFiles |
| 45 | [[%BUGS%/Item15325][Item15325]] | Enhancement | JQueryPlugin | upgrade jQuery treeview to version 1.4.2 and add a custom foswiki theme  |
| 46 | [[%BUGS%/Item15326][Item15326]] | Enhancement | JQueryPlugin | upgrade to latest available imagesLoaded module |
| 47 | [[%BUGS%/Item15327][Item15327]] | Enhancement | JQueryPlugin | remove fixed-width attribute from button icons |
| 48 | [[%BUGS%/Item15328][Item15328]] | Enhancement | JQueryPlugin | remove soft hyphens when wikifying a string |
| 49 | [[%BUGS%/Item15329][Item15329]] | Enhancement | JQueryPlugin | upgrade jsview and jsrender modules to latest upstream version |
| 50 | [[%BUGS%/Item15330][Item15330]] | Enhancement | JQueryPlugin | update form validation to latest upstream version |
| 51 | [[%BUGS%/Item15338][Item15338]] | Enhancement | Engine | implement a fast preferences backend |
| 52 | [[%BUGS%/Item15345][Item15345]] | Enhancement | NatEditPlugin | listen to reset event clearing all form elements |
| 53 | [[%BUGS%/Item15346][Item15346]] | Enhancement | Engine | add labels to all core extensions' config settings |
| 54 | [[%BUGS%/Item15355][Item15355]] | Enhancement | JQueryPlugin | add for parameter to BUTTON macro |
| 55 | [[%BUGS%/Item15356][Item15356]] | Enhancement | TopicUserMappingContrib | remove unused topics from main web |
| 56 | [[%BUGS%/Item15357][Item15357]] | Enhancement | PatternSkin | add makefiles for PatternSkin assets |
| 57 | [[%BUGS%/Item15358][Item15358]] | Enhancement | JQueryPlugin, NatEditPlugin | fix css for ui-buttons and ui-menus |


---++ Foswiki Release 2.1.10 Details

---+++ Security Fixes
| *#* | *Task* | *Component* | *Summary* |
| 1 | [[%BUGS%/Item15458][Item15458]] | Engine | Ignore remote "Host" Header by default (OWASP: Host Header Attack) |
| 2 | [[%BUGS%/Item15507][Item15507]] | Engine | cross site scripting vulnerability in a paged search |
| 3 | [[%BUGS%/Item15508][Item15508]] | Engine | content spoofing vulnerability in password reset procedure |
| 4 | [[%BUGS%/Item15509][Item15509]] | Engine | cross site scripting vulnerability in attachment comments |

---+++ Bug Fixes
| *#* | *Task* | *Priority* | *Component* | *Summary* |
| 1  | [[%BUGS%/Item15594][Item15594]] | Urgent | QUERY, IfStatement | QUERY and IF macros cannot process formfields with unicode chars in their name |
| 2  | [[%BUGS%/Item15576][Item15576]] | Urgent | Engine | MetaCache not used under certain conditions |
| 3  | [[%BUGS%/Item15552][Item15552]] | Urgent | PageCache | page cache db losing connection after some time |
| 4  | [[%BUGS%/Item15543][Item15543]] | Urgent | TopicUserMappingContrib | restrict view access to ChangeEmailAddress |
| 5  | [[%BUGS%/Item15500][Item15500]] | Urgent | Engine | insecure validation of script environment |
| 6  | [[%BUGS%/Item15499][Item15499]] | Urgent | Engine | broken validation of contenttype parameter |
| 7  | [[%BUGS%/Item15491][Item15491]] | Urgent | Engine | prevent USERNAME, WIKINAME and WIKIUSERNAME from being overwritten using preference settings |
| 8  | [[%BUGS%/Item15490][Item15490]] | Urgent | DataForms | renaming dataform attributes can destroy formfield definitions |
| 9  | [[%BUGS%/Item15469][Item15469]] | Urgent | MoreFormfieldsPlugin, JQueryPlugin | editing dates across timezones is seriously broken |
| 10 | [[%BUGS%/Item15452][Item15452]] | Urgent | Engine | Login Url always redirects to the home web |
| 11 | [[%BUGS%/Item15443][Item15443]] | Urgent | UpdatesPlugin | UpdatePlugin cannot parse UpdatesPluginReport |
| 12 | [[%BUGS%/Item15408][Item15408]] | Urgent | Engine | cached meta objects need to be reassigned to the current session |
| 13 | [[%BUGS%/Item15362][Item15362]] | Urgent | PatternSkin | PatternSkin makes use of undocumented macros MAXREV and CURRREV |
| 14 | [[%BUGS%/Item15591][Item15591]] | Normal | PlainFileStoreContrib | cannot read information of latest release in PlainFileStroreContrib |
| 15 | [[%BUGS%/Item15590][Item15590]] | Normal | Engine | keep meta data records stable by sorting them |
| 16 | [[%BUGS%/Item15584][Item15584]] | Normal | InterwikiPlugin | interwiki shortcuts mostly outdated |
| 17 | [[%BUGS%/Item15583][Item15583]] | Normal | JQueryPlugin | textboxlist's =DeleteValue= event is mosly useless |
| 18 | [[%BUGS%/Item15582][Item15582]] | Normal | FoswikiMeta | add a nolock option to the store api |
| 19 | [[%BUGS%/Item15580][Item15580]] | Normal | Engine | GroupTemplate has got invalid meta data |
| 20 | [[%BUGS%/Item15571][Item15571]] | Normal | JQueryPlugin | add debounce utility to foswiki class |
| 21 | [[%BUGS%/Item15570][Item15570]] | Normal | NatEditPlugin | implement redirectto none |
| 22 | [[%BUGS%/Item15563][Item15563]] | Normal | Engine | use & instead of ; as an url parm separator |
| 23 | [[%BUGS%/Item15562][Item15562]] | Normal | JQueryPlugin | JQueryPlugin does not list all required perl dependencies |
| 24 | [[%BUGS%/Item15561][Item15561]] | Normal | Engine | TOC macro does not respect multiple url parameters |
| 25 | [[%BUGS%/Item15560][Item15560]] | Normal | Engine | allow dashes (-) in anchor names |
| 26 | [[%BUGS%/Item15556][Item15556]] | Normal | JQueryPlugin | add button feature to jquery loader |
| 27 | [[%BUGS%/Item15544][Item15544]] | Normal | Engine | don't redirect to an empty target in REST api |
| 28 | [[%BUGS%/Item15542][Item15542]] | Normal | Engine | TopicACLReadOnlyAccess does not compile |
| 29 | [[%BUGS%/Item15538][Item15538]] | Normal | Engine | disable userinterface internationalisation on the command line |
| 30 | [[%BUGS%/Item15534][Item15534]] | Normal | Engine | problems rendering inequality formulas |
| 31 | [[%BUGS%/Item15532][Item15532]] | Normal | JQueryPlugin | datepicker fails to initialize when timezones of server and client differ |
| 32 | [[%BUGS%/Item15505][Item15505]] | Normal | SubscribePlugin | invalid use of topic parameter in SubscribePlugin |
| 33 | [[%BUGS%/Item15504][Item15504]] | Normal | Engine | remove deprecated apptype and contenttype url parameter to edit |
| 34 | [[%BUGS%/Item15503][Item15503]] | Normal | Engine | possible use of uninitialized value parsing topic info |
| 35 | [[%BUGS%/Item15501][Item15501]] | Normal | Engine | cannot use an empty or null format string |
| 36 | [[%BUGS%/Item15453][Item15453]] | Normal | HistoryPlugin | incomplete implementation of HISTORYPLUGIN_NREV |
| 37 | [[%BUGS%/Item15450][Item15450]] | Normal | NatEditPlugin | a form with a natedit formfield in it cannot be fully reset |
| 38 | [[%BUGS%/Item15427][Item15427]] | Normal | Engine | AggregateIterator doesn't implement reset() |
| 39 | [[%BUGS%/Item14656][Item14656]] | Normal | JQueryPlugin | textboxlist SelectValue event listener not functioning - typo in code or doc. |
| 40 | [[%BUGS%/Item13951][Item13951]] | Normal | NatEditPlugin | show permission setting option Nobody only to admins |
| 41 | [[%BUGS%/Item15547][Item15547]] | Low | EditRowPlugin | minor perl error defining global vars |
| 42 | [[%BUGS%/Item15572][Item15572]] | Enhancement | NatEditPlugin | clean up toolbar markup in natedit |
| 43 | [[%BUGS%/Item15566][Item15566]] | Enhancement | JQueryPlugin | remove jqgrid support from foswiki theme |
| 44 | [[%BUGS%/Item15548][Item15548]] | Enhancement | PatternSkin | better defaults for topbar logo geometry |
| 45 | [[%BUGS%/Item15546][Item15546]] | Enhancement | Engine | use %$RELEASE macro to ease plugin maintenance |
| 46 | [[%BUGS%/Item15545][Item15545]] | Enhancement | PatternSkin | better colors for anchors in headings |
| 47 | [[%BUGS%/Item15539][Item15539]] | Enhancement | JQueryPlugin | manipulating the z-index of datepickers considered harmful |
| 48 | [[%BUGS%/Item15533][Item15533]] | Enhancement | JQueryPlugin | entity decode tooltip content |
| 49 | [[%BUGS%/Item15531][Item15531]] | Enhancement | JQueryPlugin | remove deprecated $.parseJSON |
| 50 | [[%BUGS%/Item15530][Item15530]] | Enhancement | JQueryPlugin | update view and observable packages to upstream |
| 51 | [[%BUGS%/Item15529][Item15529]] | Enhancement | JQueryPlugin | simplify code to filter duplicate entries in textbox lists |
| 52 | [[%BUGS%/Item15528][Item15528]] | Enhancement | JQueryPlugin | add fontawesome icons to pnotify |
| 53 | [[%BUGS%/Item15512][Item15512]] | Enhancement | WysiwygPlugin | use of uninitialized value in tml2html |
| 54 | [[%BUGS%/Item15511][Item15511]] | Enhancement | FamFamFamContrib | duplicate url parameter in famfamfam skin |
| 55 | [[%BUGS%/Item15510][Item15510]] | Enhancement | UpdatesPlugin | sort plugins before calling updates report |

---++ Foswiki Release 2.1.11 Details

---+++ Security Fixes
| *#* | *Task* | *Component* | *Summary* |
| 1 | [[%BUGS%/Item15600][Item15600]] | FoswikiUIChanges, FoswikiUIPreview | changes and preview scripts do not check view access rights |
| 2 | [[%BUGS%/Item15601][Item15601]] | FoswikiUIViewfile | viewfile can be used to test for existing files even without view rights on the topic |
| 3 | [[%BUGS%/Item15602][Item15602]] | FoswikiUIOops | oops script can be used to display data even without view access rights |

---+++ Bug Fixes
| *#* | *Task* | *Priority* | *Component* | *Summary* |
| 1 | [[%BUGS%/Item15614][Item15614]] | Urgent | DataForms | regression in fieldTitle2FieldName caused by 2.1.10 |
| 2 | [[%BUGS%/Item15598][Item15598]] | Urgent | ConfigurePlugin | checker for {ForceDefaultUrlHost} has got its logic the wrong way around |
| 3 | [[%BUGS%/Item15624][Item15624]] | Normal | NatEditPlugin | don't autocount ordered lists in natedit |
| 4 | [[%BUGS%/Item15618][Item15618]] | Normal | WysiwygPlugin | pink does not match on the percent color PINK |
| 5 | [[%BUGS%/Item15617][Item15617]] | Normal | SEARCH | broken pagination in WebSearch |
| 6 | [[%BUGS%/Item15615][Item15615]] | Normal | JQueryPlugin | remove deprecated jquery-ui themes |
| 7 | [[%BUGS%/Item15613][Item15613]] | Normal | UpdatesPlugin | some performance improvements to UpdatesPlugin |
| 8 | [[%BUGS%/Item15606][Item15606]] | Normal | TablePlugin, TwistyPlugin, FoswikiRender, CommentPlugin, WysiwygPlugin | remove dependency of several plugins on CGI |
| 9 | [[%BUGS%/Item15604][Item15604]] | Normal | JQueryPlugin | ignore duplicates in textboxlist |
| 10 | [[%BUGS%/Item15623][Item15623]] | Enhancement | Engine | add jpeg-xl to mime types |
| 11 | [[%BUGS%/Item15622][Item15622]] | Enhancement | JsonRpcContrib | use native json parser |
| 12 | [[%BUGS%/Item15619][Item15619]] | Enhancement | JQueryPlugin | fix icon alignments in menus |
| 13 | [[%BUGS%/Item15616][Item15616]] | Enhancement | JQueryPlugin | add jquery-4.0.0 and matching migrate component |
| 14 | [[%BUGS%/Item15607][Item15607]] | Enhancement | TwistyPlugin | modernize TwistyPlugin |
| 15 | [[%BUGS%/Item15603][Item15603]] | Enhancement | Engine | failing unit test on emptyplugin's manifest |


<!-- Note: Do not use Bugs: interwiki links because interwiki rule might not be defined
   * Set BUGS = https://foswiki.org/Tasks
   * Set FEAT = https://foswiki.org/Development
   * Set FO = https://foswiki.org
   * Set NOAUTOLINK = 1
-->

*Related Topic:* [[ReleaseHistory]]
