Age | Commit message (Collapse) | Author |
|
Fetch keys from web key directory
See merge request leap/nickserver!18
|
|
|
|
wkd is the web key directory. See the Readme.md in
/lib/nickserver/wkd
|
|
|
|
This is a maintainance release - bugfixes and upgrades of dependencies.
This release fixes a major issue with leaking file descriptors. Please
upgrade as soon as possible. Ruby 2.1 is required - no other upgrade
issues are known.
bugfixes:
* #3 handle domains without A-record
* filedescriptor leak from http_adapters
* send empty json object on 404 rather than nil
* remote nicknym is on port 6425
* use user:password@ prefix in http basic auth
upgrades:
* require at least ruby 2.1
* upgrade bundled gems to latest available
tests:
* more meaningful error messages in case of failures
* test bundle is up to date
* regression test for nonexisting domain
integration:
* Add systemd service unit file
* Restart nickserver automatically from systemd
* gitignore: bundle dir
cleanup:
* old empty adapters and tests
|
|
test: regression test for nonexisting domain
See merge request !17
|
|
related to platform#8674
|
|
test: minor: add http adapter test
See merge request !16
|
|
|
|
fix: #3 handle domains without A-record
Closes #3
See merge request !15
|
|
If a domain only has an mx record but no A record it
will trigger a ConnectionError when attempting the
nicknym key lookup.
We need to detect and handle this in the http adapter
already because once the exception is handled by Celluloid
our actor will be terminated.
So now we allow for handing a rescue option to the
adapter with a string that is checked for inclusion in
the error message. If the string is found the exception
will be caught and the adapter returns nil.
We only make use of this when checking the availability
of nicknym so far. That should be the only http request
going out.
|
|
minor: tweak file descriptor count test
See merge request !14
|
|
|
|
Upgrade/bundle
See merge request !12
|
|
fix: filedescriptor leak from http_adapters
See merge request !13
|
|
Now we reuse a single adapter for all requests triggered
by an incoming request. Then we .terminate the adapter.
Includes a regression test.
|
|
|
|
|
|
upgrade dependencies
See merge request !11
|
|
|
|
|
|
|
|
|
|
sending nothing was keeping the connection alive.
|
|
We may use a different port in the config that is then mapped somehow.
But this should not affect where we try to contact remote nicknym servers.
|
|
bugfix: use user:password@ prefix in http basic auth
See merge request !9
|
|
This will get us more debug info in the logs if it happens again
|
|
http.rb does not do this on its own.
|
|
|
|
test: more meaningful error messages in case of failures
See merge request !8
|
|
|
|
Release 0.9
Version 0.9.0
Allow queries by fingerprint (using keyservers to reply) and support key
lookup from other nickservers.
This is a major rewrite both in terms of our dependencies and our
architecture. We moved the server and http_client from eventmachine to
Celluloid based libraries. This allows for a more concise syntax and
proper https handling.
In addition we now support ruby 2.3, use a Logger instead of stdout and handle
network errors properly
See merge request !7
|
|
Allow queries by fingerprint (using keyservers to reply) and support key
lookup from other nickservers.
This is a major rewrite both in terms of our dependencies and our
architecture. We moved the server and http_client from eventmachine to
Celluloid based libraries. This allows for a more concise syntax and
proper https handling.
In addition we now support ruby 2.3, use a Logger instead of stdout and handle
network errors properly
|
|
Log requests and errors
proper logging
See merge request !6
|
|
|
|
|
|
|
|
|
|
Introduced CelluloidTest as a test class for all tests that depend on
Celluloid being up and running.
|
|
Turns out without this nickserver will not respond to multiple concurrent requests.
|
|
|
|
|
|
|
|
This way the logs do not interfere with test output
|
|
|
|
We handle these errors nicely in the dispatcher and have tests for that.
Tests should fail or err out when running into exceptions we are not
handling yet. But for these it's better to just skip.
|
|
|
|
Turns out http.rb does not support celluloid i/o andymore and we were not making
use of it anyway.
Here's what https://github.com/httprb/http/wiki/Thread-Safety says:
(NOTE: this gem previously supported Celluloid::IO, but that support was removed to add the current timeout backend. It may be added back in a future version)
So now we have a plain http.rb adapter and use that as the default.
This prevents actors from crashing in the adapter (as we don't have any).
|
|
|
|
|