gnusocial.rocks/soc/2020/daily_report/archive/July/hugo.html

207 lines
19 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Daily Report Viewer | GS SoC 2020</title>
<link rel="icon" href="../../../favicon.png">
<meta charset="utf-8">
<meta name="robots" content="noindex, nofollow, nosnippet">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://hackersatporto.com/assets/css/main.css">
<style>
#side-menu #menu-title {
color: #7a7a7a !important;
font-weight: 700;
}
@media screen and (max-width: 1200px) {
#side-menu #menu-title {
display:none;
}
}
</style>
</head>
<body>
<header id="header">
<nav id="side-menu">
<label for="show-menu" id="menu-button">Menu</label>
<input id="show-menu" role="button" type="checkbox">
<ul id="menu">
<li><a href="../"><strong>&larr; GS GSoC 2020</strong></a></li>
<li><a href="archive">Previous Months</a></li>
<li id="menu-title">STUDENTS</li>
<li><a class="current" href="index.php?student=hugo">hugo</a></li><li><a href="index.php?student=susannadiv">susannadiv</a></li><li><a href="index.php?student=rainydaysavings">rainydaysavings</a></li></ul>
</nav>
<h1>Daily Report Viewer | GS SoC 2020</h1>
<p>Organized by <strong><a href="https://www.diogo.site/">Diogo Cordeiro</a></strong></p>
<p>Mentors: <a href="https://www.diogo.site/">Diogo Cordeiro</a>, <a href="https://loadaverage.org/XRevan86">Alexei Sorokin</a>, <a href="https://dansup.com">Daniel Supernault</a>, <a href="http://status.hackerposse.com/rozzin">Joshua Judson Rosen</a> and <a href="https://github.com/phablulo">Phablulo Joel</a></p>
</header>
<article id="student_report"><h2>Showing reports for hugo</h2><h3 id="day-0">Day 0</h3><p><b>No report.</b></p><h3 id="day-1">Day 1</h3><p><strong>Summary:</strong> Review database structure</p><p><strong>Dedicated Time (in hours):</strong> 11</p><pre></pre><h3 id="day-2">Day 2</h3><p><strong>Summary:</strong> Finish database review, open rfc, update script and autogenerated code</p><p><strong>Dedicated Time (in hours):</strong> 11</p><pre>
Relevant commits:
- 20b0c4a3a6b38b3631fdd00fd967ff973dde0e77 [DB][REFACTOR] Restructure the database
- 06efbb28abed57cb37c870e097bcdc7914d1a164 [TOOLS] Update bin/generate_entity_fields script
- ebf8e2ec0e2da494358d59d16d066e7e812487e8 [AUTOGENERATED] Update autogenerated code
- 5b5e66898b47bdb0fe8dbd6d3814fb6f1c5904e0 [MODULE] Move 'foreign' entities from core to a module
</pre><h3 id="day-3">Day 3</h3><p><strong>Summary:</strong> Helping Eliseu and investing a potential Doctrine bug</p><p><strong>Dedicated Time (in hours):</strong> 1.5</p><pre></pre><h3 id="day-4">Day 4</h3><p><strong>Summary:</strong> Investigate Doctrine bug, fix database restructure commit, changed zero dates to CURRENT_TIMESTAMP, fixed Elise's rebase and last commit; researching how to implement queueing (symfony messenger) and investivating avatar 404 bug</p><p><strong>Dedicated Time (in hours):</strong> 7</p><pre>
Relevant commits:
- a17072af6291d8f56b7f37901caf39d3b048033e [DB][REFACTOR] Restructure the database
- a56d64678b22158cd04ecf35200a975838f1a7a5 [DB] Replace zero dates with CURRENT_TIMESTAMP and add defaults to all 'created' or 'modified'
- 38a615aeac33ca1496da391aa23911bd64dc5a07 (v3)
</pre><h3 id="day-5">Day 5</h3><p><strong>Summary:</strong> Design discussion with Diogo, updating dependencies, adding wikimedia/composer-merge-plugin as a dep., fix deprecated use of class, fix routes, add controller base class, dummy notices</p><p><strong>Dedicated Time (in hours):</strong> 7.5</p><pre>
Relevant commits:
- 4224346dbc6aade65673b4db92bc1ee07d7dff2d [COMMAND][DEPRECATION][FIX] Fix app:events's deprecation
- b6426445b77c7e3d46d9a9169145346015e73a3b [ROUTE] Fix routes, config_admin got deleted
- 49b10bed87e2f790cffa92e271c92e57dceed363 [CONTROLLER] Add Controller base class, which handles rendering templates if requested HTML or json, accordingly
- 7b53a32d705b554099f44b0566076c11eda4f706 [FIX] Make ModulesManager check if file exists
- a227bec59d07a867194a70d485bd179cb7f50508 [CONTROLLER] Show dummy notices in main/all
</pre><h3 id="day-6">Day 6</h3><p><b>No report.</b></p><hr><p><strong>Total hours this week:</strong> 38</p><hr><h3 id="day-7">Day 7</h3><p><b>No report.</b></p><h3 id="day-8">Day 8</h3><p><strong>Summary:</strong> Implement and test queue wrapper. Investigating http caching. Configure HTTP cache, add cache wrapper, refactor log wrapper</p><p><strong>Dedicated Time (in hours):</strong> 6</p><pre>
Relevant commits:
- a2024f83eb1416c7210dc59e0224839cca5253e9 [DB] Delete queue_item table, as queueing will be handled by messenger
- 50c27b500ffd975e8e0b5d59c792beaa729c5d93 [DEPENDENCY] Add symfony/messenger as a dependency
- 4a249209b086e091b567a181a6c5ba8ddac68354 [QUEUE] Add queueing wrapper, default configuration and example usage
- 92467685b303486bc0f9b315c2f0edcbc1d9d832 [REFACTOR] Refactor log wrapper
- 7b687a666b71a82d9592d8b27ecb81398c133416 [DEPENDENCY] Add symfony/cache as a dependency
- 2f371019f7253da186de7c7f4e4a7aced92decf6 [CACHE] Add a static wrapper around symfony/cache
- 311258139faa63b12d2a6e99a90790f1b4b17d75 [CACHE][HTTP] Configure simple HTTP cache
</pre><h3 id="day-9">Day 9</h3><p><strong>Summary:</strong> Miscellaneous fixes, add ds extension and ring buffer data structure</p><p><strong>Dedicated Time (in hours):</strong> 6</p><pre>
Relevant commits:
- bcd4780623afe1a1ba032d38653b95c480b9cb01 [FORMATTING][DEFAULTS] Fix formatting and remove redundant config defaults
- 272463678ed5e76d5d3b8fb01ca7d41e52b462b7 [FIX] Fix cache wrapper
- e73965b12f85c60f4920474530fd0f04c9f09b09 [FIX] Fix configure script to use quotation marks properly
- 177899147d0fb0ead7fab4556decbc1b4d04f775 [DOCKER][PHP][EXTENSION] Add PHP ds extension to docker PHP image
- 3eb7c318d585572e40c945831d0216cdee11ce15 [PHP][EXTENSION][POLYFILL] Add php-ds polyfill, which is used if the native extension is not available
- e87cc1fbd48bdf508ed9c72ba6548363564ab25e [DEFAULTS][FIX] Fix defaults to use value from environment
- c4c0e857302999df22f55b590f760514883b92f1 [DOCKER] Move certbot files to hidden folder, so it's ignored by GNU global
- 4f917b921ab9319928340222c9f9300d1a0635c3 [DATASTRUCTURE] Add Ring Buffer datastructure
- 6cfd022e2734376708ada3fa50edbaa38108f73a [CACHE] Extend the static wrapper to support working with lists in caches that don't natively support them
</pre><h3 id="day-10">Day 10</h3><p><strong>Summary:</strong> Add msgpack and redis extensions to docker image, add support for multiple cache pools</p><p><strong>Dedicated Time (in hours):</strong> 7</p><pre>
Relevant commits:
- 5c7ef011aab8f4086bf57e26f0efbc350368230a [DEFAULTS] Add modified time to config table (as value) and only reload the defaults if the file is newer
- 4bd1a64c50a5e8285fb25eb6babfe2a2de701e6c [DOCKER] Add msgpack and redis extensions to docker image
- cb429885e0c028219e460f213bd9ea022c09f1ae [CACHE] Add support for multiple pools with the syntax (as an example) SOCIAL_CACHE_ADAPTER='default=redis://localhost:6379,memcached://localhost:11211;db.config=apcu://'
</pre><h3 id="day-11">Day 11</h3><p><b>No report.</b></p><h3 id="day-12">Day 12</h3><p><b>No report.</b></p><h3 id="day-13">Day 13</h3><p><strong>Summary:</strong> Discussion with Diogo regarding next steps on the software's architecture design</p><p><strong>Dedicated Time (in hours):</strong> 5</p><pre>
</pre><hr><p><strong>Total hours this week:</strong> 24</p><hr><h3 id="day-14">Day 14</h3><p><strong>Summary:</strong> Discussion with Diogo about ways to handle UI events. Added special support for redis to the cache. Fixes and refactoring</p><p><strong>Dedicated Time (in hours):</strong> 4</p><pre>
Relevant commits:
- ca560fc8191c82227ac7d46e65ca032636ca74a7 [DOCKER] Updated php image so redis is compiled with LZ4 compression available, as it's the fastest at decompressing and really fast at compressing. Read performance is more important, with this being used as a cache
- 14c6a7c42b67730d511c6b567200eaa7b70d9a37 [DATASTRUCTURE] Refactor and implement array indexing methods
- 38dc05edd24f17f6641c2f4697f433319fb0de60 [CACHE][REDIS][FIX] Add special support for redis (fixed size lists), set method and general fixes</pre><h3 id="day-15">Day 15</h3><p><strong>Summary:</strong> Review enhanncement tagged issues with Diogo and decide what to implement in v3</p><p><strong>Dedicated Time (in hours):</strong> 3.5</p><pre>
</pre><h3 id="day-16">Day 16</h3><p><strong>Summary:</strong> Fixing redis extension use lz4 build failure, adding a redis polyfill placeholder, to allow autoloading the necessary classes if the extension isn't installed. Discussion with Diogo and Eliseu about the features for v3. Fix use of redis</p><p><strong>Dedicated Time (in hours):</strong> 5</p><pre>
</pre><h3 id="day-17">Day 17</h3><p><strong>Summary:</strong> Trying to understand how to implement doctrine caching, fixing symfony translator PR, so it's hopefully accepted, update DB wrapper so entity names are provided without the namespace</p><p><strong>Dedicated Time (in hours):</strong> 3</p><pre>
Relevant commits:
- 6e405270d6e56f6a264d182e9321a861c8ad5f10 [DATABASE][WRAPPER] Update DB wrapper so entity names are provided without the namespace
- https://github.com/someonewithpc/symfony/commit/e7e8a95d423947545313cbdd915fcfd214be7412 Add support for calling 'trans' with ICU formatted messages
</pre><h3 id="day-18">Day 18</h3><p><strong>Summary:</strong> Design meeting with Diogo</p><p><strong>Dedicated Time (in hours):</strong> 3</p><pre>
</pre><h3 id="day-19">Day 19</h3><p><strong>Summary:</strong> Studying how to implement login with Symfony, and social's v2 implementation, reading about best practices about password storage</p><p><strong>Dedicated Time (in hours):</strong> 3</p><pre>
</pre><h3 id="day-20">Day 20</h3><p><strong>Summary:</strong> Start implementing user login and supporting systems</p><p><strong>Dedicated Time (in hours):</strong> 8</p><pre>
Relevant commits:
- a9629d1d064cd37709e95a906318ae99394decad [DB] Re-import the local_group table, as it'll be used as per the new group semantics
- 992d2e598bc70ff68a69617fcbe9b0d82fa66702 [DB][WRAPPER] Add findBy method which allows finding entities with a complex expression
- e27042af3ee3b7d68d28aa004e47262a657ccc5e [DEFAULTS] Update default reserved usernames
- 88c9f03e0827e8f16fd56e9c3f9f0c1ff0ecb9dd [UTIL][NICKNAME] Import nickname utilities and exceptions from v2
- 4cb4af4791781ccb80461968f6a8a1afa91cc315 [REFACTOR] Change methods in the Common class to camelCase, add isSystemPath (previously in Nickname.php)
</pre><hr><p><strong>Total hours this week:</strong> 29.5</p><hr><h3 id="day-21">Day 21</h3><p><strong>Summary:</strong> A lot of fixing and refactoring, rename user table, add login and logout functionality, implement password hashing</p><p><strong>Dedicated Time (in hours):</strong> 8</p><pre>
Relevant commits:
- 4cf9e52eda73717cc5e1433b56b6987c6d8a3b32 [CACHE] Tiny fix
- 14471bd49c18f5ab6eb4662147fe2f32812d5096 [DB] Re-import the local_group table, as it'll be used as per the new group semantics
- f612e7653ddf90cfc5064e711c51bb2349880bd4 [DB][WRAPPER] Add findBy method which allows finding entities with a complex expression
- 8fbaa1019b4d13acac584d311be016039a89165e [DEFAULTS] Update default reserved usernames
- 643c4f37c05547181856c3da946c490825939370 [UTIL][NICKNAME] Import nickname utilities and exceptions from v2
- e09fbf32dac403f6e8a388857dcb808ba1f77130 [REFACTOR] Change methods in the Common class to camelCase, add isSystemPath (previously in Nickname.php)
- 03d521f460aa0323d2c11d48ba84cfc2595982c9 [I18n] Remove I18nHelper
- cfadcfb171bde7288e8d4dbdcab213a2d1b4a04f [CONFIG] Change way configuration is done to use Symfony's system instead of environment vars
- 21847e9a8d8e64b2f74e84a949db1f4cc0aa72ea [DEPENDENCY] Add symfony/config as a dependency
- c314ac2a2b7944161df6896a33aaa9aba6625c52 [DB] Rename user table to local_user, since doctrine shits itself otherwise ._.
- 78988a8a4e3a124db98a1b5f909769e20f2406e3 [AUTOGENERATED] Update autogenerated code
- 82665ec7869fefd238fa765284196d5d55af4316 [TOOLS] Update shebang on scripts to use the correct php executable
- 147149cf69a92e24b926173afa60ca908e3b82f3 [I18N] Remove support for context until it proves necessary, as it broke the code
- 34b45a54bcea26af1f4a0e359948300a558d3918 [REFACTOR] Refactor GNUsocial.php so it initializes itself as a service
- f36d0963a500eca97efb9ce6eb91a28debb76b7a [UTILS] Make Common::config return the unserialized value instead of the entity
- b62058a23f2292d89e4d400ba5c73017da66f418 [UTILS] Remove Functional::arity as it got merged upstream as Functional\ary
- 3bfbf4a5ff73c1ee6df5262c303e2771ab9c40b4 [UI][SESSION] Add login and logout pages
- Break
- da63805a2761df8a4fd7acf8e0d50411c8da8930 [DEFAULTS][FIX] Fix logic error that kept reloading the table when the file wasn't modified
- 3b818ce3c40f91c61d4b03f1bc30cf1132a262cd [UTIL] Update Common::config to ensure the values queried exist
- e60b668294d99188875a386d56a3eb206e0d8995 [DB] Add role collumn to profile table
- 8aaa6768eccde9c4a430a403b0c39268c81e8c94 [USER] Add UserRoles
- 13e7830b7df027d49fbfd2d9bab35cefe420d2ae [LOGIN] Implement password checking and related systems
- d9f95d91df06dcd199cca2725b30bc51b24807f1 [DEFAULTS] Add password hashing algorithm default settings
- 5084f94ff7d6dfffa52a27784499693cdf822c32 [CONTROLLER] Remove example enqueue
</pre><h3 id="day-22">Day 22</h3><p><strong>Summary:</strong> Rebasing with Eliseu, helping him setup afterwards, design meeting with Eliseu and Diogo. Implement backbone for notification and refactor controllers. Add twig 'active' function, Common::getUser</p><p><strong>Dedicated Time (in hours):</strong> 9.5</p><pre>
Related commits:
- 131415965493d5bce804a561c18dc8254786d9c9 [NOTIFICATION][DB] Update user notification prefs table, implementation of Notification and define a base class for notification transport
- 8d4a8665cfbcfef450a6b2e22de064d74f45d7ee [CONTROLLER][REFACTOR] Refactor controllers to use the new base class and remove controller from the class name
- 94d82783aab6f39aa48dcecd47270d85c0dd11e4 [CONTROLLER][REFACTOR] Refactor the base Controller to not reinvent the wheel too much and rely on Symfony's events
- 9a51870bca4df6ed549f800a673fcdf81ccf9194 [TWIG] Add twig function to output the active tag if the current route matches a given one
- 15b39f0be77e9fe07dc43883f470052a593a4051 [REFACTOR] Small refactor on entrypoint and RouteLoader
- d95a7861872f1a291a7d537d7ff12bba4be3034f [COMMON][SECURITY][WRAPPER] Added security service static wrapper and Common::getUser
</pre><h3 id="day-23">Day 23</h3><p><b>No report.</b></p><h3 id="day-24">Day 24</h3><p><strong>Summary:</strong> Implement registration and bug fixes; fix controllers, refactors and stuff</p><p><strong>Dedicated Time (in hours):</strong> 10</p><pre>
Relevant commits:
- 28845792db [DEPENDENCY] Add symfonycasts/verify-email-bundle
- 5af8881b6b [TOOLS] Update generate fields script to output default values
- ffe5bb0b7c [FIX] Fix bug in DB.php, since findBy can return different types
- eec74314cc [MAILER][WRAPPER] Add mailer wrapper that respects the configuration
- 8b66b1175b [DB] Update LocalUser table to not have a numerical id, add is_email_verified and fix getProfile accordingly
- 3387d4defe [FORM][WRAPPER] Merge argument options, not replace
- ab3c8829a7 [DB] Fix typo in profile table and add a constructor
- f51cdbf842 [DB] Fix typos in user_notification_prefs
- 9fd9624ec7 [UTIL][NICKNAME] Small refactor and remove the check between user nickname and group_alias, as these will have different semantics
- ecd62cb810 [USER][UI][AUTHENTICATION] Add registration form
- f053409876 [REFACTOR] Small refactor in Authenticator.php, to remove unused services
- d720e19525 [AUTOGENERATED] Update all entity fields
- 3dea3877fd [I18N] Remove incomplete autogenerated translation file, to be fixed later
- be9d1ead5c [UTILS] Update Common::setConfig to throw an exception if appropriate, add Formatting::{toString,toArray}
- 9bc9be9e2e [CONTROLLER][ADMIN][CONFIG] Fix form to use static strings as keys and add labels seperately; convert input from string to appropriate type
- 81725b4dc0 [FIX][CONTROLLER] Remove unreachable code from the Security controller
- d89d66b0fa [SECURITY] Update way passwords are checked and update
- bf3578dc26 [UTIL] Update Formatting::{toString,toArray} to allow spliting by either space or comma
- 6d8b49bea6 [DB][REFACTOR] Refactor DB.php and make findBy always return an array, instead of a doctrine collection
- 7066b2a18b [FORM] Add Form::isRequired
- f4602192a4 [SELFTAGS] Add Profile::{set,get}SelfTags
- a4869e3586 [UI][USERPANEL] Add prefilled fields, mark some as optional and handle self tags in the profile settings page
</pre><h3 id="day-25">Day 25</h3><p><strong>Summary:</strong> Add phone number to user table, update user panel controller</p><p><strong>Dedicated Time (in hours):</strong> 3</p><pre>
Relevant commits:
- d0eaf8d42b [UTIL][NICKNAME][FIX] Add self to constant
- 057fbb19bd [DEPENDENCY] Add odolbeau/phone-number-bundle
- 3f52592af2 [REFACTOR][REGISTER] Save previous url to redirect back after registering
- 63b65b0620 [UI][ROUTER] s%settings/profile%settings/personal_info%
- 58ff9aeceb [UI] Update settings/account to reflect the current values
- 70b5210f87 [DB][REFACTOR] Update local_user, SchemaDefDriver and bin/generate_entity_fields to use the phone_number type (which maps to a varchar 35 and does validation)
- 3c6bcef037 [Controller] Update settings/avatar
</pre><h3 id="day-26">Day 26</h3><p><strong>Summary:</strong> Add Form::handle which automagically creates a form, handles a request, and writes the data to the given entity; Help Eliseu with avatar cropper, submit bug report to phone-number-bundle</p><p><strong>Dedicated Time (in hours):</strong> 6.5</p><pre>
Relevant commits:
- b480b664016908d1486bdc58c94bd7c4674572c3 [SECURITY][FIX] Save previous url on /register and /logout
- ed3f413521dd4a1d4be2ab1cf02a0be0202653a9 [DB][TOOLS] Update local_user to return the proper PhoneNumber type
- 5dcb998b68eb04c01840246e86ca3a7e6c31767b [FORM] Add Form::handle which automagically creates a form, handles a request, and writes the data to the given entity and update Form::create to do some more magic as well
- b6e96d5df40ce858c0caad7157f3d7a78efd43ab [FORM] Add DataTransformer to and from array
- cbc457014d9225df0ba51bdfe37b5e3cc16b353b [FORMATTING] Add option to split a string to array by both a comma and a space
- 3d2fab76104444f759b4c781d86e5eab5da16bc3 [DB] Remove DB::flush from Profile::setSelfTags
- d989995ec8a1e2d7eb5b16a369df4881f6bc3f09 [CONTROLLER][REFACTOR][UI] Refactor UserPanel to use the new Form::handle method and add placeholders in the password fields
</pre><h3 id="day-27">Day 27</h3><p><strong>Summary:</strong> Start implementing tabbednotification settings panel</p><p><strong>Dedicated Time (in hours):</strong> 2</p><pre>
</pre><hr><p><strong>Total hours this week:</strong> 39</p><hr><h3 id="day-28">Day 28</h3><p><strong>Summary:</strong> Attempting to update the ExtensionManager, but can't dynamically load classes, asked on symfony slack, awaiying an answer</p><p><strong>Dedicated Time (in hours):</strong> 1.5</p><pre>
</pre><h3 id="day-29">Day 29</h3><p><b>No report.</b></p><h3 id="day-30">Day 30</h3><p><b>No report.</b></p><h3 id="day-31">Day 31</h3><p><b>No report.</b></p></article></body>
</html>