Downloads:

1,639

Downloads of v 6.5.1:

1,639

Last Update:

13 Oct 2021

Package Maintainer(s):

Software Author(s):

  • Gerard Holzmann

Tags:

formal verification verify model-checker commandline cross-platform

Spin

  • 1
  • 2
  • 3

6.5.1 | Updated: 13 Oct 2021

Downloads:

1,639

Downloads of v 6.5.1:

1,639

Maintainer(s):

Software Author(s):

  • Gerard Holzmann

  • 1
  • 2
  • 3
Spin 6.5.1

  • 1
  • 2
  • 3

Some Checks Have Failed or Are Not Yet Complete

Not All Tests Have Passed


Validation Testing Passed


Verification Testing Passed

Details

Scan Testing Resulted in Flagged as a Note:

At least one file within this package has greater than 0 detections, but less than 5

Details
Learn More

Deployment Method: Individual Install, Upgrade, & Uninstall

To install Spin, run the following command from the command line or from PowerShell:

>

To upgrade Spin, run the following command from the command line or from PowerShell:

>

To uninstall Spin, run the following command from the command line or from PowerShell:

>

Deployment Method:

📝 NOTE: This applies to both open source and commercial editions of Chocolatey.

1. Enter Your Internal Repository Url

(this should look similar to https://community.chocolatey.org/api/v2/)


2. Setup Your Environment

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

2. Get the package into your environment

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to https://community.chocolatey.org/api/v2/. Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Copy Your Script

choco upgrade spin -y --source="'INTERNAL REPO URL'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:


choco upgrade spin -y --source="'INTERNAL REPO URL'" 
$exitCode = $LASTEXITCODE

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0
}

Exit $exitCode

- name: Install spin
  win_chocolatey:
    name: spin
    version: '6.5.1'
    source: INTERNAL REPO URL
    state: present

See docs at https://docs.ansible.com/ansible/latest/modules/win_chocolatey_module.html.


chocolatey_package 'spin' do
  action    :install
  source   'INTERNAL REPO URL'
  version  '6.5.1'
end

See docs at https://docs.chef.io/resource_chocolatey_package.html.


cChocoPackageInstaller spin
{
    Name     = "spin"
    Version  = "6.5.1"
    Source   = "INTERNAL REPO URL"
}

Requires cChoco DSC Resource. See docs at https://github.com/chocolatey/cChoco.


package { 'spin':
  ensure   => '6.5.1',
  provider => 'chocolatey',
  source   => 'INTERNAL REPO URL',
}

Requires Puppet Chocolatey Provider module. See docs at https://forge.puppet.com/puppetlabs/chocolatey.


4. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

This package was approved by moderator flcdrg on 11 Nov 2021.

Description

Spin

Spin is a widely used open-source software verification tool. The tool can be used for the formal verification of multi-threaded software applications. The tool was developed at Bell Labs in the Unix group of the Computing Sciences Research Center, starting in 1980, and has been available freely since 1991. Spin continues to evolve to keep pace with new developments in the field. In April 2002 the tool was awarded the ACM System Software Award.

Main usage

Spin can be used in four main modes:

  • as a simulator, allowing for rapid prototyping with a random, guided, or interactive simulations
  • as an exhaustive verifier, capable of rigorously proving the validity of user specified correctness requirements (using partial order reduction theory to optimize the search)
  • as proof approximation system that can validate even very large system models with maximal coverage of the state space.
  • as a driver for swarm verification (a new form of swarm computing that can exploit cloud networks of arbitrary size), which can make optimal use of large numbers of available compute cores to leverage parallelism and search diversification techniques, which increases the chance of locating defects in very large verification models.

All Spin software is written in ISO-standard C, and is portable across all versions of Unix, Linux, cygwin, Plan9, Inferno, Solaris, Mac, and Windows.

To run Spin, you need a working C-compiler and a C-preprocessor, because Spin generates its model checking software as C-source files that require compilation before a verification can be performed. This guarantees fast model checking, because each model checker can be optimized to the specific model being checked. For more information see Related software.

Installation Parameters

  • /AddiSpinToStartMenu: - adds iSpin shortcut to Start menu (for all users or for the current user only)
    • Supported values: allusers, curruser
    • No shortcut added to Start menu by default
  • /CreateiSpinDesktopIcon - creates a desktop shortcut for iSpin
    • Not created by default

Examples

  • Install and add iSpin shortcut to Start menu for all users
    choco install spin --params "/AddiSpinToStartMenu:allusers"
    
  • Install, create iSpin desktop shortcut and add iSpin shortcut to Start menu for the current user
    choco install spin --params "'/AddiSpinToStartMenu:curruser /CreateiSpinDesktopIcon'"
    

legal\LICENSE.txt
Spin - Explicit state logic model checking tool

Copyright (C) 2016-2020, Gerard J. Holzmann
All rights reserved.

