Skip to content

Conversation

aG0aep6G
Copy link
Contributor

@aG0aep6G aG0aep6G commented Jun 2, 2015

The per-version changelog files (changelog/2.foo.dd) have been extracted from the full log by this little ugly script: https://gist.github.com/aG0aep6G/014339e25fd39ae638f1.

Preview: http://d-ag0aep6g.rhcloud.com/changelog/2.067.1.html

@aG0aep6G aG0aep6G force-pushed the split-changelog branch 2 times, most recently from 153921c to 35fd7b8 Compare June 2, 2015 11:16
@CyberShadow
Copy link
Member

I think we discussed splitting the changelog once before... the main disadvantage is that it breaks Ctrl+F to search all versions' changelogs. But now that it's in its own directory, we could do Google "site:dlang.org/changelog" searches.

I'm not against the idea but it's a non-trivial change and should be approved by more people.

@aG0aep6G aG0aep6G force-pushed the split-changelog branch 2 times, most recently from be4fe27 to 06e7035 Compare June 19, 2015 14:48
@aG0aep6G
Copy link
Contributor Author

Made a thread on the forum: http://forum.dlang.org/post/thvnxyvvtqjrutzdugtf@forum.dlang.org

@aG0aep6G
Copy link
Contributor Author

Moved the list to the site menu, as suggested by Steven Schveighoffer in the forum discussion. Unfortunately, issue 14717 makes it fall short. That will have to be fixed first.

Legacy URLs like changelog.html#2.067.0 now redirect to changelog/legacy.html which is not going to be updated with new versions.

Preview: http://d-ag0aep6g.rhcloud.com/accordion/changelog/2.067.1.html

@aG0aep6G
Copy link
Contributor Author

aG0aep6G commented Jul 4, 2015

Unfortunately, issue 14717 makes it fall short.

PR to fix issue 14717: dlang/dmd#4799

@andralex
Copy link
Member

andralex commented Jul 7, 2015

please rebase

@@ -23,3 +23,5 @@ Redirect 301 /dll.html http://wiki.dlang.org/Win32_DLLs_in_D
Redirect 301 /htomodule.html http://wiki.dlang.org/Converting_C_.h_Files_to_D_Modules
Redirect 301 /memory.html http://wiki.dlang.org/Memory_Management
Redirect 301 /windows.html http://wiki.dlang.org/D_for_Win32

RewriteRule ^changelog.html$ changelog/legacy.html [R=301,L]
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be Redirect? I'm not that well-versed in Apache configuration.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can use either. But we'll need to test if the ^ will work as expected, IIRC there were some issues with RewriteBase.

@aG0aep6G
Copy link
Contributor Author

aG0aep6G commented Jul 8, 2015

Rebased. Preview is at http://d-ag0aep6g.rhcloud.com again.

Issue 14717 has been fixed, so this is good to go from my side.

@MartinNowak
Copy link
Member

I like it. The changelog page is too big, takes ages to compile, and ages to load.
We could also add some js to legacy.html to directly redirect #2.067.0 to the 2.067.0 page?

@MartinNowak
Copy link
Member

What about other anchors on the page? I just recently cleaned up the version anchors to be 2.067.0, there is still some legacy anchor new2067 or so.

@aG0aep6G
Copy link
Contributor Author

aG0aep6G commented Aug 8, 2015

I like it. The changelog page is too big, takes ages to compile, and ages to load.
We could also add some js to legacy.html to directly redirect #2.067.0 to the 2.067.0 page?

I guess that's possible. Will look into it.

What about other anchors on the page? I just recently cleaned up the version anchors to be 2.067.0, there is still some legacy anchor new2067 or so.

legacy.html has both kinds of anchors. I.e. these two take you to the same link:
http://d-ag0aep6g.rhcloud.com/changelog.html#2.067.1
http://d-ag0aep6g.rhcloud.com/changelog.html#new2_067.1

@aG0aep6G
Copy link
Contributor Author

aG0aep6G commented Aug 8, 2015

Did the JS redirects. My JS-foo isn't that great, so someone should look over it.

http://d-ag0aep6g.rhcloud.com/changelog.html#2.067.1 and
http://d-ag0aep6g.rhcloud.com/changelog.html#new2_067.1 should take you to
http://d-ag0aep6g.rhcloud.com/changelog/2.067.1.html now.

@aG0aep6G
Copy link
Contributor Author

Updated for 2.068. I'd appreciate if we could get this over with.

@aG0aep6G aG0aep6G force-pushed the split-changelog branch 3 times, most recently from c62a6a2 to 6ddac3c Compare August 19, 2015 13:07
@aG0aep6G
Copy link
Contributor Author

Ping? This has been sitting idle for more than a week now. It's still good to go from my side.

@CyberShadow
Copy link
Member

This link currently works (unfortunately):

http://dlang.org/changelog

@aG0aep6G
Copy link
Contributor Author

This link currently works (unfortunately):

http://dlang.org/changelog

Redirecting that one to changelog/legacy.html too now. I.e., these work:
http://d-ag0aep6g.rhcloud.com/changelog (-> /changelog/legacy.html)
http://d-ag0aep6g.rhcloud.com/changelog#2.068.0 (-> /changelog/legacy.html#2.068.0 -> /changelog/2.068.0.html)

@CyberShadow
Copy link
Member

http://dtest.thecybershadow.net/artifact/website-bb011af464e0c6aac7fcff1d65dc61ed499f2b82-06e16d9f514ddd1641dd267af85ea145/web/changelog/2.068.0.html

