{"id":7714,"date":"2015-01-20T15:43:50","date_gmt":"2015-01-20T15:43:50","guid":{"rendered":"https:\/\/owncloud.com\/?p=7714"},"modified":"2025-01-23T09:31:24","modified_gmt":"2025-01-23T09:31:24","slug":"owncloud-development-over-december","status":"publish","type":"post","link":"https:\/\/owncloud.com\/de\/blogs\/owncloud-development-over-december\/","title":{"rendered":"ownCloud development over December"},"content":{"rendered":"<div id=\"attachment_7724\" style=\"width: 297px\" class=\"wp-caption alignright\"><a href=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/favorites.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7724\" class=\"wp-image-7724 size-full\" src=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/favorites.png\" alt=\"favorites\" width=\"287\" height=\"338\" \/><\/a><p id=\"caption-attachment-7724\" class=\"wp-caption-text\">New in ownCloud: favorites<\/p><\/div>\n<p>As the second half of December took many people on holiday the bi-weekly reports have been folded into a full December overview. Despite the holiday period, with over 1100 closed issues including no less than 395\u00a0merged pull requests, this was not a quiet time. Certainly this has to do with the feature freeze which went in effect on January 1st! All features not in at that date will have to wait until ownCloud 8.1, while our focus is now on stabilizing and bug fixing. As usual, this report pulls together activities from development mailing lists, blogs, coding work and everything else community members share 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>To catch up to what happened before, read the <a href=\"https:\/\/owncloud.com\/blog\/owncloud-development-in-the-second-half-of-november\/\">development update over the second half of November<\/a>.<\/p>\n<p>Highlights in December include the huge amount of work in Core merging features like favorite support in the Files app, improved server-to-server sharing, app-specific search, improved user management and more. There was also a a lot of accessibility work to make using ownCloud with the keyboard easier and groundwork was being laid for some serious changes to file handling by the desktop client and WebDAV. In app news, many improvements entered the Android app including the ability to sync entire folders. And of course the feature freeze went into effect on January 1st.<\/p>\n<h2>Core<\/h2>\n<p>Core had almost 200 PR&#8217;s merged, with a series of big new features making it in before the feature freeze. This includes favorite support in the Files app, improved server-to-server sharing, app-specific search, enhanced user management, UI design improvements and improved accessibility and many enhancements to the ownCloud API for app developers.<br \/>\n<a href=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/features-UI.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright wp-image-7730 size-full\" src=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/features-UI.png\" alt=\"Favorites UI\" width=\"336\" height=\"267\" \/><\/a><\/p>\n<h3>New features<\/h3>\n<p>The following feature improvements were merged:<\/p>\n<ul>\n<li><a href=\"https:\/\/github.com\/owncloud\/core\/issues\/2368\" target=\"_blank\" rel=\"noopener\">This PR<\/a> adds the ability to <strong>favorite files and other data in ownCloud<\/strong>! A lot of work was done to prepare this, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12795\" target=\"_blank\" rel=\"noopener\">with this<\/a> which made it easier to add the favorites logo in the user interface, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12865\" target=\"_blank\" rel=\"noopener\">this PR<\/a> made it possible to request tags over WebDAV and <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12778\" target=\"_blank\" rel=\"noopener\">this<\/a> added the ability to search by tags to view, storage and cache in ownCloud. Also, <a href=\"https:\/\/github.com\/owncloud\/metadata\/pull\/2\" target=\"_blank\" rel=\"noopener\">a new app was created<\/a> to handle tags and favorites in ownCloud. <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12360\" target=\"_blank\" rel=\"noopener\">This PR<\/a> added favorites to the files app and finally our design team went over the feature <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12895\" target=\"_blank\" rel=\"noopener\">and polished it up<\/a>. More work in this area is coming for ownCloud 8.1<\/li>\n<li>As parts of efforts to <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/12216\" target=\"_blank\" rel=\"noopener\">improve the control<\/a> of administrators over <strong>external storage<\/strong>, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12577\" target=\"_blank\" rel=\"noopener\">a public api was introduced<\/a> which apps can use to add additional mount points in a more structured way then listening to hooks. <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12879\" target=\"_blank\" rel=\"noopener\">Mount specific options<\/a> were also added to the mount configuration, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12793\" target=\"_blank\" rel=\"noopener\">including a storage id<\/a>, to make it easier to improve the configuration UI. Much more improvements are still underway to future releases<\/li>\n<li>As part of the efforts of the <strong><a href=\"https:\/\/github.com\/owncloud\/core\/issues\/12285\" target=\"_blank\" rel=\"noopener\">new generation sever-to-server sharing<\/a><\/strong> an <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12452\" target=\"_blank\" rel=\"noopener\">OCS API<\/a> for sharing was implemented. It <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12452#issuecomment-65210669\" target=\"_blank\" rel=\"noopener\">prompted a debate<\/a> on the use of the OCS API in the first place, something that got a <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000745.html\" target=\"_blank\" rel=\"noopener\">follow-up on the mailing list<\/a> and then <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/12454\" target=\"_blank\" rel=\"noopener\">moving to github<\/a>. The UI for NG server2server sharing was implemented <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12749\" target=\"_blank\" rel=\"noopener\">in this PR<\/a> followed by changes <a href=\"https:\/\/github.com\/owncloud\/calendar\/pull\/643\" target=\"_blank\" rel=\"noopener\">in the calendar<\/a> and contacts app. To make activity show up nicely on in the Activity app, some <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12808\" target=\"_blank\" rel=\"noopener\">core changes were made<\/a> and a <a href=\"https:\/\/github.com\/owncloud\/activity\/pull\/192\" target=\"_blank\" rel=\"noopener\">PR went in<\/a> for the Activity app<\/li>\n<li>On a slightly related note, you&#8217;ll now <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12997\" target=\"_blank\" rel=\"noopener\">get a notification<\/a> in the Activity app when a publicly shared file or folder is downloaded<\/li>\n<li>Following plans from <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/821\" target=\"_blank\" rel=\"noopener\">issue 821<\/a> about improving the design and implementation of <strong>search in ownCloud<\/strong>, <a href=\"https:\/\/github.com\/butonic\" target=\"_blank\" rel=\"noopener\">butonic<\/a> made <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12555\" target=\"_blank\" rel=\"noopener\">search application specific<\/a>. This makes a search in for example the Files app only show files, while a search in the Contacts app shows contacts! He implemented this change also in the calendar, contacts and bookmarks apps. The Files app now also shows results in the main content area instead of just in the search pop-up and improvements to query parsing. <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/821\" target=\"_blank\" rel=\"noopener\">More improvements<\/a> are coming in a future release<\/li>\n<li>LDAP search <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12493\" target=\"_blank\" rel=\"noopener\">was improved<\/a> with the ability to use the occ command line tool to look for LDAP users and groups.<\/li>\n<li>A <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12643\" target=\"_blank\" rel=\"noopener\">big LDAP user cleanup<\/a> was merged in both ownCloud 7 and 8, enabling the deletion of users and making LDAP work more reliable and a very small change by <a href=\"https:\/\/github.com\/lyonel\" target=\"_blank\" rel=\"noopener\">lyonel<\/a> makes the <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/13025\" target=\"_blank\" rel=\"noopener\">ldap user plugin<\/a> a bit less noisy<\/li>\n<li>A performance improvement for LDAP went in: <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12309\" target=\"_blank\" rel=\"noopener\">caching<\/a> total user count saves a lot of queries when loading the user interface<\/li>\n<li>The big plan for <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/12620\" target=\"_blank\" rel=\"noopener\">overhauling user management<\/a> has been partially implemented, with <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/12998\" target=\"_blank\" rel=\"noopener\">more coming for ownCloud 8.1<\/a>. The following features did make it in 8.0:\n<ul>\n<li><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12618\" target=\"_blank\" rel=\"noopener\">This pr<\/a> added a REST route for managing groups and users. Another item related to the underlying code managing users and groups which got merged is <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12711\" target=\"_blank\" rel=\"noopener\">this<\/a>, and here is <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12790\" target=\"_blank\" rel=\"noopener\">another one<\/a><\/li>\n<li>The user back-end is now <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12806\" target=\"_blank\" rel=\"noopener\">shown in user management<\/a>, possible because <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12819\" target=\"_blank\" rel=\"noopener\">user backends now have names<\/a><\/li>\n<li>Another smaller improvement is that now even on big screens with room for many users, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12820\" target=\"_blank\" rel=\"noopener\">the user list is populated properly<\/a><\/li>\n<li>The mail address of users <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12921\" target=\"_blank\" rel=\"noopener\">can now be changed <\/a><\/li>\n<li>Sys administrators will love the new feature to <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12870\" target=\"_blank\" rel=\"noopener\">send an email to new users<\/a> with their name and the ownCloud URL\u00a0 (the template editor can <a href=\"https:\/\/github.com\/owncloud\/templateeditor\/pull\/15\" target=\"_blank\" rel=\"noopener\">deal with these mails<\/a>, so they are easy to configure)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div id=\"attachment_7731\" style=\"width: 310px\" class=\"wp-caption alignright\"><a href=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/user-mgmt-showing-backend.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-7731\" class=\"size-medium wp-image-7731\" src=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/user-mgmt-showing-backend-300x157.png\" alt=\"user management showing user back end\" width=\"300\" height=\"157\" \/><\/a><p id=\"caption-attachment-7731\" class=\"wp-caption-text\">user management showing user back end<\/p><\/div>\n<h3>For developers<\/h3>\n<p>For developers, a series of changes will have a big impact on how they develop apps:<\/p>\n<ul>\n<li>Users and developers should know that <strong>PHP 5.4 is <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12607\" target=\"_blank\" rel=\"noopener\">required for ownCloud 8.0<\/a><\/strong>! This quickly resulted in the removal of the <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12609\" target=\"_blank\" rel=\"noopener\">first 5.3 workaround<\/a> and more with <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12610\" target=\"_blank\" rel=\"noopener\">this<\/a> and <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12646\" target=\"_blank\" rel=\"noopener\">this<\/a>.<\/li>\n<li>In the a-really-big-deal-for-app-developers-department, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12625\" target=\"_blank\" rel=\"noopener\">this PR<\/a> adds <strong>dependency management<\/strong> for apps for php extensions, command line tools, operating systems and owncloud version<\/li>\n<li>This &#8218;Intelligent container&#8216; can <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12830\" target=\"_blank\" rel=\"noopener\">figure out dependencies by itself<\/a><\/li>\n<li>The improved FileActions JS to <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12394\" target=\"_blank\" rel=\"noopener\">allow for custom rendering<\/a> (also needed for the ability to favorite files and other content)<\/li>\n<li>ownCloud extended the tags API by adding <em>getTagsForObjects<\/em> in ITags<\/li>\n<li><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12310\" target=\"_blank\" rel=\"noopener\">This PR<\/a> creates a logger that uses PHPs error_log to handle logging, making it easier to deal with logs for app developers<\/li>\n<li><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12839\" target=\"_blank\" rel=\"noopener\">This PR<\/a> added the <em>ControllerMethodReflector<\/em> to public API (by <a href=\"https:\/\/github.com\/oparoz\" target=\"_blank\" rel=\"noopener\">oparoz<\/a>)<\/li>\n<li>ownCloud added a <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12553\" target=\"_blank\" rel=\"noopener\">missing public interface<\/a> for iOS client app id<\/li>\n<li>After a bit of a debate to find out if this was the right approach, a <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12527\" target=\"_blank\" rel=\"noopener\">simple plugin system for Javascript was added<\/a>, making it possible for apps to inject code into certain classes.<\/li>\n<li>Old and replaced app framework API&#8217;s <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12889\" target=\"_blank\" rel=\"noopener\">got deprecated<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/BernhardPosselt\" target=\"_blank\" rel=\"noopener\">Raydiation<\/a> added an <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12982\" target=\"_blank\" rel=\"noopener\">interface for the <em>timefactory<\/em> class<\/a> and an interface for the root folder so apps have a way to deal with storage<\/li>\n<li>A big <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12406\" target=\"_blank\" rel=\"noopener\">configuration cleanup<\/a> took place: the <em>OC_Preferences<\/em> refactoring touched files all over the ownCloud code<\/li>\n<li>Always on the lookout for things to remove, Lukas <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12860\" target=\"_blank\" rel=\"noopener\">found an unused file <\/a><\/li>\n<li>The timezone logic was <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12881\" target=\"_blank\" rel=\"noopener\">moved out of server.php<\/a> to keep this base file simpler and thus less likely to break<\/li>\n<li>The <a href=\"https:\/\/github.com\/owncloud\/ocdev\" target=\"_blank\" rel=\"noopener\">ownCloud development tool<\/a>, a Python 3 tool to build new and improve existing ownCloud apps, had several fixes and improvements like a <a href=\"https:\/\/github.com\/owncloud\/ocdev\/pull\/21\" target=\"_blank\" rel=\"noopener\">move to the new array syntax<\/a> in PHP 5.4 for ownCloud 8 and a host of other improvements. If you want to build an ownCloud app, be sure to check out this tool!<\/li>\n<\/ul>\n<h3>Design improvements<\/h3>\n<p>ownCloud aims to present a consistent, easy to use and pleasant experience to users, and the <a href=\"https:\/\/owncloud.com\/contribute\/design\/\">design team<\/a> plays a big role in making that possible. In December, the following changes were merged in ownCloud:<\/p>\n<ul>\n<li>The border was removed <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12563\" target=\"_blank\" rel=\"noopener\">from the user menu<\/a>, adjusting it to to apps menu<\/li>\n<li>The bitmap and vector mime icons were <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12561\" target=\"_blank\" rel=\"noopener\">improved <\/a>by <a href=\"https:\/\/github.com\/oparoz\" target=\"_blank\" rel=\"noopener\">oparoz<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/szlwzl\" target=\"_blank\" rel=\"noopener\">szlwzl<\/a> added @ sign between <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12552\" target=\"_blank\" rel=\"noopener\">email address and domain name<\/a>in the admin settings<\/li>\n<li><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12698\" target=\"_blank\" rel=\"noopener\">Handling of read only shared files was improved<\/a>, giving a clear indication in the UI what is going on<\/li>\n<li>The update error page might not be liked much, but at least <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12761\" target=\"_blank\" rel=\"noopener\">looks a bit more consistent now<\/a><\/li>\n<li>To improve the accessibility of ownCloud, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12906\" target=\"_blank\" rel=\"noopener\">keyboard navigation was reworked<\/a><\/li>\n<li>A lot more accessibility improvements were made <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12941\" target=\"_blank\" rel=\"noopener\">in this PR<\/a> and <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/12999\" target=\"_blank\" rel=\"noopener\">more is coming<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12924\" target=\"_blank\" rel=\"noopener\">This PR<\/a> improves the &#8218;empty state&#8216; of pretty much all screens, like favorites, all files, shared with you, shared by you and so on.<\/li>\n<li>The <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12948\" target=\"_blank\" rel=\"noopener\">wording in the shared dialog<\/a> got fixed<\/li>\n<li>To fit better with the rest of ownCloud, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12974\" target=\"_blank\" rel=\"noopener\">Documents now uses a sans-serif font<\/a> by default<\/li>\n<\/ul>\n<h3>Other changes<\/h3>\n<p>Some other changes include the exciting work on &#8218;direct download links&#8216; which would allow the ownCloud client and other external tools to bypass ownCloud, getting data directly from external storage, which is very much a <em>Work In Progress<\/em> but can bring large performance improvements; and the similar work on direct file handling over WebDAV which brings chunked syncing (&#8222;only syncing file changes&#8220;) a little closer.<\/p>\n<ul>\n<li>To improve performance of the clients with a wide variety of external storages, ownCloud gained the ability to <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12854\" target=\"_blank\" rel=\"noopener\">give a direct download link to the client<\/a> instead of piping all data through ownCloud. See more details <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/12286\" target=\"_blank\" rel=\"noopener\">here<\/a>. For now only the base of this feature is here, much of the hard work still has to be done as there are many protocols to be supported thanks to the external storage support in ownCloud, and S3 and SWIFT are the <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/13149\" target=\"_blank\" rel=\"noopener\">first in the list of priorities<\/a> (largely due to the fact they are HTTP based and, unlike FTP and most other protocols, usually not firewalled). This will be worked on in the ownCloud 8.1 timeframe<\/li>\n<li>When handling files over WebDAV, <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12006\" target=\"_blank\" rel=\"noopener\">one can now also work directly with storage<\/a>, saving significant time and resources in ownCloud. But this change also requires significant changes, especially to the encryption code so this is still a WIP and a more complete implementation will come with ownCloud 8.1. Note that this is also a first step towards chunked upload &#8211; something clearly many users want it as there&#8217;s a <a href=\"https:\/\/www.bountysource.com\/issues\/905030-sync-only-the-file-change-not-entire-file\" target=\"_blank\" rel=\"noopener\">bounty of over USD 1000 on this already<\/a>. As always &#8211; if you are interested in hacking on this, join the conversation! These and similar changes planned\/under discussion related to storage are being tracked <a href=\"https:\/\/github.com\/owncloud\/core\/issues\/12487\" target=\"_blank\" rel=\"noopener\">here<\/a><\/li>\n<li>credentials are now <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/11747\" target=\"_blank\" rel=\"noopener\">only stored in the session if required<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12382\" target=\"_blank\" rel=\"noopener\">This PR reorganized the encryption folder structure<\/a> to make encryption more robust. This simplifies the code, speeds up operations but touches encryption all over so it can use some good testing!<\/li>\n<li>The <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12492\" target=\"_blank\" rel=\"noopener\">passwordsalt<\/a> config value in ownCloud was deprecated &#8211; developers are urged to use the ICrypto interface.<\/li>\n<li><a href=\"https:\/\/github.com\/AdamWill\" target=\"_blank\" rel=\"noopener\">AdamWill<\/a>\u00a0 made <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12090\" target=\"_blank\" rel=\"noopener\">Google Drive external storage more robust<\/a> by improving the dealing with non-unique filenames and folders. GDrive supports having several files and folders with the same name &#8211; but this confuses ownCloud.<\/li>\n<li><a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12917\" target=\"_blank\" rel=\"noopener\">improvements in the authentication part of logging<\/a> fixes some known and perhaps even unknown issues<\/li>\n<li>Performance of reading encrypted files got faster thanks to <a href=\"https:\/\/github.com\/owncloud\/core\/pull\/12961\" target=\"_blank\" rel=\"noopener\">caching the keys<\/a><\/li>\n<\/ul>\n<p><a href=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/mail.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-medium wp-image-7732\" src=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/mail-300x152.png\" alt=\"mail\" width=\"300\" height=\"152\" \/><\/a><\/p>\n<h2>New and improved ownCloud apps<\/h2>\n<p>As usual, the ownCloud apps, both those included in ownCloud or otherwise hosted in our <a href=\"https:\/\/github.com\/owncloud\" target=\"_blank\" rel=\"noopener\">github repo<\/a> as well as those on <a href=\"http:\/\/apps.owncloud.com\">apps.owncloud.com<\/a> were the subject of much attention and improvements. We should point out that many app developers push code directly to their apps rather than working via Pull Requests and thus their work goes unmonitored by this development digest. There is a lot more work going in than you read here!<\/p>\n<p>If you, as developer, would like to ensure users and other developers can follow what is going on, send me an occasional email with what you&#8217;ve been up to!<\/p>\n<ul>\n<li>We renamed the <a href=\"https:\/\/github.com\/owncloud\/client\/pull\/2472\" target=\"_blank\" rel=\"noopener\">&#8218;mirall&#8216; repository to &#8218;client&#8216;<\/a><\/li>\n<li>The Notes app <a href=\"https:\/\/github.com\/owncloud\/notes\/pull\/61\" target=\"_blank\" rel=\"noopener\">works better on mobile devices <\/a><\/li>\n<li>The Calendar app got a <a href=\"https:\/\/github.com\/owncloud\/calendar\/pull\/532\" target=\"_blank\" rel=\"noopener\">number of small design improvements <\/a><\/li>\n<li><a href=\"https:\/\/github.com\/jakobsack\" target=\"_blank\" rel=\"noopener\">jakobsack<\/a> moved the <a href=\"https:\/\/github.com\/owncloud\/contacts\/pull\/621\" target=\"_blank\" rel=\"noopener\">creation of default address book to the back end<\/a> in Contacts<\/li>\n<li><a href=\"https:\/\/github.com\/LEDfan\" target=\"_blank\" rel=\"noopener\">LEDfan<\/a> merged a fix for Contacts with shared address books<\/li>\n<li>New is &#8222;show preferred value in contacts list&#8220; by <a href=\"https:\/\/github.com\/ymv\" target=\"_blank\" rel=\"noopener\">ymv<\/a> and by fixing caching in the contacts app, slowness in the Chat app should be solved<\/li>\n<li>Talking of which, the Chat app now <a href=\"https:\/\/github.com\/owncloud\/chat\/pull\/182\" target=\"_blank\" rel=\"noopener\">shows user names if no icons are set<\/a><\/li>\n<li>As ownCloud can&#8217;t really deal with TIFF files at the moment, <a href=\"https:\/\/github.com\/owncloud\/gallery\/pull\/120\" target=\"_blank\" rel=\"noopener\">this PR<\/a> makes it ignore these files in the Gallery app, which also <a href=\"https:\/\/github.com\/owncloud\/gallery\/pull\/144\" target=\"_blank\" rel=\"noopener\">got some accessibility improvements<\/a> and a <a href=\"https:\/\/github.com\/owncloud\/gallery\/pull\/145\" target=\"_blank\" rel=\"noopener\">fix of the progress bar <\/a><\/li>\n<li>The Music app received two useful improvements, one allowing users to <a href=\"https:\/\/github.com\/owncloud\/music\/commit\/7d39a0bacc07867632c4b01585d3caa59d7f12ac\" target=\"_blank\" rel=\"noopener\">drop metadata so a rescan can take place<\/a> and another to allow users to <a href=\"https:\/\/github.com\/owncloud\/music\/commit\/9fca61ca9a6ad8be4bdf04864223fa8e4bcb7922\" target=\"_blank\" rel=\"noopener\">manually start the update of the music collection<\/a>. The latter patch also made sure the initial scan doesn&#8217;t start without first asking the user.<\/li>\n<li>In the Mail app, <a href=\"https:\/\/github.com\/zinks-\" target=\"_blank\" rel=\"noopener\">zinks-<\/a> fixed an issue showing folders by <a href=\"https:\/\/github.com\/owncloud\/mail\/pull\/398\" target=\"_blank\" rel=\"noopener\">restructuring the way they are shown<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/arkascha\" target=\"_blank\" rel=\"noopener\">arkascha<\/a> prepared a <a href=\"https:\/\/github.com\/owncloud\/shorty\/pull\/72\" target=\"_blank\" rel=\"noopener\">release<\/a> for Shorty version 0.4.5 and Shorty Tracking 0.2.4 &#8211; later on, 0.5.0 and 0.3.0 <a href=\"https:\/\/github.com\/owncloud\/shorty\/pull\/78\" target=\"_blank\" rel=\"noopener\">saw the light of day<\/a> and it is high time to get these new releases!<\/li>\n<li><a href=\"https:\/\/github.com\/kwillems\" target=\"_blank\" rel=\"noopener\">kwillems<\/a> merged in a <a href=\"https:\/\/github.com\/owncloud\/administration\/pull\/19\" target=\"_blank\" rel=\"noopener\">number of improvements to the build scripts<\/a> for the desktop client he&#8217;s been adding and improving things for a while now &#8211; great work!<\/li>\n<li>Following a number of mockups by <a href=\"https:\/\/github.com\/YokoOh\" target=\"_blank\" rel=\"noopener\">YokoOh<\/a> and with feedback from other ownCloud designers, the <a href=\"https:\/\/github.com\/owncloud\/documents\/pull\/415\" target=\"_blank\" rel=\"noopener\">header bar in the Documents app was improved<\/a> by <a href=\"https:\/\/github.com\/VicDeo\" target=\"_blank\" rel=\"noopener\">VicDeo<\/a><\/li>\n<li>Unfortunately a bigger update of WebODF, which would bring many improvements to Documents, <a href=\"https:\/\/github.com\/owncloud\/documents\/pull\/419\" target=\"_blank\" rel=\"noopener\">did not make it in <\/a><\/li>\n<li>In preparation for multiple accounts, <a href=\"https:\/\/github.com\/danimo\" target=\"_blank\" rel=\"noopener\">danimo<\/a> refactored and improved the <a href=\"https:\/\/github.com\/owncloud\/client\/pull\/2565\" target=\"_blank\" rel=\"noopener\">settings dialog of the desktop client<\/a><\/li>\n<li>Based on an idea (and some code) from <a href=\"https:\/\/github.com\/jdsantiagojr\" target=\"_blank\" rel=\"noopener\">jdsantiagojr<\/a>, <a href=\"https:\/\/github.com\/ganomi\" target=\"_blank\" rel=\"noopener\">ganomi<\/a> improved the look of the Bookmarks app to be more like the File app. ganomi also fixed Amazon bookmarks while <a href=\"https:\/\/github.com\/TtuxX\" target=\"_blank\" rel=\"noopener\">TtuxX<\/a> removed the 10 tag limitation from bookmarks<\/li>\n<li>The News app keeps moving<a href=\"https:\/\/github.com\/owncloud\/news\/pull\/692\" target=\"_blank\" rel=\"noopener\"> forward with fixes<\/a> for a lot of articles (from <a href=\"https:\/\/github.com\/keinkurt\" target=\"_blank\" rel=\"noopener\">keinkurt<\/a>) and other enhancements<\/li>\n<li>The PDFviewer was <a href=\"https:\/\/github.com\/owncloud\/files_pdfviewer\/pull\/29\" target=\"_blank\" rel=\"noopener\">updated to work with ownCloud 8<\/a> and got some other fixes<\/li>\n<\/ul>\n<p><a href=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/chat-app.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-medium wp-image-7733\" src=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/chat-app-300x197.png\" alt=\"chat app\" width=\"300\" height=\"197\" \/><\/a><\/p>\n<h4>The Android Client<\/h4>\n<p>I highlight the Android client because it merged many improvements, the most important of which are below.<\/p>\n<ul>\n<li>The Android app now <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/662\" target=\"_blank\" rel=\"noopener\">shows a file count<\/a> thanks to the work by <a href=\"https:\/\/github.com\/tobiasKaminsky\" target=\"_blank\" rel=\"noopener\">tobiasKaminsky<\/a>. He&#8217;s been busy, and also got these changes merged:\n<ul>\n<li>a change so the <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/754\" target=\"_blank\" rel=\"noopener\">account list is a radiobutton list <\/a><\/li>\n<li>enabling the <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/755\" target=\"_blank\" rel=\"noopener\">&#8218;open with&#8216; context menu<\/a> on downloaded files<\/li>\n<li><a href=\"https:\/\/github.com\/owncloud\/android\/pull\/799\" target=\"_blank\" rel=\"noopener\">rotate image changes<\/a> merged<\/li>\n<li>this <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/773\" target=\"_blank\" rel=\"noopener\">media scanning fix<\/a><\/li>\n<\/ul>\n<\/li>\n<li>Some fixes and improvements from LukeOwncloud went in <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/781\" target=\"_blank\" rel=\"noopener\">here,<\/a> improving the handling of logs<\/li>\n<li><a href=\"https:\/\/github.com\/ekeitho\" target=\"_blank\" rel=\"noopener\">ekeitho<\/a> contributed a change to <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/784\" target=\"_blank\" rel=\"noopener\">put a subject in mails<\/a> used to share files with the Android client<\/li>\n<li><a href=\"https:\/\/github.com\/Kernald\" target=\"_blank\" rel=\"noopener\">Kernald<\/a> fixed the <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/730\" target=\"_blank\" rel=\"noopener\">displaying of an image<\/a> upon unlocking the phone which got merged <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/801\" target=\"_blank\" rel=\"noopener\">here<\/a><\/li>\n<li>It is now possible for the app to <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/791\" target=\"_blank\" rel=\"noopener\">synchronize entire folders<\/a> (groundwork <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/794\" target=\"_blank\" rel=\"noopener\">here<\/a> and here) this downloading now happens in <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/797\" target=\"_blank\" rel=\"noopener\">a separate worker thread<\/a> to keep the app responsive and <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/803\" target=\"_blank\" rel=\"noopener\">added a cancel option<\/a> to folder download, added to the menu <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/805\" target=\"_blank\" rel=\"noopener\">here<\/a>\u00a0 and as <a href=\"https:\/\/github.com\/owncloud\/android\/pull\/810\" target=\"_blank\" rel=\"noopener\">icon on folders <\/a><\/li>\n<\/ul>\n<p><a href=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/bookmarks-app.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-medium wp-image-7734\" src=\"https:\/\/owncloud.com\/wp-content\/uploads\/2015\/01\/bookmarks-app-300x149.png\" alt=\"bookmarks app\" width=\"300\" height=\"149\" \/><\/a><\/p>\n<h3>In the app store<\/h3>\n<p>On <a href=\"http:\/\/apps.owncloud.com\">apps.owncloud.com<\/a>:<\/p>\n<ul>\n<li>New is the <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/files_hubic?content=168188\">files_hubic<\/a> app which provides external storage support for the <a href=\"http:\/\/hubic.com\" target=\"_blank\" rel=\"noopener\">hubic file storage service<\/a><\/li>\n<li>Also new is <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/OPDS+catalog?content=168132\">OPDS Catalog<\/a>, bringing OPDS support to ownCloud so users can access books and other electronic publications from their ownCloud on OPDS compattible devices like FBReader\/CoolReader\/Aldiko on Android or Marvin\/KyBook\/Stanza on iOS. The OPDS Catalog author quickly released a series of updates so the app is (at the time of this writing) at 0.4<\/li>\n<li>And third newcomer is the <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/Pre+Login+Validation?content=168084\">Pre-Login Validator<\/a>. This tool allows you to allow or deny users at login. After a proof-of-concept on December 1st, an update was made with a series of rules later in the month. Check it out!<\/li>\n<li>The <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/user_servervars?content=167947 \">user_servervars app<\/a> was updated with a avatar mapping, plugin table and removal of group binding references. This App provides with binding between HTTP server variables and user attributes required for some SSO platforms.<\/li>\n<li>The <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/Media+%28Ampache+Server%29?content=168096\">Ampache server<\/a> was updated to 0.4.4<\/li>\n<li><a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/ownCloud+SMS?content=167289\">ownCloud SMS<\/a> got some minor fixes<\/li>\n<li>The News app <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/News?content=168040\">updated to 4.3.2<\/a> as a preview for ownCloud 8 (but can be installed on ownCloud 7 &#8211; note that it requires some manual work).<\/li>\n<li>Passman also <a href=\"https:\/\/apps.owncloud.com\/content\/show.php\/Passman?content=166285\">updated<\/a> and is now at 1.3, bringing a variety of bugfixes<\/li>\n<\/ul>\n<p>If you want to get involved in coding on ownCloud, be it on apps or in some other way &#8211; check out <a href=\"https:\/\/owncloud.com\/contribute\">this page<\/a>!<\/p>\n<h3>Mailing lists and planet ownCloud<\/h3>\n<p>Some of the many changes for developers as mentioned in the Core section above were also discussed on the mailing list: <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000740.html\" target=\"_blank\" rel=\"noopener\">deprecated functionality<\/a>, and <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000785.html\" target=\"_blank\" rel=\"noopener\">another one on that subject<\/a>, work on improving <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000742.html\" target=\"_blank\" rel=\"noopener\">php classes and tests<\/a>, changed paths of <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000747.html\" target=\"_blank\" rel=\"noopener\">vendor JS libraries<\/a>, and more. Other notable conversations include:<\/p>\n<ul>\n<li>A notification came that the documentation is <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000749.html\" target=\"_blank\" rel=\"noopener\">open for ownCloud 8<\/a> work<\/li>\n<li>A notification that the <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000757.html\" target=\"_blank\" rel=\"noopener\">Mirall repo was renamed to client<\/a><\/li>\n<li>There was a conversation about <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000763.html\" target=\"_blank\" rel=\"noopener\">trusted_domains and home networks<\/a><\/li>\n<li>Pierre wanted to create a new external storage and <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000771.html\" target=\"_blank\" rel=\"noopener\">asked how to do so<\/a><\/li>\n<li>Releases: <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000782.html\" target=\"_blank\" rel=\"noopener\">ownCloud client 1.7.1RC1<\/a>, <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000760.html\" target=\"_blank\" rel=\"noopener\">owncloud client 1.7.1 Beta<\/a>, <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000743.html\" target=\"_blank\" rel=\"noopener\">ownCloud 7.0.4 RC1<\/a> and <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/devel\/2014-December\/000762.html\" target=\"_blank\" rel=\"noopener\">7.0.4 Final<\/a><\/li>\n<\/ul>\n<p>You can join the discussions on <a href=\"https:\/\/mailman.owncloud.org\/mailman\/listinfo\/devel\" target=\"_blank\" rel=\"noopener\">this page<\/a>.<\/p>\n<p>On December 5th, we had a <a href=\"https:\/\/owncloud.com\/blog\/join-us-for-a-bug-hunt-and-cleanup\/\">bug triaging day<\/a>, which was <a href=\"https:\/\/mailman.owncloud.org\/pipermail\/testpilots\/2014-December\/000234.html\" target=\"_blank\" rel=\"noopener\">announced<\/a> on the <a href=\"http:\/\/doc.owncloud.org\/server\/7.0\/developer_manual\/testing\/index.html\" target=\"_blank\" rel=\"noopener\">testpilots<\/a> list. Otherwise, discussions on the testpilots list centered around testing releases and results.<\/p>\n<p>The events mailing list hosted conversations about Chemnitzer Linux Tage in Germany, a GSOC meetup in Stuttgart and an ownCloud assembly at CCC. If you think events are missing and you want to meet fellow ownCloud users and developers at ownCloud meetups or see us at conferences, find a calendar of ownCloud events on <a href=\"https:\/\/owncloud.com\/events\">owncloud.org\/events<\/a>. <a href=\"https:\/\/owncloud.com\/events\/meetups\">check out this page<\/a> on how to get involved.<\/p>\n<p>On <a href=\"https:\/\/owncloud.com\/news\/\">Planet ownCloud<\/a>:<\/p>\n<ul>\n<li>ownCloud 7.0.4 <a href=\"https:\/\/owncloud.com\/blog\/owncloud-7-0-4-is-here\/\">was announced<\/a><\/li>\n<li>We welcomed Google to the <a href=\"https:\/\/owncloud.com\/blog\/google-improves-support-for-odf\/\">world of ODF support<\/a>, wrote a blog about <a href=\"https:\/\/owncloud.com\/blog\/extend-your-owncloud-with-apps\/\">extending ownCloud with apps<\/a> and shared the <a href=\"https:\/\/owncloud.com\/blog\/owncloud-development-in-the-second-half-of-november\/\">development update on the 2nd half of November<\/a><\/li>\n<li>ownCloud Inc. blogged about the <a href=\"https:\/\/owncloud.com\/begins-now-fcc-policy-data-protection\/\">FCC and Data protection policy,\u00a0 <\/a><a href=\"https:\/\/owncloud.com\/three-ways-block-dropbox-workplace\/\">three ways to block Dropbox in the workplace<\/a> and <a href=\"https:\/\/owncloud.com\/wired-private-cloud-storage-professional-document-management-solution-2\/\">a Wired article<\/a><\/li>\n<li>And just before the year was over, Frank shared his <a href=\"http:\/\/karlitschek.de\/2014\/12\/2014-and-2015\/\" target=\"_blank\" rel=\"noopener\">reflections on 2014 and 2015 for ownCloud and data freedom in general<\/a><\/li>\n<\/ul>\n<p>Please note that if you&#8217;re 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><strong>We hope you enjoyed the read!<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>As the second half of December took many people on holiday the bi-weekly reports have been folded into a full December overview. Despite the holiday period, with over 1100 closed issues including no less than 395\u00a0merged pull requests, this was not a quiet time. Certainly this has to do with the feature freeze which went [&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-7714","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\/7714","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=7714"}],"version-history":[{"count":1,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/posts\/7714\/revisions"}],"predecessor-version":[{"id":79049,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/posts\/7714\/revisions\/79049"}],"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=7714"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/categories?post=7714"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/owncloud.com\/de\/wp-json\/wp\/v2\/tags?post=7714"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}