Redistribution and use in source  and binary forms, with or without
modification, are permitted provided  that the following conditions
are met:

    1. Redistributions  of  source  code   must  retain  the  above
       copyright notice, this list  of conditions and the following
       disclaimer.

    2. Redistributions  in binary  form  must  reproduce the  above
       copyright notice, this list  of conditions and the following
       disclaimer  in  the  documentation  and/or  other  materials
       provided with the distribution.

    3. Neither the  name of the  copyright holder nor the  names of
       its contributors may be used  to endorse or promote products
       derived from  this software  without specific  prior written
       permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND  ANY EXPRESS OR IMPLIED WARRANTIES,  INCLUDING, BUT NOT
LIMITED TO,  THE IMPLIED WARRANTIES OF  MERCHANTABILITY AND FITNESS
FOR  A  PARTICULAR  PURPOSE  ARE  DISCLAIMED.  IN  NO  EVENT  SHALL
THE  COPYRIGHT HOLDER  OR CONTRIBUTORS  BE LIABLE  FOR ANY  DIRECT,
INDIRECT, INCIDENTAL, SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO,  PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA,  OR PROFITS; OR BUSINESS INTERRUPTION)
HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT  LIABILITY,  OR  TORT (INCLUDING  NEGLIGENCE  OR  OTHERWISE)
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
OF THE POSSIBILITY OF SUCH DAMAGE.

legal\VERIFICATION.txt
VERIFICATION

Verification is intended to assist the Chocolatey moderators and community
in verifying that this package's contents are trustworthy.

Package can be verified like this:

1. Go to https://spinroot.com/spin/Src/pc_spin651.zip

   to download the installer.

2. You can use one of the following methods to obtain the SHA256 checksum:
   - Use powershell function 'Get-FileHash'
   - Use Chocolatey utility 'checksum.exe'

   checksum64: CBD0EB7EA3A6DC2488BE7D23B050F75AC9860CF47AE2662E725BC0B6DA84ECDF

License text in LICENSE.txt file was obtained 
   on 10/06/2021
   from https://github.com/nimble-code/Spin/blob/master/LICENSE
tools\chocolateyinstall.ps1
$ErrorActionPreference = 'Stop'
$toolsDir = Split-Path -parent $MyInvocation.MyCommand.Definition

$packageArgs = @{
  packageName    = $env:ChocolateyPackageName
  fileFullPath64 = Join-Path $toolsDir 'pc_spin651.zip'
  destination    = "$toolsDir\bin"
  validExitCodes = @(0)
}

Get-ChocolateyUnzip @packageArgs

Remove-Item `
  -Path $packageArgs['fileFullPath64'] `
  -ErrorAction SilentlyContinue `
  -Force

$shortcutArgs = @{
  targetPath       = "$($packageArgs['destination'])\ispin.tcl"
  workingDirectory = $packageArgs['destination']
}

$additionalArgs = Get-PackageParameters
if($additionalArgs['CreateiSpinDesktopIcon']) {
  Install-ChocolateyShortcut `
    -ShortcutFilePath "$env:userprofile\Desktop\iSpin.lnk" `
    @shortcutArgs
}

if($additionalArgs['AddiSpinToStartMenu'] -eq "allusers") {
  Install-ChocolateyShortcut `
    -ShortcutFilePath "$env:ProgramData\Microsoft\Windows\Start Menu\Programs\iSpin.lnk" `
    @shortcutArgs
}
elseif($additionalArgs['AddiSpinToStartMenu'] -eq "curruser") {
  Install-ChocolateyShortcut `
    -ShortcutFilePath "$env:AppData\Microsoft\Windows\Start Menu\Programs\iSpin.lnk" `
    @shortcutArgs
}
tools\chocolateyuninstall.ps1
$shortcutsToRemove = @("$env:userprofile\Desktop\iSpin.lnk", 
                     "$env:ProgramData\Microsoft\Windows\Start Menu\Programs\iSpin.lnk",
                     "$env:AppData\Microsoft\Windows\Start Menu\Programs\iSpin.lnk")


$shortcutsToRemove | % { Remove-Item `
                            -Path $_ `
                            -ErrorAction SilentlyContinue `
                            -Force
}
tools\pc_spin651.zip
md5: CBFC7B1355D55F25D08088F8A99F713C | sha1: D87E58F27993B8B0A1E3236CB217D4511427BAB1 | sha256: CBD0EB7EA3A6DC2488BE7D23B050F75AC9860CF47AE2662E725BC0B6DA84ECDF | sha512: 2A4D27C01BA33BB5BFB393E486B41E689D0C4E971D0E490B4B6A8EFB2FF54EA33AF313D385D45FA583F05A5E49399F921432D15926DEACF03E3F08087F3F888C

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Add to Builder Version Downloads Last Updated Status

This package has no dependencies.

Discussion for the Spin Package

Ground Rules:

  • This discussion is only about Spin and the Spin package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Spin, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus