By Developers, For Developers
PDF Pg | Paper Pg | Type | Description | Fixed on | Comments |
---|---|---|---|---|---|
40 | SUGGEST | The diagram refers to the payload field , the text below refers to the same field as Message. While this is understandable it is not consistent. | 2019-08-29 | Thanks for this report! The next beta update will have it fixed. | |
125 | SUGGEST | In the PDF version, Line 18 of the “sneakers_23/test/sneakers_23_web/channels/product_channel_test.exs” test code has the final \\ (backslash) still in italics which kind of makes it look like the | (pipe) character. Suggest changing the final \\ from italic font to normal font so that it matches the format of the opening backslash. This caught me out briefly when I was quickly transcribing the code and the test failed when I used | instead of \\ (yeah, yeah I know….doh) | 2019-09-02 | Thanks for this report! The next beta update will remove the \\ completely. It is not needed because of ~s. | |
10? | TYPO | The improvements in the communication Stephen Bussey. Real-Time Phoenix (Kindle Locations 186-187). Should be ‘have’ | 2019-10-08 | Thanks for this report! The next beta update will have it fixed. \n | |
20 | ERROR | I receive a 426 response, not a 101 response: | 2019-10-16 | Thanks for this report. \n \nI dug into it and the intent is that everything after -H is kept (so your request will be multiple lines long in your console). The headers that come with it allow for the WebSocket protocol to be used. \n \nI'll look at making this more clear in the text. \n \n-sb | |
20 | SUGGEST | I followed the instructions to “copy as curl” and got the correct response. I did not have to replace “ws:” with “http:”; this was the default. I am using Firefox devtools. | 2019-10-16 | Thanks for this suggestion. I'm going to leave it as is because the correct end result from the book example is achieved. \n \n-sb | |
42 | ERROR | There is an issue between the mobi and pdf versions. The diagrams are not getting filled in with the mobi version. The boxes appear, but there is not text inside the boxes. | 2020-01-02 | Hi Michael, \n \nI see what you mean and I will be working on a fix. The change takes a bit longer than others, so it might be in B7 or B8. \n \n- sb | |
45 | SUGGEST | In the mobi version, “pong” and “pang” appear to my old eyes as almost identical in the code samples. I would suggest using something more distinct. | 2019-12-20 | We've moved from "pang" to "ding"! Thanks for the feedback. \n \n- sb | |
154 | ERROR | when killing Sneakers23Web.Endpoint via :observer, the output Erlang/OTP 22 [erts-10.4.4] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [hipe] | 2019-12-20 | Thanks! This may be an issue with the Endpoint supervisor. I've brought it up for questions, but future versions of the book will not have this instruction set. \n \n- sb | |
1 | 1 | ERROR | Hi! Thank you for your work I’ve found some errors in the code which maybe could be solved. lib/hello_sockets/pipeline/producer.ex the handle_cast function should be agrouped Best regards, Oscar | 2019-11-11 | Thanks for this report. This is a byproduct of the way that code is included in the book. The book's content evolves over a chapter, but each stage has to be represented in the book. \n \nI will be going through the code to add end statements to all functions in the book. The end result will still have some duplicate functions though. |
1 | 265 | ERROR | The same issue reported before in B3 also appears in B6 on Epub version (I’ve only tested epub and pdf for now). Basically the diagrams are not getting filled in on the epub version as well, the boxes appear but there is nothing inside. It seems like they only display properly on the PDF versions. | 2020-01-08 | Hi Igor, \n \nThis change took several betas to get resolved. Mobi and epub images will look correct in the next beta release (B7.0). Thanks for the report! \n \n-Steve |
102 | ERROR | “We spawn an unlinked Task” | 2020-02-25 | Thanks for this report! This will be fixed in the next version (which will be the production release). \n \nIt will say "linked". \n \n- Steve | |
72 | OK | A pattern matching statement in the code block at the bottom of the page is reversed. Currently, the third parameter of the join method reads: socket = %{assigns: %{user_id: user_id}} I believe it should read: %{assigns: %{user_id: user_id}} = socket Thanks for a great book! | 2020-04-08 | Thanks for this report. In my personal development, I always put the variable assignment before the pattern, rather than after. \n \nYou do run the potential of seeing it both ways in the book, but both are syntactically correct and will have the same end result. You can change it in your code to the one that you prefer. | |
31 | OK | In the initial definition of the HelloSocketsWeb.PingChannel, the join function has an unused topic argument (_topic). Should this not be the topic name (“ping”). defmodule HelloSocketsWeb.PingChannel do | 2020-04-08 | In this case, it could be the topic name or an unused argument. We will expand the PingChannel with additional topics in the future, so limiting it to "ping" would be an issue. \n \nIn general, I would suggest doing the routing at the Socket layer (via a channel definition) and only pattern match on the topic name if you need to do authorization based on it (covered in a later chapter). For example, if I had a Channel with 5 different topics and none of them had special join needs, I would allow them to use the same join function via a _topic argument. | |
184 | 0 | ERROR | Hello, Thank you for the book! I learnt a lot. I was looking at test for shopping cart channel. Found a random test failure on sneakers_23_cart folder from the code download. I ran this command: If you run that test 2-10 times you should able to reproduce. For some reason, even an item was removed from the cart it still receives “cart” event. Does this mean that unsubscribe doesn’t work sometimes on item removal from cart? Regards, | 2020-04-15 | Thanks for this report Ruslan. I was happy to be able to chat with you further about it. \n \nThere does seem to be some sort of race condition that is reproducible on your machine but not mine or some others. This may be a legitimate issues with the code. I would suggest adding another call to wait_until_messages_processed after the channel is joined in the "handle_in remove_item the PubSub subscription for the item is removed" test. \n \nI am not going to suggest any changes to the content at this point because I have not been able to reproduce this. |
32 | OK | Hi, at | 2020-04-16 | The book does not introduce the JavaScript client at this point--only wscat is used until the end of chapter 3. Any unmatched topic errors at this point are from the Elixir side, so you should double check that the code is entered correctly. If you get stuck, you can go to the file in the code download to see what I entered. | |
127 | OK | After adding test for notify_product_relese i get the following error when running mix test Compilation error in file test/sneakers_23_web/channels/product_channel_test.exs (DBConnection.OwnershipError) cannot find ownership process for #PID<0.411.0>. When using ownership, you must manage connections in one
The first two options require every new process to explicitly The third option requires a {:shared, pid} mode to be set. The fourth option requires [caller: pid] to be used when If you are reading this error, it means you have not done one See Ecto.Adapters.SQL.Sandbox docs for more information. | 2020-04-25 | Please check that your file is using ChannelCase and not ExUnit.Case. This is the most likely culprit that was missed. \n \nThe example in the book has source code provided as well. You can look there to see it working and what you might have missed. The book code has confirmed to work if all steps are followed. \n \nBest \nSteve |