~wgrant/snapcraft/+git/github:bp-apt-arch

Last commit made on 2021-01-13
Get this branch:
git clone -b bp-apt-arch https://git.launchpad.net/~wgrant/snapcraft/+git/github

Branch merges

Branch information

Name:
bp-apt-arch
Repository:
lp:~wgrant/snapcraft/+git/github

Recent commits

91d167d... by Sergio Schvezov

Merge branch 'master' into bp-apt-arch

992ad0a... by Chris Patterson

grammar: ensure all dictionary primitives are captured (#3412)

There is no impact for current projects because there is
no supported usage until build-environment is enabled.

Improve test coverage of dicts and rename "expected_packages"
to "expected_results" as not all test cases imply packages.

Signed-off-by: Chris Patterson <email address hidden>

1f3f08f... by jeremie

tests: fix licenses in ros-related test files (#3409)

Signed-off-by: artivis <email address hidden>

e5f3422... by Chris Patterson

repo: only install build packages marked for installation (#3411)

Ubuntu usage of apt_cache.get_marked_packages() assumes any
marked package is marked for installation. However, it may
contain packages marked for deletion.

Modify get_marked_packages() to get_packages_marked_for_installation()
to accurately capture the required build packages to install. Apt
will handle deletion as necessary.

Signed-off-by: Chris Patterson <email address hidden>

b03d2d5... by Chris Patterson

sources: enable 7z, bzr, hg, svn, zip for non-linux (#3369)

Their respective commands will fail if the equivalent tools
are not in the user's path on the host.

Signed-off-by: Chris Patterson <email address hidden>

ed38476... by Chris Patterson

project loader: advanced grammar support for lists (#3360)

The grammar expects that it always works with a list of strings,
and treats those string primitives as a set.

This works for all of the current grammar usage which acts on
lists that are intended to work as sets. But it will fail when
expanded to work on other cases where ordering matters (e.g.
build-environment), or when primtives are not a string (e.g.
build-environment objects).

This is addressed by:

- Converting all grammars' set usage into lists.

- Updating GrammarProcessor to allow it to parse dictionaries
  and treat unhandled section dictionaries as primitives.

- Update the part grammar to convert the returned lists into
  sets for the currently used properties.

- Immediately process finalized statements to ensure ordering
  is consistent (rather than processing all statements at the
  end). Remove StatementCollection.process_all() now that it
  is unused.

Update tests accordingly.

Signed-off-by: Chris Patterson <email address hidden>
Co-authored-by: Sergio Schvezov <email address hidden>

935a801... by James Henstridge

elf: extract defined symbol versions (#3408)

c074de7... by jeremie

ros v2 plugins: out of source tree builds (#3405)

Signed-off-by: artivis <email address hidden>

63c2c7a... by Chris Patterson

pluginhandler: do not walk symlinks for include filesets (#3406)

When generating the include file set, snapcraft will walk through
symlinks. This effectively results in being unable to filter out
anything that itself, or parent is pointed to by an external symlink.

e.g. bin -> usr/bin will prevent filtering anything under usr/bin.

This is because snapcraft will include 'bin/foo' even though 'bin'
is a symlink. Subsequently, it will then preserve 'usr/bin/foo'.

Avoid this by simply checking if target is a link before walking
it.

Signed-off-by: Chris Patterson <email address hidden>

5a7cef3... by Sergio Schvezov

storeapi: remove unused MissingSnapdError (#3403)

Signed-off-by: Sergio Schvezov <email address hidden>