Commit Graph

5979 Commits

Author SHA1 Message Date
Vincent Petry b81a1c1bdb
Add new v2-private account scope
Added new v2-private account manager scope that restricts the scope
further by excluding public link access.

Avatars with v2-private account scope are now showing the guest avatar
instead of the real avatar.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-26 13:07:05 +01:00
Roeland Jago Douma 9fd29173cf
Merge pull request #26281 from hosting-de/fix/email
Change my email address
2021-03-26 09:59:35 +01:00
Morris Jobke ab48d5e8cb
Cleanup unneeded code around database.xml
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-03-24 22:15:44 +01:00
Johannes Leuker e9ca59ef0a Change my email address
Signed-off-by: Johannes Leuker <j.leuker@hosting.de>
2021-03-24 15:13:56 +01:00
Vincent Petry 39a6d99526
Fix language codes test result order
Fixes issue with Oracle by enforcing the order of the results to check.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-24 10:26:06 +01:00
Vincent Petry 8b92776be4
Bring back forgotten tests
Remove "ocs-provider" test folder reference as it doesn't exist any
more.
Added back "Test" test subdir and fixed the tests inside.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-24 09:07:54 +01:00
Vincent Petry 95e03fba2d
Fix more controller tests in Core subdir
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-24 09:02:19 +01:00
Vincent Petry 9b8ca1697a
Fix more tests in the Core subdir
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-24 08:48:28 +01:00
Vincent Petry c467f64848
Fix core tests command for app enabling/disabling
Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-23 20:40:28 +01:00
Vincent Petry e210e8e35a
Fix casing of core test folder
It seems Phpunit < 9 was case insensitive.
Fixed the phpunit config to target the correct name for the "Core" test
directory.

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-23 18:12:46 +01:00
Robin Appelman e5dc1a8085
Set umask before operations that create local files
this solves issues where "other php stuff" is messing with the umask

Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-23 14:52:31 +01:00
Morris Jobke 1c074e7602
Merge pull request #26198 from nextcloud/unified-search-node
Handle limit offset and sorting in files search
2021-03-22 21:48:51 +01:00
Morris Jobke 268acd301d
Merge pull request #25529 from nextcloud/fix-non-lgc-glyphs-in-avatars-and-txt-file-previews
Fix non LGC glyphs in avatars and txt file previews
2021-03-22 21:06:22 +01:00
Roeland Jago Douma 3c5cf825b3 Add real events for enabled 2fa providers for users
* Shiny new events
* Listener to still emit the old event

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-22 20:57:10 +01:00
John Molakvoæ (skjnldsv) 15767643f2
Fix sharebymail tests
Signed-off-by: John Molakvoæ (skjnldsv) <skjnldsv@protonmail.com>
2021-03-22 06:50:47 +01:00
Daniel Calviño Sánchez f99876997a
Remove duplicated query for email shares
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Signed-off-by: npmbuildbot-nextcloud[bot] <npmbuildbot-nextcloud[bot]@users.noreply.github.com>
2021-03-22 06:50:47 +01:00
Robin Appelman bfe3712372
handle ordering in folder search
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-19 16:07:54 +01:00
Julius Härtl 76170a58eb
Log and continue when failing to update encryption keys during for individual files
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-03-19 14:12:07 +01:00
Robin Appelman feed42dd6d
folder filtering in sql
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-19 13:41:00 +01:00
Roeland Jago Douma 1286848731
Merge pull request #23718 from nextcloud/already-shared-error-message
expand 'path is already shared' error message
2021-03-19 13:39:22 +01:00
Robin Appelman de713967c0
cleanup fileinfo creation
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-19 13:35:37 +01:00
Vincent Petry 7bf5adb1fa
Merge pull request #26200 from nextcloud/bugfix/26197/fix-expiration-validation-confusion
Update user share must use correct expiration validation
2021-03-19 10:51:21 +01:00
Robin Appelman bd229e7548
handle limit and offset in folder file search
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-18 17:38:31 +01:00
Robin Appelman 50e374c12f
only require user to be set in a query that handles tags
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-18 17:16:28 +01:00
Vincent Petry a9e3d2a10f
Update user share must use correct expiration validation
Updating a user or group share now uses the correct method for the
validation of the expiration date. Instead of using the one from links
it uses the one for internal shares.

