fsprojects / FAKE

FAKE - F# Make
https://fake.build
Other
1.28k stars 581 forks source link

The namespace Sql ist not defined #2660

Closed thomrad closed 2 years ago

thomrad commented 2 years ago

Description

Adding the Sql namespace gives me the error "The namespace Sql ist not defined" - I want to use it for the SqlServer module. https://fake.build/sql-sqlserver.html

Repro steps

I am using fake cli version 5.22.0 with .net 6.0 sdk

#r "paket: 
nuget Fake.Core
nuget Fake.Core.Environment
nuget Fake.Core.Target
nuget Fake.Core.Xml
nuget Fake.IO.FileSystem
nuget Fake.Sql
//"
#load ".fake/build.fsx/intellisense.fsx"

open Fake.Sql

Deleting directory .fake Deleting file build.fsx.lock

running fake build

Installs all Dependencies / Packages including Fake.Sql

Still doesn't know the namespace.

Expected behavior

open the Fake.Sql namespace without problem.

Actual behavior

Does not know the namespace Fake.Sql

Known workarounds

Don't know any workaround

github-actions[bot] commented 2 years ago

Welcome to the FAKE community! Thank you so much for creating your first issue and therefore improving the project!

yazeedobaid commented 2 years ago

@thomrad In your dependencies list you have specified Fake.Sql

#r "paket: 
nuget Fake.Core
nuget Fake.Core.Environment
nuget Fake.Core.Target
nuget Fake.Core.Xml
nuget Fake.IO.FileSystem
nuget Fake.Sql                              // this line
//"

Fake doesn't have a package called Fake.Sql. It has Fake.Sql.DacPac, Fake.Sql.SqlPackage, and Fake.Sql.SqlServer Please specify anyone (or all) of these packages and you will have the Fake.Sql namespace available.

thomrad commented 2 years ago

@yazeedobaid Unfortunately those packages are not available on nuget:

There was a problem while setting up the environment: -> Unable to retrieve package versions for 'Fake.Sql.SqlServer'

How should I retrieve that package? Via github? If so, how do let my script know, that those packages are available? I am totally new to fake and paket and beginner level f# ....

yazeedobaid commented 2 years ago

@thomrad package Fake.Sql.SqlServer is not pushed to NuGet anymore. Please try the other two packages. Here are the links for them in NuGet. Fake.Sql.DacPac Fake.Sql.SqlPackage

thomrad commented 2 years ago

@yazeedobaid Thank you, that did the trick. But unfortunately the DacPac and SqlPackage don't help. SqlServer had what I needed and that is not part of those packages. So, the only thing I can do, is to build fake on my machine and then use that SqlServer module.

Thank's again for helping out.

yazeedobaid commented 2 years ago

@thomrad yes you can do that. Sorry I'm not aware of why the SqlServer module is not pushed to NuGet! I'll try to look and see why...