Hello Stephan,

Several months have passed since last update. Still I think this is something
important and we are able to make further improvements:

2016-07-31 19:02 GMT+08:00 Stephan Sürken <[email protected]>:
> Iiuuc ;), there actually is such a thing via the Layout (see extra
> options). There is also the per-wizard-predefined Layout "Debian
> Developer" which already comes with aliases for sid afair:
>
> ---
> Supported extra options
> Meta-Distributions: META=CODENAME-SUITE[ META=CODENAME-SUITE[...:
> Support METAs alone as distribution identifier.
>
> Meta distribution identifiers should be unique across all repositories;
> usually, a layout with meta distributions should only be used by at
> most one repository.
>
> Example: Meta-Distributions: unstable=sid-unstable experimental=sid-
> experimental (see standard layout 'Debian Developer'), to allow
> upload/testing of packages (to unstable,experimental,..) aimed for
> Debian.

I am facing problems when using this option.

Just as the log says in the previous email (20160731), we would meet the
"malformed distribution" error even if the Meta-Distribution: is set. A newer
example on v1.0.23 would be like this:


2016-10-23 13:32:37,536 mini_buildd.ftpd             (0107): INFO    :
Queuing incoming changes file:
/var/lib/mini-buildd/incoming/cutegram_2.9.5-1aseman-xenial+git20161022.0.2373dd32-1_source.changes
2016-10-23 13:32:37,537 mini_buildd.daemon           (0357): INFO    :
Status: 0 active packages, 0 changes waiting in incoming.
2016-10-23 13:32:37,582 mini_buildd.changes          (0330): INFO    :
Moving changes to package log:
'/var/lib/mini-buildd/incoming/cutegram_2.9.5-1aseman-xenial+git20161022.0.2373dd32-1_source.changes'->'None'
2016-10-23 13:32:37,583 mini_buildd.changes          (0340): INFO    :
Removing 'cutegram_2.9.5-1aseman-xenial+git20161022.0.2373dd32-1_source.changes'
2016-10-23 13:32:37,583 mini_buildd.changes          (0340): INFO    :
Removing 'cutegram_2.9.5-1aseman-xenial+git20161022.0.2373dd32-1.dsc'
2016-10-23 13:32:37,584 mini_buildd.changes          (0340): INFO    :
Removing 'cutegram_2.9.5-1aseman-xenial+git20161022.0.2373dd32.orig.tar.gz'
2016-10-23 13:32:37,584 mini_buildd.changes          (0340): INFO    :
Removing 'cutegram_2.9.5-1aseman-xenial+git20161022.0.2373dd32-1.debian.tar.xz'
2016-10-23 13:32:37,594 mini_buildd.models.daemon    (0289): WARNING :
Notify: Skipping changed-by address: Boyuan Yang <[email protected]>:
Not allowed (only '.*@.*hosiet.me')
2016-10-23 13:32:37,628 mini_buildd.models.daemon    (0330): INFO    :
Notify: Sent 'REJECTED (None): cutegram
2.9.5-1aseman-xenial+git20161022.0.2373dd32-1: Malformed distribution
'unstable': Must be '<codename>-<repoid>-<suite>[-rollback<n>]''
2016-10-23 13:32:37,651 mini_buildd.packager         (0041): ERROR   :
Package 'cutegram_2.9.5-1aseman-xenial+git20161022.0.2373dd32-1'
REJECTED: Malformed distribution 'unstable': Must be
'<codename>-<repoid>-<suite>[-rollback<n>]'
2016-10-23 13:33:24,139 mini_buildd.views            (0078): INFO    :
API call 'logcat' by user 'admin' [views:206]


FYI, this mini-buildd instance is set on "https://b.hosiet.me";.

I grep-ed through your source code and found the class called
mini_buildd.misc.Distribution is causing problems. Appearantly it is a helper
class that does not read external informations and determine the distribution
and repo info according to the triplet string.

However, when the user is uploading a package with the distribution area in
the latest changelog entry set to "unstable" or "experimental", the __init__
would 100% raise the "Malformed distribution" exception *without* reading
the Meta-distribution setting anywhere else.

If my understanding was right, every time this class is instantiated, the init
function may should read the Meta-Distribution information in every repository
and parse non-triplet distribution string accordingly. That is, not to raise an
Exception when it meets Distribution("unstable"). The class may should be able
to translate "unstable" -> "sid-<myreponame>-unstable" according to Meta-
Distribution information.

So why would things bother like this? Well, I still want to upload a package
with its version string normal (without ~testSID+1 or sth else, it can be done
by altering the Mandatory Version String so never mind) and the distribution
section in the latest changelog entry set to normal ("unstable",
"experimental", etc) and get ACCEPTED by mini-buildd. This is impossible
now because such packages would be REJECTED due to the
Malformed-Distribution problem as I stated above.

It would be great if we could finish that goal before Stretch freeze. If there
is anything wrong, please point it out for me :)

Thanks,
Boyuan Yang

Reply via email to