- Fixed an error where Oracle sometimes truncated timestamp formats so
that date parsing failed. Thanks to Johann Wilfling for the report and
@nmaqsudov for the solution (#316).
- Added pager configuration, prioritizing the new `core.pager`
configuration variable over the `$PAGER` environment variable. The new
`$SQITCH_PAGER` environment variable trumps all. Thanks to Yati Sagade
for the pull request (#329).
- Documented the `core.editor` configuration variable.
- Updated PostgreSQL registry detection to avoid errors when not running
Sqitch as a superuser and the registry schema already exists. Done by
looking for the `changes` table in the `pg_tables` view instead of
looking for the registry schema in the `pg_namespace` catalog table,
and by using `CREATE SCHEMA IF NOT EXISTS` on PostgreSQL 9.3 and
higher. Thanks to @djk447 for the pull request (#307).
- Updated PostgreSQL registry detection to avoid errors when the `psql`
client is newer than the server version. Sqitch now fetches the version
from the server instead of parsing it from the client.
- Specifying a change before a target name on the command-line no longer
ignores the target (#281).
- The `--db-*` options are now more consistently applied to a target,
including when the target is specified as a URI (#293).
- `HEAD` and `ROOT` are now properly recognized as aliases for `@HEAD`
and `@ROOT`, when querying the database. This was supposedly done in
v0.991, but due to a bug, it wasn't really. Sorry about that.
- The `revert` and `verify` commands will now fail if a change is
specified and matches multiple changes. This happens when referencing a
reworked change only by its name. In this case, Sqitch will emit an
error listing properly tag-qualified changes to use. Suggested by Jay
Hannah (#312).
- Sqitch no longer returns an error when a target name is passed to a
command and the default target's plan file does not exist (#324).
- Added missing options to the `rework` usage statement. Thanks to Jay
Hannah for the PR (#342).
- Passing an engine name or plan file as the `<database>` parameter to
the `log`, `status`, and `upgrade` commands now works correctly,
matching what the documention has said for some time (#324).
- Added the `--target` option to the `plan` and `show` commands.
- Added the `<database>` parameter to the `plan` command.
- Sqitch now loads targets from all config files, not just the local
file, when trying to determine if a `<database>` parameter is a plan
file name.
- Improved the error message when a change is found more than once in a
plan, typically a reworked changed referenced only by name. The error
will no longer be "Key at multiple indexes", but "Change is ambiguous.
Please specify a tag-qualified change:", followed by a list of
tag-qualified variants of the change.
- Fixed a bug where the verify command would return a database error when
it finds no registory. Now it reports that the registry wasn't found in
the database.
The install would presumably fail outright for user shells like tcsh, so we
need to set SHELL regardless. But technically install-sh has a quoting bug
in the exit trap, which even results in SHELL=zsh failing.
go14 has no relro support AFAICT.
go-1.8.3 has if you use -buildmode=pie, but it claims it's not supported
on Linux.
Disable relro checking for go packages until bsiegert has time to
look at this.
pkgsrc changes:
- Adjust SUBST `audio' class after recent ao_oss changes
- Backport a patch to fix issue #4642 (`ao_oss: fix a dumb calculation').
Changes:
Release 0.26.0
==============
VA-API/VDPAU hardware decoding now requires FFmpeg > 3.2.
DVB support is disabled by default since it does not work with some older kernels.
Built-in V4L TV support is disabled by default. av://v4l2 can be used instead.
Support for C plugins is now enabled by default (#4491).
Many more parts of the player are now licensed under LGPL, see Copyright file.
Thanks to all contributors who have agreed to relicensing of their changes!
See #2033 for details.
Features
--------
Added
~~~~~
- Universal Windows Plaform (UWP) support (libmpv only)
- csputils: implement sony s-gamut
- js: add javascript scripting support using MuJS
See DOCS/man/javascript.rst for more details
- vo_opengl: add new HDR tone mapping algorithm (mobius, now default)
- vo_opengl: hwdec_cuda: Support separate decode and display devices
- vo_opengl: implement sony s-log1 and s-log2 trc
- vo_opengl: implement support for OOTFs and non-display referred content
Removed
~~~~~~~
- vf_dlopen: remove this filter
Options and Commands
--------------------
Added
~~~~~
- vo_opengl: add --tone-mapping-desaturate
- vo_opengl: support tone-mapping-param for `clip`
- ytdl_hook: add option to exclude URLs from being parsed
Changed
~~~~~~~
- allow setting profile option with libmpv
- audio: move replaygain control to top-level options
- external_files: parse ~ in --{sub,audio}-paths
- options: change --sub-fix-timing default to no (#4484)
- options: expose string list actions for --sub-file option
- options: slight cleanup of --sub-ass-style-override
* signfs → scale
* --sub-ass-style-override → --sub-ass-override
- renamed the HDR TRCs `st2084` and `std-b67` to `pq` and `hlg` respectively
- replace vf_format's `peak` suboption by `sig-peak`, which is relative to the reference white level instead of in cd/m^2
- the following options change to append-by-default (and possibly separator):
* --script
- video: change --video-aspect-method default value to `container`
Deprecated
~~~~~~~~~~
- m_option: deprecate multiple items for -add etc.
- player: deprecate "osd" command
- --audio-file-paths => --audio-file-path
- --sub-paths => --sub-file-path
- --opengl-shaders => --opengl-shader
- --sub-paths => --sub-file-paths
- the following options are deprecated for setting via API:
* "script" (use "scripts")
* "sub-file" (use "sub-files")
* "audio-file" (use "audio-files")
* "external-file" (use "external-files")
(the compatibility hacks for this will be removed after this release)
Removed
~~~~~~~
- chmap: remove misleading "downmix" channel layout name (#4545)
- demux_lavf: remove --demuxer-lavf-cryptokey option (#4579)
- input.conf: drop TV/DVB bindings
- options: remove remaining deprecated audio device selection options
* --alsa-device
* --oss-device
* --coreaudio-exclusive
* --pulse-sink
* --rsound-host/--rsound-port
* --ao-sndio-device
* --ao-wasapi-exclusive
* --ao-wasapi-device
- remove option --target-brightness
- remove property "video-params/nom-peak"
Fixes and Minor Enhancements
----------------------------
- TOOLS/lua/autoload.lua: actually sort files case insensitive (#4398)
- TOOLS/lua/autoload.lua: ignores all files starting with "."
- ao_openal: kill off device listing (#4311)
- ao_pulse: reorder format choice to prefer float and S32 over S16 as fallback format
- ao_wasapi: try correct initial format (#4582)
- command: add missing change notification for playlist-shuffle (#4573)
- demux_disc: fix bluray subtitle language retrieval (#4611)
- demux_mkv: fix alpha with vp9 + libvpx
- demux_mkv: support FFmpeg A_MS/ACM extensions
- ipc-unix: don’t truncate the message on EAGAIN (#4452)
- ipc: raise json nesting limit (#4394)
- macOS: fix mpv-wrapper.sh when used with csh or tcsh shell
- macOS: properly unhide Dock when quitting during System fs animation
- mpv_identify: replace deprecated fps property (#4550)
- options/path: fallback to USERPROFILE if HOME isn't set
- player: close audio device on no audio track
- player: fix potential segfault when playing dvd:// with DVD disabled (#4393)
- player: prevent seek position to jump around adjacent keyframes, e.g. when dragging the OSC bar on short videos (#4183)
- vo_opengl: bump up SHADER_MAX_HOOKS and MAX_TEXTURE_HOOKS to 64
- vo_opengl: correct off-by-one in scale=oversample
- vo_opengl: do not use vaapi-over-GLX (#4555)
- vo_opengl: fall back to ordered dither instead of blowing up (#4519)
- vo_opengl: tone map in linear XYZ instead of RGB
- x11: add 128x128 sized icon support
- ytdl_hook: add a header to support geo-bypass
- ytdl_hook: don't override start time set by saved state
- ytdl_hook: don't override user-set start time
- ytdl_hook: treat single-entry playlists as a single video
Minor bug fixes from 0.7.0
0.7.0:
General
* Many security fixes (static compile and fuzzing through AFL, always ongoing).
* Colorized log.
* Changed default audio volume to 100% instead of 75%.
* Expose more experimental options through the documentation.
* Improved GLES renderer on mobile platforms.
* Improvements on AVI dump.
* Fixed pkg-config Private.libs.
* SAT>IP playback support.
Codecs and File Formats
* Added L-HEVC File Format support (SHVC/MV-HEVC tracks and HEVC Tile Tracks).
* Added MPEG IFF (image File Format) support.
* Range extension support for AVC and HEVC.
* SHVC and MV-HEVC importers and playback: moved to final spec version (SHM6+).
Adaptive streaming
* Support of HLS with fragmented MP4 playback.
* APIs: gf_mpd_() functions and new segmenter API.
* Improved alternate groups.
* More support for PIFF PSEC and Smooth Streaming ( file format & playback).
* DASH client: pluggable algorithms + improvements with scalable contents.
* The counter source from the DASH sequences added to the public content.
* HLS and DASH playback minor fixes.
* DASH client logs are clearer.
VR and 360
* Added support for DASH SRD in 360 for independent videos videos (NxM partial spheres) more
* Added support for DASH SRD in 360 for HEVC tiled videos (NxM tiles on one sphere) - checkout tuto
Mobile
* Apple VideoToolBox hardware decoding support for OSX and iOS for AVC|H264.
* Android hardware decoding hardware acceleration for AVC|H264 (HEVC on its way).
* YUV422 and YUV444 8 and 10 bit support in GLES renderer.
* Android build is based on Android Studio.
* Android: new File Manager.
Subtitles
* Import of TTML via NHML according to MPEG-4 part 30 improved.
Upstream changes:
RELEASE-NOTES-1.29
== MediaWiki 1.29 ==
=== Configuration changes in 1.29 ===
* Default cookie expiration time has been reduced to 30 days. Login cookie
expiration time is kept at 180 days.
* A new configuration variable has been added: $wgCookieSetOnAutoblock. This
determines whether to set a cookie when a user is autoblocked. Doing so means
that a blocked user, even after logging out and moving to a new IP address,
will still be blocked.
* The resetpassword right and associated password reset capture feature has
been removed.
* The $error parameter to the EmailUser hook should be set to a Status object
or boolean false. This should be compatible with at least MediaWiki 1.23 if
not earlier. Returning a raw HTML string is now deprecated.
* The $message parameter to the ApiCheckCanExecute hook should be set to an
ApiMessage. This is compatible with MediaWiki 1.27 and later. Returning a
code for ApiBase::parseMsg() will no longer work.
* ApiBase::$messageMap is no longer public. Code attempting to access it will
result in a PHP fatal error.
* $wgUserEmailUseReplyTo is now true by default to work around restrictive DMARC
policies.
* Subpages are now enabled by default in the Template namespace. Set
$wgNamespacesWithSubpages[NS_TEMPLATE] to false to keep the old behavior.
* $wgRunJobsAsync is now false by default (T142751). This change only affects
wikis with $wgJobRunRate > 0.
* (T158474) "Unknown user" has been added to $wgReservedUsernames.
* (T156983) $wgRateLimitsExcludedIPs now accepts CIDR ranges as well as single IPs.
* $wgDummyLanguageCodes is deprecated. Additional language code mappings may be
added to $wgExtraLanguageCodes instead.
* (T161453) LocalisationCache will no longer use the temporary directory in it's
fallback chain when trying to work out where to write the cache.
* The user right 'editusercssjs' (deprecated in 1.16) was removed. Use
'editusercss' and 'edituserjs' in $wgGroupPermissions and elsewhere instead.
=== New features in 1.29 ===
* (T5233) A cookie can now be set when a user is autoblocked, to track that user
if they move to a new IP address. This is disabled by default.
* Added ILocalizedException interface to standardize the use of localized
exceptions, largely so the API can handle them more sensibly.
* Blocks created automatically by MediaWiki, such as for configured proxies or
dnsbls, are now indicated as such and use a new i18n message when displayed.
* Added new $wgHTTPImportTimeout setting. Sets timeout for
downloading the XML dump during a transwiki import in seconds.
* Parser limit report is now available in machine-readable format to JavaScript
via mw.config.get('wgPageParseReport').
* Added $wgSoftBlockRanges, to allow for automatically blocking anonymous edits
from certain IP ranges (e.g. private IPs).
* (T59603) Added new magic word {{PAGELANGUAGE}} which returns the language code
of the page being parsed.
* HTML5 form validation attributes will no longer be suppressed. Originally
browsers had poor support for them, but modern browsers handle them fine.
This might affect some forms that used them and only worked because the
attributes were not actually being set.
* Expiry times can now be specified when users are added to user groups.
* Completely new user interface for the RecentChanges page, which
structures filters into user-friendly groups. This has corresponding
changes to how filters are registered by core and extensions.
* The edit form now uses pretty OOjs UI buttons, checkboxes and summary input.
Because this change can cause problems for extensions and on-wiki
scripts depending on the exact HTML, the old version is still available
and can be used by setting $wgOOUIEditPage = false; in LocalSettings.php.
This will be removed later and OOjs UI will become the only option.
To make testing easier, users can also force either mode by adding
&ooui=true or &ooui=false to the action=edit URL.
=== External library changes in 1.29 ===
==== Upgraded external libraries ====
* Updated QUnit from v1.22.0 to v1.23.1.
* Updated cssjanus from v1.1.2 to v1.2.0.
* Updated psr/log from v1.0.0 to v1.0.2.
* Update Moment.js from v2.8.4 to v2.15.0.
* Updated oyejorge/less.php from v1.7.0.10 to v1.7.0.14.
* Updated monolog from v1.18.2 to 1.22.1.
* Updated wikimedia/composer-merge-plugin from v1.3.1 to v1.4.0.
* Updated OOjs from v1.1.10 to v2.0.0.
==== New external libraries ====
* Added wikimedia/timestamp v1.0.0.
* Added wikimedia/remex-html v1.0.1.
==== Removed and replaced external libraries ====
=== Bug fixes in 1.29 ===
* (T62604) Core parser functions returning a number now format the number according
to the page content language, not wiki content language.
* (T27187) Search suggestions based on jquery.suggestions will now correctly only
highlight prefix matches in the results.
* (T157035) "new mw.Uri()" was ignoring options when using default URI.
* Special:Allpages can no longer be filtered by redirect in miser mode.
* (T160519) CACHE_ANYTHING will not be CACHE_ACCEL if no accelerator is installed.
* (T109140) (T122209) SECURITY: Special:UserLogin and Special:Search allow redirect
to interwiki links.
* (T144845) SECURITY: XSS in SearchHighlighter::highlightText() when
$wgAdvancedSearchHighlighting is true.
* (T125177) SECURITY: API parameters may now be marked as "sensitive" to keep
their values out of the logs.
* (T150044) SECURITY: "Mark all pages visited" on the watchlist now requires a CSRF
token.
* (T156184) SECURITY: Escape content model/format url parameter in message.
* (T151735) SECURITY: SVG filter evasion using default attribute values in DTD
declaration.
* (T161453) SECURITY: LocalisationCache will no longer use the temporary directory
in it's fallback chain when trying to work out where to write the cache.
* (T48143) SECURITY: Spam blacklist ineffective on encoded URLs inside file inclusion
syntax's link parameter.
* (T108138) SECURITY: Sysops can undelete pages, although the page is protected against
it.
=== Action API changes in 1.29 ===
* Submitting sensitive authentication request parameters to action=login,
action=clientlogin, action=createaccount, action=linkaccount, and
action=changeauthenticationdata in the query string is now an error. They
should be submitted in the POST body instead.
* The capture option for action=resetpassword has been removed
* action=clearhasmsg now requires a POST.
* (T47843) API errors and warnings may be requested in non-English languages
using the new 'errorformat', 'errorlang', and 'errorsuselocal' parameters.
* API error codes may have changed. Most notably, errors from modules using
parameter prefixes (e.g. all query submodules) will no longer be prefixed.
* ApiPageSet-using modules will report the 'invalidreason' using the specified
'errorformat'.
* action=emailuser may return a "Warnings" status, and now returns 'warnings' and
'errors' subelements (as applicable) instead of 'message'.
* action=imagerotate returns an 'errors' subelement rather than 'errormessage'.
* action=move now reports errors when moving the talk page as an array under
key 'talkmove-errors', rather than using 'talkmove-error-code' and
'talkmove-error-info'. The format for subpage move errors has also changed.
* action=revisiondelete no longer includes a "rendered" property on warnings
and errors for each item. Use errorformat=wikitext if you're wanting parsed
output.
* action=rollback no longer returns a "messageHtml" property. Use
errorformat=html if you're wanting HTML formatting of error messages.
* action=upload now reports optional stash failures as an array under key
'stasherrors' rather than a 'stashfailed' text string.
* action=watch reports 'errors' and 'warnings' instead of a single 'error', and
no longer returns a 'message' on success.
* Added action=validatepassword to validate passwords for the account creation
and password change forms.
* action=purge now requires a POST.
* There is a new `languagevariants` siprop for action=query&meta=siteinfo,
which returns a list of languages with active LanguageConverter instances.
* action=query&query=allpages will no longer filter redirects using a database
query in miser mode. This may result in less results being returned than were
requested.
=== Action API internal changes in 1.29 ===
* New methods were added to ApiBase to handle errors and warnings using i18n
keys. Methods for using hard-coded English messages were deprecated:
* ApiBase::dieUsage() was deprecated
* ApiBase::dieUsageMsg() was deprecated
* ApiBase::dieUsageMsgOrDebug() was deprecated
* ApiBase::getErrorFromStatus() was deprecated
* ApiBase::parseMsg() was deprecated
* ApiBase::setWarning() was deprecated
* ApiBase::$messageMap is no longer public. Code attempting to access it will
result in a PHP fatal error.
* The $message parameter to the ApiCheckCanExecute hook should be set to an
ApiMessage. This is compatible with MediaWiki 1.27 and later. Returning a
code for ApiBase::parseMsg() will no longer work.
* UsageException is deprecated in favor of ApiUsageException. For the time
being ApiUsageException is a subclass of UsageException to allow things that
catch only UsageException to still function properly.
* If, for some strange reason, code was using an ApiErrorFormatter instead of
ApiErrorFormatter_BackCompat, note that the result format has changed and
various methods now take a module path rather than a module name.
* ApiMessageTrait::getApiCode() now strips 'apierror-' and 'apiwarn-' prefixes
from the message key, and maps some message keys for backwards compatibility.
* API parameters may now be marked as "sensitive" to keep their values out of
the logs.
=== extension.json changes in 1.29 ===
* Extensions must set a value for "manifest_version" in their extension.json
or skin.json files. See
<https://www.mediawiki.org/wiki/Manual:Extension.json/Schema#manifest_version>
for details.
* Extensions can now specify dependencies upon other extensions by using the
"requires" key. See
<https://www.mediawiki.org/wiki/Manual:Extension.json/Schema#requires> for
more details.
* (T151136) Functions set as the "callback" now recieve that extension's credits
information as the first argument.
* (T149597) "PasswordPolicy" can be set in extension.json.
=== Languages updated in 1.29 ===
MediaWiki supports over 350 languages. Many localisations are updated
regularly. Below only new and removed languages are listed, as well as
changes to languages because of Phabricator reports.
* Based as always on linguistic studies on intelligibility and language
knowledge by geography, language fallbacks have been expanded. When a
translation is missing in the user's preferred interface language, the
corresponding translation for the fallback language will be used instead.
English will only be used as last resort when there are no translations.
Some configurations (such as date formats and gender namespaces) have also
been updated when using the fallback language's configuration was inadequate.
The new or reinstated language fallbacks are (after cs ↔ sk in 1.28):
ca ↔ oc; hsb ↔ dsb; io → eo; mdf → ru; pnt → el; roa-tara → it; rup → ro;
sh → bs, sr-el, hr.
* (T137376) New language support: Atikamekw (atj).
* (T163600) New language support: Dinka (din).
* (T155957) Talk Namespaces for Javanese language (jv) have been updated.
==== No fallback for Ukrainian ====
* (T39314) The fallback from Ukrainian to Russian was removed. The Ukrainian
language will now use the default fallback language: English. When a translation
to Ukrainian is not available, an English string will be shown.
=== Other changes in 1.29 ===
* Database::getSearchEngine() (deprecated in 1.28) was removed. Use
SearchEngineFactory::getSearchEngineClass() instead.
* $wgSessionsInMemcached (deprecated in 1.20) was removed. No replacement is
required as all sessions are stored in Object Cache now.
* MWHttpRequest::execute() should be considered to return a StatusValue; the
Status return type is deprecated.
* User::edits() (deprecated in 1.21) was removed.
* Xml::escapeJsString() (deprecated in 1.21) was removed.
* Article::getText() and Article::prepareTextForEdit() (deprecated in 1.21)
were removed.
* Article::getAutosummary() and WikiPage::getAutosummary() (deprecated in 1.21)
were removed.
* Hook ArticleViewCustom (deprecated in 1.21) was removed. Use ArticleContentViewCustom
instead.
* Hooks EditPageGetDiffText and ShowRawCssJs (deprecated in 1.21) were removed.
* Class RevisiondeleteAction (deprecated in 1.25) was removed.
* WikiPage::prepareTextForEdit() (deprecated in 1.21) was removed.
* WikiPage::getText() (deprecated in 1.21) was removed.
* Article::fetchContent() (deprecated in 1.21) was removed.
* User::getPassword() (deprecated in 1.27) was removed.
* User::getTemporaryPassword() (deprecated in 1.27) was removed.
* User::isPasswordReminderThrottled() (deprecated in 1.27) was removed.
* Class FSRepo (deprecated in 1.19) was removed.
* WebRequest::checkSessionCookie() (deprecated in 1.27) was removed. Use
\MediaWiki\Session\SessionManager::singleton()->getPersistedSessionId() instead.
* Class ImageGallery (deprecated in 1.22) was removed.
Use ImageGalleryBase::factory instead.
* Title::moveNoAuth() (deprecated in 1.25) was removed. Use MovePage class instead.
* Hook UnknownAction (deprecated in 1.19) was actually deprecated (it will now
emit warnings). Create a subclass of Action and add it to $wgActions instead.
* WikiRevision::getText() (deprecated since 1.21) is no longer marked deprecated.
* Linker::getInterwikiLinkAttributes() (deprecated since 1.25) was removed.
* Linker::getInternalLinkAttributes() (deprecated since 1.25) was removed.
* Linker::getInternalLinkAttributesObj() (deprecated since 1.25) was removed.
* Linker::getLinkAttributesInternal() (deprecated since 1.25) was removed.
* RedisConnectionPool::handleException (deprecated since 1.23) was removed.
* The static properties mw.Api.errors and mw.Api.warnings, containing incomplete
and outdated lists of errors/warnings returned by the API, are now deprecated.
* wiki.phtml entry point was removed. Refer to index.php instead. If you want "wiki.phtml"
URLs to continue to work, set up redirects. In Apache, this can be done by enabling
mod_rewrite and adding the following rules to your configuration:
RewriteEngine On
RewriteBase /
RewriteRule ^/w/wiki\.phtml$ /w/index.php [R=301,L]
* Hook ArticleAfterFetchContent (deprecated in 1.21) was removed.
Use ArticleAfterFetchContentObject instead.
* Hook ArticleInsertComplete (deprecated in 1.21) was removed.
Use PageContentInsertComplete instead.
* Hook ArticleSave (deprecated in 1.21) was removed.
Use PageContentSave instead.
* Hook ArticleSaveComplete (deprecated in 1.21) was removed.
Use PageContentSaveComplete instead.
* Hook EditFilterMerged (deprecated in 1.21) was removed.
Use EditFilterMergedContent instead.
* Hook EditPageGetPreviewText (deprecated in 1.21) was removed.
Use EditPageGetPreviewContent instead.
* Hook TitleIsCssOrJsPage (deprecated in 1.21) was removed.
Use ContentHandlerDefaultModelFor instead.
* Hook TitleIsWikitextPage (deprecated in 1.21) was removed.
Use ContentHandlerDefaultModelFor instead.
* Article::getContent() (deprecated in 1.21) was removed.
* Revision::getText() (deprecated in 1.21) was removed.
* Article::doEdit() and WikiPage::doEdit() (deprecated in 1.21) were removed.
* Parser::replaceUnusualEscapes() (deprecated in 1.24) was removed.
* Article::doEditContent() was marked as deprecated, to be removed in 1.30
or later.
* ContentHandler::runLegacyHooks() was removed.
* refreshLinks.php now can be limited to a particular category with --category=...
or a tracking category with --tracking-category=...
* User-like objects that are passed to SpecialUserRights and its subclasses are
now required to have a getGroupMemberships() method. See UserRightsProxy for
an example.
* User::$mGroups (instance variable) was marked private. Use User::getGroups()
instead.
* User::getGroupName(), User::getGroupMember(), User:getGroupPage(),
User::makeGroupLinkHTML(), and User::makeGroupLinkWiki() were deprecated.
Use equivalent methods on the UserGroupMembership class.
* Maintenance scripts and tests that call User::addGroup() must now ensure that
User objects have been added to the database prior to calling addGroup().
* Protected function UsersPager::getGroups() was removed, and protected function
UsersPager::buildGroupLink() was changed from a static to an instance method.
* The third parameter ($cache) to the UsersPagerDoBatchLookups hook was changed;
see docs/hooks.txt.
* User::crypt() (deprecated in 1.24) was removed.
* User::comparePasswords() (deprecated in 1.24) was removed.
* ArchivedFile::getUserText() (deprecated in 1.23) was removed.
* HTMLFileCache::newFromTitle() (deprecated in 1.24) was removed.
* BREAKING CHANGE: Internal signature changes to ChangesListSpecialPage
and subclasses. It should only break if you call buildMainQueryConds
(changed to buildQuery with new signature) or doMainQuery (new
signature). Subclasses are likely to call at least doMainQuery
(possibly both), but other classes might too, because they were
public.
Also, some related hooks were deprecated, but this is not yet a
breaking change.
* Removed 'jquery.arrowSteps' module. (deprecated since 1.28)
* The 'jquery.autoEllipsis' ResourceLoader module is now deprecated.
* WikiRevision::$fileIsTemp was deprecated.
* WikiRevision::$importer was deprecated.
* WikiRevision::$user was deprecated.
* Article::getLastPurgeTimestamp(), WikiPage::getLastPurgeTimestamp(), and the
WikiPage::PURGE_* constants are deprecated, and the functions will always
return false. They were a hack for an issue that has since been fixed.
* Hook 'EditPageBeforeEditChecks' is now deprecated. Instead use the new hook
'EditPageGetCheckboxesDefinition', or 'EditPage::showStandardInputs:options'
if you don't actually care about checkboxes and just want to add some HTML
to the page.
* Selflinks are now rendered as href-less <a> tags with the class mw-selflink
rather than <strong> tags. The old class name, "selflink", was deprecated
and will be removed in a future release. (T160480)
* (T156184) $wgRawHtml will no longer apply to internationalization messages.
* Browser support for non-ES5 JavaScript browsers, including Android 2,
Opera <12.10, and Internet Explorer 9, was lowered from Grade A to Grade C.
* Removed wikibits global methods deprecated since MediaWiki 1.17 (T122755):
is_gecko, is_chrome_mac, is_chrome, webkit_version, is_safari_win, is_safari,
webkit_match, is_ff2, ff2_bugs, is_ff2_win, is_ff2_x11, opera95_bugs,
opera7_bugs, opera6_bugs, is_opera_95, is_opera_preseven, is_opera,
ie6_bugs, clientPC, changeText, killEvt, addHandler, hookEvent,
addClickHandler, removeHandler, getElementsByClassName, getInnerText,
setupCheckboxShiftClick, addCheckboxClickHandlers, mwEditButtons,
mwCustomEditButtons, injectSpinner, removeSpinner, escapeQuotes,
escapeQuotesHTML, jsMsg, addPortletLink, appendCSS, tooltipAccessKeyPrefix,
tooltipAccessKeyRegexp, updateTooltipAccessKeys.
* The ID of the <li> element containing the login link has changed from
'pt-login' to 'pt-login-private' in private wikis.
* The old, neglected "bulletin board style toolbar" in the edit form is now
deprecated (T30856). This old code dates from 2006, and was replaced in the
MediaWiki release tarball and in Wikimedia production by the WikiEditor
extension in 2010. It is only shown to users if no other editor was
installed, and leads to confusion.
* (T92459) Loading ResourceLoader modules containing JavaScript through
addModuleStyles() is deprecated and will log a warning server-side.
== Compatibility ==
MediaWiki 1.29 requires PHP 5.5.9 or later. There is experimental support for
HHVM 3.6.5 or later.
MySQL/MariaDB is the recommended DBMS. PostgreSQL or SQLite can also be used,
but support for them is somewhat less mature. There is experimental support for
Oracle and Microsoft SQL Server.
The supported versions are:
* MySQL 5.0.3 or later
* PostgreSQL 8.3 or later
* SQLite 3.3.7 or later
* Oracle 9.0.1 or later
* Microsoft SQL Server 2005 (9.00.1399)
== Upgrading ==
1.29 has several database changes since 1.28, and will not work without schema
updates. Note that due to changes to some very large tables like the revision
table, the schema update may take quite long (minutes on a medium sized site,
many hours on a large site).
Don't forget to always back up your database before upgrading!
See the file UPGRADE for more detailed upgrade instructions, including
important information when upgrading from versions prior to 1.11.
For notes on 1.28.x and older releases, see HISTORY.
- fix recognizing whether mocked object is a method or not on Python 3
Release 0.10.1
- fix decode problem in setup.py on Python 3
Release 0.10.0
- new official upstream repository: https://github.com/bkabrda/flexmock/
- new official homepage: https://flexmock.readthedocs.org
- adopted the official BSD 2-clause license
- add support for calling flexmock module directly
- add support for mocking keyword-only args
- add support for Python 3.4 and 3.5
- drop support for Python 2.4, 2.5, 3.1 and 3.2
- add ``__version__`` attribute to flexmock module
- add various metadata to the package archive
- fix properly find out whether function is method or not
and thanks to that don't strip first args of functions
- fix should_call to work when function returns ``None`` or ``False``
- fix various py.test issues
- fix ``CallOrderError`` with same subsequent mocking calls
- fix PyPy support issues
- various code style issues were fixed, 4-spaces indent is now used
Re-release of 0.14.2 due to a release engineering mistake.
No changes other than the version number.
Nevow 0.14.1:
Nevow will now correctly map the MIME type of SVG files even if the
platform registry does not have such a mapping.
Athena no longer logs widget instantiation on initial page load.
Nevow's test suite is now compatible with Twisted 16.3.
Athena will no longer cause spurious errors resulting from page
disconnection.
Athena will now ignore responses to already-responded remote calls
during page shutdown.
cli : new : `--list` command, by Paul Cruz
cli : changed : xz/lzma support enabled by default
cli : changed : `-t *` continue processing list after a decompression error
API : added : ZSTD_versionString()
API : promoted to stable status : ZSTD_getFrameContentSize(), by Sean Purcell
API exp : new advanced API : ZSTD_compress_generic(), ZSTD_CCtx_setParameter()
API exp : new : API for static or external allocation : ZSTD_initStatic?Ctx()
API exp : added : ZSTD_decompressBegin_usingDDict(), requested by Guy Riddle
API exp : clarified memory estimation / measurement functions.
API exp : changed : strongest strategy renamed ZSTD_btultra, fastest strategy ZSTD_fast set to 1
tools : decodecorpus can generate random dictionary-compressed samples, by Paul Cruz
new : contrib/seekable_format, demo and API, by Sean Purcell
changed : contrib/linux-kernel, updated version and license, by Nick Terrell
Upstream changes:
2.2006 2017-07-12
[BUG FIXES]
- Passing roles as a mix of role names and role objects to
Moose::Meta::class->create_anon_class could throw a bogus exception about
'Roles with parameters cannot be cached ...'. Fixed by Olivier
Mengu矇. Based on PR #117.
* Standardize on JSON-based distribution (and remove ini-based distribution)
* Fix various (minor) bugs
* Overhaul docs
* Breaking change: json package info now in datapackage.json
- SQS: Added support for long-polling on all supported queries. Fixed bug
causing error on parsing responses with no retrieved messages from SQS.
- Async hub: Fixed potential infinite loop while performing todo tasks
- Qpid: Fixed bug where messages could have duplicate ``delivery_tag``
- MongoDB: Fixed problem with using ``readPreference`` option at pymongo 3.x.
- Re-added support for :pypi:``SQLAlchemy``
- SQS: Fixed bug where hostname would default to ``localhost`` if not specified
in settings.
- Redis: Added support for reading password from transport URL
- RabbitMQ: Ensured safer encoding of queue arguments.
- Added fallback to :func:``uuid.uuid5`` in :func:``generate_oid`` if
:func:``uuid.uuid3`` fails.
- Fixed race condition and innacurrate timeouts for
:class:``kombu.simple.SimpleBase``
- Zookeeper: Fixed last chroot character trimming
- RabbitMQ: Fixed bug causing an exception when attempting to close an
already-closed connection
- Removed deprecated use of StopIteration in generators and invalid regex
escape sequence.
- Added Python 3.6 to CI testing.
- SQS: Allowed endpoint URL to be specified in the boto3 connection.
- SQS: Added support for Python 3.4.
- SQS: ``kombu[sqs]`` now depends on :pypi:`boto3` (no longer using
:pypi:`boto)`.
- Adds support for Python 3.4+
- Adds support for FIFO queues
- Avoids issues around a broken endpoints file
- Zookeeper: Added support for delaying task with Python 3.
- SQS: Fixed bug where :meth:`kombu.transport.SQS.drain_events` did not support
callback argument
- Fixed bug around modifying dictionary size while iterating over it
- etcd: Added handling for :exc:`EtcdException` exception rather than
:exc:`EtcdError`.
- Included PID in sslserver + sslhandle abend logs in case of SSL failure.
- Removed references to 'gcc' and used 'cc' instead.
- New build with better error log for ssl abends.
Port to Jbuilder (#65 @vbmithr @avsm). There should be no observable changes,
except that Ipaddr_unix is now in a separate subdirectory. This means that
packages that implicitly depended on the module without including the
ocamlfind ipaddr.unix package may now fail. Just adding the ocamlfind
dependency will fix it, and is backwards compatible with older Ipaddr
releases.
Minimum version of OCaml required is now 4.03.0 (formerly was 4.02.2), due to
the use of recent ppx_sexp_conv with Jbuilder also having that as the minimum
supported compiler version.