Skip to content

Commit

Permalink
Prepare 1.1.0-rc1 release
Browse files Browse the repository at this point in the history
  • Loading branch information
kleisauke committed May 4, 2019
1 parent 3f6430a commit b1585c9
Show file tree
Hide file tree
Showing 19 changed files with 153 additions and 109 deletions.
14 changes: 9 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ dotnet: 2.2.203

env:
global:
- VIPS_VERSION=8.7.4
- VIPS_TAR_VERSION=$VIPS_VERSION
- VIPS_VERSION=8.8.0
- VIPS_PRE_VERSION=rc1
- VIPS_TAR_VERSION=$VIPS_VERSION-${VIPS_PRE_VERSION}a
- VIPS_WARNING=0
- PATH=$HOME/vips/bin:$PATH
- LD_LIBRARY_PATH=$HOME/vips/lib:$LD_LIBRARY_PATH
Expand Down Expand Up @@ -68,9 +69,12 @@ addons:
- libwebp-dev
- libtiff5-dev
- libheif-dev
# missing on xenial, unfortunately
# - libwebpmux2
# missing on xenial, unfortunately
# - libwebpmux2
- libglib2.0-dev
# needed for building libvips from source
- gtk-doc-tools
- gobject-introspection
homebrew:
packages:
- cfitsio
Expand All @@ -80,4 +84,4 @@ addons:

before_install: ./build/travis.sh

