{"id":8033,"date":"2015-04-03T09:18:55","date_gmt":"2015-04-03T09:18:55","guid":{"rendered":"https:\/\/owncloud.com\/?p=8033"},"modified":"2025-01-24T08:12:12","modified_gmt":"2025-01-24T08:12:12","slug":"owncloud-development-in-february","status":"publish","type":"post","link":"https:\/\/owncloud.com\/de\/blogs\/owncloud-development-in-february\/","title":{"rendered":"ownCloud development in February"},"content":{"rendered":"<div id=\"attachment_8040\" style=\"width: 289px\" class=\"wp-caption alignright\"><a href=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/03\/avatars-in-sharing-dialog.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8040\" class=\"wp-image-8040 size-full\" src=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/03\/avatars-in-sharing-dialog.png\" alt=\"avatars in sharing dialog\" width=\"279\" height=\"192\" \/><\/a><p id=\"caption-attachment-8040\" class=\"wp-caption-text\">avatars in sharing dialog (WIP screenshot)<\/p><\/div>\n<p>February is the month that ownCloud development picked up steam, following the holiday period and the release freeze. ownCloud 8.0 was released on the 9th so code was free to flow in again, resulting in over 362 pull requests getting merged \u2013 almost 100 more than in January. As always, we\u2019re writing about these pull requests as well as other development activities gathered from mailing lists, blogs and whatever is shared with us. Tips are very much welcome! Ping <a href=\"https:\/\/www.google.com\/+JosPoortvliet\" target=\"_blank\" rel=\"noopener\">Jos<\/a> with your input.<\/p>\n<p>The biggest items in February were the release of ownCloud 8, our presence at SCALE and FOSDEM, the many performance improvements in ownCloud and ownCloud arriving to 500,000 students in Germany.<\/p>\n<p>You can read a report on January <a href=\"https:\/\/owncloud.com\/blog\/owncloud-development-in-january\/\">here<\/a>.<\/p>\n<h2>Development<\/h2>\n<p>An important focus for ownCloud 8.1 lies in clean up, improving stability and ease of maintenance, as well as massively improving the performance of ownCloud. There has thus been a lot of work under the hood making operations, such as moving, uploading and syncing files, much faster. Feature improvements worth noting are those to external storage like SFTP and Samba. Also, the Chat app is integrating its user interface much more deeply in to ownCloud and there have been many updates on apps.owncloud.com.<\/p>\n<h3>The app framework<\/h3>\n<p>As always, Raydiation led the efforts to improve our App Framework, making ownCloud app development even easier&#8211;the <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14468\" target=\"_blank\" rel=\"noopener noreferrer\">database layer <\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14468\" target=\"_blank\" rel=\"noopener noreferrer\">has been<\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14468\" target=\"_blank\" rel=\"noopener noreferrer\"> cleaned up<\/a> framework apps can specify a <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13989\" target=\"_blank\" rel=\"noopener noreferrer\">custom C<\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13989\" target=\"_blank\" rel=\"noopener noreferrer\">ontent-Security-Policy<\/a> for enhanced security, there is a new <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13616\" target=\"_blank\" rel=\"noopener noreferrer\">StreamResponse<\/a>, and <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13777\" target=\"_blank\" rel=\"noopener noreferrer\">so<\/a> <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13921\" target=\"_blank\" rel=\"noopener noreferrer\">on<\/a>. Furthermore,the Antivirus app was <a href=\"https:\/\/github.com\/owncloud\/files_antivirus\/pull\/20\" target=\"_blank\" rel=\"noopener noreferrer\">migrated to the App Framework<\/a> and there is a new API in ownCloud for <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14300\" target=\"_blank\" rel=\"noopener noreferrer\">working with asynchronous tasks<\/a>. Some usage examples are in the <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14300\" target=\"_blank\" rel=\"noopener noreferrer\">Pull Request<\/a>.<\/p>\n<h3>Under the hood<\/h3>\n<p>There has been a lot of under-the-hood work including improving stability and making ownCloud easier to maintain and improve. First up, Sabre\/DAV was <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14151\" target=\"_blank\" rel=\"noopener noreferrer\">updated to version 2.1<\/a>, allowing ownCloud to take advantage of <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14213\" target=\"_blank\" rel=\"noopener noreferrer\">fixed natural sorting<\/a>, many new features and a cleaner API. doctrine\/dbal has been <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14119\" target=\"_blank\" rel=\"noopener noreferrer\">updated to 2.5.1<\/a> and phpseclib is now <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13857\" target=\"_blank\" rel=\"noopener noreferrer\">at 0.3.9<\/a>.<\/p>\n<p>For systems without the php5-intl extension (like shared hosting), bug reporter AW-UC got an update to merged that. Some security hardening was also done, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14342\" target=\"_blank\" rel=\"noopener noreferrer\">disallowing path traversals in file view<\/a>. This prevents a misuse of \\OC\\Files\\View by calling it with user-supplied input. In such cases an exception is now thrown.<\/p>\n<p>In cleanup news, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13870\" target=\"_blank\" rel=\"noopener noreferrer\">OC\\Preferences was dropped<\/a> as per the (in progress) master plan to <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/12260\" target=\"_blank\" rel=\"noopener noreferrer\">clean up I*Config classes<\/a>. <a href=\"https:\/\/github.com\/LukasReschke\" target=\"_blank\" rel=\"noopener noreferrer\">LukasReschke<\/a> found <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14461\" target=\"_blank\" rel=\"noopener noreferrer\">code that never worked<\/a> \u2013 as usual, having our security expert go over code helps with more than just security. He later removed <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14490\" target=\"_blank\" rel=\"noopener noreferrer\">more unused<\/a> and <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14126\" target=\"_blank\" rel=\"noopener noreferrer\">deprecated code<\/a>. There was also a big re-factoring effort to <a href=\"https:\/\/github.com\/owncloud\/activity\/issues\/225\" target=\"_blank\" rel=\"noopener noreferrer\">split the activity app<\/a> from recording activities. Similar to the activity extension of the sharing app, the current logic for the sharing, create, delete and other file activities will be done with an activity extension, lowering resource usage of tracking what is going on in your ownCloud.<\/p>\n<h3>Performance improvements<\/h3>\n<p><a href=\"https:\/\/github.com\/icewind1991\" target=\"_blank\" rel=\"noopener noreferrer\">icewind1991<\/a> and <a href=\"https:\/\/github.com\/LukasReschke\" target=\"_blank\" rel=\"noopener noreferrer\">LukasReschke<\/a> have been especially active improving ownCloud performance, andagain, <a href=\"https:\/\/owncloud.com\/blog\/blackfire-io-and-recent-performance-optimizations-in-owncloud\/\" target=\"_blank\" rel=\"noopener noreferrer\">Blackfire.io<\/a> was used for code profiling to find areas in which to improve.<br \/>\n<a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13948\" target=\"_blank\" rel=\"noopener noreferrer\">This PR<\/a> was introduced as \u201chow to save 99% execution time with 2 simple lines\u201d, bringing the <a href=\"https:\/\/blackfire.io\/profiles\/compare\/42db61f0-4a91-4288-a634-9d57c2975510\/graph\" target=\"_blank\" rel=\"noopener noreferrer\">execution time <\/a><a href=\"https:\/\/blackfire.io\/profiles\/compare\/42db61f0-4a91-4288-a634-9d57c2975510\/graph\" target=\"_blank\" rel=\"noopener noreferrer\">of<\/a><a href=\"https:\/\/blackfire.io\/profiles\/compare\/42db61f0-4a91-4288-a634-9d57c2975510\/graph\" target=\"_blank\" rel=\"noopener noreferrer\"> moving 5000 files <\/a><a href=\"https:\/\/blackfire.io\/profiles\/compare\/42db61f0-4a91-4288-a634-9d57c2975510\/graph\" target=\"_blank\" rel=\"noopener noreferrer\"> from 33 seconds<\/a> <a href=\"https:\/\/blackfire.io\/profiles\/compare\/42db61f0-4a91-4288-a634-9d57c2975510\/graph\" target=\"_blank\" rel=\"noopener noreferrer\">down<\/a><a href=\"https:\/\/blackfire.io\/profiles\/compare\/42db61f0-4a91-4288-a634-9d57c2975510\/graph\" target=\"_blank\" rel=\"noopener noreferrer\"> to 600 miliseconds<\/a>. <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13829\" target=\"_blank\" rel=\"noopener noreferrer\">Improving the caching<\/a> of enabled apps and <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13852\" target=\"_blank\" rel=\"noopener noreferrer\">their versions<\/a> and <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14195\" target=\"_blank\" rel=\"noopener noreferrer\">activity manager improvements<\/a> sped up their respective apps and storing data in ownCloud was sped up by <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13836\" target=\"_blank\" rel=\"noopener noreferrer\">saving some database queries<\/a>.<\/p>\n<p>A <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/14173\" target=\"_blank\" rel=\"noopener noreferrer\">known performance bottleneck<\/a> is the <em>\u2018propfind\u2019<\/em> command, and this <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14207\" target=\"_blank\" rel=\"noopener noreferrer\">optimization to quota calculation<\/a> is a first step in dealing with it. A &#8218;per request&#8216; <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13269\" target=\"_blank\" rel=\"noopener noreferrer\">array <\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13269\" target=\"_blank\" rel=\"noopener noreferrer\">caching <\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13269\" target=\"_blank\" rel=\"noopener noreferrer\">implementation <\/a>was added (which can be used when no memory cache such as APCu is available) and <a href=\"https:\/\/github.com\/windaishi\" target=\"_blank\" rel=\"noopener noreferrer\">windaishi<\/a> contributed an <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14171\" target=\"_blank\" rel=\"noopener noreferrer\">index for file_map<\/a>. Unfortunately, this last improvement was later discovered to <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14206\" target=\"_blank\" rel=\"noopener noreferrer\">cause issues in MariaDB<\/a> and had to be backed out again. MariaDB again proved problematic with this <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/10993\" target=\"_blank\" rel=\"noopener noreferrer\">performance improvement to file scanning<\/a> \u2013 this time, however, the problem could be <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/14169\" target=\"_blank\" rel=\"noopener noreferrer\">fixed<\/a>. It looks like MariaDB has diverged enough from MySQL to cause such problems and it is good ownCloud has some proper testing in place to catch these issues!<\/p>\n<p>There was a <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13511\" target=\"_blank\" rel=\"noopener noreferrer\">15% performance improvement<\/a> in NaturalSort and looking for a user avatar <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13854\" target=\"_blank\" rel=\"noopener noreferrer\">was sped up<\/a>. But truly epic was the two <b>15<\/b> time speedup for the SAMBA external storage back-end. This was possible thanks to dropping smb4php and wrapping the OS native smbclient or libsmbclient using <a href=\"https:\/\/github.com\/icewind1991\/SMB\" target=\"_blank\" rel=\"noopener noreferrer\">a new library<\/a> that is able to use streams as well as reuse existing connections.<\/p>\n<div id=\"attachment_8039\" style=\"width: 310px\" class=\"wp-caption alignright\"><a href=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/03\/chat-integration.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8039\" class=\"size-medium wp-image-8039\" src=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/03\/chat-integration-300x149.png\" alt=\"chat integration\" width=\"300\" height=\"149\" \/><\/a><p id=\"caption-attachment-8039\" class=\"wp-caption-text\">chat integration<\/p><\/div>\n<h3>New and improved features<\/h3>\n<p>In the App manager the <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13439\" target=\"_blank\" rel=\"noopener noreferrer\">search box <\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13439\" target=\"_blank\" rel=\"noopener noreferrer\">can now<\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13439\" target=\"_blank\" rel=\"noopener noreferrer\"> filters apps<\/a>. In User management, thanks to <a href=\"https:\/\/github.com\/rullzer\" target=\"_blank\" rel=\"noopener noreferrer\">rullzer<\/a>, you can now get an overview of which groups a certain user is a member off. In the SFTP external storage backend, mthosting contributed <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14460\" target=\"_blank\" rel=\"noopener noreferrer\">support for custom ports<\/a>, while <a href=\"https:\/\/github.com\/rnicoll\" target=\"_blank\" rel=\"noopener noreferrer\">rnicoll<\/a> added <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13190\" target=\"_blank\" rel=\"noopener noreferrer\">public key authentication support<\/a>.<\/p>\n<p>Also new are <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13866\" target=\"_blank\" rel=\"noopener noreferrer\">Avatars in the share dialog<\/a> and a <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14509\" target=\"_blank\" rel=\"noopener noreferrer\">404 page<\/a> when accessing empty share URL\u2019s. <a href=\"https:\/\/github.com\/cdamken\" target=\"_blank\" rel=\"noopener noreferrer\">cdamken\u2019s<\/a> first contribution has <a href=\"https:\/\/github.com\/owncloud\/apps\/pull\/1910\" target=\"_blank\" rel=\"noopener noreferrer\">fixed scaling problems with PDF<\/a> previews and <a href=\"https:\/\/github.com\/Zillode\" target=\"_blank\" rel=\"noopener noreferrer\">Zillode<\/a> has made it possible to show <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13435\" target=\"_blank\" rel=\"noopener noreferrer\">app-specific favicons<\/a>.<\/p>\n<p>Smaller, yet equally important, improvements consist mostly of design and usability related improvements include showing the <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14614\" target=\"_blank\" rel=\"noopener noreferrer\">time since the last cron run<\/a> rather than the absolute time of the last run. <a href=\"https:\/\/github.com\/sebomoto\" target=\"_blank\" rel=\"noopener noreferrer\">sebomoto<\/a>&#8217;s first contribution added a <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12213\" target=\"_blank\" rel=\"noopener noreferrer\">load <\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12213\" target=\"_blank\" rel=\"noopener noreferrer\">of <\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12213\" target=\"_blank\" rel=\"noopener noreferrer\">feedback to <\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12213\" target=\"_blank\" rel=\"noopener noreferrer\"> finish <\/a><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12213\" target=\"_blank\" rel=\"noopener noreferrer\"> setting up ownCloud<\/a> and similar attention to detail was paid by <a href=\"https:\/\/github.com\/cmeh\" target=\"_blank\" rel=\"noopener noreferrer\">cmeh<\/a> with a <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14245\" target=\"_blank\" rel=\"noopener noreferrer\">clean up of the wording<\/a> in the setup dialogs. The last change to the Setup was a <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/14474\" target=\"_blank\" rel=\"noopener noreferrer\">check for UTF-8 support<\/a> moving in, as that issue is important enough to stop the installation upon detection.<\/p>\n<h3>Apps<\/h3>\n<p>Outside of the core are apps like News, where <a href=\"https:\/\/github.com\/joeplus\" target=\"_blank\" rel=\"noopener noreferrer\">joeplus<\/a> got his <a href=\"https:\/\/github.com\/owncloud\/news\/pull\/733\" target=\"_blank\" rel=\"noopener noreferrer\">first patch in<\/a>. There is also the Chat app, which features a whole <a href=\"https:\/\/github.com\/owncloud\/chat\/pull\/191\" target=\"_blank\" rel=\"noopener noreferrer\">new level of ownCloud integration<\/a>, Notes, which is being <a href=\"https:\/\/github.com\/owncloud\/notes\/pull\/82\" target=\"_blank\" rel=\"noopener noreferrer\">migrated to ownCloud 8<\/a>, and the Tasks app, in which <a href=\"https:\/\/github.com\/raimund-schluessler\" target=\"_blank\" rel=\"noopener noreferrer\">raimund-schluessler<\/a> integrated the <a href=\"https:\/\/github.com\/owncloud\/tasks\/pull\/130\" target=\"_blank\" rel=\"noopener noreferrer\">new search provider<\/a>.<\/p>\n<p>In the desktop client, <a href=\"https:\/\/github.com\/rullzer\" target=\"_blank\" rel=\"noopener noreferrer\">rullzer<\/a> introduced <a href=\"https:\/\/github.com\/owncloud\/client\/pull\/2805\" target=\"_blank\" rel=\"noopener noreferrer\">thumbnails in the share dialog<\/a>. This and other features were released with the recent launch of the<a href=\"https:\/\/owncloud.com\/blog\/owncloud-desktop-client-1-8-released\/\" target=\"_blank\" rel=\"noopener noreferrer\">1.8 <\/a><a href=\"https:\/\/owncloud.com\/blog\/owncloud-desktop-client-1-8-released\/\" target=\"_blank\" rel=\"noopener noreferrer\"> client<\/a>. The Android app also received a <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/731\" target=\"_blank\" rel=\"noopener noreferrer\">flickr-style thumbnail view of images<\/a> from <a href=\"https:\/\/github.com\/tobiasKaminsky\" target=\"_blank\" rel=\"noopener noreferrer\">tobiasKaminsky<\/a>.<\/p>\n<p>If you want to get involved in coding on ownCloud check out <a href=\"https:\/\/owncloud.com\/contribute\">this page<\/a>! And if you\u2019d like to see improvements in the mobile clients, we recently posted a blog about <a href=\"https:\/\/owncloud.com\/blog\/contributing-to-the-owncloud-mobile-apps\/\" target=\"_blank\" rel=\"noopener noreferrer\">contributing to the Android and iOS clients<\/a>.<\/p>\n<p>On <a href=\"http:\/\/apps.owncloud.com\/\">apps.owncloud.com<\/a> major updates include updates to <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/Reader+%28ebook+reader%29?content=167127\" target=\"_blank\" rel=\"noopener noreferrer\">the eReader app<\/a>, <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/Storage+Charts+2?content=165528\" target=\"_blank\" rel=\"noopener noreferrer\">Storage Charts<\/a>, <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/Secure+Container?content=167268\" target=\"_blank\" rel=\"noopener noreferrer\">Secure Container<\/a>, <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/JavaScript+XMPP+Chat?content=162257\" target=\"_blank\" rel=\"noopener noreferrer\">XMPP chat<\/a> and <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/roundcube?content=151523\" target=\"_blank\" rel=\"noopener noreferrer\">Roundcube<\/a> to support ownCloud 8. Also, there is the new, and quite awesome, <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/Owncloud+Custom+Tags?action=content&amp;content=168946\" target=\"_blank\" rel=\"noopener noreferrer\">ownCloud Custom tags<\/a> app as well as a much improved <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/Dashboard?content=167139\" target=\"_blank\" rel=\"noopener noreferrer\">version 1.2 of the Dashboard app<\/a> and <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/Tasks?content=164356\" target=\"_blank\" rel=\"noopener noreferrer\">Tasks app<\/a>.<\/p>\n<div id=\"attachment_8038\" style=\"width: 190px\" class=\"wp-caption alignright\"><a href=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/03\/image-grid-in-android-app.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-8038\" class=\"size-medium wp-image-8038\" src=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/03\/image-grid-in-android-app-180x300.png\" alt=\"image grid in android app\" width=\"180\" height=\"300\" \/><\/a><p id=\"caption-attachment-8038\" class=\"wp-caption-text\">image grid in android app<\/p><\/div>\n<h3>Devel list conversations<\/h3>\n<p>The ownCloud development lists had notable threads including: <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2015-February\/001001.html\" target=\"_blank\" rel=\"noopener noreferrer\">Defensive Programming<\/a>, a <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2015-February\/001029.html\" target=\"_blank\" rel=\"noopener noreferrer\">deprecating API schedule<\/a> for ownCloud, a call for <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2015-February\/001040.html\" target=\"_blank\" rel=\"noopener noreferrer\">testers for the Shorty app<\/a>, and a shout-out to the forum team that has compiled a GREAT <a href=\"https:\/\/forum.owncloud.org\/viewtopic.php?f=31&amp;t=26310\" target=\"_blank\" rel=\"noopener noreferrer\">list of common upgrade tips and issues for ownCloud 8<\/a>.<\/p>\n<p>Join the discussions <a href=\"https:\/\/mailman.owncloud.org\/mailman\/listinfo\/devel\" target=\"_blank\" rel=\"noopener\">h<\/a>ere.<\/p>\n<h2>Other ownCloud happenings<\/h2>\n<p>On <a href=\"https:\/\/owncloud.com\/news\/\">Planet ownCloud<\/a> our news feed has featured a number of different topics including: the announcement from ownCloud, Inc. that <a href=\"https:\/\/owncloud.com\/sciebo-germanys-largest-cloud-project-500000-users-launches-today\/\" target=\"_blank\" rel=\"noopener noreferrer\">Sciebo <\/a><a href=\"https:\/\/owncloud.com\/sciebo-germanys-largest-cloud-project-500000-users-launches-today\/\" target=\"_blank\" rel=\"noopener noreferrer\">is <\/a><a href=\"https:\/\/owncloud.com\/sciebo-germanys-largest-cloud-project-500000-users-launches-today\/\" target=\"_blank\" rel=\"noopener noreferrer\">bring<\/a><a href=\"https:\/\/owncloud.com\/sciebo-germanys-largest-cloud-project-500000-users-launches-today\/\" target=\"_blank\" rel=\"noopener noreferrer\">ing<\/a><a href=\"https:\/\/owncloud.com\/sciebo-germanys-largest-cloud-project-500000-users-launches-today\/\" target=\"_blank\" rel=\"noopener noreferrer\"> ownCloud to 500,000 students<\/a>, how ownCloud rocked <a href=\"https:\/\/owncloud.com\/blog\/owncloud-at-fosdem-2015-and-scale13x\/\" target=\"_blank\" rel=\"noopener noreferrer\">FOSDEM and SCALE<\/a>, the <a href=\"https:\/\/owncloud.com\/blog\/faster-easier-file-sync-and-share-with-federated-self-hosted-owncloud-8-0\/\" target=\"_blank\" rel=\"noopener noreferrer\">ownCloud 8 release<\/a> (of course), and how to celebrate Software Freedom day, a declaration of love to the<a href=\"https:\/\/owncloud.com\/blog\/we-love-free-software\/\" target=\"_blank\" rel=\"noopener noreferrer\"> ideas behind Free Software<\/a>, detailing some ownCloud contributions to other projects.<\/p>\n<p>Some informative and educational blogs include a post by Raghu about writing quality CSS, a blog by Thomas about the <a href=\"https:\/\/deepdiver1975.wordpress.com\/2015\/02\/04\/concept-of-owncloud-public-api\/\" target=\"_blank\" rel=\"noopener noreferrer\">concepts behind ownCloud\u2019s public API<\/a><a href=\"https:\/\/deepdiver1975.wordpress.com\/2015\/02\/04\/concept-of-owncloud-public-api\/\" target=\"_blank\" rel=\"noopener noreferrer\">,<\/a> and another informative technical blog about <a href=\"https:\/\/dragotin.wordpress.com\/2015\/02\/09\/incremental-sync-in-owncloud\/\" target=\"_blank\" rel=\"noopener noreferrer\">incremental sync in ownCloud<\/a> by Volkan about <a href=\"http:\/\/ownclouden.blogspot.com\/2014\/11\/owncloud-https-external-mount.html\" target=\"_blank\" rel=\"noopener noreferrer\">using <\/a><a href=\"http:\/\/ownclouden.blogspot.com\/2014\/11\/owncloud-https-external-mount.html\" target=\"_blank\" rel=\"noopener noreferrer\">an external ownCloud instance using <\/a><a href=\"http:\/\/ownclouden.blogspot.com\/2014\/11\/owncloud-https-external-mount.html\" target=\"_blank\" rel=\"noopener noreferrer\">HTTPS<\/a> <a href=\"http:\/\/ownclouden.blogspot.com\/2014\/11\/owncloud-https-external-mount.html\" target=\"_blank\" rel=\"noopener noreferrer\">as external storage<\/a> with ownCloud.<\/p>\n<p>Please note that if you\u2019re an ownCloud contributor you should get your blog aggregated on <a href=\"https:\/\/owncloud.com\/news\/\">owncloud.org\/news<\/a>! Ping <a href=\"https:\/\/www.google.com\/+JosPoortvliet\" target=\"_blank\" rel=\"noopener\">Jos<\/a> with your RSS feed.<\/p>\n<p>Besides all this online news, there are also real-life ownCloud events taking place! You can meet fellow ownCloud users and developers at ownCloud meetups or come visit us at the conferences we will be attending. You can find the calendar of ownCloud events on <a href=\"https:\/\/owncloud.com\/events\">owncloud.org\/events<\/a>.<\/p>\n<p>ownCloud meetups are a great chance to learn more about ownCloud or how to get coding work done, plus they&#8217;re really fun! If you know of other (regular or not) meetups or are interested in organizing one yourself, <a href=\"https:\/\/owncloud.com\/events\/meetups\">check out this page<\/a> on how to get involved.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>February is the month that ownCloud development picked up steam, following the holiday period and the release freeze. ownCloud 8.0 was released on the 9th so code was free to flow in again, resulting in over 362 pull requests getting merged \u2013 almost 100 more than in January. As always, we\u2019re writing about these pull [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":78665,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_et_pb_use_builder":"","_et_pb_old_content":"","_et_gb_content_width":"","inline_featured_image":false,"footnotes":""},"categories":[342,332,333,335],"tags":[],"class_list":["post-8033","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud","category-coding","category-community","category-development"],"acf":[],"_links":{"self":[{"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/posts\/8033","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/comments?post=8033"}],"version-history":[{"count":4,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/posts\/8033\/revisions"}],"predecessor-version":[{"id":79075,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/posts\/8033\/revisions\/79075"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/media\/78665"}],"wp:attachment":[{"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/media?parent=8033"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/categories?post=8033"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/tags?post=8033"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}