Hello community, here is the log from the commit of package ghc-nsis for openSUSE:Factory checked in at 2017-03-20 17:07:37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-nsis (Old) and /work/SRC/openSUSE:Factory/.ghc-nsis.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-nsis" Mon Mar 20 17:07:37 2017 rev:2 rq:477460 version:0.3.1 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-nsis/ghc-nsis.changes 2016-11-15 17:55:33.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-nsis.new/ghc-nsis.changes 2017-03-20 17:07:38.654124229 +0100 @@ -1,0 +2,5 @@ +Mon Feb 27 10:12:21 UTC 2017 - psim...@suse.com + +- Update to version 0.3.1 with cabal2obs. + +------------------------------------------------------------------- Old: ---- nsis-0.3.tar.gz New: ---- nsis-0.3.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-nsis.spec ++++++ --- /var/tmp/diff_new_pack.xbiNa2/_old 2017-03-20 17:07:39.274036698 +0100 +++ /var/tmp/diff_new_pack.xbiNa2/_new 2017-03-20 17:07:39.278036132 +0100 @@ -1,7 +1,7 @@ # # spec file for package ghc-nsis # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,16 +19,15 @@ %global pkg_name nsis %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.3 +Version: 0.3.1 Release: 0 Summary: DSL for producing Windows Installer using NSIS License: BSD-3-Clause -Group: System/Libraries +Group: Development/Languages/Other Url: https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz BuildRequires: ghc-Cabal-devel BuildRequires: ghc-rpm-macros -# Begin cabal-rpm deps: BuildRequires: ghc-transformers-devel BuildRequires: ghc-uniplate-devel BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -36,7 +35,6 @@ BuildRequires: ghc-directory-devel BuildRequires: ghc-process-devel %endif -# End cabal-rpm deps %description NSIS (Nullsoft Scriptable Install System, <http://nsis.sourceforge.net/>) is a @@ -60,20 +58,14 @@ %prep %setup -q -n %{pkg_name}-%{version} - %build %ghc_lib_build - %install %ghc_lib_install - %check -%if %{with tests} -%{cabal} test -%endif - +%cabal_test %post devel %ghc_pkg_recache @@ -87,6 +79,6 @@ %files devel -f %{name}-devel.files %defattr(-,root,root,-) -%doc Examples README.md +%doc CHANGES.txt Examples README.md %changelog ++++++ nsis-0.3.tar.gz -> nsis-0.3.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nsis-0.3/CHANGES.txt new/nsis-0.3.1/CHANGES.txt --- old/nsis-0.3/CHANGES.txt 2015-06-24 20:12:29.000000000 +0200 +++ new/nsis-0.3.1/CHANGES.txt 2017-02-21 22:14:31.000000000 +0100 @@ -1,5 +1,8 @@ Changelog for NSIS +0.3.1 + #11, add unsafeInject and unsafeInjectGlobal + #10, add unicode function 0.3 Make strCheck take a message Add a plugin for helping with radio button diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nsis-0.3/Development/NSIS/Show.hs new/nsis-0.3.1/Development/NSIS/Show.hs --- old/nsis-0.3/Development/NSIS/Show.hs 2015-06-24 20:12:29.000000000 +0200 +++ new/nsis-0.3.1/Development/NSIS/Show.hs 2017-02-21 22:14:31.000000000 +0100 @@ -60,6 +60,8 @@ ShowInstDetails{} -> True ShowUninstDetails{} -> True Caption{} -> True + Unicode{} -> True + UnsafeInjectGlobal{} -> True _ -> False isSection :: NSIS -> Bool @@ -111,6 +113,9 @@ out fs (AddPluginDir a) = [unwords ["!addplugindir",show a]] out fs (FindWindow a b c d e) = [unwords $ "FindWindow" : show a : map show ([b,c] ++ maybeToList d ++ maybeToList e)] out fs (SendMessage a b c d e f) = [unwords $ "SendMessage" : show a : show b : show c : show d : show e : ["/TIMEOUT=" ++ show x | Just x <- [f]]] +out fs (Unicode x) = ["Unicode " ++ if x then "true" else "false"] +out fs (UnsafeInject x) = [x] +out fs (UnsafeInjectGlobal x) = [x] out fs x = [show x] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nsis-0.3/Development/NSIS/Sugar.hs new/nsis-0.3.1/Development/NSIS/Sugar.hs --- old/nsis-0.3/Development/NSIS/Sugar.hs 2015-06-24 20:12:29.000000000 +0200 +++ new/nsis-0.3.1/Development/NSIS/Sugar.hs 2017-02-21 22:14:31.000000000 +0100 @@ -933,6 +933,9 @@ showUninstDetails :: Visibility -> Action () showUninstDetails = emit . ShowUninstDetails +-- | Note: Requires NSIS 3.0 +unicode :: Bool -> Action () +unicode = emit . Unicode -- | The type of a file handle, created by 'fileOpen'. data FileHandle deriving Typeable @@ -1083,7 +1086,7 @@ -- > createDirectory "$SMPROGRAMS/My Company" -- > createShortcut "$SMPROGRAMS/My Company/My Program.lnk" -- > [Target "$INSTDIR/My Program.exe" --- > ,Parameter "some command line parameters" +-- > ,Parameters "some command line parameters" -- > ,IconFile "$INSTDIR/My Program.exe", IconIndex 2 -- > ,StartOptions "SW_SHOWNORMAL" -- > ,KeyboardShortcut "ALT|CONTROL|SHIFT|F5" @@ -1151,3 +1154,11 @@ abort :: Exp String -> Action () abort = emit1 Abort + +-- | Inject arbitrary text into a non-global section of the script. +unsafeInject :: String -> Action () +unsafeInject = emit . UnsafeInject + +-- | Inject arbitrary text into the script's global header section. +unsafeInjectGlobal :: String -> Action () +unsafeInjectGlobal = emit . UnsafeInjectGlobal diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nsis-0.3/Development/NSIS/Type.hs new/nsis-0.3.1/Development/NSIS/Type.hs --- old/nsis-0.3/Development/NSIS/Type.hs 2015-06-24 20:12:29.000000000 +0200 +++ new/nsis-0.3.1/Development/NSIS/Type.hs 2017-02-21 22:14:31.000000000 +0100 @@ -121,6 +121,7 @@ | Caption Val | ShowInstDetails Visibility | ShowUninstDetails Visibility + | Unicode Bool | SetDetailsPrint DetailsPrint | DetailPrint Val | Plugin String String [Val] @@ -129,6 +130,10 @@ | GetDlgItem Var Val Val | SendMessage Val Val Val Val Var (Maybe Int) | Abort Val + + -- Escape hatch + | UnsafeInject String + | UnsafeInjectGlobal String deriving (Data,Typeable,Show) -- | Value to use with 'setDetailsPrint'. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nsis-0.3/Development/NSIS.hs new/nsis-0.3.1/Development/NSIS.hs --- old/nsis-0.3/Development/NSIS.hs 2015-06-24 20:12:29.000000000 +0200 +++ new/nsis-0.3.1/Development/NSIS.hs 2017-02-21 22:14:31.000000000 +0100 @@ -68,7 +68,8 @@ -- ** Global installer options name, outFile, installDir, setCompressor, installIcon, uninstallIcon, headerImage, - installDirRegKey, allowRootDirInstall, caption, showInstDetails, showUninstDetails, + installDirRegKey, allowRootDirInstall, caption, + showInstDetails, showUninstDetails, unicode, -- ** Sections SectionId, section, sectionGroup, newSectionId, sectionSetText, sectionGetText, sectionSet, sectionGet, @@ -79,6 +80,8 @@ -- ** Section commands file, alwaysNonFatal, writeUninstaller, alert, setOutPath, messageBox, requestExecutionLevel, hideProgress, detailPrint, setDetailsPrint, + -- * Escape hatch + unsafeInject, unsafeInjectGlobal, -- * Settings Compressor(..), HKEY(..), MessageBoxType(..), Attrib(..), Page(..), Level(..), Visibility(..), FileMode(..), SectionFlag(..), ShowWindow(..), FinishOptions(..), DetailsPrint(..) @@ -92,12 +95,18 @@ -- | Create the contents of an NSIS script from an installer specification. +-- +-- Beware, 'unsafeInject' and 'unsafeInjectGlobal' may break 'nsis'. The +-- optimizer relies on invariants that may not hold when arbitrary lines are +-- injected. Consider using 'nsisNoOptimise' if problems arise. nsis :: Action a -> String nsis = unlines . showNSIS . optimise . runAction . void --- | Like 'nsis', but don't try and optimise the resulting NSIS script. Useful --- to figure out how the underlying installer works, or if you believe the --- optimisations are introducing bugs (but please do report any such bugs!). +-- | Like 'nsis', but don't try and optimise the resulting NSIS script. +-- +-- Useful to figure out how the underlying installer works, or if you believe +-- the optimisations are introducing bugs. Please do report any such bugs, +-- especially if you aren't using 'unsafeInject' or 'unsafeInjectGlobal'! nsisNoOptimise :: Action a -> String nsisNoOptimise = unlines . showNSIS . runAction . void diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nsis-0.3/Examples/Example2.hs new/nsis-0.3.1/Examples/Example2.hs --- old/nsis-0.3/Examples/Example2.hs 2015-06-24 20:12:29.000000000 +0200 +++ new/nsis-0.3.1/Examples/Example2.hs 2017-02-21 22:14:31.000000000 +0100 @@ -23,7 +23,7 @@ outFile "example$Ex.exe" -- The default installation directory - installDir "$PROGRAMFILES/Example2" + installDir "$PROGRAMFILES64/Example2" -- Registry key to check for directory (so if you install again, it will -- overwrite the old one automatically) @@ -32,6 +32,9 @@ -- Request application privileges for Windows Vista requestExecutionLevel Admin + -- Inject a literal setting that's not currently supported by the DSL + unsafeInjectGlobal "# ignore me (could be an injected literal)" + ---------------------------------- -- Pages @@ -54,6 +57,9 @@ -- Put file there file [] "Examples/Example$Ex.hs" + -- Inject a non-global literal setting + unsafeInject "# ignore me (could be an injected literal)" + -- Write the installation path into the registry writeRegStr HKLM "SOFTWARE/NSIS_Example2" "Install_Dir" "$INSTDIR" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nsis-0.3/LICENSE new/nsis-0.3.1/LICENSE --- old/nsis-0.3/LICENSE 2015-06-24 20:12:29.000000000 +0200 +++ new/nsis-0.3.1/LICENSE 2017-02-21 22:14:31.000000000 +0100 @@ -1,4 +1,4 @@ -Copyright Neil Mitchell 2012-2015. +Copyright Neil Mitchell 2012-2017. All rights reserved. Redistribution and use in source and binary forms, with or without diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nsis-0.3/nsis.cabal new/nsis-0.3.1/nsis.cabal --- old/nsis-0.3/nsis.cabal 2015-06-24 20:12:29.000000000 +0200 +++ new/nsis-0.3.1/nsis.cabal 2017-02-21 22:14:31.000000000 +0100 @@ -1,15 +1,15 @@ -cabal-version: >= 1.10 +cabal-version: >= 1.18 build-type: Simple name: nsis -version: 0.3 +version: 0.3.1 license: BSD3 license-file: LICENSE category: Development author: Neil Mitchell <ndmitch...@gmail.com> maintainer: Neil Mitchell <ndmitch...@gmail.com> -copyright: Neil Mitchell 2012-2015 +copyright: Neil Mitchell 2012-2017 synopsis: DSL for producing Windows Installer using NSIS. -tested-with: GHC==7.10.1, GHC==7.8.4, GHC==7.6.3, GHC==7.4.2, GHC==7.2.2 +tested-with: GHC==8.0.2, GHC==7.10.3, GHC==7.8.4, GHC==7.6.3, GHC==7.4.2 description: NSIS (Nullsoft Scriptable Install System, <http://nsis.sourceforge.net/>) is a tool that allows programmers to create installers for Windows. @@ -19,7 +19,7 @@ homepage: https://github.com/ndmitchell/nsis#readme bug-reports: https://github.com/ndmitchell/nsis/issues -extra-source-files: +extra-doc-files: CHANGES.txt README.md