- Compile
Regexinstances to module-level singletons (withRegexOptions.Compiled) inPageContentList,HtmlFormatting,Formatting,Menu, andLlmsTxt. Previously a new, uncompiledRegexwas constructed on every call (once per page heading, once per HTML page, once per menu item, once per llms.txt entry), incurring repeated JIT overhead. The patterns are now compiled once at module load and reused across all calls. - Replace deprecated
System.Net.WebClientwithSystem.Net.Http.HttpClientin the image downloader used by--saveimages. Removes the#nowarn "44"suppression. - Bump
Newtonsoft.Jsontransitive-dependency pin from 13.0.3 to 13.0.4. - Bump
System.Memorytransitive-dependency pin from 4.5.5 to 4.6.3.0 - Remove stale
VersionOverride="43.12.201"on theFSharp.Compiler.Servicereference inFSharp.Formatting.Markdown.fsproj; the package now uses the central pin (43.12.202) fromDirectory.Packages.props, eliminating the NU1605 build warning. - Replace
Enumerable.Cast<XAttribute>(LINQ) withSeq.cast<XAttribute>(idiomatic F#) inMarkdownUtils.fs, removing theopen System.Linqimport.
- Fix
Markdown.ToMdsilently dropping YAML frontmatter when serialising a parsedMarkdownDocumentback to Markdown text. Frontmatter is now preserved with its---delimiters. - Fix
Markdown.ToMdconverting tight lists (no blank lines between items) into loose lists by emitting a blank line after every item. Tight lists now round-trip correctly without inter-item blank lines. - Fix
Markdown.ToMdserialisingHardLineBreakas a bare newline instead of two trailing spaces + newline. The correct CommonMark representation" \n"is now emitted, so hard line breaks survive a round-trip throughToMd. - Fix
Markdown.ToMdserialisingHorizontalRuleas 23 hyphens regardless of the character used in the source. It now emits exactly three characters matching the parsed character (---,***, or___), giving faithful round-trips. - Remove stray
printfndebug output emitted to stdout whenMarkdown.ToMdencountered an unrecognised paragraph type. - Fix
Markdown.ToLatexproducing invalid LaTeX output for level-6 (and deeper) headings. Previously the LaTeX command was an empty string, resulting in bare{content}without a command prefix. Headings at level 6+ are now serialised as\subparagraph{...}, which is the deepest sectioning command available in LaTeX.
- Add tests for
Markdown.ToFsx(direct serialisation to F# script format), which previously had no unit test coverage. - Add tests for
Markdown.ToPynb(direct serialisation to Jupyter notebook format), which previously had no unit test coverage. - Add round-trip tests for
HardLineBreakandHorizontalRulecharacter preservation inMarkdown.ToMd. - Fix
Markdown.ToMdsilently droppingEmbedParagraphsnodes: the serialiser now delegates to the node'sRender()method and formats the resulting paragraphs, consistent with the HTML and LaTeX back-ends. - Fix
Markdown.ToMddropping link titles inDirectLinkandDirectImagespans. Links with a title attribute (e.g.[text](url "title")) now round-trip correctly; without this fix the title was silently discarded on serialisation. - Fix
Markdown.ToMdserialising inline code spans that contain backtick characters. Previously,InlineCodewas always wrapped in single backticks, producing syntactically incorrect Markdown when the code body contained backticks. Now the serialiser selects the shortest backtick fence that does not collide with the body content (e.g. a double-backtick fence for bodies containing single backticks, triple for double, etc.), matching the CommonMark spec. - Add direct unit tests for
Markdown.ToLatex, which previously had no unit test coverage. Tests cover headings (all six levels), inline formatting (bold, italic, inline code), links, images with captions, lists (ordered and unordered), code blocks, blockquotes, tables with bold headers, horizontal rules, LaTeX special character escaping, inline math, and display math.
- Fix spurious
'fsi' is not definederror during literate script type-checking when scripts usefsi.AddPrinteror related APIs. TheFSharp.Compiler.Interactive.Settings.dllreference is now explicitly added to the type-checker options. #1139 - Fix literate script comment parser prematurely closing
(**blocks when the markdown text contained nested(*** ... ***)references (e.g. in backtick-quoted command examples), causing subsequent content to be silently dropped from HTML output. - Add missing
[<Test>]attribute onCan include-output-and-ittest so it is executed by the test runner. - Add regression test confirming that types whose name matches their enclosing namespace are correctly included in generated API docs. #944
- Fix crash (
failwith "tbd - IndirectImage") whenMarkdown.ToMdis called on a document containing reference-style images with bracket syntax. The indirect image is now serialised aswhen the reference is resolved, or in bracket notation when it is not. #1094 - Fix
Markdown.ToMdserialising italic spans with asterisks incorrectly as bold spans. #1102 - Fix
Markdown.ToMdserialising ordered list items with incorrect numbering and formatting. #1102 - Fix
Markdown.ToMdnot preserving indented code blocks: bare code output was re-parsed as a paragraph. Indented code blocks are now serialised as fenced code blocks, which round-trip correctly. - Fix
Markdown.ToMdserialising*emphasis*(italic) spans as**...**(bold) instead of*...*. #1102 - Fix
Markdown.ToMdserialising ordered list items with 0-based numbering and no period (e.g.0 first) instead of 1-based with a period (e.g.1. first). #1102 - Fix
HtmlElementSVG serialisation:LinearGradientnow renders as<linearGradient>andRadialGradientnow renders as<radialGradient>— both previously emitted the invalid tag<radient>.
fsdocs buildnow pre-computes the navigation menu structure (filter/group/sort) once per build rather than once per output page, reducing work from O(n²) to O(n) for sites with n pages. The filesystem check for custom menu templates is also cached per build. #1129
- Add
--rootoption tofsdocs watchto override the root URL for generated pages. Useful for serving docs via GitHub Codespaces, reverse proxies, or other remote hosting wherelocalhostURLs are inaccessible. E.g.fsdocs watch --root /orfsdocs watch --root https://example.com/docs/. When not set, defaults tohttp://localhost:<port>/as before. #924 - Fix
fsdocs watchhot-reload WebSocket to connect using the page's actual host (window.location.host) instead of a hardcodedlocalhost:<port>, so hot-reload works correctly in GitHub Codespaces, behind reverse proxies, and over HTTPS. #924 - Search dialog now auto-focuses the search input when opened, clears on close, and can be triggered with
Ctrl+K/Cmd+Kin addition to/. - Add
dotnet fsdocs convertcommand to convert a single.md,.fsx, or.ipynbfile to HTML (or another output format) without building a full documentation site. #811 fsdocs convertnow accepts the input file as a positional argument (e.g.fsdocs convert notebook.ipynb -o notebook.html). #1019fsdocs convertinfers the output format from the output file extension when--outputformatis not specified (e.g.-o out.mdimplies--outputformat markdown). #1019fsdocs convertnow accepts-oas a shorthand for--output. #1019fsdocs convertnow embeds CSS, JS, and local images directly into the HTML output by default, producing a single self-contained file. Use--no-embed-resourcesto disable. Pass--template fsdocsto use the built-in default template without needing a local_template.html. #1068fsdocs convertnow supplies sensible defaults for all standard{{fsdocs-*}}template substitution parameters (e.g.{{fsdocs-page-title}}defaults to the input filename) so templates work cleanly without requiring--parameters. #1072- Added full XML doc comments (
<summary>,<param>) toLiterate.ParseAndCheckScriptFileandLiterate.ParseScriptStringto match the documentation style of the otherLiterate.Parse*methods.
Literate.ParseScriptStringandLiterate.ParsePynbStringused a hardcoded Windows path (C:\script.fsx) as the fallback script filename when neitherpathnorrootInputFolderis supplied. The fallback is now a simple platform-neutralscript.fsx.- Add regression tests for cross-assembly tooltip resolution (issue #1085): verify that hover tooltips for types whose fields reference types from other assemblies show the correct type names (not
obj) when#rpaths resolve correctly.
- Tooltip elements (
div.fsdocs-tip) now use the Popover API (Baseline 2024: Chrome 114+, Firefox 125+, Safari 17+). Tooltips are placed in the browser's top layer — noz-indexneeded, always above all other content. Fixes a positioning bug where tooltips appeared offset when the page was scrolled. The previousdisplay-toggle fallback has been removed. Tooltips also fade in with a subtle animation. #422, #1061 - Generated code tokens no longer use inline
onmouseover/onmouseoutevent handlers. Tooltips are now triggered viadata-fsdocs-tip/data-fsdocs-tip-uniqueattributes and a delegated event listener infsdocs-tips.js. Thepopoverattribute is also added to API-doc tooltip divs so they use the same top-layer path. #1061 - Changed
rangefields inMarkdownSpanandMarkdownParagraphDU cases fromMarkdownRange optiontoMarkdownRange, usingMarkdownRange.zeroas the default/placeholder value instead ofNone. - When no template is provided (e.g.
fsdocs convertwithout--template),fsdocs-tiptooltip divs are no longer included in the output. Tooltips require JavaScript/CSS from a template to function, so omitting them produces cleaner raw output. #1019 - Use
scrollbar-gutter: stable(Baseline 2024) on scroll containers (main,#fsdocs-main-menu, mobile menu, search dialog) to reserve scrollbar space and prevent layout shifts when content changes height. Also adds the missingoverflow-y: autotomainso pages that exceed the viewport height are independently scrollable. #1087, #1088
- Add
ApiDocParameterandApiDocReturnInfonamed record types to replace anonymous records returned byApiDocMember.ParametersandApiDocMember.ReturnInfo, making them usable across assembly boundaries. #735 - Add
///documentation comments to all public types, modules and members, and succinct internal comments, as part of ongoing effort to document the codebase. #1035 - Add "Copy" button to all code blocks in generated documentation, making it easy to copy code samples to the clipboard. #72
- Add
<FsDocsAllowExecutableProject>true</FsDocsAllowExecutableProject>project file setting to include executable projects (OutputType=Exe/WinExe) in API documentation generation. #918 - Add
{{fsdocs-logo-alt}}substitution (configurable via<FsDocsLogoAlt>MSBuild property, defaults toLogo) for accessible alt text on the header logo image. #626 - Add
fsdocs initcommand to scaffold a minimaldocs/index.md(and optionally_template.html) for new projects. #872 IFsiEvaluatornow inheritsIDisposable;FsiEvaluatordisposes its underlying FSI session when disposed, preventing session leaks in long-running processes. #341- Display of type constraints (e.g.
'T : equality,'T : comparison,'T :> IComparable) in generated API documentation. Constraints are shown inline using the F# compiler's compact(requires ...)style by default (e.g.'T (requires equality)). Controlled by<FsDocsTypeConstraints>in the project file with valuesNone,Short(default, inline compact form), andFull(separate "Constraints:" section). #591 - Show inherited members from documented base types in a new "Inherited members" section on type pages (MSDN-style). #590
- Add
<FsDocsNoInheritedMembers>true</FsDocsNoInheritedMembers>project file setting to suppress "Inherited from" sections in generated API docs. #1039 - Generate
llms.txtandllms-full.txtfor LLM consumption by default (opt out via<FsDocsGenerateLlmsTxt>false</FsDocsGenerateLlmsTxt>); when enabled, markdown output is always generated alongside HTML (even without a user-provided_template.md) andllms.txtlinks point to the.mdfiles. #951 #980 - Document
--saveimagesflag (none|some|all) with an explanation of each mode, and add a new "Embedding Images" section covering inline Base64 images andfsi.AddHtmlPrinterusage for chart/plot output. #683
- Strip parameter attribute annotations (e.g.
[<Optional>],[<DefaultParameterValue(null)>]) from hover tooltips in code snippets — these attributes made tooltips unreadable for methods with many optional parameters. #858 - Update
Ionide.ProjInfofrom 0.62.0 to 0.74.2, fixing a URI format exception inVisualTree.relativePathOfwhen paths contain unusual characters; migrate to the newWorkspaceLoaderAPI and remove the now-defunctIonide.ProjInfo.Slnpackage. #1054 - Fix project restore detection for projects with nonstandard artifact locations (e.g.
<UseArtifactsOutput>or the dotnet/fsharp repo layout): when the MSBuild call to locateproject.assets.jsonfails, emit a warning and proceed instead of hard-failing. #592 - Fix doc generation failure for members with 5D/6D+ array parameters by correctly formatting array type signatures in XML doc format (e.g.
System.Double[0:,0:,0:,0:,0:]for a 5D array). #702 - Fix
_menu_template.htmland_menu-item_template.htmlbeing copied to the output directory. #803 - Fix
ApiDocMember.Details.ReturnInfo.ReturnTypereturningNonefor properties that have both a getter and a setter. #734 - Improve error message when a named code snippet is not found (e.g.
(*** include:name ***)with undefined name now reports the missing name clearly). #982 - HTML-encode XML doc text nodes and unresolved
<see cref>values to prevent HTML injection and fix broken output when docs contain characters like<,>, or backticks in generic type notation. #748 - Add uppercase output kind extension (e.g.
HTML,IPYNB) toConditionalDefinesso that#if HTMLand(*** condition: HTML ***)work alongside their lowercase variants. #693 - Strip
#if SYMBOL/#endif // SYMBOLmarker lines fromLiterateCodesource before syntax-highlighting so they do not appear in formatted output. #693 - Improve tolerant cross-reference resolution so that unqualified
<see cref>attributes (e.g.<see cref="MyType" />,<see cref="MyType.MyMember" />,<see cref="GenericType1.Member" />`) resolve to the correct API documentation page when the referenced type is part of the documented assembly set. #605 - Members and functions annotated with
CompilerMessageAttribute(IsHidden=true)are now automatically excluded from API docs, matching the behaviour of[omit]/<exclude/>. #144 - Fix incorrect column ranges for inline spans (links, images, inline code) in the Markdown parser — spans and subsequent literals now report correct
StartColumn/EndColumnvalues. #744 - Normalize
--projectspaths to absolute paths before passing to the project cracker, fixing failures when relative paths are supplied. #793 - Fix incorrect paragraph indentation for loose list items: a paragraph indented at the outer list item's continuation level is now correctly treated as a sibling of surrounding sublists rather than being absorbed into the first sublist item's body. #347
- Improve CommonMark compliance for ATX headings: reject
#not followed by a space (e.g.#NoSpaceis now a paragraph), reject more than 6#characters as a heading, support 0–3 leading spaces before the opening#sequence, and fix empty content when the entire header body is a closing###sequence. #191 - Improve CommonMark compliance for thematic breaks, setext headings, and paragraph/list/blockquote interaction: thematic breaks now correctly interrupt paragraphs, list items, and lazy blockquote continuations; setext heading underlines now accept 0–3 leading spaces; and thematic breaks with 4+ leading spaces are no longer recognised (they are indented code blocks instead). #191
- Markdown API docs for members now use section-based layout (per-member
####headings) instead of a Markdown table, eliminating embedded<br />separators,|pipe escaping, and improving rendering of multi-line content and code examples. #725 - Update FCS to 43.10.100. #935
- Reduce dark mode header border contrast to match the visual subtlety of light mode borders. #885
- breaking Migrate theme color variables to use CSS
light-dark()function, eliminating the separate[data-theme=dark]block of variable overrides and automatically honouringprefers-color-schememedia query when the user has not manually set a preference. #1004
- Stable release.
- Add --ignoreuncategorized flag. #953
- Update FCS to 43.9.100. #945
- Update FCS to 43.8.301. #935
- Shrink API docs example heading font size a bit. #923
- Improve overall API doc content alignment consistency in various scenarios. #923
- Add expand/collapse-all button for API doc details. #920
- HTML structure of generated API documentation. #919
- Details improvements. #917
- Stable release.
- Avoid theme flicker in dark mode. #901
- Marking development of v20 as complete.
- Use dvh for full viewport height . #899
- Add -webkit-text-size-adjust. #889
- Set default font-size for code. #889
- Use empty replacement for
{{fsdocs-meta-tags}in API doc pages. #892
- Namespace description overflows content box. #886
- SEO-optimization for new theme. Allow
descriptionandkeywordsin frontmatter. Introduce{{fsdocs-meta-tags}}. #869
- Added the ability to use ipynb files as inputs #874
- Fsx outputs no longer treat inline html as F# code. Inline html blocks are now enclosed inside literate comments.
- Add more options to customize colors.
--fsdocs-theme-toggle-light-colorand--fsdocs-theme-toggle-dark-colorare now deprecated. Use--header-link-colorinstead.<FsDocsCollectionNameLink>
- Update FCS to 43.8.100
- Add more options to customize colors.
- Take
<UseArtifactsOutput>into account during the project restore check.
- Update styling for blockquote.
- Update search documentation.
- Tweak dark theme colors.
- Loosen the header link search restriction.
- Improve custom theme icon.
- Correct fsdocs-menu-item-active-class value.
- Fix example of Right-Side navigation.
- Allow for more fine-grained styling control.
- Return original prop when no Directory.Build.props is used as fallback.
- Add dynamic
max-widthto tooltip. - Overflow long namespace names in overview table.
- Smaller scrollbars on mobile devices
- Use property values from the current
Directory.Build.propsfile as fallback. #865
- Revisited search using fusejs
- Improve API doc styling.
- Make mobile menu scrollable.
- Don't use font ligatures, the can confuse newcomers of F#.
- Replace
{{fsdocs-list-of-namespaces}}with an empty string if no API docs are present. - Improve default styling of
blockquote - Add some padding for level 3 and 4 headers in 'on this page' section.
- default template style changes (
#fsdocs-page-menuoutsidemain, link around project name, overflow ellipsis for menu items)
{{root}}is now available as substitution in_body.htmland_head.html.
FsDocsNavbarPositionis no longer respected. Use CSS variables instead. See docs.⚠️ Search was completely removed and will be revisited in future versions.
- The default template was updated and is not compatible with previous versions.
- Dark mode is available out of the box.
{{fsdocs-head-extra}}can included additional html before the closing</head>when_head.htmlexists.{{fsdocs-body-extra}}can included additional html before the closing</body>when_body.htmlexists.- MSBuild property
<FsDocsFaviconSource>can be used to configure the favicon. activeclass is added to the active menu item in{{fsdocs-list-of-documents}}.- If menu templating is used,
{{fsdocs-menu-header-active-class}}and{{fsdocs-menu-item-active-class}}are avaiable. {{fsdocs-page-content-list}}contains an unordered list of the header (h1tillh4) of the current page. (if available)
- Fix code rendering on firefox. #851
- Update FCS to 43.7.400
- Pass
--multiemit-as default option forFsiEvaluator.
- Collapsible ApiDocs member info #778. The issue was fixed collaboratively in an Amplifying F# session with a recording that can be found here.
- Update FCS to 43.7.200
- Target
net6.0forfsdocs-tool#799
- Update ipynb output metadata #809
- One FSI evaluator per docs file #737
- Better test project detection #800
- Fix external docs link #794
- Improvement for
<seealso/>#789
- Fix support for
<exclude/>#786
- Resolve markdown links in raw html #769
- Update to .NET 7.0.100
- Update to .NET 6.0.400
- Update to Ionide.ProjInfo 0.60
- Custom templating for menus
- Fixes Markdown parser gets multiple-underscores-inside-italics wrong #389
- Trim the
--fscoptionsbefore passing them asotherflags. (comment #616)
- fix #749
- Update to .NET 6
- Fixes 703, 700 -
--strictis now considerably stricter, and more diagnostics being shown
- Skip the output folder when processing
- Remove unused TransformAndOutputDocument from API
- Fixes Can't yet format InlineHtmlBlock #723
- Fixes
<code>blocks are emitting<pre>blocks with escapes no longer escaped #712
- Remove front-matter output from notebooks
- Improve package description
- Style blockquotes
- Bump to FSharp.Compiler.Service 40.0
- Fix bottom margin in default CSS
- Improve github and signature links
- Fix typo in location for custom CSS
- scrollable navbar #677 by nhirschey
- Show field type for record fields #674
- Add --ignoreprojects flag #676 by chengh42
- Add frontmatter, category, categoryindex, index, title
- testing package publish
- testing package publish
- add favicon.ico to template and use F# logo as default favicon for generated sites
- update to Ionide.ProjInfo
- use computed args for references in API doc generation
- Fix #616
- Fix #662
- Fix #646
- Switch to cleaner default styling based on DiffSharp styles
- Change
fsdocs-menutofsdocs-nav
- Add cref copy buttons by default
- Fix more formatting and switch to
fsdocs-member-usageinstead offsdocs-member-name
- Permit
cref:T:System.Consolecode references in markdown content
- Apply substitutions to content
- Add
fsdocs-source-filenameandfsdocs-source-basenamesubstitutions
- Trim spaces from examples (TrimEnd only)
- Trim spaces from examples
- Proper fix for elide multi-language docs from navigation and site search index
- Rename --property flag to --properties
- Elide multi-language docs from navigation and site search index
- update FCS, allow fsdocs to roll forward to net5.0
- Refactor the templating engine and the command tool cache
- Refactor the project cracker
- Retry project cracking when there isn't a targetPath
- Add include-it-raw literate command
- Add more complete info on how to upgrade
- CommandTool: add hot reload to the watch command
- Document how to do math in XML comments
- Add --strict flag to fsdocs for stricter checking
- Add --property flag to fsdocs to pass properties to dotnet msbuild
- Better diangostics and logging for fsdocs
-
Comma-separate interface list in API docs
-
Remove untyped Sections from ApiDocComment since individual supported sections are now available
-
ApiDocs: cref to members are not resolving to best possible link
-
ApiDocs: namespace docs are showing in module/type summaries as well
-
In ApiDocsModel, separate out the parameter, summary, remarks sections etc.
-
In ApiDocsModel, integrate the parameter types with the parameter docs (when using XML docs)
-
In HTML generation for API docs, locate the github link top right
-
In ApiDocsModel.Generate, optionally give warnings when XML doc is missing or parameter names are incorrect. Activate using
-
In ApiDocsModel, change "Parameters" to "Substitutions"
-
Fix formatting of (most) custom operators
-
Fix formatting of op_XYZ binary and unary operators
-
change
<namespacesummary>...<namespacesummary>to<namespacedoc> <summary>... </summary> </namespacedoc> -
change
<categoryindex>3<categoryindex>to<category index="3">...</category>
-
support
<namespacesummary>...<namespacesummary> -
support
<namespaceremarks>...<namespaceremarks> -
support
<note>...<note> -
support
<category>...</category> -
support
<exclude /> -
allow
<a href="..." >in XML doc comments -
allow
<paramref name="..." >in XML doc comments -
document XML doc things supported
- instruct about settings
- fix images in nuget
- include templates
- bump version
- bump version
- fix navbar position option fixed-left
- fixed property computation
-
fixed typo for
LICENCE.md -
all classes to have
fsdocs-prefix
-
fixed all classes to have
fsdocs-prefix -
added documentation on styling
- fixed root
-
add text content of markdown and scripts to generated search index
-
overhaul the substitution names used by FSharp.Formatting and expected in the template. The table is in the docs and below
-
generate {{fsdocs-list-of-documents}} substitution and use it in both API docs and content
-
generate {{fsdocs-list-of-namespaces}} substitution and use it in both API docs and content
-
fix link model so {{root}} is always respected
-
Add
qualifyparameter that asks to qualify all names by the collection name e.g. FSharp.Core -
Respect per-project settings, e.g. if one nuget package has a different set of authors or home page to another
-
Add documentation about styling
-
Allow fixed-left and fixed-right positions for the navbar
-
Add
{{fsdocs-logo-link}}parameter to default template -
Add
{{fsdocs-logo-link}}parameter to default template -
generate HTML giving hyperlinks for types with cross-links
-
switch to left bootstrap nav bar in template for a table of contents
-
improve sizings
-
move to one copy of template in docs/_template.html
-
ApiDocsTypeDefinition and ApiDocsModule merged to ApiDocsEntity
-
Default template now expects logo in img/logo.png
-
Improvements in default HTML generation
-
ApiDocComment.Blurb renamed to ApiDocComment.Summary and only populated with summary text for things read from XML
-
simplify tool instructions
-
add info about upgrading
- fix mistake in laying down
extrasdirectory
- put extra content in
extrasdirectory in nuget package and include Dockerfile and NuGet.config
- show extended type in generated docs for extension members
- include fsdocs-styles.css, fsdocs-search.js, fsdocs-tips.js in built site 'content' directory by default
- use default template from nuget package by default
- fix formatting of generic parameters so they don't show inference variables for members
- fix default styling
- improve display in FSharp.Formatting API docs and add more information
- Watch defaults to
tmp/watch
- Add
(*** include-fsi-output **) - Add
(*** include-fsi-merged-output **) - Add server to
dotnet watchand by default switch to local host - Always inject
fsi.AddPrinter,fsi.AddHtmlPrinteretc. into the programming model for literate scripts
- Remove the
apicommand from the command line tool (buildgeneralises it) - Add missing search.js
- build the Lunr
index.jsonfrom every execution offsdocs build - Make the search index entries available as part of the ApiDocs model
- Add search box to generated docs
- Add
ApiDocsprefix to all types inApiDocsModel - Remove
DetailsfromApiDocsModel
- Correct behaviour of '--clean'
- Fix emit of odd character in latex output
- Paket update and remove workaround code
- add '--clean' to fsdocs
- Update to FCS v36.0
- Add .ipynb output option for documents
- Add .fsx output option for documents
- Literate.WriteHtml --> Literate.ToHtml/Literate.WriteHtml overloads
- MetadataFormat.Generate --> ApiDocs.GenerateHtml/ApiDocs.GenerateModel overloads
- Fix Literate.* to do approximate (non-razor) templating/
- Remove Razor support
- HTML templates now use
{{prop-name}} - FSharp.CodeFormat --> FSharp.Formatting.CodeFormat
- FSharp.Markdown --> FSharp.Formatting.Markdown
- FSharp.Literate --> FSharp.Formatting.Literate and FSharp.Formatting.Literate.Evaluation
- FSharp.MetadataFormat --> FSharp.Formatting.ApiDocs
- FSharp.ApiDocs uses HTML substitution for templating, no Razor
- Add "include-it" and "include-output" with implied reference to the immediately preceding snippet
- For command line tool
- Rename fsformatting to fsdocs
- Update command line parser
- "fsformatting literate process-directory" --> "fsdocs convert"
- "fsformatting metadata-format generate" --> "fsdocs api"
- "--dllFiles" --> "--dlls"
- "--outDir" --> "--output"
- "--outputDirectory" --> "--output"
- "--output" is optional (defaults to 'output')
- "--inputDirectory" --> "--input"
- Add --nonpublic
- Add --xmlComments
- Automatically populate metadata from project settings.
- Add
fsdocs buildcommand to the documentation generator that has lots of sensible defaults.
- Support preview F# language features.
- Add support for customizing assigned CSS class.
- Add .NET Core support for all libraries.
- Update to FSCS v35.0.
- Add helpers for CustomOperationAttribute.
- Update to FSCS v34.1.
- Update to FSCS v34.
- Fix packaging issues.
- Add .NET Core support for all libraries.
- Update to latest FSharp.Compiler.Service
- remove beta tag since it is already widely used
- Update to latest FSharp.Compiler.Service
- No longer filter FSHarp.Core based on optdata/sigdata (it is now always bundled)
- FSharp.Formatting.Literate for netstandard2.0
- Fix usage formatting - #472
- Added support for attributes on modules, types and members
- Updated razor templates to show attributes and added a warning for obsolete API
- Upgrade FSharp.Compiler.Service to be compatible with FAKE 5
- Fix some links on the website - #458
- Another link on the website - #454
- Support highlighting for paket.dependencies
storagekeyword - #451 - In order to upgrade follow instructions at https://fsprojects.github.io/FSharp.Formatting/upgrade_from_v2_to_v3.html
- Improve Stacktrace on Script file processing
- Fix System.ValueType dep.
- Include razor component.
- Always generate anchors when using command line tool.
- Don't hide errors in fsformatting tool (Literate).
- Improve error message by using inner exceptions.
- Don't hide errors in fsformatting tool.
- MarkdownSpan and MarkdownParagraph now use named DUs
- Add range to MarkdownParagraph and MarkdownSpan (#411)
- FSharp.Formatting no longer has a strong dependency on Razor (#425)
- FSharp.Formatting no longer depends on VFPT.Core (#432)
- Add beta packages to AppVeyor feed.
- Update FSharp.Compiler.Service component.
- Use
#I __SOURCE_DIRECTORY__in the loads script (more reliable)
- Fixes issues with comments and keywords in Paket highlighter (#408)
- Fix tooltip flickering in CSS (#406)
- End blockquote on a line with an empty blockquote (fix #355) (#400)
- Add code to parse table rows correctly (#394)
- Also fixes (#388) Markdown parser doesn't recognize inline code
x | yinside table cell
- Temporarily pin FSharp.Compiler.Service (#395)
- Cache is new keyword in Paket (#392)
- Added TypeScript to the CSharpFormat project (#386)
- Fixes issues in PaketFormat (#381) - colorize HTTP and file prefix
- Reliable getTypeLink (#380) - avoid crashes
- Colors paket keywords (#379)
- Adds PaketFormat to not color URLs as comments in Paket files (#349)
- Improve the load script to fix FsLab issue (https://github.com/fslaborg/FsLab/issues/98)
- Make logging to file optional using environment variable
- Be compatible with the common-mark spec for 'Fenced code blocks' and 'Indented code blocks'.
- See #343.
- Please follow-up by adding support for more sections of the spec.
- Add the section to https://github.com/fsprojects/FSharp.Formatting/blob/master/tests/FSharp.Markdown.Tests/CommonMarkSpecTest.fs#L20.
- Fix the newly enabled tests.
- Add CompiledName to members with F# specific naming (#372)
- update dependencies
- Upgrade the CommandTool to F# 4 and bundle FSharp.Core with sigdata and optdata.
- Fix crash when a fenced code block starts with an empty line (#361)
- Support for all known xml elements (#331)
- Update dependencies to be compatible with FSharp.Compiler.Service >=1.4.0.3
- Adds methods for cross-type links #330 (#330)
- Require compatible F# Compiler Service in Nuspec (fix #337)
- Fix load script (wrap logging setup in try catch properly)
- paket update && fix compilation (#338)
- Wrap logging setup in try catch
- Add detailed logging and new FSharp.Formatting.Common.dll file
- Fix bug in C# code formatting tool (FormatHtml)
- Support multiple snippets in Literate.Parse (This is obsolete, but needed for www.fssnip.net.)
- Fix HTML escaping of code blocks with unknown languages (#321, #322)
- Generate 'fssnip' class for non-F#
tags for consistency
- Provide an option to disable
fsi.AddPrinter(#311) - Generated line numbers for HTML are the same for F# and non-F#
- Use
otherFlagsparameter (#308) - Format code in Markdown comments (#307, #36)
- Simplify using FCS interaction using Yaaf.Scripting (#305)
- Do not load dependencies when initializing evaluator
- Undo require exact version of F# Compiler Service
- Require exact version of F# Compiler Service
- Add back RazorEngine.dll (#302)
- Properly encode '>' entities (#84)
- Generate line numbers for non-F# code (#227)
- Support headings on the same line as comment (#147)
- Fixes in HTML encoding of non-F# code snippets (#249, #213)
- Remove Razor mono workaround (#279)
- Add a public API to process a customized LiterateDocument (#282)
- Add an API to process a customized LiterateDocument (#289)
- Use template path if it is rooted (#281)
- Enable evaluation tests for literate scripts
- Create
fsiobject withoutFSharp.Compiler.Interactive.Settings.dll - Fix #229 (Key already exists exception when parsing an assembly)
- Update to Visual Studio 2013 (only)
- Update LaTeX colors using CSS Light theme (#278)