diff --git a/releases/pyignite/0.5.2/release_notes.html b/releases/pyignite/0.5.2/release_notes.html
new file mode 100644
index 0000000..c7e316a
--- /dev/null
+++ b/releases/pyignite/0.5.2/release_notes.html
@@ -0,0 +1,49 @@
+<head>
+    <link rel="canonical" href="https://ignite.apache.org/releases/pyignite/0.5.2/release_notes.html" />
+    <!-- Yandex.Metrika counter -->
+        <script type="text/javascript" >
+          (function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
+          m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
+          (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");
+        
+          ym(72949126, "init", {
+               clickmap:true,
+               trackLinks:true,
+               accurateTrackBounce:true,
+               webvisor:true
+          });
+        </script>
+        <noscript><div><img src="https://mc.yandex.ru/watch/72949126" style="position:absolute; left:-9999px;" alt="" /></div></noscript>
+        <!-- /Yandex.Metrika counter -->
+    <script type='text/javascript'>
+        window.__lo_site_id = 284467;
+        
+          (function() {
+            var wa = document.createElement('script'); wa.type = 'text/javascript'; wa.async = true;
+            wa.src = 'https://d10lpsik1i8c69.cloudfront.net/w.js';
+            var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(wa, s);
+            })();
+          </script>
+    
+    
+    
+        <style>h1 {    color: #113847;    font-size: 33px;    font-weight: bold;    margin: 30px 0 15px 0;    padding-bottom: 7px;    width: 700px;}h2 {  border-bottom: 2px solid #ccc;     color: #113847;     font-size: 29px;     font-weight: normal;     margin: 30px 0 15px 0;     padding-bottom: 7px;  width: 700px; }a {      color: #cc0000;      text-decoration: none;  }span {    color: #cc0000;}a:hover {    text-decoration: underline;}ul,ol {    list-style: disc;    margin-left: 30px;}ul li,ol li {    margin: 5px 0;}p.description {    width: 700px;}</style>
+    
+        <script>
+      (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+      (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+      m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+      })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+    
+      ga('create', 'UA-61232409-1', 'auto');
+      ga('send', 'pageview');
+    
+        </script></head>
+<body>
+    <h1>Apache IGNITE python thin client 0.5.2</h1>
+            <div></div>
+    <ul>
+      <li> Fixed incorrect partial read from socket in sync client </li>
+      <li> Fixed nested object arrays deserialization </li>
+    </ul>
+</body>