To avoid future confusion, the method "validateExpirationDate" has been
renamed to "validateExpirationDateLink".

Signed-off-by: Vincent Petry <vincent@nextcloud.com>
2021-03-18 17:12:28 +01:00
Robin Appelman 9e3775618b
log full expection during repair step
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-18 08:45:17 +01:00
Julius Härtl a2f3077ee8
Skip db migration simulation for core schema changes
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2021-03-17 21:08:22 +01:00
Joas Schilling 0d46fafd41
Merge pull request #26161 from nextcloud/bugfix/noid/improve-matching-of-phonebook-searches
Improve search results when only phonebook-matches can we autocompleted
2021-03-17 15:22:03 +01:00
Joas Schilling cf434d5107
Also limit to user group in case enumeration is enabled for groups and phonenumbers
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-17 11:20:30 +01:00
Joas Schilling 9a189bc710
Improve search results when only phonebook-matches can we autocompleted
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-17 09:51:31 +01:00
Vincent Petry e559afb8d4
Merge pull request #25136 from nextcloud/cachejail-search-filter
do cachejail search filtering in sql
2021-03-15 17:45:30 +01:00
Robin Appelman a550649708
expand 'path is already shared' error message
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-15 15:55:08 +01:00
Robin Appelman 32551b9ff7
Merge pull request #25722 from nextcloud/objectstore-copy-cross
apply object store copy optimization when 'cross storage' copy is wit…
2021-03-12 16:10:18 +00:00
Joas Schilling a609074c18
Fix Test class name
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-12 08:53:43 +01:00
Joas Schilling cf8f9c16df
Change label also in the acceptance tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 18:55:01 +01:00
Joas Schilling 5b53b6f977
Add a setting to restrict returning a full match unless in phonebook or same group
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 17:25:57 +01:00
Joas Schilling 236aa194e2
Restrict autocompletion also based on the phonebook known users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-03-10 17:19:55 +01:00
Robin Appelman c87b1a50d9 apply object store copy optimization when 'cross storage' copy is within the same object store
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-03-09 20:31:27 +01:00
Roeland Jago Douma 30e096f3f5 Allow overwriting isAuthenticated
* Some implementations might check for different things
* IT will not change how the current ones work

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-09 09:17:30 +01:00
kesselb 2ddf3c9df0
Merge pull request #25990 from nextcloud/do-not-try-to-add-an-existing-user-again-in-acceptance-tests
Do not try to add an existing user again in acceptance tests
2021-03-08 10:18:46 +01:00
Roeland Jago Douma 615721df82
Merge pull request #25925 from nextcloud/techdept/psalm/ActionProviderStore
Pimp ActionProviderStore
2021-03-08 09:20:45 +01:00
Daniel Calviño Sánchez c51c3c771f Remove unneeded steps to add already existing user
User "user1" is added when installing and configuring the server, so it
is already added in all tests.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-07 18:34:10 +01:00
Daniel Calviño Sánchez 0e6401933b Fix acceptance test for searching just added users in contacts menu
User "user1" is added when installing and configuring the server, so it
is already added in all tests. As the test verifies that just added
users can be searched in the contacts menu a new user should be actually
added.

The test did not fail because it assumed that "user1" did not exist and
just checked that it existed after "adding" it, but not whether adding
it failed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-07 18:27:45 +01:00
Daniel Calviño Sánchez ee1f8104a0 Find directly the label instead of falling back to it
The input element is always hidden, so the check always ended falling
back to the label. Moreover, the label is the element that the user
interacts with, so it must be the one used.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:43 +01:00
Daniel Calviño Sánchez 7b6946d2d2 Assert also element visibility instead of just finding it
Although if the element could not be found an exception would be thrown
and the test aborted if an element is in the DOM but hidden it would be
found and the test would pass.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:43 +01:00
Daniel Calviño Sánchez 78faf0105d Add explicit locator for "Enable all" bundle button
Instead of looking for the bundle button and then checking its value now
the expected value is included in the locator and the button is checked
similarly to other elements.