This is completely broken because it still thinks that css and js files are under css/ and js/, they are now at ../css/ and ../js/

@CyberShadow
Copy link
Member

I'm not sure we need the entire changelog index in the sidebar. Instead, I suggest...

  • An index page
  • At the top and bottom of each version's changelog, links to the next and previous versions' changelogs, and to the index

@CyberShadow
Copy link
Member

Apart from being unstyled, the per-version changelog pages appear to be all devoid of actual change logs.

@aG0aep6G
Copy link
Contributor Author

This is completely broken because it still thinks that css and js files are under css/ and js/, they are now at ../css/ and ../js/

Apart from being unstyled, the per-version changelog pages appear to be all devoid of actual change logs.

I don't know what's going on here. When I build it, those problems don't come up.

I'm not sure we need the entire changelog index in the sidebar. Instead, I suggest...

An index page
At the top and bottom of each version's changelog, links to the next and previous versions' changelogs, and to the index

This started with something similar to that. The current layout was a suggestion from Steven Schveighoffer which people seemed to like (at least no one spoke up against it).

Also, I don't see what a dedicated index page would buy us over having all versions in the sidebar. Having them in the sidebar, highlighting of the current page works trivially, and it acts as a "you are here" indicator in the changelog history.

@aG0aep6G
Copy link
Contributor Author

I don't know what's going on here. When I build it, those problems don't come up.

There's no mention of changelog.ddoc in the build log. A missing changelog.ddoc would explain the issues, I think. No idea why it's not there, though.

@CyberShadow
Copy link
Member

make is probably picking up this rule:

$(DOC_OUTPUT_DIR)/%.html : %.dd $(DDOC) $(DMD)
    $(DMD) -conf= -c -o- -Df$@ $(DDOC) $<

before this one:

$(DOC_OUTPUT_DIR)/changelog/%.html : changelog/%.dd $(CHANGELOG_DDOC) $(DMD)
    $(DMD) -conf= -c -o- -Df$@ $(CHANGELOG_DDOC) $<

@aG0aep6G
Copy link
Contributor Author

Yup, swapped them around, and it seems to work now. Is it ok to rely on the order like this?

@CyberShadow
Copy link
Member

This started with something similar to that. The current layout was a suggestion from Steven Schveighoffer which people seemed to like (at least no one spoke up against it).

Also, I don't see what a dedicated index page would buy us over having all versions in the sidebar. Having them in the sidebar, highlighting of the current page works trivially, and it acts as a "you are here" indicator in the changelog history.

I don't know, I don't think I agree with that. Having miles-long navigation is just poor UI. You shouldn't have to scroll the page to navigate around a website. The list is only going to get longer, as well. Do you know any other websites that do this?

I think the sidebar should only list the latest few versions. Everything else's significance is mostly historical, and shouldn't be there any more than 1.x and 0.x changelogs should.

@aG0aep6G
Copy link
Contributor Author

You shouldn't have to scroll the page to navigate around a website. The list is only going to get longer, as well. Do you know any other websites that do this?

The section can be collapsed, and "D reference" and "Books & Articles" force scrolling, too. But it's true that the changelog section is already longer than those and will only get even longer.

I think the sidebar should only list the latest few versions. Everything else's significance is mostly historical, and shouldn't be there any more than 1.x and 0.x changelogs should.

I wouldn't mind changing it back to a single item (or a few items) in the sidebar and a dedicated listing page. People didn't seem to like it, though. However, I think the main point was that the landing page of the changelog should be the latest entry rather than the listing, which should be doable.

That would mean: clicking "Change Log" in the sidebar takes you to changelog/2.068.0.html where you have "previous/next version" and "all versions" which takes you to a long list of links to all the changelog entries. Would everyone be happy with that? @andralex @schveiguy

@schveiguy
Copy link
Member

Would everyone be happy with that?

If there is a way to get to a prior version (any prior version) aside from actually scrolling the page down to that version via visual scan (current model), then I'm fine with it. A list of versions with clickable links to each version is a must somewhere, I don't care where, and I don't care how it works (either anchors or individual pages). Putting it on the sidebar, or making it its own page, whatever works for everyone else is fine with me with those requirements satisfied.

Found by doing
grep -o -P "(href|src)=(\"[^\"]+\"|'[^']+')" web/changelog/*.html | grep -P -v "(href|src)=(\"|')\s*(https?://|irc://|\.\.|2\.\d\d\d(\.\d)?\.html|list\.html|#)"
@aG0aep6G
Copy link
Contributor Author

That would mean: clicking "Change Log" in the sidebar takes you to changelog/2.068.0.html where you have "previous/next version" and "all versions" which takes you to a long list of links to all the changelog entries. Would everyone be happy with that? @andralex @schveiguy

Did that.

@CyberShadow
Copy link
Member

Looks nice. @andralex ?

@schveiguy
Copy link
Member

LGTM

@MartinNowak
Copy link
Member

clicking "Change Log" in the sidebar takes you to changelog/2.068.0.html where you have "previous/next version" and "all versions" which takes you to a long list of links to all the changelog entries.

Much nicer than the long menu.

@MartinNowak
Copy link
Member

Thanks for the very good work.

MartinNowak added a commit that referenced this pull request Aug 22, 2015
@MartinNowak MartinNowak merged commit 8e10e3d into dlang:master Aug 22, 2015
@CyberShadow
Copy link
Member

Well done and thanks for persevering, @aG0aep6G.

@aG0aep6G aG0aep6G deleted the split-changelog branch August 23, 2015 21:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants