Bug 12526 – DDox possible issue with case sensitive file names

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dlang.org
Product
D
Version
D2
Platform
All
OS
All
Creation time
2014-04-06T07:17:00Z
Last change time
2016-06-11T05:18:44Z
Assigned to
sludwig
Creator
code

Comments

Comment #0 by code — 2014-04-06T07:17:12Z
Not sure where this comes from (case insensitive file system?) but the documentation for TaskPool is missing. It's page is overwritten by the documentation for taskPool and the taskPool.html page doesn't exist. http://dlang.org/library/std/parallelism/taskPool.html http://dlang.org/library/std/parallelism/TaskPool.html
Comment #1 by sludwig — 2014-04-06T07:35:44Z
Exactly, Andrei generates the website on an OS X box, which uses case insensitive HFS by default. AFAICS there is no way to talk the OS to still store files case sensitive (like there is on Windows) other than using a partition with a case sensitive FS, so there are only two options: find some alternative file name scheme that doesn't rely on case, or switch to a case sensitive file system when generating the documentation. Andrei's suggestion was to just aggregate everything under the all lower case version of the name. This would be an option, but requires some reorganization of how DDOX outputs the pages, breaks old links (probably still acceptable at this point?) and slightly waters the one entity == one page concept (which is of course already not working for function overloads). All the other schemes that came to mind (such as numbering pages with names of different case, or escaping upper case letters) are either ugly or would result in transient links. My favorite would obviously be to just switch the file system, but of course Andrei has the last call there - and it also wouldn't be the worst thing to have something that works on any OS/FS. Any other ideas how to solve this? If not, I'll look into the aggregation solution as soon as I get some time for that.
Comment #2 by code — 2014-04-06T08:03:48Z
Aggregation seems feasible because the two entities have a close relation, i.e. usually the lower case is a constructor using IFTI. http://dlang.org/library/std/range/outputRangeObject.html http://dlang.org/library/std/range/OutputRangeObject.html
Comment #3 by sludwig — 2014-05-25T21:44:39Z
Comment #4 by dlang-bugzilla — 2016-06-11T05:18:44Z
(In reply to Sönke Ludwig from comment #3) > It now generates only lower case file names and aggregates all matching > symbols > on a single page. As recently discussed, this is an undesired side effect. Now that dlang.org is always built on Linux, perhaps this should be disabled/reverted?