System.Data.SQLite

Login
This project makes use of Eagle, provided by Mistachkin Systems.
Eagle: Secure Software Automation

Release Procedures

Follow these steps to prepare a new release of System.Data.SQLite. Unless otherwise noted, all steps need to be done in the order specified.

Build x86 & x64 Binaries

  1. The binaries for all supported architectures and platforms must be built using procedures very similar to those documented in the normal build procedures.
  2. Open a normal command prompt window with "cmd.exe".
  3. Change the current directory to "<root>\Setup".
  4. Enter the following command to build all the x86 and x64 binaries:

    build_all.bat

Test x86 & x64 Binaries

  1. The binaries for all supported architectures and platforms must be tested using procedures very similar to those documented in the normal test procedures.
  2. Open a normal command prompt window with "cmd.exe".
  3. Change the current directory to "<root>\Setup".
  4. Enter the following command to test all the x86 or x64 binaries, depending on the processor architecture of the current machine:

    test_all.bat
  5. Locate a machine with a processor architecture different from the one tested in the previous step and then repeat all the previous steps.

Build Windows CE Binaries

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>\Setup".
  3. Enter the following command to build all the binaries available for Windows CE:

    build_ce_200x.bat

    This assumes that Visual Studio 2005 and/or Visual Studio 2008, "Professional" edition or "better" and the bundled Pocket PC 2003 SDK are installed.
  4. Enter the following command to build all the binaries available for Windows Embedded Compact 2013:

    build_ce_2013.bat

    This assumes that Visual Studio 2012, "Professional" edition or "better" and the Windows Embedded Compact 2013 Toolkit are installed.

Test Windows CE Binaries via Automation

  1. Intead of testing the Windows CE binaries manually as described in the next section, the following steps may be used.
  2. Open a normal command prompt window with "cmd.exe".
  3. Change the current directory to "<root>\Setup".
  4. Enter the following command to test all the binaries available for Windows CE:

    test_ce_200x.bat

Test Windows CE Binaries Manually

  1. If the Windows CE binaries were already tested using the automation described in the previous section, skip this section.
  2. Launch Visual Studio 2005, "Professional" edition or "better" with the bundled Pocket PC 2003 SDK. As of this writing, in January 2012, Visual Studio 2010 and later will not work as they do not include the necessary built-in support for Windows CE and the .NET Compact Framework.
  3. Open the "SQLite.NET.2008.sln" solution file in the "<root>" directory.
  4. Change the active solution configuration to "Debug".
  5. Change the active solution platform to "Pocket PC 2003 (ARMV4)".
  6. Right-click the "testce" project in the Solution Explorer window and select "Set as StartUp Project".
  7. Select "Start Debugging" from the "Debug" menu.
  8. If any rebuild prompts appear (e.g. "SQLite.Interop.CE.2008", "Would you like to build it?"), select "Yes".
  9. When prompted for the device type to deploy the application to, select the "Pocket PC 2003 SE Emulator" device.
  10. Make sure all that the tests pass (i.e. they emit "SUCCESS").

Update Documentation

  1. Update the "<root>\readme.htm" file with information about all the major changes since the last released version.
  2. Copy those changes to the "<root>\Doc\Extra\Provider\version.html" and "<root>\www\news.wiki" files, reformatting as necessary to fit with the existing document conventions.

Build Documentation

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>\Doc".
  3. Enter the following command to build all the documentation in CHM format:

    tclsh.exe buildChm.tcl

    This assumes that ActiveTcl version 8.4 or later, the HTML Help Workshop, and NDoc3 have all been installed using the default settings.

Build Setup Release Packages

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>\Setup".
  3. Enter the following command to build all the setup packages for x86 and x64:

    bake_all.bat

Build x86 & x64 Binary Release Packages

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>\Setup".
  3. Enter the following command to build all the binary release packages for x86 and x64:

    release_all.bat

Build x86 & x64 Static Binary Release Packages

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>\Setup".
  3. Enter the following command to build all the static binary release packages for x86 and x64:

    release_static.bat

Build Windows CE Binary Release Packages

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>\Setup".
  3. Enter the following command to build all the binary release packages for Windows CE:

    release_ce_200x.bat
  4. Enter the following command to build all the binary release packages for Windows Embedded Compact 2013:

    release_ce_2013.bat

Build Source Release Packages

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>\Setup".
  3. Enter the following command to build all the source release packages:

    archive.bat

Verify All Release Packages

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>\Setup".
  3. Enter the following command to build all the source release packages:

    ..\Externals\Eagle\bin\EagleShell.exe -file verify.eagle Output

    If errors are generated, the file "<root>\Setup\verify.lst" may need to be updated to account for the files that have been added and/or removed from the release archives since the previous release.

Build NuGet Packages

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>".
  3. Enter the following command to build the "default" NuGet package:

    nuget.exe pack NuGet\SQLite.nuspec

    This assumes that the NuGet binary is available somewhere along the PATH.
    Please refer to NuGet Documentation for further details.
  4. Enter the following command to build the "core" NuGet package:

    nuget.exe pack NuGet\SQLite.Core.nuspec

    This assumes that the NuGet binary is available somewhere along the PATH.
    Please refer to NuGet Documentation for further details.
  5. Enter the following command to build the "EF6" NuGet package:

    nuget.exe pack NuGet\SQLite.EF6.nuspec

    This assumes that the NuGet binary is available somewhere along the PATH.
    Please refer to NuGet Documentation for further details.
  6. Enter the following command to build the "LINQ" NuGet package:

    nuget.exe pack NuGet\SQLite.Linq.nuspec

    This assumes that the NuGet binary is available somewhere along the PATH.
    Please refer to NuGet Documentation for further details.
  7. Enter the following command to build the "managed-only" NuGet package:

    nuget.exe pack NuGet\SQLite.MSIL.nuspec

    This assumes that the NuGet binary is available somewhere along the PATH.
    Please refer to NuGet Documentation for further details.
  8. Enter the following command to build the NuGet package for x86:

    nuget.exe pack NuGet\SQLite.x86.nuspec

    This assumes that the NuGet binary is available somewhere along the PATH.
    Please refer to NuGet Documentation for further details.
  9. Enter the following command to build the NuGet package for x64:

    nuget.exe pack NuGet\SQLite.x64.nuspec

    This assumes that the NuGet binary is available somewhere along the PATH.
    Please refer to NuGet Documentation for further details.
  10. Enter the following command to move the NuGet packages to the release output directory:

    move *.nupkg Setup\Output

Update Downloads Page

  1. Open a normal command prompt window with "cmd.exe".
  2. Change the current directory to "<root>\Setup".
  3. Replace the version numbers for the previous release in the local working copy of the downloads page with the new version numbers for System.Data.SQLite and the SQLite core.
  4. Enter the following command to update the sizes and hashes on the downloads page based on all the built release packages:

    tclsh.exe updateFileInfo.tcl

    This assumes that ActiveTcl version 8.4 or later has been installed using the default settings and that the Fossil binary is available somewhere along the PATH (i.e. for calculating the SHA1 hashes).

Publish Release

  1. Upload all the release packages to the web site.
  2. Commit pending source code changes to the Fossil repository.
  3. Tag the release in the Fossil repository.
  4. Push the NuGet packages.
    Please refer to NuGet Documentation for further details.
  5. Announce the release on the System.Data.SQLite mailing list.