script: ./build.sh
script: ./build.sh
4 changes: 2 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ All notable changes to NetVips will be documented in this file. See [here](CHANG

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.1.0] - Unreleased
## [1.1.0-rc1] - 2019-05-04
### Added
- A new [NetVips.Native](https://www.nuget.org/packages/NetVips.Native/) package containing the pre-compiled libvips binaries for Linux, macOS and Windows ([#21](https://github.com/kleisauke/net-vips/issues/21)).
- Changes to the [NetVips.Native.*](https://www.nuget.org/packages?q=id%3ANetVips.Native) packages will be documented [here](CHANGELOG.native.md).
Expand Down Expand Up @@ -85,7 +85,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
### Added
- First release!

[1.1.0]: https://github.com/kleisauke/net-vips/compare/v1.0.7...1.1.0
[1.1.0-rc1]: https://github.com/kleisauke/net-vips/compare/v1.0.7...v1.1.0-rc1
[1.0.7]: https://github.com/kleisauke/net-vips/compare/v1.0.6...v1.0.7
[1.0.6]: https://github.com/kleisauke/net-vips/compare/v1.0.5...v1.0.6
[1.0.5]: https://github.com/kleisauke/net-vips/compare/v1.0.4...v1.0.5
Expand Down
12 changes: 6 additions & 6 deletions CHANGELOG.native.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@ The changes of libvips are documented [here](https://github.com/libvips/libvips/

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [8.8.0] - Unreleased
## [8.8.0-rc1] - 2019-05-04
### Note
If you would like to see a complete list of all the new features, changes and bug fixes, please visit the the release notes of libvips:
https://github.com/libvips/libvips/releases
If you would like to see what's new, please visit the the release notes of libvips:
https://libvips.github.io/libvips/2019/04/22/What's-new-in-8.8.html

## [8.7.4] - 2019-04-10
### Added
Expand All @@ -16,7 +16,7 @@ https://github.com/libvips/libvips/releases
### Changed
- The OS X binaries are now distributed with [`jpeg-turbo`](https://github.com/libjpeg-turbo/libjpeg-turbo) instead than [`jpeg`](https://www.ijg.org/) ([lovell/package-libvips-darwin#3](https://github.com/lovell/package-libvips-darwin/pull/3)).

## [8.7.4 beta 1] - 2019-02-25
## [8.7.4-beta1] - 2019-02-25
### Added
- Pre-compiled libvips binaries for a few distros ([#21](https://github.com/kleisauke/net-vips/issues/21)):
- [NetVips.Native.linux-x64](https://www.nuget.org/packages/NetVips.Native.linux-x64) - Linux x64 glibc (Ubuntu, Debian, etc).
Expand All @@ -28,6 +28,6 @@ https://github.com/libvips/libvips/releases
### Changed
- A statically linked libvips binary is build for Windows. This reduces the number of DLLs from 37 to 3 ([libvips/build-win64#21](https://github.com/libvips/build-win64/issues/21#issuecomment-458112440)).

[8.8.0]: https://github.com/kleisauke/libvips-packaging/compare/v8.7.4...HEAD
[8.8.0-rc1]: https://github.com/kleisauke/libvips-packaging/compare/v8.7.4...v8.8.0-rc1
[8.7.4]: https://github.com/kleisauke/libvips-packaging/compare/v8.7.4-beta1...v8.7.4
[8.7.4 beta 1]: https://github.com/kleisauke/libvips-packaging/releases/tag/v8.7.4-beta1
[8.7.4-beta1]: https://github.com/kleisauke/libvips-packaging/releases/tag/v8.7.4-beta1
34 changes: 4 additions & 30 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,33 +1,7 @@
FROM microsoft/dotnet:2.2-sdk
LABEL maintainer "[email protected]"
WORKDIR /app

RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y \
automake build-essential curl \
cdbs debhelper dh-autoreconf flex bison \
libjpeg-dev libtiff-dev libpng-dev libgif-dev librsvg2-dev libpoppler-glib-dev zlib1g-dev fftw3-dev liblcms2-dev \
libmagickwand-dev libfreetype6-dev libpango1.0-dev libfontconfig1-dev libglib2.0-dev libice-dev \
gettext pkg-config libxml-parser-perl libexif-gtk-dev liborc-0.4-dev libopenexr-dev libmatio-dev libxml2-dev \
libcfitsio-dev libopenslide-dev libwebp-dev libgsf-1-dev libgirepository1.0-dev gtk-doc-tools

ENV LIBVIPS_VERSION_MAJOR 8
ENV LIBVIPS_VERSION_MINOR 7
ENV LIBVIPS_VERSION_PATCH 4
ENV LIBVIPS_VERSION $LIBVIPS_VERSION_MAJOR.$LIBVIPS_VERSION_MINOR.$LIBVIPS_VERSION_PATCH
# FROM mcr.microsoft.com/dotnet/core/sdk:2.2-alpine3.9 AS build
FROM mcr.microsoft.com/dotnet/core/sdk:2.2-stretch AS build
LABEL maintainer "Kleis Auke Wolthuizen <[email protected]>"

RUN \
# Build libvips
cd /tmp && \
curl -L -O https://github.com/libvips/libvips/releases/download/v$LIBVIPS_VERSION/vips-$LIBVIPS_VERSION.tar.gz && \
tar zxvf vips-$LIBVIPS_VERSION.tar.gz && \
cd /tmp/vips-$LIBVIPS_VERSION && \
./configure --enable-debug=no --without-python $1 && \
make && \
make install && \
ldconfig

# Clean up
RUN rm -rf /tmp/*
WORKDIR /app

ENTRYPOINT ["./build.sh"]
5 changes: 3 additions & 2 deletions appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
image: Visual Studio 2017
image: Visual Studio 2019 Preview

# Version format
version: 1.1.0.{build}
Expand All @@ -8,7 +8,8 @@ init:

# Environment
environment:
VIPS_VERSION: "8.7.4"
VIPS_VERSION: "8.8.0"
VIPS_PRE_VERSION: "rc1"
VIPS_WARNING: 0

# Build script
Expand Down
5 changes: 2 additions & 3 deletions build/Build.cs
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,9 @@ partial class Build : NukeBuild
protected override void OnBuildInitialized()
{
Parameters = new BuildParameters(this);
Information("Building version {0} of NetVips ({1}) using version {2} of Nuke.",
Information("Building version {0} of NetVips ({1}).",
Parameters.Version,
Parameters.Configuration,
typeof(NukeBuild).Assembly.GetName().Version.ToString());
Parameters.Configuration);
if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
{
Information("OS: Windows");
Expand Down
14 changes: 13 additions & 1 deletion build/BuildParameters.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
using System.Linq;
using System.Xml.Linq;
using Nuke.Common;
using Nuke.Common.BuildServers;
using static Nuke.Common.IO.PathConstruction;

public partial class Build
Expand Down Expand Up @@ -65,8 +66,19 @@ string GetVersion()
var major = xdoc.Descendants().First(x => x.Name.LocalName == "Major").Value;
var minor = xdoc.Descendants().First(x => x.Name.LocalName == "Minor").Value;
var revision = xdoc.Descendants().First(x => x.Name.LocalName == "Revision").Value;
var prerelease = xdoc.Descendants().FirstOrDefault(x => x.Name.LocalName == "PrereleaseLabel" &&
!x.HasAttributes)?.Value ?? string.Empty;

return major + "." + minor + "." + revision;
if (Host != HostType.Console)
{
var buildNumber = AppVeyor.Instance?.BuildNumber ??
Travis.Instance?.BuildNumber ??
0;

prerelease = "." + buildNumber + "-develop";
}

return major + "." + minor + "." + revision + prerelease;
}
}
}
2 changes: 1 addition & 1 deletion build/NetVips.Build.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

<ItemGroup>
<PackageReference Include="NuGet.CommandLine" Version="4.9.4" />
<PackageReference Include="Nuke.Common" Version="0.18.0" />
<PackageReference Include="Nuke.Common" Version="0.19.1" />
<PackageReference Include="SharpZipLib" Version="1.1.0" />
</ItemGroup>

Expand Down
1 change: 1 addition & 0 deletions build/common.props
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
<BuildNumber Condition="'$(APPVEYOR_BUILD_NUMBER)' != ''">$(APPVEYOR_BUILD_NUMBER)</BuildNumber>
<BuildNumber Condition="'$(BuildNumber)' == ''">0</BuildNumber>

<PrereleaseLabel>-rc1</PrereleaseLabel>
<PrereleaseLabel Condition="'$(APPVEYOR_BUILD_NUMBER)' != ''">-develop</PrereleaseLabel>

<PrereleaseLabelConstants></PrereleaseLabelConstants>
Expand Down
53 changes: 42 additions & 11 deletions build/install-vips.sh
Original file line number Diff line number Diff line change
@@ -1,33 +1,64 @@
#!/usr/bin/env bash

# Define default arguments
from_source=false
use_cache=true
configure_args=()

# Parse arguments
for i in "$@"; do
case $1 in
--from-source) from_source=true ;;
--skip-cache) use_cache=false ;;
--) shift; configure_args+=("$@"); break ;;
*) configure_args+=("$1") ;;
esac
shift
done

# Define variables
version=${VIPS_VERSION}
pre_version=${VIPS_PRE_VERSION}
tar_version=${VIPS_TAR_VERSION}
vips_tarball=https://github.com/libvips/libvips/releases/download/v${version}${pre_version:+-$pre_version}/vips-${tar_version}.tar.gz
vips_tarball=https://github.com/libvips/libvips/releases/download/v${version}${pre_version:+-$pre_version}/vips-${tar_version:-$version}.tar.gz

# Exit immediately if a command exits with a non-zero status
set -e

# Do we already have the correct vips built?
if [ -d "$HOME/vips/bin" ]; then
if [[ -d "$HOME/vips/bin" ]]; then
installed_version=$($HOME/vips/bin/vips --version | awk -F- '{print $2}')
echo "Need vips $version"
echo "Found vips $installed_version"

if [[ "$installed_version" == "$version" ]]; then
if [[ "$installed_version" == "$version" ]] && [[ "$use_cache" = true ]]; then
echo "Using cached vips directory"
exit 0
fi
fi

echo "Installing vips $version"
# Make sure the vips folder exist
if [[ ! -d "$HOME/vips" ]]; then
mkdir "$HOME/vips"
fi

rm -rf $HOME/vips
mkdir $HOME/vips
# Do we need to install vips from source?
if [[ "$from_source" = true ]]; then
echo "Installing vips from source"

curl -L ${vips_tarball} | tar xz
cd vips-${version}
CXXFLAGS=-D_GLIBCXX_USE_CXX11_ABI=0 ./configure --prefix="$HOME/vips" $*
make -j${JOBS} && make install
git clone -b master --single-branch https://github.com/libvips/libvips.git vips-${version}
cd vips-${version}
./autogen.sh --prefix="$HOME/vips" "${configure_args[@]}"
make -j${JOBS} && make install
else
echo "Installing vips $version"

curl -L ${vips_tarball} | tar xz
cd vips-${version}
./configure --prefix="$HOME/vips" "${configure_args[@]}"
make -j${JOBS} && make install
fi

# Clean-up build directory
cd ../
rm -rf vips-${version}
rm -rf vips-${version}
5 changes: 3 additions & 2 deletions build/travis.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,6 @@ if [[ $TRAVIS_OS_NAME == 'linux' ]]; then
uname -a

. $TRAVIS_BUILD_DIR/build/install-vips.sh \
--without-python
fi
--from-source \
--disable-dependency-tracking
fi
2 changes: 1 addition & 1 deletion documentation/NetVips.Docs.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="docfx.console" Version="2.41.0">
<PackageReference Include="docfx.console" Version="2.42.0">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
</PackageReference>
Expand Down
4 changes: 2 additions & 2 deletions src/NetVips/FodyWeavers.xml
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<Weavers xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
VerifyAssembly="true"
VerifyIgnoreCodes="0x80131869,0x80131252"
VerifyIgnoreCodes="0x80131869"
GenerateXsd="false">
<!-- ignore 0x80131869 and 0x80131252 since it throws on netstandard -->
<!-- ignore 0x80131869 since it throws on netstandard -->
<ModuleInit />
</Weavers>
Loading

0 comments on commit b1585c9

Please sign in to comment.