Nicolas Lœuillet
cd975c5f13
Added annotated filter
2022-03-02 20:07:44 +01:00
Nicolas Lœuillet
6dfc031839
Enhanced tests and changed route
2022-03-02 20:07:43 +01:00
Nicolas Lœuillet
0aeaf0e8c2
Added tests
2022-03-02 20:07:17 +01:00
Jeremy Benoist
9a6146d2ef
Merge remote-tracking branch 'origin/master' into 2.5.0
2022-03-02 20:03:33 +01:00
Jeremy Benoist
10d071a4f2
Fix tests
2022-03-02 19:28:48 +01:00
Jeremy Benoist
5c4993832e
Fix tagging rule match when user a custom reading speed
...
By default, we assume the reading speed is 200 word per minute (WPM) when we save an entry.
User can change that value in the config and the rendering is properly performed with the user reading speed.
BUT, when the matching rule is applied, it uses the default reading time defined in the entry without applying the custom reading speed of the user.
This should fix that bug.
Also update the `wallabag:tag:all` to fix the bug when tagging all entries.
2022-03-02 19:12:33 +01:00
Jeremy Benoist
2b3ff84829
Avoid overlapping images when downloading them
2022-02-07 15:19:49 +01:00
Jeremy Benoist
3c507d676f
Add build test on PHP 8.0 & 8.1
...
Add `isTransactional` to `WallabagMigration` because PHP 8 behave differently with PDO transaction.
This is a workaround because we can't upgrade Doctrine Migration for now (upper versions have the fix).
- Build is now using Composer v2 (instead of v1)
- All actions have been updated to latest version
- Fix bug in PHP 8 were `$entry->getTags()` can't be properly used as a _traversable_ by `assertContains` during tests. Added a custom method `Entry::getTagsLabel()` which return a flatted tag array with only label
- Replace `assertNotRegExp` by `assertDoesNotMatchRegularExpression` because it was deprecated
2022-01-31 12:59:39 +01:00
Jeremy Benoist
283675ccd0
Rebuild assets and update webpack config
...
And optimize images (Thanks ImageOptim)
2022-01-05 16:09:43 +01:00
Jeremy Benoist
0afd91a160
Remove dead test
...
The URL seems to be down now.
Move to a more frequent deps update
2022-01-05 13:25:50 +01:00
Nicolas Lœuillet
c34fe9945a
Fixed test
2021-08-03 08:36:56 +02:00
Nicolas Lœuillet
609193cf59
Fixed unavailable russian website in test
2021-08-03 07:56:14 +02:00
Simounet
6324d30db2
Fix PHPUnit deprecated warning
2021-04-14 13:07:46 +02:00
Simounet
e491052b0d
Fix 404 on real content test URL
2021-04-14 13:07:34 +02:00
Jeremy Benoist
7ca833bccb
Fix tests
2021-03-18 11:44:57 +01:00
Kevin Decherf
7acd207054
Convert tag label to lowercase in RuleBasedTagger
...
Fixes #4266
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2021-03-06 19:46:24 +01:00
Jeremy Benoist
38902a2f04
Fix test
2021-02-08 09:57:10 +01:00
Jeremy Benoist
a962a3ab13
CS
2021-02-08 09:56:25 +01:00
Jeremy Benoist
dd9d6a4c64
Add Delicious import
...
Since 2021, you can export again your data \o/
Also fix indentation in json fixtures files.
2021-02-08 09:47:56 +01:00
Nicolas Lœuillet
890c7d0bfa
Added button to show entries with the same domain
2021-02-08 09:45:38 +01:00
Jeremy Benoist
f061581bbd
Fix test
2021-02-08 09:38:01 +01:00
Jeremy Benoist
3137d9b1cc
Fix test
2021-02-08 09:05:57 +01:00
Kevin Decherf
8e89b3ad76
Preselect currently active section in the filter menu
...
Fixes #2533
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2021-01-24 02:16:43 +01:00
Jeremy Benoist
381f9681b5
Fix CS
2021-01-18 10:38:56 +01:00
Jeremy Benoist
83f10796a7
Fix Russian language validation
2020-12-14 09:33:31 +01:00
Jeremy Benoist
f6ca547fc9
Fix tests
2020-12-10 10:30:34 +01:00
Jeremy Benoist
a173423820
Fix CS issues
2020-12-08 09:17:10 +01:00
Jeremy Benoist
b02ca1f711
Fix tests & updated deps again
2020-10-22 11:13:51 +02:00
Jeremy Benoist
732ec8a2eb
Fix deprecated method in tests
2020-06-15 14:21:35 +02:00
Jeremy Benoist
7332d1f4e5
Remove support for PHP < 7.2
...
Updating deps
- Removing electrolinux/php-html5lib (0.1.0)
- Updating doctrine/inflector (1.3.1 => 1.4.3)
- Updating doctrine/lexer (1.0.2 => 1.2.1)
- Installing symfony/polyfill-php80 (v1.17.0)
- Updating symfony/service-contracts (v1.1.8 => v2.1.2)
- Installing symfony/deprecation-contracts (v2.1.2)
- Updating symfony/mime (v4.4.8 => v5.1.1)
- Updating friendsofsymfony/rest-bundle (2.7.4 => 2.8.0)
- Updating doctrine/instantiator (1.3.0 => 1.3.1)
- Updating ocramius/proxy-manager (2.1.1 => 2.2.3)
- Updating php-http/discovery (1.7.4 => 1.8.0)
- Updating symfony/http-client-contracts (v1.1.8 => v2.1.2)
- Updating symfony/http-client (v4.4.8 => v5.1.1)
- Updating php-http/httplug-bundle (1.16.0 => 1.18.0)
- Updating symfony/phpunit-bridge (v4.3.11 => v5.1.1)
- Updating doctrine/data-fixtures (1.3.3 => 1.4.3)
- Updating composer/xdebug-handler (1.4.1 => 1.4.2)
- Updating masterminds/html5 (2.7.0 => 2.7.1)
- Updating j0k3r/php-readability (1.2.4 => 1.2.5)
- Updating phpoption/phpoption (1.7.3 => 1.7.4)
- Updating nikic/php-parser (v4.4.0 => v4.5.0)
- Installing thecodingmachine/safe (v1.1.1)
- Updating spomky-labs/otphp (v9.1.4 => v10.0.1)
- Updating pagerfanta/pagerfanta (v2.1.3 => v2.3.0)
Package white-october/pagerfanta-bundle is abandoned, you should avoid using it. Use babdev/pagerfanta-bundle instead.
- Removing white-october/pagerfanta-bundle (v1.3.2)
- Installing babdev/pagerfanta-bundle (v2.4.2)
Upgrading PHPStan to 0.12 and use extension installer
- Removing phpstan/phpdoc-parser (0.3.5)
- Removing nette/utils (v3.1.2)
- Removing nette/schema (v1.0.2)
- Removing nette/robot-loader (v3.2.3)
- Removing nette/php-generator (v3.4.0)
- Removing nette/neon (v3.1.2)
- Removing nette/finder (v2.5.2)
- Removing nette/di (v3.0.4)
- Removing nette/bootstrap (v3.0.2)
- Updating phpstan/phpstan (0.11.19 => 0.12.29)
- Updating phpstan/phpstan-doctrine (0.11.6 => 0.12.16)
- Updating phpstan/phpstan-phpunit (0.11.2 => 0.12.11)
- Updating phpstan/phpstan-symfony (0.11.6 => 0.12.6)
- Installing phpstan/extension-installer (1.0.4)
Upgrading jms/serializer-bundle to version 3 (and willdurand/hateoas-bundle to version 2)
- Removing phpoption/phpoption (1.7.4)
- Removing phpcollection/phpcollection (0.5.0)
- Removing jms/parser-lib (1.0.0)
- Updating jms/metadata (1.7.0 => 2.3.0)
- Updating jms/serializer (1.14.1 => 3.7.0)
- Updating jms/serializer-bundle (2.4.4 => 3.6.0)
- Updating willdurand/hateoas (2.12.0 => 3.6.0)
- Updating willdurand/hateoas-bundle (1.4.0 => 2.1.0)
Upgrading dama/doctrine-test-bundle to version 6
- Updating dama/doctrine-test-bundle (v5.0.3 => v6.2.0)
2020-06-15 08:25:59 +02:00
Jeremy Benoist
9dfceff022
Fix test
2020-05-25 05:50:11 +02:00
Kevin Decherf
71f7e58fbd
tests: add a NetworkCalls group for tests making network calls
...
Excluding this group can decrease the run time of tests during
development.
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
Kevin Decherf
7408a6cb68
Add controller, views and translations for ignore origin instance rules
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
Kevin Decherf
b22eb27623
ContentProxy: replace ignoreUrl with new RuleBasedIgnoreOriginProcessor
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
Kevin Decherf
f39c5a2a70
Add new Helper to process Ignore Origin rules and RulerZ operator
...
This commits adds a new helper like RuleBasedTagger for processing
ignore origin rules. It also adds a new custom RulerZ operator for the
'~' pattern matching rule.
Renames 'pattern' with '_all' in IgnoreOriginRule entity.
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
Kevin Decherf
24230a5130
Add new Ignore Origin rules tab, update ConfigController
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-25 15:59:23 +02:00
Nicolas Lœuillet
467327771a
Added mass actions for Material design in list view
2020-04-24 09:12:57 +02:00
Nicolas Lœuillet
01f8a776a4
Fixed unit tests
2020-04-22 14:58:37 +02:00
Kevin Decherf
48f9a9632d
TagController: support merging labels when renaming one with label of another
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-18 18:12:33 +02:00
Kevin Decherf
a19caf8a37
TagController: prevent tag deletion when renaming a tag with the same label
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-18 18:09:07 +02:00
Kevin Decherf
39133eb796
TagController: fix duplicated tags when renaming them
...
The fix relies on a workaround available on TagsAssigner, see the
AssignTagsToEntry() signature for detail.
I replaced the findOneByLabel in the corresponding test to assert that
there is no duplicate.
Fixes #4216
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-04-18 18:09:07 +02:00
Nicolas Lœuillet
4ff1efa418
Added a button to disable 2FA when enabled
2020-04-13 17:00:53 +02:00
Jeremy Benoist
3cd659fc34
Fix tests
2020-03-31 15:56:48 +02:00
Jérémy Benoist
11079d204d
Merge pull request #4272 from Simounet/feat/load-custom-css-only-if-exists
...
Load custom.css only if exists
2020-03-28 16:49:29 +01:00
Jérémy Benoist
26467fa6b4
Merge pull request #4299 from wallabag/fix/4133
...
Fix createdAt filter on material
2020-03-28 16:38:12 +01:00
Kevin Decherf
8ee7b1603d
Fix createdAt date range filter
...
- hiddenName has been disabled in order to fix the missing date range
values when using the material theme
- data format has been changed to 'Y-m-d' in order to comply with the
browser date input default format
- tests: date() and strtotime have been replaced with DateTime-related
objects
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-03-22 17:01:39 +01:00
Kevin Decherf
ef81e3c89b
tests: replace baggy theme used in EntryController tests
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-03-22 17:01:39 +01:00
Kevin Decherf
93c5b47e88
ExportController: fix entries export from search view
...
Fixes #4240
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2020-02-23 00:43:21 +01:00
Simounet
33e3eeaec8
Load custom.css only if exists
2020-02-07 13:21:48 +01:00
Simounet
416d44d0ae
Use lang attribute
2020-01-23 21:21:54 +01:00
Jérémy Benoist
6a0d49ab7a
Fix tests
2019-11-27 14:46:27 +01:00
adev
8197f08266
API return an error with empty quote
...
Fix #4137
2019-11-27 14:38:35 +01:00
Jeremy Benoist
bff82c3202
Fix tests (again..)
2019-11-19 13:28:32 +01:00
Nicolas Lœuillet
958e77e6a7
Added elCurator import
2019-11-15 16:08:36 +01:00
Jeremy Benoist
4a31f3b6a2
Fix tests
2019-11-13 13:05:58 +01:00
Jeremy Benoist
075a3b3e0a
Fix tests
2019-11-12 14:33:45 +01:00
Jeremy Benoist
987237d588
Fix tests & update deps
...
- Updating twig/twig (v2.12.0 => v2.12.1)
- Updating symfony/mime (v4.3.4 => v4.3.5)
- Updating friendsofsymfony/rest-bundle (2.5.0 => 2.6.0)
- Updating j0k3r/graby-site-config (1.0.91 => 1.0.93)
- Updating monolog/monolog (1.24.0 => 1.25.1)
- Updating simplepie/simplepie (1.5.2 => 1.5.3)
- Updating symfony/http-client-contracts (v1.1.6 => v1.1.7)
- Updating symfony/http-client (v4.3.4 => v4.3.5)
- Updating nette/utils (v3.0.1 => v3.0.2)
- Updating phpstan/phpstan (0.11.17 => 0.11.18)
- Updating zendframework/zend-code (3.3.2 => 3.4.0)
- Updating php-amqplib/php-amqplib (v2.10.0 => v2.10.1)
- Updating beberlei/assert (v3.2.3 => v3.2.6)
- Updating zendframework/zend-diactoros (2.1.3 => 2.1.5)
- Updating sentry/sentry (2.2.1 => 2.2.2)
2019-10-22 16:56:33 +02:00
Nicolas Lœuillet
af7b22a3be
Fixed default value for reading speed
2019-09-19 14:23:06 +02:00
Jeremy Benoist
1ebc8e1f02
Fix tests
2019-07-26 13:37:44 +02:00
Jeremy Benoist
2f62f3abfe
Fix tests
2019-07-09 14:02:58 +02:00
Jérémy Benoist
4f46330087
Merge pull request #4053 from wallabag/feature/manual-input-reading-speed
...
Add ability to manually define the reading speed
2019-07-09 11:53:20 +02:00
Jeremy Benoist
41022cb289
Add ability to manually define the reading speed
...
Instead of using a select, let the user decide its own speed.
2019-07-08 20:18:59 +02:00
Jeremy Benoist
34be2d5de4
Add ability to import/export tagging rules
...
- Add missing translations
- Add some tests
- Add `/api/taggingrule/export` API endpoint
- Add baggy theme
- Add error message when importing tagging rules failed
- Also fix all translations (I think we are good now)
2019-07-08 09:38:32 +02:00
Jérémy Benoist
29fa957587
Merge pull request #4018 from wallabag/fix/wallabag_user-migration
...
Fix migration with prefix table name
2019-06-24 07:30:57 +02:00
Jeremy Benoist
a2f4efe6d2
Use Twig 2.0
...
`mnapoli/piwik-twig-extension` locked Twig to the 1.10 version. The new version is compatible with Twig 2.0
2019-06-21 12:46:53 +02:00
Jeremy Benoist
4552f1c117
Update test url
...
The previous URL started to report title as `snippet intertitre` instead of the previous title which contains Google.
It looks like a bug on the website side. Instead of updating the test to match that new title, I prefer to use a more recent url instead.
2019-06-18 22:40:05 +02:00
Jérémy Benoist
c19845a7ae
Merge pull request #3959 from wallabag/mig-tag-collation
...
mysql: change collation of tag label
2019-06-06 12:03:37 +02:00
Jeremy Benoist
c4bf12aade
Add ability to revoke feed token
2019-06-05 17:55:13 +02:00
Jeremy Benoist
70df4c3359
Use two indexes instead of one for hashed urls
...
When using `OR` in a where clause, a composite index can't be used. We should use a `UNION` to take advantages of it.
Instead, create 2 indexes on each hashed urls and make 2 queries to find an url. It'll be faster than the previous solution.
2019-06-05 10:53:15 +02:00
Nicolas Lœuillet
b7fa51ae7d
Added given_url in entry table
...
- Added index on entry table for given_url field
- Fix tests:
The previous `bit.ly` url redirected to doc.wallabag but that url doesn't exist in the fixtures.
I used our own internal "redirector" to create a redirect to an url which exist in the fixtures.
Also, updating current migration to use the new `WallabagMigration`.
2019-05-29 13:50:59 +02:00
Jeremy Benoist
6e68417f03
Fix tests after rebase
2019-05-28 12:02:17 +02:00
Jeremy Benoist
36b0d52ee4
CS & fix tests
2019-05-28 11:44:21 +02:00
Jeremy Benoist
b6c1e1bacc
Fix some tests
2019-05-28 11:44:20 +02:00
Jeremy Benoist
448d99f84e
CS
2019-05-28 11:42:27 +02:00
adev
5f08426201
Fix because of some breaking changes of Graby 2.0
2019-05-28 11:42:27 +02:00
adev
bf9ace0643
Use httplug
2019-05-28 11:40:41 +02:00
Jeremy Benoist
92a6683562
Merge remote-tracking branch 'origin/master' into 2.4
2019-05-27 10:46:01 +02:00
Jeremy Benoist
d6cc0b249e
Fix test
2019-05-27 09:38:07 +02:00
nicofrand
d99e6423f4
[tests] Fix pre-existing tests (preview now imported + records added)
2019-05-21 20:38:22 +02:00
nicofrand
715fabf8f2
[tests] Set first picture as preview picture
2019-05-21 20:38:22 +02:00
Jérémy Benoist
a2b5d67560
Merge pull request #3960 from wallabag/api-entries-2817
...
api/entries: add parameter detail to exclude or include content in response
2019-05-21 11:18:19 +02:00
Kevin Decherf
feb239ea10
mysql: change collation of tag table
...
utf8mb4_unicode_ci considers that 'caché' is equal to 'cache' which
can lead to attaching incorrect tags to entries. This issue is due to
some unicode normalization done by MySQL.
utf8mb4_bin makes no unicode normalization, letting wallabag to consider
'cache' and 'caché' as two different tags.
We change the collation of the whole table as Doctrine does not support
setting a collation on a column for a specific platform (it tries to
apply utf8mb4_bin even for pgsql and sqlite).
Fixes #3302
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-05-19 23:37:49 +02:00
Kevin Decherf
2c290747cb
api/entries: add parameter detail to exclude or include content in response
...
detail=metadata will nullify the content field of entries in order to
make smaller responses.
detail=full keeps the former behavior, it sends the content of entries.
It's the default, for backward compatibility.
Fixes #2817
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-05-18 18:11:08 +02:00
Jeremy Benoist
b8b37ccdea
CS
2019-05-15 14:58:40 +02:00
Jeremy Benoist
9f0957b831
Merge remote-tracking branch 'origin/master' into 2.4
2019-05-15 14:38:07 +02:00
Jeremy Benoist
77bd7f690d
CS
2019-05-10 15:49:39 +02:00
Jeremy Benoist
68a90821a3
Handle redirection from previous feeds
2019-04-26 13:40:58 +02:00
Jeremy Benoist
f277bc042c
Fix tests & cs & migration
2019-04-26 12:53:21 +02:00
Thomas Citharel
531c8d0a5c
Changed RSS to Atom feed and improve paging
2019-04-25 13:46:31 +02:00
Jeremy Benoist
35359bd3c6
Adding more tests to cover different scenario
2019-04-24 15:28:15 +02:00
Jeremy Benoist
ff8f338dc2
FIx unrelated failing test
2019-04-23 22:48:04 +02:00
Jeremy Benoist
f45496336f
Add ability to match many domains for credentials
...
Instead of fetching one domain, we use the same method as in site config (to retrieve the matching file) and handle api.example.org, example.org, .org (yes the last one isn’t useful).
If one of these match, we got it and use it.
2019-04-23 22:39:31 +02:00
Jeremy Benoist
c579ce2306
Some cleanup
...
Also, do not run the hashed_url migration into a Doctrine migration
2019-04-01 14:34:20 +02:00
Jeremy Benoist
8a64566298
Use a better index for hashed_url
...
It'll most often be used in addition to the `user_id`.
Also, automatically generate the hash when saving the url.
Switch from `md5` to `sha1`.
2019-04-01 13:51:57 +02:00
Jeremy Benoist
9c2b2aae70
Keep url in exists endpoint
...
- Add migration
- Use md5 instead of sha512 (we don't need security here, just a hash)
- Update tests
2019-04-01 13:24:40 +02:00
Thomas Citharel
bfe02a0b48
Hash the urls to check if they exist
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2019-04-01 13:24:40 +02:00
Jeremy Benoist
3620dae1e6
Merge remote-tracking branch 'origin/master' into 2.4
2019-04-01 13:16:15 +02:00
Jeremy Benoist
8c0ba95307
Adding more tests
2019-02-27 15:01:03 +01:00
Kevin Decherf
12a97c3522
tests: fix broken session clients for rest entry deletion tests
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-02-20 15:57:56 +01:00
Kevin Decherf
508302042f
EntryRestController: add support of expect parameter to delete action
...
The expect parameter enables an application to request the whole entry
or only the id when requesting its deletion.
`expects` defaults to `entry` to prevent any API breakage.
Fixes #3711
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-02-20 15:57:50 +01:00
Kevin Decherf
4e0ed3368d
tests: create entry for testDeleteEntry, fix missing id
...
When using the entity manager to retrieve an already stored entry, the
id disapears from $entry after the first delete call. This leads to
testing a nonexistent endpoint (api/entries/.json) during the second
delete call.
This change now creates an entry specifically for the test.
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-02-17 15:25:21 +01:00
Jeremy Benoist
18460b2d79
Merge remote-tracking branch 'origin/master' into 2.4
2019-02-07 18:01:15 +01:00
Jeremy Benoist
8d082488e9
Improve checks & add tests
2019-01-28 06:03:16 +01:00
Jeremy Benoist
a0c5eb003f
Change the way to enable 2FA
...
And add a step to validate a generated code from the OTP app
2019-01-23 13:28:24 +01:00
Jeremy Benoist
edc79ad886
Fix test for custom version of the tidy extension
2019-01-23 13:28:02 +01:00
Jeremy Benoist
a6b242a1fd
Enable OTP 2FA
...
- Update SchebTwoFactorBundle to version 3
- Enable Google 2fa on the bundle
- Disallow ability to use both email and google as 2fa
- Update Ocramius Proxy Manager to handle typed function & attributes (from PHP 7)
- use `$this->addFlash` shortcut instead of `$this->get('session')->getFlashBag()->add`
- update admin to be able to create/reset the 2fa
2019-01-23 13:28:02 +01:00
Jeremy Benoist
019e1acc49
Factorize sendResponse between Api controllers
...
And run newer cs fixer
2019-01-22 20:42:25 +01:00
Craig Roberts
9133bd02d1
[ wallabag/wallabag#2611 ] Fix PHPCS lint errors
2019-01-22 20:42:25 +01:00
Craig Roberts
b32057980e
Fixes [ wallabag/wallabag#2611 ] Add a basic Search REST endpoint
...
- Adds a new `search` key to `src/Wallabag/ApiBundle/Resources/config/routing_rest.yml`
- Reuses the `getBuilderForSearchByUser` method from the EntryRepository
- Supports, `term`, `page`, and `perPage` query parameters
- Some very basic tests
2019-01-22 20:42:24 +01:00
Jeremy Benoist
0447a75b06
Use only one method to randomize
...
Instead of one per type, one for all is ok.
2019-01-19 21:09:33 +01:00
Jeremy Benoist
1e0d8ad7b7
Enable PHPStan
...
- Fix error for level 0 & 1 (level 7 has 699 errors...)
- Add `updated_at` to site_credential (so the `timestamps()` method applies correctly)
2019-01-18 15:25:50 +01:00
Jeremy Benoist
3bd65991ad
Add a new endpoint to retrieve information from the wallabag instance
...
Useful for api client which required some information.
We might add more inside them in the future.
The endpoint /api/version should be avoided now as it contains not so much information rather the version.
2019-01-15 10:17:11 +01:00
Jeremy Benoist
5419a8368e
Merge remote-tracking branch 'origin/master' into 2.4
2019-01-15 09:41:18 +01:00
Jeremy Benoist
78e3fafa3f
Avoid error when a bad order
parameter is given
...
Only allowed parameter are asc & desc
2019-01-14 17:01:21 +01:00
Jérémy Benoist
3625833b2c
Merge pull request #3826 from wallabag/epub-toc
...
Rework of EPUB/PDF exports
2019-01-11 13:34:38 +01:00
Jérémy Benoist
03663530ed
Merge pull request #3831 from wallabag/fix/api-bad-client-id
...
Cast client id to avoid PG error
2019-01-10 17:03:03 +01:00
Jeremy Benoist
3a2d4cf9fd
Cast client id to avoid PG error
...
If someone send a malformated client_id when trying to authenticate using the API we got a 500 if wallabag use postgres because the request send a string instead of an integer.
2019-01-09 23:31:14 +01:00
Kevin Decherf
dac93644e8
EntriesExport: sanitize filename and fix tests
...
Filename will now only use a-zA-Z0-9-' and space.
Fixes remaining filename issue on #3811
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2019-01-08 15:13:35 +01:00
Jérémy Benoist
d2aec7096d
Merge pull request #3820 from lizyn/bugfix/incorrect-calculation-of-CJK-characters-in-reading-time-estimation
...
Fix incorrect reading time calculation for entries with CJK characters
2019-01-07 10:17:29 +01:00
lizyn
7f8630b91c
Counting two characters together as a word in CJK
2019-01-06 01:21:13 +08:00
Jeremy Benoist
35983eb9bb
Improve reading time tests
2019-01-04 11:23:33 +01:00
Kevin Decherf
6c40d7fc85
TagRestController: fix test for tag without entries
...
As the deletion now requires that at least one entry for the user must
be linked to the given tag, we fix the test testDeleteUserTag by linking
it to an entry.
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-12-30 01:34:49 +01:00
Kevin Decherf
0ee9848231
TagRestController: add tests to ensure that other user's tags are unreachable
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-12-30 01:34:49 +01:00
lizyn
5becf260fa
fix incorrect reading time calculation for entries with CJK characters
2018-12-25 15:31:44 +08:00
Jeremy Benoist
877787e5fe
Fix utf8mb4 on vendor tables
...
When creating the schema for test these tables use default length for
string: 255. Which fail when using utf8mb4.
> Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes
Also move the `setKeepStaticConnections` in before and after class to
avoid:
> SAVEPOINT DOCTRINE2_SAVEPOINT_2 does not exist
See https://github.com/dmaicher/doctrine-test-bundle#troubleshooting
2018-11-28 22:04:55 +01:00
Jeremy Benoist
9a8a1bdfdb
Use our own fork for CraueConfigBundle
...
Mostly to fix utf8mb4 issue
2018-11-28 22:04:55 +01:00
Jeremy Benoist
b13b2ef052
CS
2018-11-28 22:04:55 +01:00
Jeremy Benoist
8f2038e5b1
Fix tests
2018-11-28 22:04:55 +01:00
Jeremy Benoist
b878be4cc9
Merge remote-tracking branch 'origin/master' into 2.4
...
# Conflicts:
# web/wallassets/baggy.js
# web/wallassets/manifest.json
# web/wallassets/material.css
# web/wallassets/material.js
2018-11-25 09:58:18 +01:00
Jeremy Benoist
dc90eab32b
Prepare 2.3.4 release
2018-11-23 08:34:13 +01:00
Kevin Decherf
6059967951
updateOriginUrl: remove 'query string' case from ignore list
...
Two urls with a different query string may refer to two different pages
so keep them both.
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-24 22:27:27 +02:00
Kevin Decherf
b49c87acf1
ignoreOriginUrl: add initial support of ignore lists
...
Add the ability to specify hosts and patterns lists to ignore the given
entry url and replace it with the fetched content url without touching
to origin_url.
This initial support should be reworked in the following months to move
the hardcoded ignore lists in the database.
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-22 23:42:09 +02:00
Kevin Decherf
fc040c749d
updateOriginUrl: add behavior when diff is fragment and query
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-22 23:08:58 +02:00
Kevin Decherf
e07fadea76
Refactor updateOriginUrl to include new behaviors behaviors
...
- Leave origin_url unchanged if difference is an ending slash
- Leave origin_url unchanged if difference is scheme
- Ignore (noop) if difference is query string or fragment
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-22 23:01:16 +02:00
Kevin Decherf
781864b954
ContentProxy: swap entry url to origin_url and set new url according to graby content
...
Closes #3529
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-10-21 16:15:31 +02:00
Jérémy Benoist
e673b54f70
Merge pull request #3574 from shulard/feature/rename-tags
...
Allow to rename tags from the web interface.
2018-10-15 08:32:59 +00:00
Jeremy Benoist
4d4147b228
Ensure language is valid
...
- Do not override locale if user has choosen a locale from the login screen.
- Add some tests about locale url
2018-10-13 09:39:00 +02:00
Jeremy Benoist
115de64e5b
Jump to Symfony 3.4
...
Thanks to the BC compatibility, almost nothing have to be changed.
All changes are related to new bundle version of:
- SensioFrameworkExtraBundle
- DoctrineFixturesBundle
2018-10-04 14:11:57 +02:00
Stéphane HULARD
03b2058dbe
Add tests about the tag renaming process.
2018-09-25 10:18:36 +02:00
Tobi823
28cc645b93
Run php-cs-fixer for fixing coding standard issues (on ContentProxyTest)
2018-09-23 23:42:05 +02:00
Tobi823
d64139d812
Make helper methods strToHex and hexToStr in ContentProxyTest.php private
...
to prevent misusage (from outside this class)
2018-09-21 13:31:28 +02:00
Tobi823
c01d953292
Add tests for logic
...
Try to translate the title of a PDF from UTF-8 (then UTF-16BE, then WINDOWS-1252) to UTF-8
2018-09-21 13:15:00 +02:00
Sébastien Viande
7975395d10
Entry: add archived_at property and updateArchived method
2018-09-21 10:33:33 +02:00
Jeremy Benoist
84b3bdaac0
Liberation goes https
2018-09-21 09:07:40 +02:00
Jeremy Benoist
4408ebd40a
Fix tests
2018-09-07 15:18:00 +02:00
Kevin Decherf
2a1ceb67b4
php-cs-fixer
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2018-09-05 14:25:32 +02:00
Jeremy Benoist
72efc80fdc
Removing failing test from Travis
2018-08-19 16:38:48 +02:00
Simounet
e6f12c0734
More robust srcset image attribute handling
...
Linked to HTMLawed PR https://github.com/kesar/HTMLawed/pull/17
2018-07-12 14:29:30 +02:00
Jeremy Benoist
9c48053b14
Replace SO url by lemonde
...
Looks like we got a lot of random failing while grabing SO content, replacing it might fix the problem.
2018-07-05 14:50:27 +02:00
Simounet
3fbbe0d9f1
Fix image downloading on null image path
2018-07-05 11:40:51 +02:00
Jeremy Benoist
778543311f
Fix tests
2018-06-06 17:34:20 +02:00
Simounet
c15bb5ad72
Fix srcset attribute on images downloaded
2018-06-01 13:49:16 +02:00
Floran Brutel
08d6bedcaa
Allow login by email
2018-04-01 20:57:10 +02:00
Floran Brutel
80d4260a8e
Fix CS in UtilsTest.php
2018-03-31 12:55:27 +02:00
Floran Brutel
739a4024fa
Replace zataz url
2018-03-30 23:09:03 +02:00
Floran Brutel
3be96dcb17
Use https instead of http for bild.de to fix tests
2018-03-29 22:58:40 +02:00
Jeremy Benoist
bf283db8e6
20 Minutes is now https
2018-02-24 22:02:52 +01:00
Nicolas Lœuillet
5614df19cf
Fixed tests
2018-01-12 11:19:11 +01:00
Kevin Decherf
b8568662bd
php-cs
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-12-31 13:19:26 +01:00
Kevin Decherf
e0a862b626
Add test to prevent regression for #3534
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-12-31 00:56:40 +01:00
Jeremy Benoist
acc0a80179
Add missing assertion in tests
2017-12-18 13:29:34 +01:00
Jeremy Benoist
5661e8d42a
Fix countable in tests
2017-12-18 13:29:34 +01:00
Jeremy Benoist
4b6942d2d8
Add missing TestCase namespace
2017-12-18 13:29:33 +01:00
Jeremy Benoist
26e2f07419
Fix typo
2017-12-18 13:29:33 +01:00
Jeremy Benoist
bd91bd5c32
Use namespaced PHPUnit classes
2017-12-18 13:29:33 +01:00
Kevin Decherf
f5ea67e4cf
api: copy entry object before sending, to keep id
...
Workaround for https://github.com/wallabag/android-app/issues/646
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-12-17 21:07:46 +01:00
Kevin Decherf
300f293cb1
Add test on EntryControllerTest for #3442
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-12-13 22:44:31 +01:00
Kevin Decherf
af29e1bf07
Fix empty title and domain_name when exception is thrown during fetch
...
Add a new helper to set a default title when it's empty:
1/ use basename part of entry's path, if any
2/ or use domain name
Fixes #2053
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-12-13 22:44:31 +01:00
Christophe VERGNE
a40a8038d3
Fix All RSS not accessible if not logged in + Tests
2017-12-11 16:04:06 +01:00
Jérémy Benoist
ceff312db8
Merge pull request #3401 from aaa2000/migration-initial
...
Add an initial doctrine migration
2017-11-25 12:28:41 +01:00
Jérémy Benoist
f818f64145
Merge pull request #3431 from wallabag/disable-site-credentials
...
Disable controller access if feature disabled
2017-11-22 15:11:25 +01:00
Jeremy Benoist
ef2b4041fb
Disable controller access if feature disabled
...
If `restricted_access` is disabled, accessing `/site-credentials/` must be disabled.
2017-11-22 10:00:45 +01:00
adev
2680b0bc8c
Fix installation command
2017-11-21 21:35:17 +01:00
Nicolas Lœuillet
95b7d92ea5
Merge pull request #3425 from wallabag/add-setting-for-headers
...
Added internal setting to enable/disable headers storage
2017-11-21 13:26:24 +01:00
Jeremy Benoist
709e21a3f4
Define storeArticleHeaders false by default
...
Fix tests which must use `$storeArticleHeaders`.
Fix CS
2017-11-21 10:37:36 +01:00
Jeremy Benoist
64a5a6cfc5
CS
2017-11-21 10:30:35 +01:00
Nicolas Lœuillet
8a21985474
Added internal setting to enable/disable headers storage
2017-11-20 18:47:48 +01:00
Kevin Decherf
eae8138b33
Fix phpcs
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-11-19 15:26:13 +01:00
Kevin Decherf
65152fcb89
Improve EntryRestControllerTest for origin_url
...
Ensure that origin_url is initially null
Ensure patching entry with origin_url=''
Ensure patching entry with origin_url=null
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-11-19 15:02:11 +01:00
Kevin Decherf
97444566db
Update EntryControllerTest to handle origin_url
...
Set an origin_url in testEditUpdate
Test origin_url deletion in testEditRemoveOriginUrl
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-11-19 15:02:11 +01:00
Kevin Decherf
00f2368f7a
Add some tests for OriginUrl in EntryRestController
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-11-19 15:02:11 +01:00
Kevin Decherf
e50e45d6fa
Twig: add removeSchemeAndWww filter
...
This twig filter removes scheme (only http and https are supported) and
pass the result to removeWww filter to also remove 'www.' at the
beginning of an url.
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-11-19 15:02:11 +01:00
adev
cc79712738
Fix phpcs
2017-11-11 23:55:13 +01:00
adev
d81bf605af
Fix tests
2017-11-11 23:37:57 +01:00
Jérémy Benoist
91f9bacf73
Merge pull request #3362 from sviande/fix_3361_api_warning
...
Fix #3361 check type for tags in entry repository
2017-10-18 11:16:50 +02:00
Nicolas Hart
9ca069a6fe
Replace kernel.root_dir by kernel.project_dir
...
kernel.root_dir and Kernel::getRootDir() are deprecated since Symfony 3.3.
See https://symfony.com/blog/new-in-symfony-3-3-a-simpler-way-to-get-the-project-root-directory and https://github.com/symfony/symfony/blob/3.3/UPGRADE-3.3.md#httpkernel for more information.
2017-10-14 00:32:56 +02:00
Jeremy Benoist
bb86dc6486
CS
2017-10-12 07:38:27 +02:00
Sébastien Viande
d03b72f405
Fix #3361 add test
2017-10-12 07:38:27 +02:00
Jeremy Benoist
f645d371ce
Fix MondeDiplo https url
2017-10-10 10:20:57 +02:00
Jeremy Benoist
f40c88eb1f
Jump to Symfony 3.3 & update others deps
...
Also update tests urls
2017-10-09 16:45:12 +02:00
Jeremy Benoist
33264c2d02
Fix tests
2017-09-06 22:49:16 +02:00
Jeremy Benoist
7c04b7396a
Multiple tag search was broken from API
...
First, the setParameter() were done on the same parameter which in fact
just duplicated the condition in the SQL query (like `where t.label =
'test' and t.label = 'test'`.
Changed the parameter doesn't help because the query was then wrong.
Changing the way to match associated tags for an entry and it worked.
2017-09-06 22:49:15 +02:00
Jérémy Benoist
3af5d41759
Merge pull request #3139 from Kdecherf/2502-tag-case
...
Ignore tag's case
2017-09-03 20:25:15 +02:00
Jeremy Benoist
e437ad810b
Fix tests
...
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-08-27 16:51:23 +02:00
Kevin Decherf
7036d91fe7
Tag: render tags case-insensitive by storing them in lowercase
...
Fixes #2502
Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
2017-08-27 16:51:23 +02:00
François D
a991c46eed
Set a starred_at field when an entry is starred.
...
This date is used to sort starred entries.
Can not use Entry::timestamps method otherwise starred_at will be updated each time entry is updated.
Add an updateStar method into Entry class
A migration script has been added in order to set starred_at field.
2017-08-25 21:19:47 +02:00
Nicolas Hart
511f1ce1e8
Add reload entry command
2017-08-21 10:45:48 +02:00
Nicolas Hart
f7a4b44136
add search argument and limit option to list users command
2017-07-31 23:20:41 +02:00
Nicolas Hart
af31cfed76
Add list user command
2017-07-30 22:04:29 +02:00
Nicolas Hart
e1b33efb3d
Better rendering for all core commands
2017-07-29 11:09:02 +02:00
Jeremy Benoist
ff9f89fd23
Add a test for updatePublishedAt
...
To avoid error when a content is re-submitted and it previously add a
published date.
Also, fix the `testPostSameEntry`
2017-07-24 17:07:47 +02:00
Jeremy Benoist
c6c45673af
Put the final URL in data test
2017-07-24 11:13:53 +02:00
Jeremy Benoist
2e5b2fa808
Revert client_credentials grant types
2017-07-08 19:28:12 +02:00
Jeremy Benoist
c18a2476b6
CS
2017-07-03 13:56:39 +02:00
Jeremy Benoist
d0ec2ddd23
Fix validateAndSetPreviewPicture
...
Which wasn't covered by a test!
2017-07-03 13:45:04 +02:00
Jeremy Benoist
a05b61159e
Fix PATCH method
...
The PATCH method for the entry should only update what user sent to us and not the whole entry as it was before.
Also, sending tags when patching an entry will now remove all current tags & assocatied new ones.
2017-07-03 13:45:04 +02:00
Jeremy Benoist
38520658ad
Fix tests
2017-07-03 07:30:54 +02:00
Jeremy Benoist
f808b01692
Add a real configuration for CS-Fixer
2017-07-01 09:52:38 +02:00
Jeremy Benoist
39ffaba323
Return null instead of false
2017-06-28 08:15:06 +02:00
Jeremy Benoist
18696f77fd
Avoid BC on exists endpoint
2017-06-23 08:30:23 +02:00
Nicolas Lœuillet
d0702f9fbd
Merge pull request #3227 from wallabag/oauth-client-credentials
...
Add client_credentials oAuth2 auth method
2017-06-22 10:00:23 +02:00
Jeremy Benoist
11b8695663
Fix tests
2017-06-21 11:44:35 +02:00
Jeremy Benoist
18c38dffc6
Add RSS tags feeds
2017-06-21 11:44:35 +02:00
Jérémy Benoist
80784b782b
Merge pull request #2683 from wallabag/credentials-in-db
...
Store credentials in DB
2017-06-20 16:40:48 +02:00
Thomas Citharel
bead8b42da
Fix reviews
...
Encrypt username too
Redirect to list after saving credentials
Fix typos
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-20 16:03:39 +02:00
Jeremy Benoist
906424c1b6
Crypt site credential password
2017-06-20 16:03:35 +02:00
Jeremy Benoist
9de9f1e5ce
Add a live test for restricted article
...
It is not aimed to test if we can get the full article (since we aren't using real login/password)
but mostly to test the full work (with authentication, etc.)
Do not clean fixtured to avoid SQLite to re-use id for entry tag relation 😓
2017-06-20 16:03:20 +02:00
Jeremy Benoist
b8427f22f0
Add menu access to site credentials CRUD
2017-06-20 16:03:14 +02:00
Thomas Citharel
caa0b1765b
Add client_credentials oAuth2 auth method
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-14 17:30:12 +02:00
Thomas Citharel
41d45c6122
Fix empty language and preview pics
2017-06-12 16:46:33 +02:00
Jeremy Benoist
1112e54772
Add public filter/field in the API
...
Listing entries can now be filtered by “public”.
Creating or patching an entry can now set is to public or remove the public.
Entry response now include “is_public” boolean field
2017-06-10 15:31:57 +02:00
Jeremy Benoist
e8911f7c09
Add isPublic filter on entries
2017-06-10 15:00:52 +02:00
Jérémy Benoist
679aaf0836
Merge pull request #3173 from wallabag/domain-name-param
...
remove craueconfig domain name setting and add a proper one in parame…
2017-06-10 11:36:03 +02:00
Jérémy Benoist
a899399989
Merge pull request #3192 from wallabag/validate-content-fields
...
Validate language & preview picture fields
2017-06-09 13:51:26 +02:00
Jeremy Benoist
1f7018e1fe
Cleanup test
...
Looks like we didn't ALWAYS get a value for language from 20minutes.
Ahem.
2017-06-09 11:52:41 +02:00
Jeremy Benoist
80e49ba7b0
Convert - to _ in language
...
Mostly to increase language supports
2017-06-09 11:42:09 +02:00
Jeremy Benoist
42f3bb2c63
Use Locale instead of Language
2017-06-09 11:28:04 +02:00
Jeremy Benoist
1a94252831
Promote https
2017-06-09 10:07:27 +02:00
Jeremy Benoist
f81a34e379
Use a listener to catch auth failure
2017-06-09 09:45:43 +02:00
Jeremy Benoist
e9056dd96f
Fix test
...
de_DE is not valid language.
Zataz doesn’t send a valid language in their content (they use `fr-FR`).
2017-06-08 22:51:30 +02:00
Jeremy Benoist
0d349ea670
Validate language & preview picture fields
...
Instead of saving the value of each field right into the content without any validation, it seems better to validate them.
This might sounds obvious now we say that.
2017-06-08 21:51:46 +02:00
Jeremy Benoist
80f4d85ac9
Review
2017-06-08 19:15:33 +02:00
Jeremy Benoist
a8d3fe50df
Add ability to name the client
2017-06-08 14:25:44 +02:00
Jeremy Benoist
eb570e49c8
CS
2017-06-07 23:31:14 +02:00
Jeremy Benoist
0c00e52516
Create a client when creating a user using the api
...
While creating a new user using the API, we also create a new client for the current user.
So the app which just create the user can use its newly created client to configure the app.
That new client is only return after creating the user.
When calling the endpoint /api/user to get user information, the new client information won’t be return.
2017-06-07 23:23:28 +02:00
Nicolas Lœuillet
7bb3aa3177
Merge pull request #3093 from aaa2000/annotation-error-on-save
...
Displays an error with an annotation with a too long quote
2017-06-07 16:30:27 +02:00
Jérémy Benoist
c0d756f67d
Merge pull request #3181 from wallabag/api-content-patch
...
Add ability to patch an entry with more fields
2017-06-07 15:40:59 +02:00
Jérémy Benoist
4e4a5b534f
Merge pull request #3184 from wallabag/better-way-image-extension
...
Use an alternative way to detect images
2017-06-07 13:41:25 +02:00
Jérémy Benoist
a3f16a5685
Merge pull request #3179 from wallabag/show-user-command
...
Show user command
2017-06-07 09:40:56 +02:00
Jeremy Benoist
577c0b6dd8
Use an alternative way to detect image
...
When parsing content to retrieve images to save locally, we only check for the content-type of the image response.
In some case, that value is empty.
Now we’re also checking for the first few bytes of the content as an alternative to detect if it’s an image wallabag can handle.
We might get higher image supports using that alternative method.
2017-06-05 22:54:02 +02:00
Thomas Citharel
0d8ecb82a3
Fix review
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-04 17:57:40 +02:00
adev
2c3e148b00
Displays an error with an annotation with a too long quote
...
Fix #2762
2017-06-04 11:38:29 +02:00
Jeremy Benoist
645291e8fe
Add ability to patch an entry with more fields
...
Like when we create an entry, we can now patch an entry with new fields:
- content
- language
- preview_picture
- published_at
- authors
2017-06-02 20:52:49 +02:00
Jeremy Benoist
a1e6187406
Return 201 on user creation
2017-06-02 20:03:25 +02:00
Thomas Citharel
d143fa243d
Add show user command
...
Signed-off-by: Thomas Citharel <tcit@tcit.fr>
2017-06-02 16:53:03 +02:00
Jeremy Benoist
426bb453d2
API user creation behing a toggle
...
I've added a toggle feature (in internal settings) so that user api creation can be disabled while form registration still can be enabled.
Also, the /api/user endpoint shouldn't require authentication. Even if we check the authentication when sending a GET request, to retrieve current user information.
I've moved all the internal settings definition to config to avoid duplicated place to define them.
I don't know why we didn't did that earlier.
2017-06-02 11:32:38 +02:00
Jérémy Benoist
a687c8d915
Merge pull request #2708 from jcharaoui/import-disablecontentupdate
...
Import disableContentUpdate
2017-06-02 11:26:37 +02:00
Jeremy Benoist
fcad69a427
Replace images with &
...
Images with `&` in the path weren’t well replaced because they might be with `&` in the html instead.
Replacing `&` with `&` fix the problem.
2017-06-01 22:50:33 +02:00
Jeremy Benoist
6acadf8e98
Rewrote code & fix tests
2017-06-01 11:31:45 +02:00
Jeremy Benoist
d5c2cc54b5
Fix tests
2017-06-01 09:49:15 +02:00