dub.snap:master

Last commit made on 2023-05-04
Get this branch:
git clone -b master https://git.launchpad.net/dub.snap

Branch merges

Branch information

Name:
master
Repository:
lp:dub.snap

Recent commits

31f5b51... by Joseph Wakeling

Update DUB to 1.32.1 and DMD to 2.103.1

This brings the packaged DUB and the DMD used to build it up to date
with their latest stable releases:
https://github.com/dlang/dub/releases/tag/v1.32.1
https://github.com/dlang/dmd/releases/tag/v2.103.1

Some changes to the DMD/druntime/phobos bootstrap process are needed, as
their build setup has changed a little since the last package update:

  * `druntime` has been incorporated into the `dmd` repo: this allows
    us to cut the `druntime` part, but requires an `override-build`
    to make sure that druntime source files are included, and we need
    to add the old druntime `organize` settings to the `dmd` part

  * this requires a change to the `DRUNTIME_PATH` value used to build
    phobos; we must also add `CUSTOM_DRUNTIME=1`, or else the phobos
    build system will try to build druntime from scratch

The package's `environment` settings have also been updated, in response
to a CVE affecting `snapcraft`:
https://ubuntu.com/security/CVE-2020-27348
https://forum.snapcraft.io/t/ann-snapcraft-4-4-4-library-injection-vulnerability-on-built-snaps/21465
https://forum.snapcraft.io/t/how-to-execute-a-binary-file-inside-a-snap/34342/12

2b8581f... by Joseph Wakeling

Update DUB to 1.27.0 and DMD to 2.098.1

This brings the packaged DUB and the DMD used to build it up to date
with their latest stable releases:
https://github.com/dlang/dub/releases/tag/v1.27.0
https://github.com/dlang/dmd/releases/tag/v2.098.1

44d3482... by Joseph Wakeling

Update package base to core18

This is LONG overdue as the original `core` snap is no longer supported.

6eae1cc... by Joseph Wakeling

Add base and license specifiers to snapcraft.yaml

See https://snapcraft.io/docs/base-snaps for more details on base snaps.
The `core` base is chosen to ensure compatibility with Ubuntu 16.04.

The license spec is chosen to reflect the license of DUB itself and the
druntime/phobos code required to build it. System libraries are taken
as given, as their license details are provided in `usr/share/doc`.

This change has a few notable impacts:

  * we need to replace the old `prepare:` scriptlet with the new
    `override-build` standard, and invoke `snapcraftctl build` to
    ensure that the install stage completes successfully

  * we can no longer build with snapcraft versions earlier than 3
    or use the `snapcraft cleanbuild` command

  * by default snapcraft will now attempt to build using `multipass`
    (`snapcraft --use-lxd` will reproduce the old `cleanbuild`-style
    behaviour, while `snapcraft --destructive-mode` will build in the
    local environment)

173b99d... by Joseph Wakeling

Update LICENSE file to bring it up to date with DUB upstream

The upstream license file has gained a D Foundation copyright notice at
some point in the last few years. It seems worth tweaking the intro to
the snap package license as well, to clarify that only parts of druntime
and phobos are statically linked.

e8c03b5... by Joseph Wakeling

Add a separate part to install the LICENSE file

The old habit of including a `license.txt` in the `snap` directory has
been deprecated for years (to the extent that it was ever even tacitly
approved of), and risks the license file not being included in the snap
package itself.

Adding an explicit `dub-license` part ensures that the license will
always be included.

a2d27e4... by Joseph Wakeling

Update DUB to 1.19.0 and DMD to 2.090.1

This brings the packaged DUB and the DMD used to build it up to date
with their latest stable releases:
https://github.com/dlang/dub/releases/tag/v1.19.0
https://github.com/dlang/dmd/releases/tag/v2.090.1

33c7cdf... by Joseph Wakeling

Update DUB to 1.18.0 and DMD to 2.089.0

This brings the packaged DUB and the DMD used to build it up to date
with their latest stable releases:
https://github.com/dlang/dub/releases/tag/v1.18.0
https://github.com/dlang/dmd/releases/tag/v2.089.0

a9bec93... by Ermesto Castellotti

Update DMD to v2.088.1

This patch brings the packaged the DMD used to build it up to
date with its latest stable version.

7e242c4... by Ermesto Castellotti

Update DUB to v1.17.0 and DMD to v2.088.0

This patch brings the packaged DUB and the DMD used to build it up to
date with their latest stable releases.

https://github.com/dlang/dub/releases/tag/v1.17.0