Hakan Ensari
e9b6ab8902
Serve traffic in non-SSL mode without redirecting
2017-11-10 11:48:30 +00:00
Hakan Ensari
ba35875a3e
Update README
2017-11-10 09:43:26 +00:00
Hakan Ensari
1f9c65419e
Update README
2017-11-09 23:30:14 +00:00
Hakan Ensari
2903015e62
Add scheduler
2017-11-09 23:30:14 +00:00
Hakan Ensari
3319c49dca
Spring clean code base
...
- Bump ruby version
- Remove obsolete files, including deploy artefacts
- Don't use pride when testing
- Store gem and app in same repo
- Switch to asdf
2017-11-09 23:30:13 +00:00
Hakan Ensari
d74fefa9c9
Improve docker setup
...
- Add .dockerignore
- Use version 3
- Move wait_for_it.sh to docker-compose.yml
- Persist db data
- Use nginx-proxy
- Use Letsencrypt in production
- Rate limit in production
2017-11-09 12:37:50 +00:00
Hakan Ensari
7eb3055f0f
Correct update time quoted in README
...
Closes #74
2017-08-30 22:09:57 +03:00
Hakan Ensari
3c4f70cf49
Remove New Relic agent
2017-06-14 23:01:27 +01:00
Hakan Ensari
0e0d1374e8
Fix route syntax
2017-06-14 23:01:27 +01:00
Hakan Ensari
90146aa630
Update gems
2017-06-14 23:01:27 +01:00
Hakan Ensari
b05ed02b5e
Remove app version
2017-06-14 23:01:27 +01:00
Hakan Ensari
40b4e39465
Rubocop fixes
2017-06-14 23:01:27 +01:00
Hakan Ensari
cc539ebdd0
Update Ruby version
2017-06-14 22:26:02 +01:00
Hakan Ensari
b5e8a94250
Make Travis great again
2017-06-14 22:26:02 +01:00
Thomas Taschauer
e2798f312e
add FAQ for exchange rates on non-working days
...
fix #47
2017-02-06 18:53:37 +01:00
Hakan Ensari
b616346701
Move symbol filtering to Quote
2017-01-10 12:44:22 +00:00
Hakan Ensari
e5cb17d0b9
Drop caching
2017-01-10 12:21:19 +00:00
Hakan Ensari
11f3ddb0e4
Don't override RACK_ENV
2017-01-10 12:06:03 +00:00
Hakan Ensari
4dd1acec95
Use rack-cache
2017-01-10 12:06:03 +00:00
Hakan Ensari
7504abe6b4
Remove unnecessary empty lines
2017-01-10 12:06:03 +00:00
Hakan Ensari
6f62b73704
Fix Travis config
2017-01-09 00:24:50 +00:00
Hakan Ensari
3fdae1090b
Always set Content-Type to JSON
...
Fixes #45
2017-01-08 23:21:57 +00:00
Hakan Ensari
2b85a05380
Don't dump errors to log
2017-01-08 23:21:57 +00:00
Hakan Ensari
9862a10685
Remove duplicate code
2017-01-08 23:21:57 +00:00
Hakan Ensari
a4384ce225
Update gems
2017-01-08 23:21:57 +00:00
Hakan Ensari
74b9ec11f0
Load tasks only in test env
2017-01-08 23:21:57 +00:00
Hakan Ensari
93e9e65a3d
Disable BlockLength cop
2017-01-08 23:21:56 +00:00
Hakan Ensari
7b653b1fd8
Cache responses
2017-01-08 23:21:56 +00:00
Hakan Ensari
34b631a0a4
Update Ruby version
2017-01-08 23:21:56 +00:00
Hakan Ensari
0320b810c5
Remove unused logger
2017-01-03 12:50:54 +00:00
Hakan Ensari
60f980a6ee
Fold conversion into quote
2017-01-03 12:44:13 +00:00
Hakan Ensari
1754efd0cb
Remove dates from license
2017-01-03 12:44:13 +00:00
Hakan Ensari
4a1f4ca3c1
Use Rubocop and fix existing offences
2017-01-03 12:36:05 +00:00
Vincent Durand
597792c988
Update rescued exception
...
The converter API allows the date as parameter and it needs to be
rescued with an invalid date, and the exception is
`PG::InvalidDatetimeFormat`, so the safest solution was to use the
first ancestor of this exception which is the same one as the current
`PG::DatetimeFieldOverflow`.
2016-09-22 19:02:42 +02:00
Vincent Durand
ad64574745
Add GET #converter API route
...
It adds a quote helper which return the Quote instance
to be injected, and uses this new object for the quote's attributes.
2016-09-22 18:53:31 +02:00
Vincent Durand
46dbb66b0f
Implement Converter
...
The API is fairly simple in order to get straight to the goal, convert
an amount from a currency to another.
I used the proposal from #25 which is similar to the google currency
tool.
2016-09-22 18:51:27 +02:00
Hakan Ensari
77f9fedaca
Update gems
2016-06-08 14:50:30 +01:00
Hakan Ensari
2bb4aeb497
Configure rack cors
2016-06-08 14:49:43 +01:00
Hakan Ensari
d063f1ab24
Remove obsolete line
2016-05-09 12:01:51 +01:00
Hakan Ensari
250095d262
Use rack-cors
...
We will only return Access-Control headers if request includes an
Origin header
Fixes #18
2016-05-09 11:51:54 +01:00
Hakan Ensari
07781b6d76
Use Oj to generate JSON
...
Warming up --------------------------------------
json 16.465k i/100ms
yajl 18.574k i/100ms
oj 34.073k i/100ms
Calculating -------------------------------------
json 182.828k (± 7.8%) i/s - 922.040k in
5.075699s
yajl 196.839k (± 4.5%) i/s - 984.422k in
5.011087s
oj 384.813k (± 5.9%) i/s - 1.942M in
5.065475s
Comparison:
oj: 384813.2 i/s
yajl: 196839.0 i/s - 1.95x slower
json: 182827.5 i/s - 2.10x slower
2016-05-09 11:51:54 +01:00
Gearnode
eca85cc396
Add RVM configuration
...
This configuration isolate deps in fixer-io gemset.
2016-05-03 15:27:35 +02:00
Gearnode
b858e8c487
Bump ruby version
2016-05-03 15:26:54 +02:00
Hakan Ensari
92ed532543
Fix OPTIONS requests
...
#18
2016-04-25 19:10:15 +01:00
Hakan Ensari
ce44d37fe0
Remove redundant logic
2016-04-25 18:59:07 +01:00
Hakan Ensari
702f6ac9aa
Refactor internals
...
- Removed yajl-ruby
- Removed sinatra-jsonp
- Inlined #halt_with_message
- Added last_modified header to root path
2016-04-24 17:15:02 +01:00
Hakan Ensari
59df76477e
Further refactor cross-origin
...
- Add all [required
headers](https://github.com/britg/sinatra-cross_origin/blob/master/lib/s
inatra/cross_origin.rb#L51-L58)
- Respond to preflight requests
#18
2016-04-24 16:19:36 +01:00
Hakan Ensari
260dc65dff
Disable Metrics/LineLength cop
2016-04-24 16:17:00 +01:00
Hakan Ensari
1d059cd049
Refactor cross-origin
...
- Drop cross_origin gem
- Add header to all responses
#18
2016-04-24 15:39:08 +01:00
Hakan Ensari
ae0e9a009a
Improve Docker setup
2016-04-12 14:57:20 +01:00