summaryrefslogtreecommitdiffstats
path: root/archives/extend/2014-May
diff options
context:
space:
mode:
Diffstat (limited to 'archives/extend/2014-May')
-rw-r--r--archives/extend/2014-May/000383.html71
-rw-r--r--archives/extend/2014-May/000384.html105
-rw-r--r--archives/extend/2014-May/000385.html71
-rw-r--r--archives/extend/2014-May/000386.html134
-rw-r--r--archives/extend/2014-May/000387.html83
-rw-r--r--archives/extend/2014-May/000388.html180
-rw-r--r--archives/extend/2014-May/000389.html80
-rw-r--r--archives/extend/2014-May/author.html82
-rw-r--r--archives/extend/2014-May/date.html82
-rw-r--r--archives/extend/2014-May/index.html95
-rw-r--r--archives/extend/2014-May/subject.html82
-rw-r--r--archives/extend/2014-May/thread.html95
12 files changed, 1160 insertions, 0 deletions
diff --git a/archives/extend/2014-May/000383.html b/archives/extend/2014-May/000383.html
new file mode 100644
index 00000000..c2ca464b
--- /dev/null
+++ b/archives/extend/2014-May/000383.html
@@ -0,0 +1,71 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [99s-extend] Gracefully stop Ranch
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Gracefully%20stop%20Ranch&In-Reply-To=%3C001b01cf676e%24c2ec8e20%2448c5aa60%24%40gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <style type="text/css">
+ pre {
+ white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
+ }
+ </style>
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+
+ <LINK REL="Next" HREF="000384.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[99s-extend] Gracefully stop Ranch</H1>
+ <B>Janos Hary</B>
+ <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20Gracefully%20stop%20Ranch&In-Reply-To=%3C001b01cf676e%24c2ec8e20%2448c5aa60%24%40gmail.com%3E"
+ TITLE="[99s-extend] Gracefully stop Ranch">janos.n.hary at gmail.com
+ </A><BR>
+ <I>Sun May 4 09:59:21 CEST 2014</I>
+ <P><UL>
+
+ <LI>Next message: <A HREF="000384.html">[99s-extend] REST responses
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#383">[ date ]</a>
+ <a href="thread.html#383">[ thread ]</a>
+ <a href="subject.html#383">[ subject ]</a>
+ <a href="author.html#383">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>All!
+
+I implemented a protocol as a ranch_protocol. It handles long running
+sessions. At some point I'd like to stop my server accepting new
+connections, but allow all open sessions to finish. Then I need to know when
+all the open sessions (if any) finished.
+
+What would be the correct strategy to implement this?
+
+Thanks,
+Janos
+
+
+</PRE>
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+
+ <LI>Next message: <A HREF="000384.html">[99s-extend] REST responses
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#383">[ date ]</a>
+ <a href="thread.html#383">[ thread ]</a>
+ <a href="subject.html#383">[ subject ]</a>
+ <a href="author.html#383">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend
+mailing list</a><br>
+</body></html>
diff --git a/archives/extend/2014-May/000384.html b/archives/extend/2014-May/000384.html
new file mode 100644
index 00000000..ae3cd3f3
--- /dev/null
+++ b/archives/extend/2014-May/000384.html
@@ -0,0 +1,105 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [99s-extend] REST responses
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20REST%20responses&In-Reply-To=%3CCA%2BdV7cR9M-5dq2kYJgowrodDbCEQ0aAnkZKyQmw07hmAJXmc%3DA%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <style type="text/css">
+ pre {
+ white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
+ }
+ </style>
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="000383.html">
+ <LINK REL="Next" HREF="000386.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[99s-extend] REST responses</H1>
+ <B>Paulo F. Oliveira</B>
+ <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20REST%20responses&In-Reply-To=%3CCA%2BdV7cR9M-5dq2kYJgowrodDbCEQ0aAnkZKyQmw07hmAJXmc%3DA%40mail.gmail.com%3E"
+ TITLE="[99s-extend] REST responses">paulo.ferraz.oliveira at gmail.com
+ </A><BR>
+ <I>Tue May 20 18:27:58 CEST 2014</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="000383.html">[99s-extend] Gracefully stop Ranch
+</A></li>
+ <LI>Next message: <A HREF="000386.html">[99s-extend] REST responses
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#384">[ date ]</a>
+ <a href="thread.html#384">[ thread ]</a>
+ <a href="subject.html#384">[ subject ]</a>
+ <a href="author.html#384">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>Hello.
+
+First of all, thanks for the great work you've done with cowboy. I've been
+using it with a fait amount of success and I'm a fairly new Erlang
+developer. I'm mainly interested in the REST &quot;interface&quot; of the application
+and its way of doing RESTful things, and I like the way you did it (what
+with all the content_types_provided, service_available, etc. functions).
+I've tested the way the system reacted to the different Accept,
+Content-Type, etc. headers and always got very well-opinionated responses
+(406, 415, ...).
+
+A couple of questions remain though (I'm sorry if they've been asked
+already but I've searched the web for answers and read the available docs
+and couldn't find them):
+
+1. is it expected that, if I use cowboy_req:reply/2 in a GET handler
+(coming from content_types_provided), the onresponse/4 hook be called
+twice? I guess one is due to the reply and the other one due to the
+workflow of the request, but is there a way to prevent the second execution?
+
+2. if I want to JSON-parse ALL my requests should I a) use the onrequest/1
+hook or b) do this on a per-request basis? Because I'd like to reply with a
+400 ASAP but keep going if the JSON validates (I'm going to use JSON-schema
+for validating input); and, if possible, have the JSON-parsed body stored
+somewhere for future manipulation.
+
+3. I haven't seen examples that made use of the State (from the function
+returns). When should I use this instead of the Request metadata? I'd like
+to be able to set a generic error state for a request (either in meta ou
+State) and that have a &quot;standard&quot; error response be created at a later time
+(in a unique function, for example - e.g. onresponse/4).
+
+4. is there anything like a catch-all exception handler? I'd like to catch
+exceptions that occur anywhere so I could log them and analyze them at a
+later moment.
+
+I'm probably abusing the onresponse/onrequest hooks already, so your
+answers should help me clarify this.
+
+Thanks.
+
+- Paulo
+-------------- next part --------------
+An HTML attachment was scrubbed...
+URL: &lt;<A HREF="http://lists.ninenines.eu/archives/extend/attachments/20140520/cf7632e9/attachment.html">http://lists.ninenines.eu/archives/extend/attachments/20140520/cf7632e9/attachment.html</A>&gt;
+</PRE>
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="000383.html">[99s-extend] Gracefully stop Ranch
+</A></li>
+ <LI>Next message: <A HREF="000386.html">[99s-extend] REST responses
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#384">[ date ]</a>
+ <a href="thread.html#384">[ thread ]</a>
+ <a href="subject.html#384">[ subject ]</a>
+ <a href="author.html#384">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend
+mailing list</a><br>
+</body></html>
diff --git a/archives/extend/2014-May/000385.html b/archives/extend/2014-May/000385.html
new file mode 100644
index 00000000..d59d7aea
--- /dev/null
+++ b/archives/extend/2014-May/000385.html
@@ -0,0 +1,71 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [99s-extend] 202 for POST or PUT
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20202%20for%20POST%20or%20PUT&In-Reply-To=%3CCA%2BdV7cRUn3oQ34DaZbPaY3TcfEJUO4iq8Gk6sJuLqzGGA4MT8g%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <style type="text/css">
+ pre {
+ white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
+ }
+ </style>
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="000389.html">
+ <LINK REL="Next" HREF="000387.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[99s-extend] 202 for POST or PUT</H1>
+ <B>Paulo F. Oliveira</B>
+ <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20202%20for%20POST%20or%20PUT&In-Reply-To=%3CCA%2BdV7cRUn3oQ34DaZbPaY3TcfEJUO4iq8Gk6sJuLqzGGA4MT8g%40mail.gmail.com%3E"
+ TITLE="[99s-extend] 202 for POST or PUT">paulo.ferraz.oliveira at gmail.com
+ </A><BR>
+ <I>Tue May 20 20:32:10 CEST 2014</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="000389.html">[99s-extend] REST responses
+</A></li>
+ <LI>Next message: <A HREF="000387.html">[99s-extend] 202 for POST or PUT
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#385">[ date ]</a>
+ <a href="thread.html#385">[ thread ]</a>
+ <a href="subject.html#385">[ subject ]</a>
+ <a href="author.html#385">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>Hi.
+
+Do you think it should be possible to generate a 202 for a POST or a PUT?
+Is it something that will be implemented in a future version?
+
+Many thanks.
+
+- Paulo
+-------------- next part --------------
+An HTML attachment was scrubbed...
+URL: &lt;<A HREF="http://lists.ninenines.eu/archives/extend/attachments/20140520/699b72b3/attachment.html">http://lists.ninenines.eu/archives/extend/attachments/20140520/699b72b3/attachment.html</A>&gt;
+</PRE>
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="000389.html">[99s-extend] REST responses
+</A></li>
+ <LI>Next message: <A HREF="000387.html">[99s-extend] 202 for POST or PUT
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#385">[ date ]</a>
+ <a href="thread.html#385">[ thread ]</a>
+ <a href="subject.html#385">[ subject ]</a>
+ <a href="author.html#385">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend
+mailing list</a><br>
+</body></html>
diff --git a/archives/extend/2014-May/000386.html b/archives/extend/2014-May/000386.html
new file mode 100644
index 00000000..6435f3b5
--- /dev/null
+++ b/archives/extend/2014-May/000386.html
@@ -0,0 +1,134 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [99s-extend] REST responses
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20REST%20responses&In-Reply-To=%3C537BA2EA.5080108%40ninenines.eu%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <style type="text/css">
+ pre {
+ white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
+ }
+ </style>
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="000384.html">
+ <LINK REL="Next" HREF="000388.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[99s-extend] REST responses</H1>
+ <B>Lo&#239;c Hoguin</B>
+ <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20REST%20responses&In-Reply-To=%3C537BA2EA.5080108%40ninenines.eu%3E"
+ TITLE="[99s-extend] REST responses">essen at ninenines.eu
+ </A><BR>
+ <I>Tue May 20 20:46:02 CEST 2014</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="000384.html">[99s-extend] REST responses
+</A></li>
+ <LI>Next message: <A HREF="000388.html">[99s-extend] REST responses
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#386">[ date ]</a>
+ <a href="thread.html#386">[ thread ]</a>
+ <a href="subject.html#386">[ subject ]</a>
+ <a href="author.html#386">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>Hi,
+
+On 05/20/2014 06:27 PM, Paulo F. Oliveira wrote:
+&gt;<i> Hello.
+</I>&gt;<i>
+</I>&gt;<i> First of all, thanks for the great work you've done with cowboy. I've
+</I>&gt;<i> been using it with a fait amount of success and I'm a fairly new Erlang
+</I>&gt;<i> developer. I'm mainly interested in the REST &quot;interface&quot; of the
+</I>&gt;<i> application and its way of doing RESTful things, and I like the way you
+</I>&gt;<i> did it (what with all the content_types_provided, service_available,
+</I>&gt;<i> etc. functions). I've tested the way the system reacted to the different
+</I>&gt;<i> Accept, Content-Type, etc. headers and always got very well-opinionated
+</I>&gt;<i> responses (406, 415, ...).
+</I>&gt;<i>
+</I>&gt;<i> A couple of questions remain though (I'm sorry if they've been asked
+</I>&gt;<i> already but I've searched the web for answers and read the available
+</I>&gt;<i> docs and couldn't find them):
+</I>&gt;<i>
+</I>&gt;<i> 1. is it expected that, if I use cowboy_req:reply/2 in a GET handler
+</I>&gt;<i> (coming from content_types_provided), the onresponse/4 hook be called
+</I>&gt;<i> twice? I guess one is due to the reply and the other one due to the
+</I>&gt;<i> workflow of the request, but is there a way to prevent the second execution?
+</I>
+If you reply from a callback you must call {halt, Req, State} to stop
+processing.
+
+&gt;<i> 2. if I want to JSON-parse ALL my requests should I a) use the
+</I>&gt;<i> onrequest/1 hook or b) do this on a per-request basis? Because I'd like
+</I>&gt;<i> to reply with a 400 ASAP but keep going if the JSON validates (I'm going
+</I>&gt;<i> to use JSON-schema for validating input); and, if possible, have the
+</I>&gt;<i> JSON-parsed body stored somewhere for future manipulation.
+</I>
+It makes little sense to do it before the accept callback you define.
+Not only because you will duplicate content-type checks and whatnot, but
+also because you don't actually win anything from doing this. If you are
+using JSON, then JSON processing will take infinitely more resources
+than the REST code.
+
+&gt;<i> 3. I haven't seen examples that made use of the State (from the function
+</I>&gt;<i> returns). When should I use this instead of the Request metadata? I'd
+</I>&gt;<i> like to be able to set a generic error state for a request (either in
+</I>&gt;<i> meta ou State) and that have a &quot;standard&quot; error response be created at a
+</I>&gt;<i> later time (in a unique function, for example - e.g. onresponse/4).
+</I>
+State is for the functions within the current module. Look at
+cowboy_static for an example.
+
+&gt;<i> 4. is there anything like a catch-all exception handler? I'd like to
+</I>&gt;<i> catch exceptions that occur anywhere so I could log them and analyze
+</I>&gt;<i> them at a later moment.
+</I>
+You can add your own error_logger handler, or use something like lager.
+All errors end up sending a message to error_logger.
+
+&gt;<i> I'm probably abusing the onresponse/onrequest hooks already, so your
+</I>&gt;<i> answers should help me clarify this.
+</I>
+Sounds like it!
+
+&gt;<i> Thanks.
+</I>&gt;<i>
+</I>&gt;<i> - Paulo
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> _______________________________________________
+</I>&gt;<i> Extend mailing list
+</I>&gt;<i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A>
+</I>&gt;<i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A>
+</I>&gt;<i>
+</I>
+--
+Lo&#239;c Hoguin
+<A HREF="http://ninenines.eu">http://ninenines.eu</A>
+
+</PRE>
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="000384.html">[99s-extend] REST responses
+</A></li>
+ <LI>Next message: <A HREF="000388.html">[99s-extend] REST responses
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#386">[ date ]</a>
+ <a href="thread.html#386">[ thread ]</a>
+ <a href="subject.html#386">[ subject ]</a>
+ <a href="author.html#386">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend
+mailing list</a><br>
+</body></html>
diff --git a/archives/extend/2014-May/000387.html b/archives/extend/2014-May/000387.html
new file mode 100644
index 00000000..493740d2
--- /dev/null
+++ b/archives/extend/2014-May/000387.html
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [99s-extend] 202 for POST or PUT
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20202%20for%20POST%20or%20PUT&In-Reply-To=%3C537BA334.7080607%40ninenines.eu%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <style type="text/css">
+ pre {
+ white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
+ }
+ </style>
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="000385.html">
+
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[99s-extend] 202 for POST or PUT</H1>
+ <B>Lo&#239;c Hoguin</B>
+ <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20202%20for%20POST%20or%20PUT&In-Reply-To=%3C537BA334.7080607%40ninenines.eu%3E"
+ TITLE="[99s-extend] 202 for POST or PUT">essen at ninenines.eu
+ </A><BR>
+ <I>Tue May 20 20:47:16 CEST 2014</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="000385.html">[99s-extend] 202 for POST or PUT
+</A></li>
+
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#387">[ date ]</a>
+ <a href="thread.html#387">[ thread ]</a>
+ <a href="subject.html#387">[ subject ]</a>
+ <a href="author.html#387">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>202 is only well defined for the DELETE method so there's no plan to add
+something for other methods at this point. You can of course reply
+directly if needed.
+
+On 05/20/2014 08:32 PM, Paulo F. Oliveira wrote:
+&gt;<i> Hi.
+</I>&gt;<i>
+</I>&gt;<i> Do you think it should be possible to generate a 202 for a POST or a
+</I>&gt;<i> PUT? Is it something that will be implemented in a future version?
+</I>&gt;<i>
+</I>&gt;<i> Many thanks.
+</I>&gt;<i>
+</I>&gt;<i> - Paulo
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> _______________________________________________
+</I>&gt;<i> Extend mailing list
+</I>&gt;<i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A>
+</I>&gt;<i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A>
+</I>&gt;<i>
+</I>
+--
+Lo&#239;c Hoguin
+<A HREF="http://ninenines.eu">http://ninenines.eu</A>
+
+</PRE>
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="000385.html">[99s-extend] 202 for POST or PUT
+</A></li>
+
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#387">[ date ]</a>
+ <a href="thread.html#387">[ thread ]</a>
+ <a href="subject.html#387">[ subject ]</a>
+ <a href="author.html#387">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend
+mailing list</a><br>
+</body></html>
diff --git a/archives/extend/2014-May/000388.html b/archives/extend/2014-May/000388.html
new file mode 100644
index 00000000..0c28ba4d
--- /dev/null
+++ b/archives/extend/2014-May/000388.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [99s-extend] REST responses
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20REST%20responses&In-Reply-To=%3CCA%2BdV7cTrbQd-widnjH5CjsYum%3DASwax7VxtAUn_9BVONp2MMuA%40mail.gmail.com%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <style type="text/css">
+ pre {
+ white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
+ }
+ </style>
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="000386.html">
+ <LINK REL="Next" HREF="000389.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[99s-extend] REST responses</H1>
+ <B>Paulo F. Oliveira</B>
+ <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20REST%20responses&In-Reply-To=%3CCA%2BdV7cTrbQd-widnjH5CjsYum%3DASwax7VxtAUn_9BVONp2MMuA%40mail.gmail.com%3E"
+ TITLE="[99s-extend] REST responses">paulo.ferraz.oliveira at gmail.com
+ </A><BR>
+ <I>Tue May 20 23:41:15 CEST 2014</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="000386.html">[99s-extend] REST responses
+</A></li>
+ <LI>Next message: <A HREF="000389.html">[99s-extend] REST responses
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#388">[ date ]</a>
+ <a href="thread.html#388">[ thread ]</a>
+ <a href="subject.html#388">[ subject ]</a>
+ <a href="author.html#388">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>Hi, Lo&#239;c.
+
+Thanks for having taken the time to reply. In some of my questions I think
+I didn't explain myself correctly so I'll give it another go.
+
+
+On 20 May 2014 19:46, Lo&#239;c Hoguin &lt;<A HREF="https://lists.ninenines.eu/listinfo/extend">essen at ninenines.eu</A>&gt; wrote:
+
+&gt;<i> Hi,
+</I>&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> On 05/20/2014 06:27 PM, Paulo F. Oliveira wrote:
+</I>&gt;<i>
+</I>&gt;&gt;<i> Hello.
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> First of all, thanks for the great work you've done with cowboy. I've
+</I>&gt;&gt;<i> been using it with a fait amount of success and I'm a fairly new Erlang
+</I>&gt;&gt;<i> developer. I'm mainly interested in the REST &quot;interface&quot; of the
+</I>&gt;&gt;<i> application and its way of doing RESTful things, and I like the way you
+</I>&gt;&gt;<i> did it (what with all the content_types_provided, service_available,
+</I>&gt;&gt;<i> etc. functions). I've tested the way the system reacted to the different
+</I>&gt;&gt;<i> Accept, Content-Type, etc. headers and always got very well-opinionated
+</I>&gt;&gt;<i> responses (406, 415, ...).
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> A couple of questions remain though (I'm sorry if they've been asked
+</I>&gt;&gt;<i> already but I've searched the web for answers and read the available
+</I>&gt;&gt;<i> docs and couldn't find them):
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> 1. is it expected that, if I use cowboy_req:reply/2 in a GET handler
+</I>&gt;&gt;<i> (coming from content_types_provided), the onresponse/4 hook be called
+</I>&gt;&gt;<i> twice? I guess one is due to the reply and the other one due to the
+</I>&gt;&gt;<i> workflow of the request, but is there a way to prevent the second
+</I>&gt;&gt;<i> execution?
+</I>&gt;&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> If you reply from a callback you must call {halt, Req, State} to stop
+</I>&gt;<i> processing.
+</I>
+
+Got it!
+
+
+&gt;<i> 2. if I want to JSON-parse ALL my requests should I a) use the
+</I>&gt;&gt;<i> onrequest/1 hook or b) do this on a per-request basis? Because I'd like
+</I>&gt;&gt;<i> to reply with a 400 ASAP but keep going if the JSON validates (I'm going
+</I>&gt;&gt;<i> to use JSON-schema for validating input); and, if possible, have the
+</I>&gt;&gt;<i> JSON-parsed body stored somewhere for future manipulation.
+</I>&gt;&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> It makes little sense to do it before the accept callback you define. Not
+</I>&gt;<i> only because you will duplicate content-type checks and whatnot, but also
+</I>&gt;<i> because you don't actually win anything from doing this. If you are using
+</I>&gt;<i> JSON, then JSON processing will take infinitely more resources than the
+</I>&gt;<i> REST code.
+</I>
+
+OK, I'll probably stick with a &quot;helper&quot; function that'll do this for me and
+reply in case there are validation errors.
+I only found the flow diagrams for the requests today after I had sent this
+message, and they helped a lot.
+
+
+&gt;<i> 3. I haven't seen examples that made use of the State (from the function
+</I>&gt;&gt;<i> returns). When should I use this instead of the Request metadata? I'd
+</I>&gt;&gt;<i> like to be able to set a generic error state for a request (either in
+</I>&gt;&gt;<i> meta ou State) and that have a &quot;standard&quot; error response be created at a
+</I>&gt;&gt;<i> later time (in a unique function, for example - e.g. onresponse/4).
+</I>&gt;&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> State is for the functions within the current module. Look at
+</I>&gt;<i> cowboy_static for an example.
+</I>
+
+State allows me to, well, keep state, for a request &quot;travelling&quot; through
+functions, right, and I can change it whenever I want just before returning
+from a function that is executed prior to another one (the only function
+for which this doesn't seem to make since is the last one cowboy calls
+before actually replying to the client)? At the same time, so does the
+request meta, from what I understood from the manual. So what is the
+difference between one and the other and when would you recommend one or
+the other.
+
+4. is there anything like a catch-all exception handler? I'd like to
+&gt;&gt;<i> catch exceptions that occur anywhere so I could log them and analyze
+</I>&gt;&gt;<i> them at a later moment.
+</I>&gt;&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> You can add your own error_logger handler, or use something like lager.
+</I>&gt;<i> All errors end up sending a message to error_logger.
+</I>
+
+I'll do this, thanks.
+
+
+&gt;<i> I'm probably abusing the onresponse/onrequest hooks already, so your
+</I>&gt;&gt;<i> answers should help me clarify this.
+</I>&gt;&gt;<i>
+</I>&gt;<i>
+</I>&gt;<i> Sounds like it!
+</I>&gt;<i>
+</I>&gt;<i> Thanks.
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> - Paulo
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i> _______________________________________________
+</I>&gt;&gt;<i> Extend mailing list
+</I>&gt;&gt;<i> <A HREF="https://lists.ninenines.eu/listinfo/extend">Extend at lists.ninenines.eu</A>
+</I>&gt;&gt;<i> <A HREF="https://lists.ninenines.eu/listinfo/extend">https://lists.ninenines.eu/listinfo/extend</A>
+</I>&gt;&gt;<i>
+</I>&gt;&gt;<i>
+</I>&gt;<i> --
+</I>&gt;<i> Lo&#239;c Hoguin
+</I>&gt;<i> <A HREF="http://ninenines.eu">http://ninenines.eu</A>
+</I>&gt;<i>
+</I>
+Thanks.
+-------------- next part --------------
+An HTML attachment was scrubbed...
+URL: &lt;<A HREF="http://lists.ninenines.eu/archives/extend/attachments/20140520/32454f85/attachment.html">http://lists.ninenines.eu/archives/extend/attachments/20140520/32454f85/attachment.html</A>&gt;
+</PRE>
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="000386.html">[99s-extend] REST responses
+</A></li>
+ <LI>Next message: <A HREF="000389.html">[99s-extend] REST responses
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#388">[ date ]</a>
+ <a href="thread.html#388">[ thread ]</a>
+ <a href="subject.html#388">[ subject ]</a>
+ <a href="author.html#388">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend
+mailing list</a><br>
+</body></html>
diff --git a/archives/extend/2014-May/000389.html b/archives/extend/2014-May/000389.html
new file mode 100644
index 00000000..2f1f44c7
--- /dev/null
+++ b/archives/extend/2014-May/000389.html
@@ -0,0 +1,80 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <TITLE> [99s-extend] REST responses
+ </TITLE>
+ <LINK REL="Index" HREF="index.html" >
+ <LINK REL="made" HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20REST%20responses&In-Reply-To=%3C537BCE95.1090100%40ninenines.eu%3E">
+ <META NAME="robots" CONTENT="index,nofollow">
+ <style type="text/css">
+ pre {
+ white-space: pre-wrap; /* css-2.1, curent FF, Opera, Safari */
+ }
+ </style>
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ <LINK REL="Previous" HREF="000388.html">
+ <LINK REL="Next" HREF="000385.html">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <H1>[99s-extend] REST responses</H1>
+ <B>Lo&#239;c Hoguin</B>
+ <A HREF="mailto:extend%40lists.ninenines.eu?Subject=Re%3A%20%5B99s-extend%5D%20REST%20responses&In-Reply-To=%3C537BCE95.1090100%40ninenines.eu%3E"
+ TITLE="[99s-extend] REST responses">essen at ninenines.eu
+ </A><BR>
+ <I>Tue May 20 23:52:21 CEST 2014</I>
+ <P><UL>
+ <LI>Previous message: <A HREF="000388.html">[99s-extend] REST responses
+</A></li>
+ <LI>Next message: <A HREF="000385.html">[99s-extend] 202 for POST or PUT
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#389">[ date ]</a>
+ <a href="thread.html#389">[ thread ]</a>
+ <a href="subject.html#389">[ subject ]</a>
+ <a href="author.html#389">[ author ]</a>
+ </LI>
+ </UL>
+ <HR>
+<!--beginarticle-->
+<PRE>&gt;<i> State allows me to, well, keep state, for a request &quot;travelling&quot; through
+</I>&gt;<i> functions, right, and I can change it whenever I want just before
+</I>&gt;<i> returning from a function that is executed prior to another one (the
+</I>&gt;<i> only function for which this doesn't seem to make since is the last one
+</I>&gt;<i> cowboy calls before actually replying to the client)? At the same time,
+</I>&gt;<i> so does the request meta, from what I understood from the manual. So
+</I>&gt;<i> what is the difference between one and the other and when would you
+</I>&gt;<i> recommend one or the other.
+</I>
+They have different purposes. Meta values are additional information
+about the request. You're not supposed to set them except in special
+circumstances, either because you have your own custom protocol like
+cowboy_rest, or because there's no other way to pass state forward.
+
+Don't think about it, always use State.
+
+--
+Lo&#239;c Hoguin
+<A HREF="http://ninenines.eu">http://ninenines.eu</A>
+
+</PRE>
+
+<!--endarticle-->
+ <HR>
+ <P><UL>
+ <!--threads-->
+ <LI>Previous message: <A HREF="000388.html">[99s-extend] REST responses
+</A></li>
+ <LI>Next message: <A HREF="000385.html">[99s-extend] 202 for POST or PUT
+</A></li>
+ <LI> <B>Messages sorted by:</B>
+ <a href="date.html#389">[ date ]</a>
+ <a href="thread.html#389">[ thread ]</a>
+ <a href="subject.html#389">[ subject ]</a>
+ <a href="author.html#389">[ author ]</a>
+ </LI>
+ </UL>
+
+<hr>
+<a href="https://lists.ninenines.eu/listinfo/extend">More information about the Extend
+mailing list</a><br>
+</body></html>
diff --git a/archives/extend/2014-May/author.html b/archives/extend/2014-May/author.html
new file mode 100644
index 00000000..04dd96e0
--- /dev/null
+++ b/archives/extend/2014-May/author.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <title>The Extend May 2014 Archive by author</title>
+ <META NAME="robots" CONTENT="noindex,follow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <a name="start"></A>
+ <h1>May 2014 Archives by author</h1>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+ <a href="subject.html#start">[ subject ]</a>
+
+ <a href="date.html#start">[ date ]</a>
+
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p><b>Starting:</b> <i>Sun May 4 09:59:21 CEST 2014</i><br>
+ <b>Ending:</b> <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Messages:</b> 7<p>
+ <ul>
+
+<LI><A HREF="000383.html">[99s-extend] Gracefully stop Ranch
+</A><A NAME="383">&nbsp;</A>
+<I>Janos Hary
+</I>
+
+<LI><A HREF="000386.html">[99s-extend] REST responses
+</A><A NAME="386">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+<LI><A HREF="000387.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="387">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+<LI><A HREF="000389.html">[99s-extend] REST responses
+</A><A NAME="389">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+<LI><A HREF="000384.html">[99s-extend] REST responses
+</A><A NAME="384">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<LI><A HREF="000385.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="385">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<LI><A HREF="000388.html">[99s-extend] REST responses
+</A><A NAME="388">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+ </ul>
+ <p>
+ <a name="end"><b>Last message date:</b></a>
+ <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Archived on:</b> <i>Wed May 28 18:41:47 CEST 2014</i>
+ <p>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+ <a href="subject.html#start">[ subject ]</a>
+
+ <a href="date.html#start">[ date ]</a>
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p>
+ <hr>
+ <i>This archive was generated by
+ Pipermail 0.09 (Mailman edition).</i>
+ </BODY>
+</HTML>
+
diff --git a/archives/extend/2014-May/date.html b/archives/extend/2014-May/date.html
new file mode 100644
index 00000000..be72a5b3
--- /dev/null
+++ b/archives/extend/2014-May/date.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <title>The Extend May 2014 Archive by date</title>
+ <META NAME="robots" CONTENT="noindex,follow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <a name="start"></A>
+ <h1>May 2014 Archives by date</h1>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+
+
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p><b>Starting:</b> <i>Sun May 4 09:59:21 CEST 2014</i><br>
+ <b>Ending:</b> <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Messages:</b> 7<p>
+ <ul>
+
+<LI><A HREF="000383.html">[99s-extend] Gracefully stop Ranch
+</A><A NAME="383">&nbsp;</A>
+<I>Janos Hary
+</I>
+
+<LI><A HREF="000384.html">[99s-extend] REST responses
+</A><A NAME="384">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<LI><A HREF="000385.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="385">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<LI><A HREF="000386.html">[99s-extend] REST responses
+</A><A NAME="386">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+<LI><A HREF="000387.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="387">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+<LI><A HREF="000388.html">[99s-extend] REST responses
+</A><A NAME="388">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<LI><A HREF="000389.html">[99s-extend] REST responses
+</A><A NAME="389">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+ </ul>
+ <p>
+ <a name="end"><b>Last message date:</b></a>
+ <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Archived on:</b> <i>Wed May 28 18:41:47 CEST 2014</i>
+ <p>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p>
+ <hr>
+ <i>This archive was generated by
+ Pipermail 0.09 (Mailman edition).</i>
+ </BODY>
+</HTML>
+
diff --git a/archives/extend/2014-May/index.html b/archives/extend/2014-May/index.html
new file mode 100644
index 00000000..6a0d295f
--- /dev/null
+++ b/archives/extend/2014-May/index.html
@@ -0,0 +1,95 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <title>The Extend May 2014 Archive by thread</title>
+ <META NAME="robots" CONTENT="noindex,follow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <a name="start"></A>
+ <h1>May 2014 Archives by thread</h1>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p><b>Starting:</b> <i>Sun May 4 09:59:21 CEST 2014</i><br>
+ <b>Ending:</b> <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Messages:</b> 7<p>
+ <ul>
+
+<!--0 01399190361.383- -->
+<LI><A HREF="000383.html">[99s-extend] Gracefully stop Ranch
+</A><A NAME="383">&nbsp;</A>
+<I>Janos Hary
+</I>
+
+<!--0 01400603278.384- -->
+<LI><A HREF="000384.html">[99s-extend] REST responses
+</A><A NAME="384">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<UL>
+<!--1 01400603278.384-01400611562.386- -->
+<LI><A HREF="000386.html">[99s-extend] REST responses
+</A><A NAME="386">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+<!--1 01400603278.384-01400622075.388- -->
+<LI><A HREF="000388.html">[99s-extend] REST responses
+</A><A NAME="388">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<UL>
+<!--2 01400603278.384-01400622075.388-01400622741.389- -->
+<LI><A HREF="000389.html">[99s-extend] REST responses
+</A><A NAME="389">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+</UL>
+</UL>
+<!--0 01400610730.385- -->
+<LI><A HREF="000385.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="385">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<UL>
+<!--1 01400610730.385-01400611636.387- -->
+<LI><A HREF="000387.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="387">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+</UL>
+ </ul>
+ <p>
+ <a name="end"><b>Last message date:</b></a>
+ <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Archived on:</b> <i>Wed May 28 18:41:47 CEST 2014</i>
+ <p>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p>
+ <hr>
+ <i>This archive was generated by
+ Pipermail 0.09 (Mailman edition).</i>
+ </BODY>
+</HTML>
+
diff --git a/archives/extend/2014-May/subject.html b/archives/extend/2014-May/subject.html
new file mode 100644
index 00000000..0ce85257
--- /dev/null
+++ b/archives/extend/2014-May/subject.html
@@ -0,0 +1,82 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <title>The Extend May 2014 Archive by subject</title>
+ <META NAME="robots" CONTENT="noindex,follow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <a name="start"></A>
+ <h1>May 2014 Archives by subject</h1>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p><b>Starting:</b> <i>Sun May 4 09:59:21 CEST 2014</i><br>
+ <b>Ending:</b> <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Messages:</b> 7<p>
+ <ul>
+
+<LI><A HREF="000385.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="385">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<LI><A HREF="000387.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="387">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+<LI><A HREF="000383.html">[99s-extend] Gracefully stop Ranch
+</A><A NAME="383">&nbsp;</A>
+<I>Janos Hary
+</I>
+
+<LI><A HREF="000384.html">[99s-extend] REST responses
+</A><A NAME="384">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<LI><A HREF="000386.html">[99s-extend] REST responses
+</A><A NAME="386">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+<LI><A HREF="000388.html">[99s-extend] REST responses
+</A><A NAME="388">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<LI><A HREF="000389.html">[99s-extend] REST responses
+</A><A NAME="389">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+ </ul>
+ <p>
+ <a name="end"><b>Last message date:</b></a>
+ <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Archived on:</b> <i>Wed May 28 18:41:47 CEST 2014</i>
+ <p>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+ <a href="thread.html#start">[ thread ]</a>
+
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p>
+ <hr>
+ <i>This archive was generated by
+ Pipermail 0.09 (Mailman edition).</i>
+ </BODY>
+</HTML>
+
diff --git a/archives/extend/2014-May/thread.html b/archives/extend/2014-May/thread.html
new file mode 100644
index 00000000..6a0d295f
--- /dev/null
+++ b/archives/extend/2014-May/thread.html
@@ -0,0 +1,95 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<HTML>
+ <HEAD>
+ <title>The Extend May 2014 Archive by thread</title>
+ <META NAME="robots" CONTENT="noindex,follow">
+ <META http-equiv="Content-Type" content="text/html; charset=us-ascii">
+ </HEAD>
+ <BODY BGCOLOR="#ffffff">
+ <a name="start"></A>
+ <h1>May 2014 Archives by thread</h1>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p><b>Starting:</b> <i>Sun May 4 09:59:21 CEST 2014</i><br>
+ <b>Ending:</b> <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Messages:</b> 7<p>
+ <ul>
+
+<!--0 01399190361.383- -->
+<LI><A HREF="000383.html">[99s-extend] Gracefully stop Ranch
+</A><A NAME="383">&nbsp;</A>
+<I>Janos Hary
+</I>
+
+<!--0 01400603278.384- -->
+<LI><A HREF="000384.html">[99s-extend] REST responses
+</A><A NAME="384">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<UL>
+<!--1 01400603278.384-01400611562.386- -->
+<LI><A HREF="000386.html">[99s-extend] REST responses
+</A><A NAME="386">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+<!--1 01400603278.384-01400622075.388- -->
+<LI><A HREF="000388.html">[99s-extend] REST responses
+</A><A NAME="388">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<UL>
+<!--2 01400603278.384-01400622075.388-01400622741.389- -->
+<LI><A HREF="000389.html">[99s-extend] REST responses
+</A><A NAME="389">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+</UL>
+</UL>
+<!--0 01400610730.385- -->
+<LI><A HREF="000385.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="385">&nbsp;</A>
+<I>Paulo F. Oliveira
+</I>
+
+<UL>
+<!--1 01400610730.385-01400611636.387- -->
+<LI><A HREF="000387.html">[99s-extend] 202 for POST or PUT
+</A><A NAME="387">&nbsp;</A>
+<I>Lo&#239;c Hoguin
+</I>
+
+</UL>
+ </ul>
+ <p>
+ <a name="end"><b>Last message date:</b></a>
+ <i>Tue May 20 23:52:21 CEST 2014</i><br>
+ <b>Archived on:</b> <i>Wed May 28 18:41:47 CEST 2014</i>
+ <p>
+ <ul>
+ <li> <b>Messages sorted by:</b>
+
+ <a href="subject.html#start">[ subject ]</a>
+ <a href="author.html#start">[ author ]</a>
+ <a href="date.html#start">[ date ]</a>
+ <li><b><a href="https://lists.ninenines.eu/listinfo/extend">More info on this list...
+ </a></b></li>
+ </ul>
+ <p>
+ <hr>
+ <i>This archive was generated by
+ Pipermail 0.09 (Mailman edition).</i>
+ </BODY>
+</HTML>
+