Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 3 additions & 8 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,11 @@
"isRoot": true,
"tools": {
"paket": {
"version": "8.0.3",
"version": "9.0.2",
"commands": [
"paket"
]
},
"fantomas": {
"version": "6.3.0",
"commands": [
"fantomas"
]
],
"rollForward": false
}
}
}
44 changes: 14 additions & 30 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,39 +7,23 @@ on:

jobs:
build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v1
uses: actions/setup-dotnet@v3
with:
dotnet-version: 8.0.x
dotnet-version: |
9.0.x
8.0.x
- name: Restore dependencies
run: dotnet tool restore; dotnet restore
- name: Build
run: dotnet build --no-restore
- name: Test
run: dotnet test --no-build --verbosity normal

publish:

runs-on: ubuntu-latest
needs: build
if: startsWith(github.ref, 'refs/tags/v')

steps:
- uses: actions/checkout@v2
- name: Setup .NET
uses: actions/setup-dotnet@v1
with:
dotnet-version: 8.0.x
- name: Restore tools
run: dotnet tool restore
- name: Publish depman-fsproj
uses: brandedoutcast/publish-nuget@v2.5.2
with:
PROJECT_FILE_PATH: src/DependencyManager.FsProj/DependencyManager.FsProj.fsproj
VERSION_FILE_PATH: ./Directory.Build.props
NUGET_KEY: ${{secrets.NUGET_API_KEY}}
- name: Build and test
run: |
dotnet build --no-restore
dotnet test --no-build --verbosity normal
- name : Pack and Publish if tag present
if: startsWith(github.ref, 'refs/tags/v')
run: |
dotnet pack -c Release -o nuget-packages --no-build
dotnet nuget push nuget-packages/*.nupkg --api-key ${{ secrets.NUGET_API_KEY }} --source https://api.nuget.org/v3/index.json --skip-duplicate
9 changes: 7 additions & 2 deletions .paket/Paket.Restore.targets
Original file line number Diff line number Diff line change
Expand Up @@ -235,14 +235,15 @@
<Splits>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',').Length)</Splits>
<PackageName>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[0])</PackageName>
<PackageVersion>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[1])</PackageVersion>
<Reference>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[2])</Reference>
<AllPrivateAssets>$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[4])</AllPrivateAssets>
<CopyLocal Condition="%(PaketReferencesFileLinesInfo.Splits) &gt;= 6">$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[5])</CopyLocal>
<OmitContent Condition="%(PaketReferencesFileLinesInfo.Splits) &gt;= 7">$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[6])</OmitContent>
<ImportTargets Condition="%(PaketReferencesFileLinesInfo.Splits) &gt;= 8">$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[7])</ImportTargets>
<Aliases Condition="%(PaketReferencesFileLinesInfo.Splits) &gt;= 9">$([System.String]::Copy('%(PaketReferencesFileLines.Identity)').Split(',')[8])</Aliases>
</PaketReferencesFileLinesInfo>
<PackageReference Include="%(PaketReferencesFileLinesInfo.PackageName)">
<Version>%(PaketReferencesFileLinesInfo.PackageVersion)</Version>
<PackageReference Condition=" '$(ManagePackageVersionsCentrally)' != 'true' Or '%(PaketReferencesFileLinesInfo.Reference)' == 'Direct' " Include="%(PaketReferencesFileLinesInfo.PackageName)">
<Version Condition=" '$(ManagePackageVersionsCentrally)' != 'true' ">%(PaketReferencesFileLinesInfo.PackageVersion)</Version>
<PrivateAssets Condition=" ('%(PaketReferencesFileLinesInfo.AllPrivateAssets)' == 'true') Or ('$(PackAsTool)' == 'true') ">All</PrivateAssets>
<ExcludeAssets Condition=" %(PaketReferencesFileLinesInfo.CopyLocal) == 'false' or %(PaketReferencesFileLinesInfo.AllPrivateAssets) == 'exclude'">runtime</ExcludeAssets>
<ExcludeAssets Condition=" %(PaketReferencesFileLinesInfo.OmitContent) == 'true'">$(ExcludeAssets);contentFiles</ExcludeAssets>
Expand All @@ -252,6 +253,10 @@
<AllowExplicitVersion>true</AllowExplicitVersion>

</PackageReference>

<PackageVersion Include="%(PaketReferencesFileLinesInfo.PackageName)">
<Version>%(PaketReferencesFileLinesInfo.PackageVersion)</Version>
</PackageVersion>
</ItemGroup>

<PropertyGroup>
Expand Down
3 changes: 0 additions & 3 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
{
"FSharp.fsiExtraParameters": [
"--compilertool:C:/Users/leko.tomas/source/DependencyManager.FsProj/.depman-fsproj/.store/depman-fsproj/0.2.8/depman-fsproj/0.2.8/tools/net8.0/any"
],
"yaml.schemas": {
"https://json.schemastore.org/github-workflow.json": ".github/workflows/build.yml"
},
Expand Down
6 changes: 3 additions & 3 deletions Directory.Build.props
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<Project>
<PropertyGroup>
<Version>0.2.9</Version>
<Authors>Tomas Leko</Authors>
<Version>0.2.11</Version>
<Authors>Florian Verdonck, Krzysztof Cieslak, Tomas Leko, François-David Collin</Authors>
<Description>
This nuget package enables loading .fsproj files in .fsx scripts.
To use it install nuget package and add command line option "--compilertool:directory_containing_dependencymanager"
or if you are using ionide add the line to "FSharp.fsiExtraParameters".
or if you are using ionide add the line to "FSharp.FSIExtraInteractiveParameters" and "FSharp.FSIExtraSharedParameters".
</Description>
<PackageReadmeFile>README.md</PackageReadmeFile>
<PackageLicenseUrl>LICENSE.md</PackageLicenseUrl>
Expand Down
19 changes: 13 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,14 @@
[![NuGet Package](https://img.shields.io/nuget/v/depman-fsproj.svg)](https://www.nuget.org/packages/depman-fsproj/)
[![GitHub Actions Status](https://github.com/fradav/DependencyManager.FsProj/actions/workflows/build.yml/badge.svg)](https://github.com/fradav/DependencyManager.FsProj/actions)


> [!NOTE]
> This is almost entirely based on the work of [Ionide](https://github.com/ionide/DependencyManager.FsProj) and the subsequent fork of [Thomas Leko](https://github.com/ThisFunctionalTom/DependencyManager.FsProj). I've updated some things there and there to run on the latest .NET Core SDK (9.0.x) and [Ionide.ProjInfo](https://github.com/ionide/proj-info). I personally daily drive this tool for development purposes.

# DependencyManager.FsProj

This nuget package enables loading `.fsproj` files in `.fsx` scripts.
It extends `#r` syntax with `fsproj` dependency manager, so you can do `#r "fsproj: PATH_TO_FSPROJ.fsproj"` and it will load all references and files from the project.
This NuGet package enables loading `.fsproj` files in `.fsx` scripts.
It extends `#r` syntax with `fsproj` dependency manager, so you can do `#r "fsproj: PATH_TO_FSPROJ.fsproj"`, and it will load all references and files from the project.

Sample:

Expand All @@ -27,11 +34,11 @@ Run `dotnet tool install --global depman-fsproj` and once it is installed run `d

*Imposter syndrome disclaimer*: I want your help. No really, I do.

There might be a little voice inside that tells you you're not ready; that you need to do one more tutorial, or learn another framework, or write a few more blog posts before you can help me with this project.
There might be a little voice inside that tells you're not ready; that you need to do one more tutorial, or learn another framework, or write a few more blog posts before you can help me with this project.

I assure you, that's not the case.

This project has some clear Contribution Guidelines and expectations that you can [read here](https://github.com/ThisFunctionalTom/DependencyManager.FsProj/blob/master/CONTRIBUTING.md).
This project has some clear Contribution Guidelines and expectations that you can [read here](https://github.com/fradav/DependencyManager.FsProj/blob/master/CONTRIBUTING.md).

The contribution guidelines outline the process that you'll need to follow to get a patch merged. By making expectations and process explicit, I hope it will make it easier for you to contribute.

Expand All @@ -41,9 +48,9 @@ Thank you for contributing!

## Contributing and copyright

The project is hosted on [GitHub](https://github.com/ThisFunctionalTom/DependencyManager.FsProj) where you can [report issues](https://github.com/ThisFunctionalTom/DependencyManager.FsProj/issues), fork
The project is hosted on [GitHub](https://github.com/fradav/DependencyManager.FsProj) where you can [report issues](https://github.com/fradav/DependencyManager.FsProj/issues), fork
the project and submit pull requests.

The library is available under [MIT license](https://github.com/ThisFunctionalTom/DependencyManager.FsProj/blob/master/LICENSE.md), which allows modification and redistribution for both commercial and non-commercial purposes.
The library is available under [MIT license](https://github.com/fradav/DependencyManager.FsProj/blob/master/LICENSE.md), which allows modification and redistribution for both commercial and non-commercial purposes.

Please note that this project is released with a [Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.
17 changes: 0 additions & 17 deletions docs/README.md

This file was deleted.

Loading