qt5-5.10.1:ver.bump

This commit is contained in:
Rmys
2018-08-05 16:20:37 +03:00
parent 221af956db
commit 252d6583f2
7 changed files with 240 additions and 53 deletions
@@ -1,6 +1,6 @@
diff -u -r qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp qtwebengine-opensource-src-5.9.1-ftfixes/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp
--- qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-09-19 17:38:43.659642835 +0200
+++ qtwebengine-opensource-src-5.9.1-ftfixes/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-09-19 17:38:50.492991631 +0200
diff -u -r qtwebengine-everywhere-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp qtwebengine-everywhere-src-5.9.1-ftfixes/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp
--- qtwebengine-everywhere-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-09-19 17:38:43.659642835 +0200
+++ qtwebengine-everywhere-src-5.9.1-ftfixes/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-09-19 17:38:50.492991631 +0200
@@ -80,7 +80,7 @@
class FreeTypeLibrary : SkNoncopyable {
@@ -1,7 +1,7 @@
diff -ur qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc
qtwebengine-opensource-src-5.6.0-beta-chimera-nss-init/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc
--- qtwebengine-opensource-src-5.6.0-beta/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc 2015-12-10 18:17:21.000000000 +0100
+++ qtwebengine-opensource-src-5.6.0-beta-chimera-nss-init/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc 2016-01-14
diff -ur qtwebengine-everywhere-src-5.6.0-beta/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc
qtwebengine-everywhere-src-5.6.0-beta-chimera-nss-init/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc
--- qtwebengine-everywhere-src-5.6.0-beta/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc 2015-12-10 18:17:21.000000000 +0100
+++ qtwebengine-everywhere-src-5.6.0-beta-chimera-nss-init/src/3rdparty/chromium/net/socket/ssl_client_socket_openssl.cc 2016-01-14
17:11:38.432633534 +0100
@@ -57,6 +57,10 @@
#include "net/ssl/ssl_platform_key.h"
@@ -20,8 +20,8 @@ Cr-Commit-Position: refs/heads/master@{#426749}
diff --git a/components/url_formatter/url_formatter.cc b/components/url_formatter/url_formatter.cc
index 4455db3..2b82c0c 100644
--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/components/url_formatter/url_formatter.cc
+++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/components/url_formatter/url_formatter.cc
--- qtwebengine-everywhere-src-5.7.0.orig/src/3rdparty/chromium/components/url_formatter/url_formatter.cc
+++ qtwebengine-everywhere-src-5.7.0/src/3rdparty/chromium/components/url_formatter/url_formatter.cc
@@ -428,9 +428,9 @@ void IDNSpoofChecker::SetAllowedUnicodeSet(UErrorCode* status) {
// section at
// http://www.unicode.org/Public/security/latest/xidmodifications.txt) are
@@ -51,10 +51,10 @@ index 4455db3..2b82c0c 100644
#endif
// U+0338 is included in the recommended set, while U+05F4 and U+2027 are in
diff -Naur qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
--- qtwebengine-opensource-src-5.7.0.orig/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp 2016-11-15 17:07:38.680665385 -0800
+++ qtwebengine-opensource-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp 2016-11-15 17:12:17.564001354 -0800
diff -Naur qtwebengine-everywhere-src-5.7.0.orig/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
qtwebengine-everywhere-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp
--- qtwebengine-everywhere-src-5.7.0.orig/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp 2016-11-15 17:07:38.680665385 -0800
+++ qtwebengine-everywhere-src-5.7.0/src/3rdparty/chromium/third_party/WebKit/Source/platform/text/TextBreakIterator.cpp 2016-11-15 17:12:17.564001354 -0800
@@ -26,6 +26,9 @@
#include "wtf/StdLibExtras.h"
#include "wtf/text/CharacterNames.h"
@@ -1,7 +1,8 @@
diff -Nuar a/src/3rdparty/chromium/media/base/decoder_buffer.h b/src/3rdparty/chromium/media/base/decoder_buffer.h
--- a/src/3rdparty/chromium/media/base/decoder_buffer.h 2017-11-08 22:13:31.000000000 +0300
+++ b/src/3rdparty/chromium/media/base/decoder_buffer.h 2018-04-26 15:52:44.678483902 +0300
@@ -37,7 +37,7 @@
diff --git a/src/3rdparty/chromium/media/base/decoder_buffer.h b/src/3rdparty/chromium/media/base/decoder_buffer.h
index 0341e5784f..60ffba708b 100644
--- a/src/3rdparty/chromium/media/base/decoder_buffer.h
+++ b/src/3rdparty/chromium/media/base/decoder_buffer.h
@@ -37,7 +37,7 @@ class MEDIA_EXPORT DecoderBuffer
: public base::RefCountedThreadSafe<DecoderBuffer> {
public:
enum {
@@ -10,10 +11,11 @@ diff -Nuar a/src/3rdparty/chromium/media/base/decoder_buffer.h b/src/3rdparty/ch
#if defined(ARCH_CPU_ARM_FAMILY)
kAlignmentSize = 16
#else
diff -Nuar a/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc b/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc
--- a/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc 2017-11-08 22:13:31.000000000 +0300
+++ b/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc 2018-04-26 15:56:51.217466113 +0300
@@ -30,10 +30,10 @@
diff --git a/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc b/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc
index 61d0bc341c..d79c694555 100644
--- a/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc
+++ b/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc
@@ -30,10 +30,10 @@ EncryptionScheme GetEncryptionScheme(const AVStream* stream) {
} // namespace
@@ -26,7 +28,7 @@ diff -Nuar a/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc b/src/3rdparty/
"DecoderBuffer padding size does not fit ffmpeg requirement");
// Alignment requirement by FFmpeg for input and output buffers. This need to
@@ -429,11 +429,11 @@
@@ -444,11 +444,11 @@ void AudioDecoderConfigToAVCodecContext(const AudioDecoderConfig& config,
} else {
codec_context->extradata_size = config.extra_data().size();
codec_context->extradata = reinterpret_cast<uint8_t*>(
@@ -40,7 +42,7 @@ diff -Nuar a/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc b/src/3rdparty/
}
}
@@ -561,11 +561,11 @@
@@ -585,11 +585,11 @@ void VideoDecoderConfigToAVCodecContext(
} else {
codec_context->extradata_size = config.extra_data().size();
codec_context->extradata = reinterpret_cast<uint8_t*>(
@@ -54,22 +56,24 @@ diff -Nuar a/src/3rdparty/chromium/media/ffmpeg/ffmpeg_common.cc b/src/3rdparty/
}
}
diff -Nuar a/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc b/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc
--- a/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc 2017-11-08 22:13:31.000000000 +0300
+++ b/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc 2018-04-26 15:58:11.213460341 +0300
@@ -53,7 +53,7 @@
// AVCodecContext.opaque to get the object reference in order to call
// GetAudioBuffer() to do the actual allocation.
static int GetAudioBuffer(struct AVCodecContext* s, AVFrame* frame, int flags) {
diff --git a/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc b/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc
index b4020b001d..41da2d3939 100644
--- a/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc
+++ b/src/3rdparty/chromium/media/filters/ffmpeg_audio_decoder.cc
@@ -368,7 +368,7 @@ void FFmpegAudioDecoder::ResetTimestampState(const AudioDecoderConfig& config) {
int FFmpegAudioDecoder::GetAudioBuffer(struct AVCodecContext* s,
AVFrame* frame,
int flags) {
- DCHECK(s->codec->capabilities & CODEC_CAP_DR1);
+ DCHECK(s->codec->capabilities & AV_CODEC_CAP_DR1);
DCHECK_EQ(s->codec_type, AVMEDIA_TYPE_AUDIO);
// Since this routine is called by FFmpeg when a buffer is required for audio
diff -Nuar a/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc b/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc
--- a/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc 2017-11-08 22:13:31.000000000 +0300
+++ b/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc 2018-04-26 16:01:18.758446808 +0300
@@ -415,12 +415,11 @@
diff --git a/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc b/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc
index 42d044dd69..32f5c7b79d 100644
--- a/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc
+++ b/src/3rdparty/chromium/media/filters/ffmpeg_video_decoder.cc
@@ -427,12 +427,11 @@ bool FFmpegVideoDecoder::ConfigureDecoder(const VideoDecoderConfig& config,
codec_context_->thread_type =
FF_THREAD_SLICE | (low_delay ? 0 : FF_THREAD_FRAME);
codec_context_->opaque = this;
@@ -0,0 +1,77 @@
--- qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp.orig 2017-10-10 17:42:06.956950985 +0200
+++ qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-10-10 17:46:05.824187787 +0200
@@ -99,8 +99,6 @@
FreeTypeLibrary()
: fGetVarDesignCoordinates(nullptr)
, fLibrary(nullptr)
- , fIsLCDSupported(false)
- , fLCDExtra(0)
{
if (FT_New_Library(&gFTMemory, &fLibrary)) {
return;
@@ -147,12 +145,7 @@
}
#endif
- // Setup LCD filtering. This reduces color fringes for LCD smoothed glyphs.
- // The default has changed over time, so this doesn't mean the same thing to all users.
- if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) {
- fIsLCDSupported = true;
- fLCDExtra = 2; //Using a filter adds one full pixel to each side.
- }
+ FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT);
}
~FreeTypeLibrary() {
if (fLibrary) {
@@ -161,8 +153,6 @@
}
FT_Library library() { return fLibrary; }
- bool isLCDSupported() { return fIsLCDSupported; }
- int lcdExtra() { return fLCDExtra; }
// FT_Get_{MM,Var}_{Blend,Design}_Coordinates were added in FreeType 2.7.1.
// Prior to this there was no way to get the coordinates out of the FT_Face.
@@ -173,8 +163,6 @@
private:
FT_Library fLibrary;
- bool fIsLCDSupported;
- int fLCDExtra;
// FT_Library_SetLcdFilterWeights was introduced in FreeType 2.4.0.
// The following platforms provide FreeType of at least 2.4.0.
@@ -704,17 +692,6 @@
rec->fTextSize = SkIntToScalar(1 << 14);
}
- if (isLCD(*rec)) {
- // TODO: re-work so that FreeType is set-up and selected by the SkFontMgr.
- SkAutoMutexAcquire ama(gFTMutex);
- ref_ft_library();
- if (!gFTLibrary->isLCDSupported()) {
- // If the runtime Freetype library doesn't support LCD, disable it here.
- rec->fMaskFormat = SkMask::kA8_Format;
- }
- unref_ft_library();
- }
-
SkPaint::Hinting h = rec->getHinting();
if (SkPaint::kFull_Hinting == h && !isLCD(*rec)) {
// collapse full->normal hinting if we're not doing LCD
@@ -1115,11 +1092,11 @@
void SkScalerContext_FreeType::updateGlyphIfLCD(SkGlyph* glyph) {
if (isLCD(fRec)) {
if (fLCDIsVert) {
- glyph->fHeight += gFTLibrary->lcdExtra();
- glyph->fTop -= gFTLibrary->lcdExtra() >> 1;
+ glyph->fHeight += 2;
+ glyph->fTop -= 1;
} else {
- glyph->fWidth += gFTLibrary->lcdExtra();
- glyph->fLeft -= gFTLibrary->lcdExtra() >> 1;
+ glyph->fWidth += 2;
+ glyph->fLeft -= 1;
}
}
}
@@ -0,0 +1,99 @@
From: Antonio Larrosa <alarrosa@suse.com>
Subject: Disable GPU when using nouveau or running on wayland
References: boo#1005323, boo#1060990
Qt WebEngine uses multi-threaded OpenGL, which nouveau does not support.
It also crashes when running on wayland, the cause is not yet known.
Work around these issues by not doing GPU-accelerated rendering in such
cases.
Index: qtwebengine-everywhere-src-5.10.0/src/core/web_engine_context.cpp
===================================================================
--- qtwebengine-everywhere-src-5.10.0.orig/src/core/web_engine_context.cpp
+++ qtwebengine-everywhere-src-5.10.0/src/core/web_engine_context.cpp
@@ -93,6 +93,7 @@
#include <QOffscreenSurface>
#ifndef QT_NO_OPENGL
# include <QOpenGLContext>
+# include <QOpenGLFunctions>
#endif
#include <QQuickWindow>
#include <QStringList>
@@ -167,6 +168,39 @@ void dummyGetPluginCallback(const std::v
}
#endif
+#ifndef QT_NO_OPENGL
+QString openGLVendor()
+{
+ QString vendor;
+
+ QOpenGLContext *oldContext = QOpenGLContext::currentContext();
+ QSurface *oldSurface = 0;
+ if (oldContext)
+ oldSurface = oldContext->surface();
+
+ QScopedPointer<QOffscreenSurface> surface( new QOffscreenSurface );
+ surface->create();
+ QOpenGLContext context;
+ if (!context.create()) {
+ qDebug() << "Error creating openGL context";
+ }
+ else if (!context.makeCurrent(surface.data())) {
+ qDebug() << "Error making openGL context current context";
+ } else {
+ const GLubyte *p;
+ QOpenGLFunctions *f = context.functions();
+ if ((p = f->glGetString(GL_VENDOR)))
+ vendor = QString::fromLatin1(reinterpret_cast<const char *>(p));
+ }
+
+ context.doneCurrent();
+ if (oldContext && oldSurface)
+ oldContext->makeCurrent(oldSurface);
+
+ return vendor;
+}
+#endif
+
} // namespace
namespace QtWebEngineCore {
@@ -379,6 +413,27 @@ WebEngineContext::WebEngineContext()
const char *glType = 0;
#ifndef QT_NO_OPENGL
+ bool disableGpu = qEnvironmentVariableIsSet("QT_WEBENGINE_DISABLE_GPU");
+
+ if (!qEnvironmentVariableIsSet("QT_WEBENGINE_DISABLE_WAYLAND_WORKAROUND") && platform.startsWith("wayland", Qt::CaseInsensitive))
+ {
+ qWarning() << "Running on wayland. Qt WebEngine will disable usage of the GPU.\n"
+ "Note: you can set the QT_WEBENGINE_DISABLE_WAYLAND_WORKAROUND\n"
+ "environment variable before running this application, but this is \n"
+ "not recommended since this usually causes applications to crash.";
+ disableGpu = true;
+ }
+
+ if (!qEnvironmentVariableIsSet("QT_WEBENGINE_DISABLE_NOUVEAU_WORKAROUND") && openGLVendor() == QStringLiteral("nouveau"))
+ {
+ qWarning() << "Nouveau openGL driver detected. Qt WebEngine will disable usage of the GPU.\n"
+ "Note: you can set the QT_WEBENGINE_DISABLE_NOUVEAU_WORKAROUND\n"
+ "environment variable before running this application, but this is \n"
+ "not recommended since this usually causes applications to crash as\n"
+ "Nouveau openGL drivers don't support multithreaded rendering";
+ disableGpu = true;
+ }
+
bool tryGL =
!usingANGLE()
&& (!usingSoftwareDynamicGL()
@@ -389,7 +444,7 @@ WebEngineContext::WebEngineContext()
|| enableWebGLSoftwareRendering
#endif
)
- && !usingQtQuick2DRenderer();
+ && !usingQtQuick2DRenderer() && !disableGpu;
if (tryGL) {
if (qt_gl_global_share_context() && qt_gl_global_share_context()->isValid()) {
+26 -19
View File
@@ -11,14 +11,14 @@
<Summary>Provides support for web applications using the Chromium browser project</Summary>
<Description>Provides support for web applications using the Chromium browser project</Description>
<License>LGPLv2.1-linking-exception</License>
<Archive sha1sum="b1f588c0b430f3aa71dbca9ff14a964b4d67b971" type="tarxz">http://download.qt.io/official_releases/qt/5.9/5.9.5/submodules/qtwebengine-opensource-src-5.9.5.tar.xz</Archive>
<Archive sha1sum="b1253958b8399f287a0497642d096de8554a5ae6" type="tarxz">http://download.qt.io/official_releases/qt/5.10/5.10.1/submodules/qtwebengine-everywhere-src-5.10.1.tar.xz</Archive>
<BuildDependencies>
<Dependency versionFrom="5.9.5">qt5-base-devel</Dependency>
<Dependency versionFrom="5.9.5">qt5-declarative-devel</Dependency>
<Dependency versionFrom="5.9.5">qt5-xmlpatterns-devel</Dependency>
<Dependency versionFrom="5.9.5">qt5-location-devel</Dependency>
<Dependency versionFrom="5.9.5">qt5-sensors-devel</Dependency>
<Dependency versionFrom="5.9.5">qt5-webchannel-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-base-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-declarative-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-xmlpatterns-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-location-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-sensors-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-webchannel-devel</Dependency>
<Dependency>bison</Dependency>
<Dependency>re2c</Dependency>
<Dependency versionFrom="1.7.2">ninja</Dependency>
@@ -70,9 +70,9 @@
<Dependency>git</Dependency>
</BuildDependencies>
<Patches>
<Patch level="1">qtwebengine-ffmpeg4.patch</Patch>
<Patch level="1">qtwebengine-5.9.3-icu-60-build.patch</Patch>
<Patch level="1">harmony-fix.diff</Patch>
<Patch level="1">qtwebengine-harmony.patch</Patch>
<Patch level="1">qtwebengine-no-gpu.patch</Patch>
<Patch>qtwebengine-ffmpeg4.patch</Patch>
</Patches>
</Source>
@@ -109,7 +109,7 @@
<Dependency>libopus</Dependency>
<Dependency>libxml2</Dependency>
<Dependency>libvpx</Dependency>
<Dependency versionFrom="5.9.5">qt5-base</Dependency>
<Dependency versionFrom="5.10.1">qt5-base</Dependency>
<Dependency>alsa-lib</Dependency>
<Dependency>harfbuzz</Dependency>
<Dependency>libevent</Dependency>
@@ -119,11 +119,11 @@
<Dependency>libXScrnSaver</Dependency>
<Dependency>libXdamage</Dependency>
<Dependency>libXrender</Dependency>
<Dependency versionFrom="5.9.5">qt5-location</Dependency>
<Dependency versionFrom="5.10.1">qt5-location</Dependency>
<Dependency>libXcomposite</Dependency>
<Dependency>libjpeg-turbo</Dependency>
<Dependency versionFrom="5.9.5">qt5-webchannel</Dependency>
<Dependency versionFrom="5.9.5">qt5-declarative</Dependency>
<Dependency versionFrom="5.10.1">qt5-webchannel</Dependency>
<Dependency versionFrom="5.10.1">qt5-declarative</Dependency>
<Dependency>zlib</Dependency>
<Dependency>minizip</Dependency>
<Dependency>protobuf</Dependency>
@@ -139,17 +139,17 @@
</Files>
<RuntimeDependencies>
<Dependency release="current">qt5-webengine</Dependency>
<Dependency versionFrom="5.9.5">qt5-base-devel</Dependency>
<Dependency versionFrom="5.9.5">qt5-declarative-devel</Dependency>
<Dependency versionFrom="5.9.5">qt5-location-devel</Dependency>
<Dependency versionFrom="5.9.5">qt5-webchannel-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-base-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-declarative-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-location-devel</Dependency>
<Dependency versionFrom="5.10.1">qt5-webchannel-devel</Dependency>
</RuntimeDependencies>
</Package>
<Package>
<Name>qt5-webengine-docs</Name>
<RuntimeDependencies>
<Dependency versionFrom="5.9.5">qt5-base</Dependency>
<Dependency versionFrom="5.10.1">qt5-base</Dependency>
</RuntimeDependencies>
<Files>
<Path fileType="doc">/usr/share/doc</Path>
@@ -157,6 +157,13 @@
</Package>
<History>
<Update release="7">
<Date>2018-08-05</Date>
<Version>5.10.1</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="6">
<Date>2018-05-02</Date>
<Version>5.9.5</Version>