Jump to page: 1 2
Thread overview
[Issue 13153] dlang.org: provide version-specific documentation of the language and stdlib
Jul 17, 2014
davidsp@fb.com
Jun 26, 2017
Vladimir Panteleev
Jul 03, 2017
Jack Stouffer
Jul 03, 2017
Vladimir Panteleev
Jul 03, 2017
Jack Stouffer
Jul 04, 2017
Seb
July 17, 2014
https://issues.dlang.org/show_bug.cgi?id=13153

davidsp@fb.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |davidsp@fb.com

--
June 26, 2017
https://issues.dlang.org/show_bug.cgi?id=13153

Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jack@jackstouffer.com

--- Comment #1 from Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> ---
*** Issue 15810 has been marked as a duplicate of this issue. ***

--
July 03, 2017
https://issues.dlang.org/show_bug.cgi?id=13153

greensunny12@gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |greensunny12@gmail.com

--- Comment #2 from greensunny12@gmail.com ---
I gave this a try a few weeks ago [1, 2], but mainly aborted it because I ran out of time as building dlang.org, especially for previous versions, is a huge PITA.

However, a couple of insights:
- the dlang.org dump is nearly identical between versions (git is amazingly
powerful here, the git repo has 190M vs. 2.6G of extracted archives)
- I used netlify with their free auto-deploy (it's pretty sweet, they
auto-deploy a public git repo on their CDN for free)
- We probably need some kind of version header (maybe a simple `sed` of <body>
can is good enough?)
- As mentioned, there were some troubles with building previous version (so not
all currently "archived" versions are correct yet)

I can have a look at this in the next weeks/months, but maybe @Vladimir already has a pipeline to build old dlang.org versions?

[1] https://github.com/wilzbach/dlang.org-archives
[2] https://docarchives.dlang.io/v2.074.0/phobos/std_base64.html

--
July 03, 2017
https://issues.dlang.org/show_bug.cgi?id=13153

Jack Stouffer <jack@jackstouffer.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Hardware|x86                         |All
                 OS|Mac OS X                    |All

--
July 03, 2017
https://issues.dlang.org/show_bug.cgi?id=13153

Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |dlang-bugzilla@thecybershad
                   |                            |ow.net

--- Comment #3 from Vladimir Panteleev <dlang-bugzilla@thecybershadow.net> ---
Thanks for working on this! I hadn't looked into this yet, just had some ideas.

Building the entire website is almost surely going to be a PITA. The biggest drawback is likely going to be that when the website's design is updated, the old version pages are going to keep the old design, possibly including old navigation with lots of dead links etc.

Probably the best solution is some compatibility shim (read: big pile of very ugly hacks) that allows old versions' content to be built with the current website design.

Building old site versions verbatim, despite the flaws, is almost surely going to be much easier. I think Digger is the best tool for the job for this approach, as it already knows how to build old versions of everything else.

One last thought is that we bundle HTML documentation with DMD releases themselves. These are fairly independent of the website and could be used directly. I hadn't looked into this yet.

--
July 03, 2017
https://issues.dlang.org/show_bug.cgi?id=13153

--- Comment #4 from Jack Stouffer <jack@jackstouffer.com> ---
Or, we can just provide links to the archive.org version of the docs for each version.

Not pretty by any stretch, but it's something that already works.

--
July 03, 2017
https://issues.dlang.org/show_bug.cgi?id=13153

--- Comment #5 from Andrei Alexandrescu <andrei@erdani.com> ---
(greensunny12@gmail.com are you Seb?)

Could you please give a bit of insight in why that's difficult? My ignorant take on this is: create a sandbox with all of dmd, druntime, phobos, tools, and dlang.org at the same point in time and then build the documentation. If building documentation succeeded then, it should succeed now. Please disabuse me of that notion :o).

An out-of-the-box possibility I've been looking into is to simply offer links to versions already archived by archive.org. For example the first version of


--- at this point I saw Jack posted the same idea! ---

--
July 04, 2017
https://issues.dlang.org/show_bug.cgi?id=13153

--- Comment #6 from Seb <greensunny12@gmail.com> ---
See NG:

http://forum.dlang.org/post/sxxdxahqofpdnsjddnho@forum.dlang.org

> Could you please give a bit of insight in why that's difficult? My ignorant take on this is: create a sandbox with all of dmd, druntime, phobos, tools, and dlang.org at the same point in time and then build the documentation. If building documentation succeeded then, it should succeed now. Please disabuse me of that notion :o).

Yeah I had this ignorant view in the beginning as well ... and then I tried it
:P
It's an immense PITA because
- the Makefile change so often -> they randomly break
- older versions of the compiler need patching to be able to compile
- older versions of the docs need a very specific compiler
- one needs to overwrite a lot of Makefile variables
- Ddox is extremely annoying because
  - older packages use incompatible headers to OpenSSL, libevent
  - older DUB releases (<1.0.0) weren't really "stable"
...

Anyhow I think I finally managed to create the snapshots and dump them on a
CDN:
http://forum.dlang.org/post/sxxdxahqofpdnsjddnho@forum.dlang.org

Especially the docs.json files are interesting, because - if properly merged - we could generate a symbol history out of them.

> (greensunny12@gmail.com are you Seb?)

Yep, sorry, for some reasons I happen to have two Bugzilla accounts.

--
July 07, 2017
https://issues.dlang.org/show_bug.cgi?id=13153

--- Comment #7 from github-bugzilla@puremagic.com ---
Commit pushed to master at https://github.com/dlang/dlang.org

https://github.com/dlang/dlang.org/commit/b0a06c7deab4b8093d6e1fe7f592001d60a3e7c1 Fix issue 13153 - Add a version chooser to DDoc pages

--
August 14, 2017
https://issues.dlang.org/show_bug.cgi?id=13153

--- Comment #8 from github-bugzilla@puremagic.com ---
Commit pushed to newCTFE at https://github.com/dlang/dlang.org

https://github.com/dlang/dlang.org/commit/b0a06c7deab4b8093d6e1fe7f592001d60a3e7c1 Fix issue 13153 - Add a version chooser to DDoc pages

--
« First   ‹ Prev
1 2