Alejandro Celaya
|
d61f5faf59
|
Refactored UrlShortener public method to receibe DTOs instead of primitive params
|
2019-02-02 11:05:28 +01:00 |
|
Alejandro Celaya
|
5756609531
|
Deleted deprecated constant
|
2019-02-02 11:05:28 +01:00 |
|
Alejandro Celaya
|
d289c62532
|
Fixed config file being deleted by mistake by build script
|
2019-01-28 10:52:05 +01:00 |
|
Alejandro Celaya
|
d6a7a6ce66
|
Created new API test
|
2019-01-27 12:36:22 +01:00 |
|
Alejandro Celaya
|
05c7672de3
|
Improved API tests by adding fixtures
|
2019-01-27 12:14:22 +01:00 |
|
Alejandro Celaya
|
76d8fd1023
|
Improved how API tests are executed
|
2019-01-27 10:54:04 +01:00 |
|
Alejandro Celaya
|
558e259b84
|
Minor refactorings
|
2019-01-27 10:30:38 +01:00 |
|
Alejandro Celaya
|
22d61fead7
|
Prepared configs for API tests
|
2019-01-26 10:19:20 +01:00 |
|
Alejandro Celaya
|
c4af1471f0
|
Simplified and united configs for tests
|
2019-01-26 09:42:08 +01:00 |
|
Alejandro Celaya
|
87ba7a7179
|
Updated structure for tests config files
|
2019-01-26 09:09:57 +01:00 |
|
Alejandro Celaya
|
687d8d91a9
|
Changed references to functional tests by database tests
|
2019-01-20 21:49:07 +01:00 |
|
Alejandro Celaya
|
144a5415da
|
Handled connection exceptions in Health action
|
2018-12-29 13:50:42 +01:00 |
|
Alejandro Celaya
|
d58e24bce5
|
Created health action related tests
|
2018-12-29 11:54:28 +01:00 |
|
Alejandro Celaya
|
0f86123ccb
|
Finished health action implementation
|
2018-12-29 11:54:28 +01:00 |
|
Alejandro Celaya
|
3f65ef998c
|
Created HealthAction
|
2018-12-29 11:54:28 +01:00 |
|
Alejandro Celaya
|
32070b1fa7
|
Do not use ServerRequestFactory::fromGlobals in tests
|
2018-12-25 23:19:36 +01:00 |
|
Alejandro Celaya
|
58dbee10c5
|
Used DQL for non-dynamic query in VisitRepository
|
2018-12-19 14:36:03 +01:00 |
|
Alejandro Celaya
|
f8207994dc
|
Removed superfluous method docs
|
2018-12-19 14:31:52 +01:00 |
|
Alejandro Celaya
|
2030401859
|
Migrated non-dynamic query to DQL in ShortUrlRepository
|
2018-12-19 14:29:43 +01:00 |
|
Alejandro Celaya
|
a28c1d17c5
|
Moved entities mappings from annotations to external config files
|
2018-12-16 12:08:03 +01:00 |
|
Alejandro Celaya
|
97a9289d5f
|
Created ShlinkTableTest
|
2018-12-08 14:11:14 +01:00 |
|
Alejandro Celaya
|
1983fc9b67
|
Added current page message in list short urls CLI command
|
2018-12-08 12:16:39 +01:00 |
|
Alejandro Celaya
|
bb40d84212
|
Used ShlinkTable on every location rendering a CLI table
|
2018-12-08 12:12:11 +01:00 |
|
Alejandro Celaya
|
46a35c553e
|
Created class to wrap CLI table rendering behavior
|
2018-12-08 11:32:16 +01:00 |
|
Alejandro Celaya
|
080943e810
|
Updated how Symfony commands are used to fulfill API from v4.2
|
2018-12-08 10:34:04 +01:00 |
|
Alejandro Celaya
|
c0bdd8fc77
|
Removed concept of execution context and piped CloseDbConnectionMiddleware always
|
2018-12-07 19:46:46 +01:00 |
|
Alejandro Celaya
|
737137b19f
|
Added favicon
|
2018-12-07 09:17:31 +01:00 |
|
Alejandro Celaya
|
a562bc661d
|
Improved CacheFactory class
|
2018-12-06 21:05:11 +01:00 |
|
Alejandro Celaya
|
7c5825d1bc
|
Removed custom AccessLogFactory by updating to zend-expressive-swoole 2.2
|
2018-12-05 21:26:19 +01:00 |
|
Alejandro Celaya
|
3faf6e967f
|
Updated changelog adding v1.15
|
2018-12-02 19:15:58 +01:00 |
|
Alejandro Celaya
|
a7a5667301
|
Improved repository tests
|
2018-12-02 19:13:49 +01:00 |
|
Alejandro Celaya
|
d7e89ebdae
|
Ensured custom slugs are case sensitive
|
2018-12-01 21:38:29 +01:00 |
|
Alejandro Celaya
|
b876870bd8
|
Encapsulated in VisitsParams how the itemsPerPage param is handled
|
2018-11-29 08:02:22 +01:00 |
|
Alejandro Celaya
|
1d4ef4e9a4
|
Ensured pagination params in visits list are properly parsed to integer
|
2018-11-28 20:53:04 +01:00 |
|
Alejandro Celaya
|
d0e0aea0f1
|
Updated visits to support pagination
|
2018-11-28 20:39:08 +01:00 |
|
Alejandro Celaya
|
b0f250ed8a
|
Created factory method to build VisitParams from a raw dataset
|
2018-11-28 19:58:45 +01:00 |
|
Alejandro Celaya
|
45254606d4
|
Added DTO used to pass filtering params to VisitsTracker
|
2018-11-27 21:09:27 +01:00 |
|
Alejandro Celaya
|
282ffef200
|
Ensured different loggers are used for swoole and for the app regular logs
|
2018-11-25 17:14:03 +01:00 |
|
Alejandro Celaya
|
f0330e9ae3
|
Ensured CloseDbConnectionMiddleware clears the entity manager
|
2018-11-24 13:24:43 +01:00 |
|
Alejandro Celaya
|
ccbc6c7a75
|
Created middleware which closes DB connection after every request
|
2018-11-24 12:55:00 +01:00 |
|
Alejandro Celaya
|
2fc2ad98aa
|
Updated config so that shlink logger dynamically uses standard output when running with swoole
|
2018-11-24 09:38:00 +01:00 |
|
Alejandro Celaya
|
16590b2dbb
|
Prepared project to support both swoole and regular app servers with fast cgi
|
2018-11-24 08:43:48 +01:00 |
|
Alejandro Celaya
|
f40349479e
|
Used more strict types in UrlShortener private methods
|
2018-11-24 07:52:57 +01:00 |
|
Alejandro Celaya
|
5abd9d1a40
|
Made test properties to be private instead of protected
|
2018-11-20 19:37:22 +01:00 |
|
Alejandro Celaya
|
0ae5a53d86
|
Enforced property types comments in one line
|
2018-11-20 19:30:27 +01:00 |
|
Alejandro Celaya
|
09add5fbff
|
Moved locale middleware to before the not found handler, so that it never gets executed otherwise
|
2018-11-18 20:15:37 +01:00 |
|
Alejandro Celaya
|
e30f49a791
|
Simplified error templates
|
2018-11-18 20:04:12 +01:00 |
|
Alejandro Celaya
|
64737b741b
|
Removed CLI language param from installation
|
2018-11-18 19:55:23 +01:00 |
|
Alejandro Celaya
|
d4d65bdf37
|
Added missing X-Api-Key header to cross domain middleware
|
2018-11-18 17:03:50 +01:00 |
|
Alejandro Celaya
|
90732a4fad
|
Removed translations from Rest module
|
2018-11-18 16:28:04 +01:00 |
|
Alejandro Celaya
|
c5015f5828
|
Removed translations from CLI module
|
2018-11-18 16:02:52 +01:00 |
|
Alejandro Celaya
|
b8faa6714a
|
Increased MSI to 65% (for sure this time)
|
2018-11-17 19:32:31 +01:00 |
|
Alejandro Celaya
|
f48f98f4d7
|
Updated changelog for v1.14.1
|
2018-11-17 19:27:00 +01:00 |
|
Alejandro Celaya
|
79b2a0839f
|
Increased MSI to 65%
|
2018-11-17 19:23:49 +01:00 |
|
Alejandro Celaya
|
6094d17718
|
Increased MSI to 64%
|
2018-11-17 18:40:53 +01:00 |
|
Alejandro Celaya
|
d2ed7d6417
|
Increased MSI to 62%
|
2018-11-17 18:06:21 +01:00 |
|
Alejandro Celaya
|
a705ef21a9
|
Increased MSI to 61%
|
2018-11-17 17:36:22 +01:00 |
|
Alejandro Celaya
|
ed3883b52c
|
Updated translations
|
2018-11-17 14:29:54 +01:00 |
|
Alejandro Celaya
|
dd2cffeee9
|
Reused ProcessVisitsCommand name as the lock name
|
2018-11-17 14:16:45 +01:00 |
|
Alejandro Celaya
|
1ceabf3bc3
|
Added locking capabilities to process visits command
|
2018-11-17 14:11:16 +01:00 |
|
Alejandro Celaya
|
0aae0d888c
|
Moved visits iteration logic from command to service to allow lazy loading of entries in resultset
|
2018-11-17 09:42:15 +01:00 |
|
Alejandro Celaya
|
1bc01057f3
|
Reduced the number of arguments in private method
|
2018-11-17 08:02:42 +01:00 |
|
Alejandro Celaya
|
c1906606c6
|
Updated VisitService to have a method which locates visits and allows entity manager to be cleared
|
2018-11-17 07:47:42 +01:00 |
|
Alejandro Celaya
|
1363194909
|
Improved code in LoggerFactory
|
2018-11-17 07:31:51 +01:00 |
|
Alejandro Celaya
|
4745a37549
|
Used a lower level on phpstan to avoid errors produced by Symfony 4.1.5 new phpdocs
|
2018-11-16 16:44:48 +01:00 |
|
Alejandro Celaya
|
9964d3e24b
|
Added progress bar to command downloading new GeoLite2 database file
|
2018-11-12 21:30:30 +01:00 |
|
Alejandro Celaya
|
58e8c8e182
|
Updated spanish translations
|
2018-11-12 21:04:02 +01:00 |
|
Alejandro Celaya
|
c7339f6cfa
|
Created an EmptyIpLocationResolver which always returns an empty resolution and can be used as a fallback while resolving IP addresses
|
2018-11-12 20:58:14 +01:00 |
|
Alejandro Celaya
|
1aa78f766a
|
Added step to download GeoLite2 db during installation
|
2018-11-12 20:51:53 +01:00 |
|
Alejandro Celaya
|
bf56e6adaf
|
Created UpdateDbCommandTest
|
2018-11-12 20:37:30 +01:00 |
|
Alejandro Celaya
|
e915b7e499
|
Updated GeoLite2 db reader service so that it is lazily created
|
2018-11-12 20:22:42 +01:00 |
|
Alejandro Celaya
|
de0470d200
|
Created command to update GeoLite2 database
|
2018-11-12 20:06:12 +01:00 |
|
Alejandro Celaya
|
3d7cf6992e
|
Created service to update geolite2 database file
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
06db082e3f
|
Updated translations
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
4a383cecaf
|
Set chain IP resolver as the default IP resolver
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
9a0f9207be
|
Fixed region resolved in GeoLite2
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
0e3a0a1eec
|
Created chain IP resolver which wrapps multiple resolver to fallback until one is capable of resolving an address
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
fd6d180eba
|
Created chainIpLocationResolver
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
d152e2ef9a
|
Removed the concept of API limits in IP location resolvers
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
b530cf4461
|
Created new namespace for IP geolocation elements
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
bbe85cde31
|
Migrated to GeoLite2 for IP location resolution
|
2018-11-11 21:28:42 +01:00 |
|
Alejandro Celaya
|
4070b1e23d
|
Updated user agent column in visits table to have a length of 512
|
2018-11-10 19:01:59 +01:00 |
|
Alejandro Celaya
|
a71245b883
|
Improved UrlShortenerConfigCustomizerTest covering new config options
|
2018-11-04 12:05:22 +01:00 |
|
Alejandro Celaya
|
057f88a36a
|
Added new not found short url config to installer
|
2018-11-04 11:58:35 +01:00 |
|
Alejandro Celaya
|
313927827d
|
Updated RedirectAction so that it makes use of the not found short url options
|
2018-11-03 12:10:02 +01:00 |
|
Alejandro Celaya
|
3eddacdff8
|
Created options to enable redirection to external page when short code is not found
|
2018-11-03 11:37:43 +01:00 |
|
Alejandro Celaya
|
bfb96b0ae8
|
Fixed coding style
|
2018-11-02 12:07:13 +01:00 |
|
Alejandro Celaya
|
f64920e510
|
Replaced some array_map by Functional\map
|
2018-11-02 12:05:01 +01:00 |
|
Alejandro Celaya
|
664dc333ac
|
Used select_keys function in place of custom pick function
|
2018-11-02 11:08:20 +01:00 |
|
Alejandro Celaya
|
521f6f2b18
|
Added functional-php library
|
2018-11-02 10:54:42 +01:00 |
|
Alejandro Celaya
|
951d08f914
|
Improved public API in Visit entity, reducing anemic model
|
2018-10-28 16:20:54 +01:00 |
|
Alejandro Celaya
|
8e1e8ba7de
|
Improved public API in ShortUrl entity, reducing anemic model
|
2018-10-28 16:00:54 +01:00 |
|
Alejandro Celaya
|
877b098b09
|
Improved public API in ApiKey entity, reducing anemic model
|
2018-10-28 15:24:41 +01:00 |
|
Alejandro Celaya
|
e046eddda9
|
Improved public API in VisitLocation entity, reducing anemic model
|
2018-10-28 15:13:45 +01:00 |
|
Alejandro Celaya
|
084b1169d7
|
Improved public API in Tag entity, avoiding anemic model
|
2018-10-28 14:38:43 +01:00 |
|
Alejandro Celaya
|
025135b8c6
|
Added all missing use statements from global functions and constants
|
2018-10-28 08:34:02 +01:00 |
|
Alejandro Celaya
|
77d810b735
|
Replaced all FQ global function and constants by explicit imports
|
2018-10-28 08:24:06 +01:00 |
|
Alejandro Celaya
|
e1222de05b
|
Explicitly imported global functions in UrlShortener
|
2018-10-28 08:07:33 +01:00 |
|
Alejandro Celaya
|
787b791651
|
Replaced hardcoded exceptions concatenations by PSR approach
|
2018-10-20 12:50:10 +02:00 |
|
Alejandro Celaya
|
2eca0da852
|
Updated logger to properly format exceptions using processors
|
2018-10-20 12:37:35 +02:00 |
|