Merge lp:~jml/pkgme-devportal/binary-reasons into lp:pkgme-devportal

Proposed by Jonathan Lange
Status: Merged
Approved by: Jonathan Lange
Approved revision: 92
Merged at revision: 84
Proposed branch: lp:~jml/pkgme-devportal/binary-reasons
Merge into: lp:pkgme-devportal
Diff against target: 0 lines
To merge this branch: bzr merge lp:~jml/pkgme-devportal/binary-reasons
Reviewer Review Type Date Requested Status
James Westby Approve
Review via email: mp+120750@code.launchpad.net

Commit message

Give reasons for not wanting things. MetadataBackend now takes care of metadata file-related wants.

Description of the change

This branch started off by adding reasons for not wanting binaries. I then noticed the code was very similar to the PDF backend's code for not wanting PDFs, at least as far as metadata files went.

So, I've factored all the stuff about wanting things based on whether or not devportal-metadata.json is there into MetadataBackend.want, and have that delegate to want_with_metadata if it finds valid metadata.

I quite like this solution, as it makes MetadataBackend know everything about loading metadata, and allows subclasses to get on with their thing.

This builds on and supersedes lp:~jml/pkgme-devportal/do-not-want.

To post a comment you must log in.
Revision history for this message
James Westby (james-w) :
review: Approve
Revision history for this message
ISD Branch Mangler (isd-branches-mangler) wrote :
Download full text (7.6 KiB)

The attempt to merge lp:~jml/pkgme-devportal/binary-reasons into lp:pkgme-devportal failed. Below is the output from the failed tests.

./bin/py -m testtools.run devportalbinary.tests.test_suite
Tests running...

Ran 127 tests in 7.871s
OK
./bin/py -m testtools.run devportalbinary.acceptance.tests
Tests running...
======================================================================
ERROR: devportalbinary.acceptance.tests.AcceptanceTests.test_bundled_library
----------------------------------------------------------------------
Traceback (most recent call last):
  File "devportalbinary/acceptance/tests/__init__.py", line 74, in test_bundled_library
    self.run_pkgme(test_data)
  File "devportalbinary/acceptance/tests/__init__.py", line 44, in run_pkgme
    test_data.path, allowed_backend_names=["binary", "pdf"])
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/__init__.py", line 39, in write_packaging
    info = get_info_for(path, allowed_backend_names=allowed_backend_names)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 82, in get_info_for
    return selector.get_info(path)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 344, in get_info
    eligble = self.get_eligible_backends(path)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 328, in get_eligible_backends
    score, reason = backend.want(path)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 205, in want
    return self._parse_want_output(out)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 168, in _parse_want_output
    "returned invalid score", str(result))
WantError: Backend binary (/tmp/tmpzGvT_M/devportalbinary/backends/binary) returned invalid score from 'want' script: "{'reason': 'Has ELF binaries and a metadata file', 'score': 10}"
======================================================================
ERROR: devportalbinary.acceptance.tests.AcceptanceTests.test_gtk
----------------------------------------------------------------------
Traceback (most recent call last):
  File "devportalbinary/acceptance/tests/__init__.py", line 66, in test_gtk
    self.run_pkgme(test_data)
  File "devportalbinary/acceptance/tests/__init__.py", line 44, in run_pkgme
    test_data.path, allowed_backend_names=["binary", "pdf"])
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/__init__.py", line 39, in write_packaging
    info = get_info_for(path, allowed_backend_names=allowed_backend_names)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 82, in get_info_for
    return selector.get_info(path)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 344, in get_info
    eligble = self.get_eligible_backends(path)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 328, in get_eligible_backends
    score, reason = backend.want(path)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 205, in want
    return self._parse_want_output(out)
  File "/tmp/eggs/pkgme-0.3-py2.7.egg/pkgme/backend.py", line 168, in _parse_want_output
    "returned invalid score", str(result))
WantError: Backend binary (/tmp/tmpzGvT_M/devportalbinary/backends/binary) returned invalid score from 'want' script: "{'reason': 'Has ELF b...

Read more...

Revision history for this message
ISD Branch Mangler (isd-branches-mangler) wrote :

Attempt to merge into lp:pkgme-devportal failed due to conflicts:

text conflict in devportalbinary/tests/test_metadata.py

92. By Jonathan Lange

Merge trunk, resolving conflicts.

Preview Diff

Empty

Subscribers

People subscribed via source and target branches