telplin 0.15.0

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global telplin --version 0.15.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local telplin --version 0.15.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=telplin&version=0.15.0
                    
nuke :add-package telplin --version 0.15.0
                    

Telplin

Logo

Telplin helps F# users to generate matching signature files for implementation files.

Usage

dotnet tool install -g telplin
telplin src/App/App.fsproj --files App/Api.fs

This writes Api.fsi next to Api.fs, lists it in the project, and keeps only what other files of the project use: a let binding nothing else calls is left out, which makes it private. The project is type checked before and after, so a signature that does not match is never written.

The same, from the file itself: Telplin finds the project it belongs to.

telplin src/App/Api.fs

Pass --keep-unused to get everything the file exposes, and leave out --files to do the whole project. Run telplin --help for the other flags.

Checkout our documentation for more information.

Local development

Run online tool

dotnet fsi build.fsx -- -p Watch

Format code

dotnet fantomas src tests docs tool
Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
0.17.0 102 8/30/2026
0.16.0 83 8/30/2026
0.15.0 87 8/30/2026
0.14.0 83 8/30/2026
0.13.0 82 8/30/2026
0.12.0 84 8/30/2026
0.11.0 208 4/10/2026
0.10.0 2,544 2/10/2025
0.9.6 26,508 2/22/2024
0.9.5 335 1/31/2024
0.9.4 366 1/29/2024
0.9.3 395 12/12/2023
0.9.2 325 12/1/2023
0.9.1 279 11/22/2023
0.9.0 327 11/22/2023
0.8.3 357 6/28/2023
0.8.2 327 6/14/2023
0.8.1 355 6/13/2023
0.8.0 316 6/12/2023
Loading failed

### Changed

- An exception while converting one declaration no longer stops the whole run: the declaration is left out and the rest of the file is still produced. The CLI reports every declaration it left out as `file(line,col): error: message`, followed by the source around it with the declaration underlined. Progress lines and warnings go to stderr, so stdout holds only results. [#72](https://github.com/nojaf/telplin/issues/72)

### Fixed

- A member with a `[<DefaultParameterValue>]` whose value is the default of a struct, such as `Nullable<TimeSpan>()`, no longer fails to parse. [#348](https://github.com/nojaf/telplin/issues/348)
- A type declared in a module with `ModuleSuffix` (explicit, or implicit when a type shares the module's name) is no longer qualified with the module name inside that module. [#71](https://github.com/nojaf/telplin/issues/71)
- A backtick inside a backticked name, such as ```` ```a` b`` ````, is escaped correctly. Fixed by the FCS update, now covered by a test. [#88](https://github.com/nojaf/telplin/issues/88)