No "Disable all" locator was added as it was not currently needed
anywhere.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:43 +01:00
Daniel Calviño Sánchez f87473e410 Find elements through the actor rather than the driver
"Actor::find" is a more robust way to look for elements, as it handles
some exceptions that may be thrown. Therefore, even if the elements are
not actually used and it is only checked whether they exist or not using
the actor is the preferred way when possible (and it also makes it
consistent with the rest of the acceptance tests).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:43 +01:00
Daniel Calviño Sánchez 6d145ea54a Add locator for apps list
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:42 +01:00
Daniel Calviño Sánchez 4c23d24277 Fix identation
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:34:42 +01:00
Daniel Calviño Sánchez bc084070c8 Fix delete user acceptance test
Adding some missing asserts showed that the "delete user" acceptance
test was silently failing, as the deletion was not being confirmed in
the dialog and thus the user was not being deleted.

The dialog button contains a single quote ("user0's"), so the XPath
expression had to be adjusted (it seems that it is not possible to
escape a single quote in a string enclosed in single quotes in XPath
1.0).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-06 01:29:54 +01:00
Daniel Calviño Sánchez d5586ec437 Verify WaitFor::element... results with an assertion
WaitFor::element... calls only perform the waiting and return whether
the condition succeeded or not, but that result needs to be explicitly
checked to prevent further steps from being executed if the wait failed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-05 22:06:05 +01:00
Daniel Calviño Sánchez caa2246568 Add missing waits when finding elements in the acceptance tests
As no timeout was specified the elements were tried to be found just
once. This caused the steps to fail if the elements did not appear yet
in the page when they were tried to be found.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-05 22:06:05 +01:00
Roeland Jago Douma 54cffefed4
Merge pull request #25660 from hosting-de/feature/add-backend-list-groups
Show group backends in occ group:list --info and group:info
2021-03-05 08:49:43 +01:00
Roeland Jago Douma f04a2ce19f Pimp ActionProviderStore
* Fix paradoxale condition
* Add types
* Move away from ILogger

Makes psalm happy, and thus me happy

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-04 12:29:49 +01:00
Roeland Jago Douma 7b9ca4f7c2 Add some typing to SharedStorage
Makes psalm a bit more happy.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-04 10:49:42 +01:00
Roeland Jago Douma 5325c3002c
Merge pull request #25917 from nextcloud/techdept/kill_deprecated/ocp_api
Remove deprecated \OCP\API
2021-03-03 21:57:34 +01:00
Roeland Jago Douma cc744740b7 Remove deprecated \OCP\API
Time to remove this forgood now.
Remaining constant moved over
The world is a tiny bit better

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-03 20:54:32 +01:00
Roeland Jago Douma 68ec18323d Fix types in the Group Manager
Psalm found an issue. However the issue found was because of lying
docblocks. Fixed those and did some typing to make it all better.

For #25839

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-03-03 14:52:47 +01:00
Daniel Calviño Sánchez ee06780029 Include additional scripts in Noto fonts
Generated avatars as well as text file previews are rendered using the
"core/fonts/NotoSans-Regular.ttf" font. The file was the standard hinted
"NotoSans-Regular.ttf" file from https://www.google.com/get/noto/.
However that file does not cover some non LGC (Latin, Greek, Cyrillic)
scripts, like Arabic, Devanagari or Hebrew, to name a few.

Markdown file previews also use "core/fonts/NotoSans-Bold.ttf", which is
in the same situation as the regular one.

