New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ensure x86|x64\e_sqlite3.dll are included in .vsix #2098

Merged
merged 5 commits into from Dec 6, 2018

Conversation

Projects
None yet
4 participants
@jcansdale
Copy link
Collaborator

jcansdale commented Dec 3, 2018

Ensure e_sqlite.dll is included in .vsix when built using Visual Studio. This file was only being included in the .vsix when built using MSBuild from the command line.

I don't like how brittle this is, but it was the only way I could find to ensure that x86|x64\e_sqlite3.dll are included in .vsix when built using Visual Studio.

What this PR does

  • Add a <PackageReference Include="SQLitePCL.raw_basic"> to GitHub.VisualStudio.csproj
    • Referencing this package directly appears to ensure that native artifacts are included in the .vsix when built using Visual Studio. This was never an issue with command line builds.

How to test

  1. Build the solution using Visual Studio
  2. Check that GitHub.VisualStudio.vsix contains x86\e_sqlite3.dll and x64\e_sqlite3.dll (you can view contents using 7-zip)

What was happening

Here is a comparison between a .vsix build using Visual Studio and one build using MSBuild from the command line.

image

It was causing the following when attempting to view a PR file diff.

image

image

image

Notes

I'm hoping it was also the reason some buttons weren't showing up. 馃 We'll need to keep a look out for this one!

image

Ensure e_sqlite.dll is included in .vsix
Ensure e_sqlite.dll is included in .vsix when built using Visual
Studio. This file was only being included in the .vsix when built using
MSBuild from the command line.

@jcansdale jcansdale requested a review from StanleyGoldman Dec 3, 2018

@jcansdale jcansdale changed the title Ensure e_sqlite.dll is included in .vsix Ensure e_sqlite3.dll is included in .vsix Dec 3, 2018

@jcansdale jcansdale changed the title Ensure e_sqlite3.dll is included in .vsix [wip] Ensure e_sqlite3.dll is included in .vsix Dec 3, 2018

Include (x86|x64)\e_sqlite3.dll in VSIX
Explicitly include x86\e_sqlite3.dll and x64\e_sqlite3.dll from content
files in VSIX.

@jcansdale jcansdale changed the title [wip] Ensure e_sqlite3.dll is included in .vsix Ensure e_sqlite3.dll is included in .vsix Dec 4, 2018

@jcansdale jcansdale changed the title Ensure e_sqlite3.dll is included in .vsix [wip] Ensure e_sqlite3.dll is included in .vsix Dec 4, 2018

Include reference to SQLitePCLRaw.bundle_e_sqlite3
A direct reference to this package causes x86\e_sqlite3.dll and
x64\e_sqlite3.dll be copied to the output directory so they can be
picked by the VSIXSourceItem filter.

@jcansdale jcansdale force-pushed the fixes/include-e_sqlite.dll-in-vsix branch from 85e981a to 7868846 Dec 4, 2018

@jcansdale jcansdale changed the title [wip] Ensure e_sqlite3.dll is included in .vsix Ensure e_sqlite3.dll is included in .vsix Dec 4, 2018

@jcansdale jcansdale changed the title Ensure e_sqlite3.dll is included in .vsix Ensure x86|x64\e_sqlite3.dll are included in .vsix Dec 4, 2018

@jcansdale

This comment has been minimized.

Copy link
Collaborator

jcansdale commented Dec 4, 2018

@madskristensen i'm seeing a strange issue where artifacts are appearing in .vsix depending on whether is's build from the command line with MSBuild or from inside Visual Studio. When built using Visual Studio the e_sqlite3.dll isn't getting included, so I've needed to resort to the hack in this PR. Any idea what's going on? 馃槙

@madskristensen

This comment has been minimized.

Copy link
Contributor

madskristensen commented Dec 4, 2018

@dgriffen Do you know?

@StanleyGoldman StanleyGoldman merged commit 022a42f into master Dec 6, 2018

2 checks passed

continuous-integration/appveyor/branch AppVeyor build succeeded
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details

@meaghanlewis meaghanlewis added this to the 2.6.0 milestone Dec 6, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment