beast icon indicating copy to clipboard operation
beast copied to clipboard

Examples in docs are broken (404)

Open Zen0x7 opened this issue 8 months ago • 7 comments

Hi

I was looking the docs and the boost documentation version upgrade is great but something is currently broken...

https://www.boost.org/doc/libs/1_87_0/libs/beast/example/websocket/server/chat-multi/ throws 404.

Zen0x7 avatar May 26 '25 15:05 Zen0x7

This seems like an issue with the new website. Could you please open an issue here: https://github.com/boostorg/website-v2/issues In the meantime, you can use: https://original.boost.org/doc/libs/1_87_0/libs/beast/example/websocket/server/chat-multi/

ashtum avatar May 26 '25 15:05 ashtum

@ashtum docs on the new website are stored in AWS S3. Although "anything is possible" with enough code I believe that out-of-the-box that service does not permit (or easily enable) directory browsing.

It seems /chat-multi/ doesn't take the visitor to a webpage, but rather tries to display a directory listing with many pages:

http_session.cpp shared_state.hpp listener.hpp websocket_session.cpp shared_state.cpp beast.hpp main.cpp http_session.hpp listener.cpp websocket_session.hpp CMakeLists.txt chat_client.html net.hpp Jamfile

Could you create this table of contents in the beast documentation? And link to individual files. Not to a whole directory.

Or include this reference: https://github.com/boostorg/beast/tree/develop/example/websocket/server/chat-multi

sdarwin avatar May 26 '25 16:05 sdarwin

@ashtum docs on the new website are stored in AWS S3. Although "anything is possible" with enough code I believe that out-of-the-box that service does not permit (or easily enable) directory browsing.

It seems /chat-multi/ doesn't take the visitor to a webpage, but rather tries to display a directory listing with many pages:

http_session.cpp shared_state.hpp listener.hpp websocket_session.cpp shared_state.cpp beast.hpp main.cpp http_session.hpp listener.cpp websocket_session.hpp CMakeLists.txt chat_client.html net.hpp Jamfile

Could you create this table of contents in the beast documentation? And link to individual files. Not to a whole directory.

Or include this reference: https://github.com/boostorg/beast/tree/develop/example/websocket/server/chat-multi

Yes, instead of linking to a directory path, we can list the related files in docs: https://www.boost.org/doc/libs/latest/libs/beast/doc/html/beast/examples.html#beast.examples.chat_server

ashtum avatar May 26 '25 16:05 ashtum

is it possible that this was a function of the old website? there could be a php script which turns the directory contents into a webpage?

vinniefalco avatar May 26 '25 22:05 vinniefalco

is it possible

yes, of course that's it.
however, it's worthwhile to review boost libraries to see how frequently this feature is used. maybe rarely. If that is the case, specific index.html files could be generated, or hyperlink out to github.com's directories. Are there any other examples of the issue...

sdarwin avatar May 26 '25 22:05 sdarwin

It would be better for library documentation to not rely on an external facility which converts a filesystem directory into an index page. Maybe it could be a tool which the library explicitly invokes?

vinniefalco avatar May 27 '25 17:05 vinniefalco

I'll link the related issue from the other repository.

IMHO, this should aim for a retroactive solution (considering older versions too), and ideally follow a Liskov-like principle — in other words, it would be great if the previous behavior could be restored with as little overhead as possible.

https://github.com/boostorg/website-v2/issues/1813

Zen0x7 avatar May 27 '25 18:05 Zen0x7