Due to limitations in the TTF format it is not possible to provide a
single file for each style that includes all Noto fonts. However, it is
possible to add more scripts to the standard "NotoSans-Regular.ttf" and
"NotoSans-Bold.ttf" files (although no CJK (Chinese, Japanese, Korean)
glyph can be included due to the aforementioned limitations).

This commit replaces the standard files with an extended version created
using the Noto Tools. The build script (as well as a patch for the Noto
Tools) is also included for reference and to be able to update the font
files in the future if needed.

Due to the additional scripts added the font files are now much larger,
although this does not seem to increase the time spent rendering LGC
scripts.

Note that the file for the bold style still contains less scripts than
the regular one, as not all scripts supported by Noto have a bold
weight.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2021-03-01 19:15:01 +01:00
Johannes Leuker 2796ef80ff Show group backends in occ group:list --info and group:info
Signed-off-by: Johannes Leuker <j.leuker@hosting.de>
2021-03-01 16:02:08 +01:00
Christoph Wurst 5026d2cca1
Merge pull request #25086 from nextcloud/dependabot/composer/nextcloud/coding-standard-0.5.0
Bump nextcloud/coding-standard from 0.3.0 to 0.5.0
2021-02-18 14:05:54 +01:00
dependabot-preview[bot] eb502c02ff
Bump nextcloud/coding-standard from 0.3.0 to 0.5.0
Bumps [nextcloud/coding-standard](https://github.com/nextcloud/coding-standard) from 0.3.0 to 0.5.0.
- [Release notes](https://github.com/nextcloud/coding-standard/releases)
- [Changelog](https://github.com/nextcloud/coding-standard/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nextcloud/coding-standard/compare/v0.3.0...v0.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-18 13:31:24 +01:00
Joas Schilling 6ed4aaeeea
Send emails on password reset to the displayname
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-02-18 12:38:43 +01:00
Roeland Jago Douma 644e6df02e
Merge pull request #25440 from nextcloud/bugfix/noid/cache-the-user-backend-info-for-30s
Cache the user backend info for 5mins
2021-02-17 08:56:55 +01:00
Christoph Wurst b794fadbce
Merge pull request #25575 from k00ni/pr/add-tests-for-LoginFlowV2Service
Add tests for \OC\Core\Service\LoginFlowV2Service
2021-02-15 12:22:39 +01:00
Joas Schilling 645f83121e
Cache the user backend info for 300s
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-02-15 10:36:08 +01:00
Roeland Jago Douma 24d4c3eeab
Merge pull request #25577 from nextcloud/enhancement/app-code-checker-noop
Make the app code checker a NOOP
2021-02-13 15:51:41 +01:00
Konrad Abicht 330315f03e refined name of getOpenSSLEncryptedAndPrivateKey
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-12 13:01:37 +01:00
Konrad Abicht 0bc49d67cd added unit tests for LoginFlowV2Service::createTokens
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-12 12:57:24 +01:00
Christoph Wurst 883848b58a
Micro-optimize validation of empty email addresses
Then we don't have to construct any validators.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-11 15:15:38 +01:00
Christoph Wurst e618ea83b5
Make the app code checker a NOOP
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-11 11:46:02 +01:00
Konrad Abicht c755165dd4 added unit tests for LoginFlowV2Service::flowDone
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-11 10:45:47 +01:00
Roeland Jago Douma d5dea10517
Merge pull request #25378 from nextcloud/bugfix/noid/mention-match-improvements
Improve mention matches
2021-02-11 10:33:15 +01:00
Konrad Abicht d60dd8a208 added unit tests for LoginFlowV2Service::startLoginFlow
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-11 09:56:09 +01:00
Konrad Abicht f29748a5e1 added unit tests for LoginFlowV2Service::getByLoginToken
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-11 09:49:39 +01:00
Konrad Abicht b0a2278a7e added unit tests for LoginFlowV2Service::poll
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-11 09:38:29 +01:00
Roeland Jago Douma 7bacd710a1
Merge pull request #25460 from nextcloud/fix/apppassword/always_renew
Always renew apppasswords on login
2021-02-10 21:09:20 +01:00
Roeland Jago Douma cd457cc68b Always renew apppasswords on login
Else you can end up that you renewed your password (LDAP for example).
But they still don't work because you did not use them before you logged
in.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2021-02-10 19:02:37 +01:00
Christoph Wurst 2f26ff40e9
Merge pull request #25359 from nextcloud/enhancement/typed-service-registration
Type the service registration
2021-02-10 15:31:42 +01:00
Christoph Wurst aabd73912e
Type the service registration
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-10 09:44:24 +01:00
Christoph Wurst e4ca0c9fa0
Merge pull request #25548 from k00ni/pr/add-tests-for-LoginFlowV2Credentials
Added tests for OC\Core\Data\LoginFlowV2Credentials
2021-02-09 21:37:37 +01:00
Konrad Abicht a50c615d37 simplified tests
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-09 15:48:37 +01:00
Konrad Abicht a28705064b fixed coding style issue
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-09 15:40:19 +01:00
Konrad Abicht b38a619212 added tests for OC\Core\Data\LoginFlowV2Credentials
Signed-off-by: Konrad Abicht <hi@inspirito.de>
2021-02-09 15:25:37 +01:00
Christoph Wurst abc61a9f63
Fix the legacy dispatcher argument order
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-09 10:47:14 +01:00
Joas Schilling 86109f77e0 Fix unit tests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-02-06 13:07:06 +01:00
Christoph Wurst f6ddda8dad
Test the symfony adapter
To prevent regression in the future.

And make sure we always return an object …

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-02-05 12:14:47 +01:00
Daniel Kesselberg b68c3a5836
Add test for dbal exception wrapping
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
2021-02-03 19:43:52 +01:00
Arthur Schiwon d4a45b4cac
test: adjust expectation
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-01-29 19:32:12 +01:00
Arthur Schiwon 558f062ca6
add repair job for unencoded calendars
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2021-01-29 17:29:10 +01:00
Christoph Wurst 7d9dceb1af
Add negative version comparison test for version suffixes
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-27 16:01:26 +01:00
Christoph Wurst b4f71ccf4d
Fix app fetcher php comparison to allow wider ranges
When app app specifies php 7.4 as upper limit we have to allow the
installation on php>7.4.0. The previous version check didn't do that.
This adjusts the regexes to discard any irrelevant suffix after the
three version numbers so that we can use more fine granular checks than
php's version_compare can do out of the box, like for php 7.4 we only
compare the major and minor version numbers and ignore the patch level.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-26 16:35:43 +01:00
Robin Appelman e511a539b7
adjust tests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-26 15:55:38 +01:00
Robin Appelman 5ae0be08b4
fix search in nested jails
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-26 15:30:54 +01:00
Robin Appelman 27f9df2e87
fix cachjail searching for root
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-26 15:30:50 +01:00
Robin Appelman a44aab11f7
do cachejail search filtering in sql
Signed-off-by: Robin Appelman <robin@icewind.nl>
2021-01-26 15:30:46 +01:00
Christoph Wurst 99d525eb36
Convert 2FA token type to string
The IConfig service is documented to handle its data as strings, hence
this changes the code a bit to ensure we store keys as string and
convert them back when reading.

Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2021-01-22 14:09:37 +01:00
Morris Jobke d84e1f1951
Re-use fetched dependencies in lib/base.php
Reduces calls to DI container by reusing already fetched dependencies.

For status.php it went from 355 to 344.

Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2021-01-20 21:55:16 +01:00
Roeland Jago Douma 0893bba369
Merge pull request #25153 from nextcloud/bugfix/noid/force-signature-verification-on-occ
Force signature verification of apps on occ
2021-01-19 09:35:52 +01:00
Joas Schilling 90c3013d40
Cleanup the constructor
Signed-off-by: Joas Schilling <coding@schilljs.com>
2021-01-18 11:32:50 +01:00