mini-buildd (1.9.119) unstable; urgency=medium [@release team: This is NOT for bookworm; pseudo bug is in place to keep mini-buildd in unstable.] Summary: * More testing, docs and fixes on the setup system Details: * [3bff244] api|models.py: Bulk-fix: Consistent notation for multiline strings * [c0ce751] manual/administrator.rst: Update structure for Setup section * [38bbdea] manual/administrator.rst (Setup): Abstract doc, more structural change * [a904f03] api.py (Setup): Generalize "report" in json result * [307efdf] api/setup.html: Add auto-selector (via js) for values from report * [69927b4] api/setup.html: Use one table_id var * [1b82768] api/base.html: Drop extra section for result * [2071854] api/setup.html: Improve layout: Report && Instances sections with resp. title * [302c5e3] api.py (Setup): Add reports for "deactivated" and "missing" * [f9fa6d8] models.py (GnuPGPublicKey.mbd_key_id): Add (compat) helper to get key_id * [f1f57e8] api.py (Setup.__run.SourceInstance.diff): APT keys diff: Fix false-positive for unprepared keys * [8ff4060] manual/administrator.rst: Update "Bootstrap" section * [2895006] manual/administrator.rst (Setup): Add contents for "Update", "Extend" sections * [0c9d134] manual/administrator.rst: Re-use old generic part as 'Introduction'; add some "not revised" warnings * [7261f76] models.py (Builders): Only consider active builders (don't wake explicitly deactivated remotes (or show in builders/)) * [614e1d2] manual/administrator.rst (squeeze HTTPS error): Small text correction * [1dfe18d] manual/administrator.rst (apt-update stall phenomena): Update with some new test findings * [9d33a01] api.py (Setup.Instance.diff): Don't create diff for non- existing object (now hinted by 'missing' report) * [f9b2c66] debian/changelog [internal]: Temporary (bigger) entry for snapshot version schema update for internal snapshots * [7a4ecff] models.py (Model.save): Drop save override (used to trigger full_clean()) * [bf6e5f4] models.py (help texts): Drop some 'actual field name ghosting' using 'verbose_name' (generally confusing && user can't identify ``setup`` diff fields) * [53f2707] config.py: Slightly re-order main menus * [a596b1e] api.py: Simplify bootstrap (manual & web) * [4448544] builtins.py (mbd_api): Bugfix: Wrong variable used in error string * [291d52d] api.py (Setup): Presets 'inspect' (was 'check'), 'extend' (new) * [0e854cd] api.py (Setup.iarguments): Add generic ``--from-origins`` option -- Stephan Sürken Sun, 12 Mar 2023 21:18:11 +0100 mini-buildd (1.9.118) unstable; urgency=medium [@release team: This is NOT for bookworm; pseudo bug is in place to keep mini-buildd in unstable.] Summary: * Internal python package restructure * More testing accompanied by misc fixes Details: * [4390927] devel (mbd_codenames): Fix mbd-api call syntax (re-enables 'internal port' testsuite tests) * [84c91cd] api.py (_ExtendAction): (ListArgument): Simplify && add workaround for https://github.com/python/cpython/issues/60603 * [8f799e2] api.py (RemakeChroots): Simplify, don't use mbd_actions && add some useful (json) results * [1db9dc5] models/base.py (StatusModel.Admin): Actions: Rather use 'modeladmin', not 'self' as 1st argument for actions * [39661e8] models/base.py (StatusModel.Admin.mbd_actions): Drop mbd_actions() * [543b6fc] models/base.py (StatusModel.Admin.mbd_action): Give action func directly instead of string * [b865b1e] includes/popup.html: Add title hints for keycodes (Reload=f5, Close=ESC) * [9420071] webapp.py (WebApp.remove_system_artifacts): Fixup: Use mdls() implicit importer && don't use admin actions * [8150e4a] cron.py (Tab.cronjob_check): Fixup: Don't use admin actions && move code to crontab * [61fabad] models/base.py (StatusModel.Admin): Add class methods (non- action) for pc, pca * [7feb377] api.py (Setup.Instance): Fixup 'pca': Don't use admin action (but mbd_pca class method) && add error handling * [a13ffb6] models/base.py (StatusModel.Admin): Use pc, pca class methods in resp. admin actions * [e624f9a] packager.py (Packager.run_event): Add missing exception log on REJECTED * [1f5f1f0] *.py (refac): Update python package structure && import convention * [ec0cc24] devel (mbd_pyrpl): Add helper * [7d201f7] *.py: Bulk fix a handful of cases where non 'util.HTTP*' exceptions were raised ([pylint 2.16.2] fixes 'broad-exception- raised') * [285bdeb] models.py: [pylint 2.16.2] Bulk-fix new (correct) warnings 'superflous-parens' * [da601e0] api/base|default.html: Minor improvements * [5e544d2] cron.py (Tab.cronjob_retry_uploads): Move "run-maintenance" to (minutely) cron job * [689f178] cron.py (Type): Add support for HOURLY jobs && make 'upload retry' job hourly (not minutely) * [21fd80a] api.py (Retry._run): Fix: Make also work for REJECTED events * [075f789] devel (profiles): Drop codespell check for buster * [4f36632] files.py: Bugfix: Drop pydoctest on dev-local files * [35b2a2a] devel (pydoctests): Run on *all* detected python scripts (was only m-b, m-b-api) * [c38c64e] debian/rules (override_dh_auto_test): Run ``./devel pydoctests`` as package test * [1b6671e] mini-buildd-super-portext: Fix doctests for BuildDep (unicode str, class path) * [48801ce] All py scripts: Bulk-protect to only run on ``__name__ == __main__`` * [eb28705] devel (pydoctests): Workaround for doctests in scripts * [a94cb58] models.py (Daemon): Allow starting even if FQDN of system is not configured (thanks to Lena Voytek for the patch) * [f78fff7] debian/po/de.po: Add translations for de, es, nl, pt (thx to all contributors!) (Closes: #1028241, #1028385, #1029029, #1029713) * [e134151] devel (testsuite packages): Fix mini 'typo' in comment * [80c0a02] util.py (Versions): Add utility for component versions * [7634eb2] models.py(EMailValidator): Compatibility for django < 3.2 * [1413d81] devel (testsuite-packages): installed-port: Port for released only (bullseye, buster) && skip non-working check on rebuild * [552b224] package.py (upload_template_package): Fix return value on error * [7214272] sbuild.py: Harden setup scripts code on path computing (using realpath) * [77e8d45] sbuild.py (apt-update): Add retry functionality for rare "File has unexpected size" error && document in adminstartors manual -- Stephan Sürken Tue, 07 Mar 2023 11:47:09 +0100 mini-buildd (1.9.117) unstable; urgency=medium [@release team: This is NOT for bookworm; pseudo bug is in place to keep mini-buildd in unstable.] Summary: * Another evolution of the 'setup system' * Misc fixes from some migration tests * Fixes/improvemts for remote building (Builders) * Improvements for the 'emacs cl mode' example (mr -- thx Gerhard) [ Gerhard A. Dittes ] * [6544e06] examples/mini-buildd-utils/mini-buildd.el: move to changelog menu * [f6bf1bd] examples/mini-buildd-utils/mini-buildd.el: separate from other menu items * [febf25f] examples/mini-buildd-utils/mini-buildd.el: be smart (, "always"!) * [31b60f3] examples/mini-buildd-utils/mini-buildd.el: homogenize menu definitions * [166cfa9] examples/mini-buildd-utils/mini-buildd.el: comply with "Emacs Lisp Coding Conventions" * [712e683] examples/mini-buildd-utils/mini-buildd.el: prevent redundant information * [ad92802] examples/mini-buildd-utils/mini-buildd.el: fix typo (auto- ports parameter) * [291503d] examples/mini-buildd-utils/mini-buildd.el: fix momentous typo * [d58cc66] examples/mini-buildd-utils/mini-buildd.el: some more reasonable variable naming * [411a384] examples/mini-buildd-utils/mini-buildd.el: prefer strings over symbols * [9bf9482] examples/mini-buildd-utils/mini-buildd.el: add some variable/function documentation (& make 'mbd-distributions' extensible) [ Stephan Sürken ] * [fa598e7] api.py (Setup.iarguments): --repositories: Fix notation/logic have [/] (not [/ __setup, __run (also fixes some pylint codestyle complaints) * [6a60628] api.py (Setup): (setup dict) Update all use of ``set`` to ``list`` (fixes order, makes setup dict JSON-serializable) * [3067616] devel (snapshot): Fix: sources_list check should be limited to "test" repository * [30a2aa8] api.py (Setup): Add separate --distributions arg (instead of combining w/ --repositories) * [31894ab] api.py (Setup.preset_current): Fixup chroots "current setup" * [e50c61d] api.py (Setup.Dists): Cleanup: Construct from iterable && drop separator * [2075dd5] tags/api_arg.html: Drop prefixing argument name to doc (duplication/cluttering only) * [3616c4f] api.py (ListArgument/argparse): Add custom argparse 'extend' action (fixes: Only last given values of '--list' options would be used if given multiple times) * [1eedf7a] src/mini-buildd (doc): --http-endpoint: Clear up wording (option itself may not be given multiple times) * [e84bb7b] devel (profiles): Update pureos setup * [12ef2ed] devel (testsuite): Add profiles '_arm64', '_repos' * [3d7def3] python3-mini-buildd.links: Switch Numix icon theme dir from 48->32 (since numix-icon-theme 0~20230112-1, 48/ is not complete) * [b893d97] api.py (Setup.iarguments): Drop '--save' option (including all support to auto save/retrieve from pickled_data) * [d718d43] api.py (Setup._preset): Drop '--update=all' from (Debian,Ubuntu) presets * [2d79c9b] api.py (Setup): Drop --sources-from-origin-with-lts|all in favor of :lts|all notation * [83b9799] api.py (Setup.iarguments): --chroots-from-distributions -> --chroots-from-sources (makes it suitable for builder-only hosts) * [9eedb47] api.py (Setup.iarguments): Misc argument docs fixups * [490d098] dist.py (refac): Make CODENAMES dict of Codenames (not setup) * [b477ef2] dist.py(refac): Drop CODENAMES global * [45382dd] api|dist.py (refac): codename selector: Move to dists and simplify * [4cea9d2] api.py (Setup._check_codenames): Drop (projected: should just go with a defaults) * [c44eddc] dist.py (di_codenames): Add support to get all codenames known to distro-info * [66176d0] api.py (Setup): Fix: Provide empty list if no 'apt_keys' setup found, not None * [dea8d1d] dist.py (Codename): Initially support a default setup * [cdb572c] api.py (Setup.__run.LayoutInstance.update): Remove some left-over debug logs * [fec5ea7] api.py (Setup.__run.SourceInstance.update): Skip clearing apt_keys list, always, use 'Instance', simplify * [a9d5a39] api.py (Setup.__run): Layout: Always use 'Instance', simplify * [dd6d3c2] api.py (Setup.Instance.diff): Model diff: Skip field if Model's default is the empty string * [394f583] misc.py (mdget): Add special "dict get" helper * [ccd1c3b] dist.py (Codename): Add setup_* methods to retrieve data from setup; updates && fixes for Sources+Distribution+Chroot * [f9e7fb9] views.py (ExceptionMiddleware): Fix incorrect 'error' call (fixes error response for django http errors) * [b82a475] devel (profiles): Make '_debug' only raise log level; add '_debug_full' to enable all the extra debug modes * [4171105] repository.py (Repository._mbd_package_migrate): Bugfix: Avoid repeated 'migration' when called w/o explicit version * [6312148] api.py (Setup): Don't force 'Daemon start' after running * [1a2731d] api.py: Add _Maintenance MixIn (lock && stop daemon), use for both Setup and RemakeChroots * [cca14f0] api.py (Setup): Add report counts for total setup+model diffs * [050c3dc] models/distribution.py (Distribution.__str__): Doc 'multiple distributions fluke' && add 'id' to make distinguishable for the user * [410bea6] api.py (Setup): Add preliminary-check: Fail on 'multiple Distributions fluke' * [1a5bd36] api.py (Setup): Update preset handling * [7d37ec9] index.html, base.html: Move 'power' API call to main menu * [d275a8d] models/daemon.py (Daemon): Don't 'power on' on activation * [4c80a32] base|index|admin.html: Improved visualization && info for power state * [277fb1d] api.py: Add "test" repository for (Debian,Ubuntu) presets * [525b2ca] api.py (doc): Update all argument doc strings to consistently start capitalized * [46a2dbb] devel (profiles): Better profile names for remote test setup * [304758c] builders/index.html: Cleanup/simplify builders view * [b757da9] models/gnupg.py (Remote.mbd_check): Not in remote status: Choose slightly better exception wording * [5eaf1c8] models/gnupg.py (Builders): Fix wrong call of mbd_check() (&& simplify and document) (fixes building on remotes) * [7f237a5] api.py (Wake): Change authorization: _Admin->_Staff * [c2a2c78] models/gnupg.py (Remote): Don't implicitly wake on check; instead, wake optionally for Builders instance * [e6d036b] views.py (BuildersView): Automatically re-check remotes if staff user is logged in * [51a7f7e] api/*.html: Add custom HTML for power,cancel and retry API calls * [7126427] sbuild.py (SBuild.cancel): Improve: Add PID to logs, add smart wait after terminate && kill as last resort * [20b144f] models/*.py: Fixup all usages of obj.id -> obj.pk ('id' is only available if model has a primary key field) * [a5a02c7] api.py (Call.set_args): Drop debug logs per arg (way too chatty, rather breaks debugging) * [95d025a] api.py (Setup.Instance._get_obj): Add support to define custom getter * [7ee27be] api.py (Setup.Instance.diff): Add function doc * [83b1017] api.py (Setup): Add custom AptKeyInstance: Support old short keys in getter; always update 'key_id' (8) to 'long key id' (16) * [33f084f] models/gnupg.py (GnuPGPublicKey.mbd_prepare): Always implicitly update key_id to key_long_id * [968d865] api.py (Setup.Instance): On update, set fields directly to obj instead of QuerySet.update() * [00aef08] api.py (SourceInstance): Do AptKeyInstances outside of update() && clear apt_keys again on update * [2c78bf8] api.py (Setup.Instance): Replace updated,created,pca individual bool values by list of actions * [a8e64c1] api.py (Setup): Distribution: Move PrioritySource, Components outside of update() * [0813365] api.py (Setup, DistributionInstance.update): Bugfix: Move "archall fixer" code out of architecture loop * [6594e85] includes/api/show.html: Use predictable datatable id (keeps search setting per source) * [738b9f2] mini-buildd-backup (--restore): Create mini-buildd user, fail if exists * [9d68a03] api.py (Setup --sources): Fix: Don't force only setup-known codenames (we now have defaults) * [bde2f91] manual/roadmap.rst: Add preliminary note about --debug * [69f3297] api.py (Setup --pca): Always call with 'check' forced * [dacedf6] sbuild.py (SBuild.run): Add LOG.info on sbuild start -- Stephan Sürken Sun, 19 Feb 2023 14:17:14 +0100 mini-buildd (1.9.116) unstable; urgency=medium Summary: * More HTML/usability updates * Improvements to new setup system Details: * [402dd6c] views.py: Pimp default "Events" limit to 40 * [d8c5fe7] dist.py (Codename): Bugfix: Account for that 'release' from DistroInfo may be None * [a26c5fc] api.py (Setup.setup_repositories): Don't fail (just skip) if there is an existing (source) instance we have no setup for * [4986b0c] models/base.py (Model.mbd_diff): Add exception log when not comparable (this rather is a bug) * [d04078d] models/base.py: Better name mbd_message->mbd_msg_exception * [c7c71bb] models/base.py: Add mbd_msg generic function && also use for non-error messages * [a75d812] includes/messages.html: Don't show all messages directly (hide in
tag) * [a882e81] api.py (Setup.setup_repositories): Notation fix: Add custom extra_options directly * [b4b34ab] api.py (Setup.get_or_none): Add helper function * [f18044b] models/base.py (Model.mbd_diff): Allow compared obj to be None * [e38f92f] api.py (Setup.x_or_create): refactor, only change (including create) on --update && allow obj=None * [b96b40b] api.py (Setup): Some fixes to deal with obj=None * [6a0f3f6] models/base.py: Rather use decorators to set action descriptions * [0e88968] models/base.py: Admin actions: Fixup code order for PC, PCA * [b456f47] models/base.py: Update mbd_msg (django) to also log * [7cc6d57] models/base.py (StatusModel).Admin: Add mbd_pca() helper * [e882ac4] api.py (Setup.x_or_create): Add "dynamic update" support * [45c8047] src/mini_buildd/api.py: Add dynamic update function for Source * [3c9032a] api.py: Add dynamic update function for Distribution * [61dfdf5] api.py: Add dynamic update function for Repository * [e78fc26] api.py: Drop mbd_pca_all() * [204be70] api.py: Divide setup_repositories (+ *_layouts, *_distributions) * [4467744] api.py (sources, chroot, distributions): Refactor, iterate args (not existing instances) * [79db4f9] api.py(setup): Minor code cleanups * [4326169] api/setup.html: Show primary key in summary * [11e8c34] api.py (Setup.x_or_create): Add to diff when dynamic update fails (instead of failing) * [18abbb9] api.py (Setup.x_or_create): diff: If there is no existing instance, use kwargs as key * [0cb221b] api.py (Setup.setup_chroots): Don't fail if resp. Source cannot be found (rather add error to result) * [b2f2af9] api.py (Setup.setup_distributions): Don't fail if resp. Source does not exists * [281be23] builtins.py (mbd_api): Fix argument setting when called with command instance * [2ab4643] api.py (Call.*command_line): Add support to arbitrarily exclude options * [913b4c9] api.py (Setup.run): Exclude '--save' and '--update' in saved setup command line * [678e86c] api.py (Setup.Instance): Update to use Instance class (refactor) * [e2e6754] api.py (Setup): Move ``get_or_none`` helper to Base model ``mbd_get_or_none`` * [71ef0e6] api.py /refac): Replace ``x_or_create`` helper by ``Instance.run`` * [b7571b2] api.py (Setup.Instance): Add call instance as class variable * [5526347] api.py (Setup): (refac) Drop update_args * [2043caa] api.py (Setup): (refac) update() via inheritance * [14d9911] models/base.py (StatusModel): Revert action decorators back to monkey patching (only for django 3.2+) * [9115b09] devel: Add convenience profile '_debian_all' * [10923fb] control (mini-buildd): Drop dependency on lsb-base (now empty compat package only -- fixes lintian error) * [6b6de84] control (*-utils: Recommends): Add lsb-release (used in m-b- bootstrap-apt) * [9f97dac] devel (mbd_installdeps): Add lsb-release (used early in devel) * [d2e8ae4] api.py (Setup.Instance.__init__): Add identity && identity_hash * [efa7dbb] api.py (Setup): Change argument '--update' from bool->str ("", "all", ",..") * [1a4de5d] api.py (Setup.setup_chroots): (refac) Simplify loop * [04559a5] models/base.py, api.py: Move Model.mbd_diff() to Instance.diff() * [4e3ce55] api.py (Setup.Instance.diff): Fix: Instantiate default (compare) object from kwargs as well * [9e15ec9] models/base.py (Model): Add helper mbd_get_fields() (encapsulating django's _meta.get_fields()) * [7ff3c42] api.py (Setup.Instance.diff): Update: Diff (nearly) all model fields && distinguish diff against setup && (model) default * [0ae9e4e] api.py (Setup.Instance.__init__): Make 'defaults' non- optional * [497c0c4] models/repository|source.py: Fix get_apt_line() to feed AptLine only the *name* of components, not the objects themselves * [dff240c] models/*.py: Sync all '__str__()' of models to make them more consistent * [6aad6ac] api.py (Handshake.run): Rather run log_exception on error (make log-debugging possible) * [766137a] dist.py: SETUP: Move (suite) rollbacks into layout * [84b1791] models/distribution.py(SuiteOptionInline) Fix: Show 'extra_options' (for rollback) * [5b7ef1a] api.py (Setup.Instance): (refac) Proper naming (kwargs->identifiers, defaults->options, model_class->model) * [72c57c9] dist.py: Replace 'needs_uname_26' by 'chroot_options' * [584dae5] dist.py: Update SetupSources or "identifiers, options" * [62cda28] models/distribution.py (Distribution.__init__): Add constructor to set default for "extra_options" * [e5499d2] dist.py: Cleanup Distribution options * [b315d76] dist.py: Fixup format for distribution and chroot options * [da44f48] dist.py (SETUP): Update, simplify and consolidate notation * [32bfcd5] dist.py (SETUP): Consistently add trailing newline for "extra_options" * [0094c5a] dist.py: Cleanup/simplify sbuild import * [7deac6f] api.py (Setup.run): Protect from being run in parallel * [705f963] api.py (Setup.setup_chroots): Simplify && create Architecture object if needed * [bfe9817] api.py (Setup): Diversify --update -> --update, --pca * [755518a] api/setup.html: Improve layout && add calls to 'update, pca, update+pca' global && for each instance * [c01f519] api.py (Setup.Instance.__init__): Simplify notation, add debug log * [d2edbea] api.py (Setup._setup): Simplify code to have one _setup() method only * [8501f4a] api.py (Setup._check_codenames): Add pre-check for (given) codenames with no setup * [fd4b11f] devel (changelog): Prefix '.dev' to snapshot (timestamp) version (PEP 440) * [bc6d254] setup.py: Convert version to be PEP 440 compatible (fixes error w/ p-setuptools 66) * [e883200] api.py (Setup._setup): PrioSource: Fix location of instance generation (i.e., should not be in apt_keys loop) * [3a47f2f] api.py (Setup.Instance): Simplify, drop superfluous run() * [d8c7405] api.py (Setup._setup.SourceInstance.diff): Add 'dynamic' diff for "apt_keys" * [fd774f3] mini_buildd.css (nav>ul>li:hover>ul): Make login menu text align to right * [7125510] api/setup.html: Fixup instance description && status display * [e1dc5e8] api/setup.html: Switch to use datatables to display instances * [74bd65f] api.py (Setup.Instance): Simplify result: Just a list of instance (info) dicts does fine * [afdf18b] api/setup.html: Add separate columns for setup/default diff, created, updated * [4d0c4cf] api.py (Setup.Instance.diff): "fields" list per diff "type" (setup or model) * [ec79377] api/setup.html(diff columns): Improve wording; consistent search string to accommodate w/ datatables search * [230603c] api.py (Setup.Instance._add_m2m_diff): Add generic method for m2m diffs * [b26566e] api.py (Setup, DistributionInstance.diff): Add m2m diffs for fields "components", "extra_sources" * [cc1f0af] api.py (Setup._setup.RepositoryInstance.diff): Add m2m diff for "distributions" * [32dd9ac] api.py (Setup.Instance.__init__): Fix: Compute 'status' and 'diff' _after_ (potential) update or pca runs * [194049f] api/setup.html: Add extra support to show per-instance change URL (convenience) * [0cda6c5] models/base.py (UnixTextField): Replace all TextFields by this new custom field (normalizes newlines to UNIX) * [6dad8bc] dist.py, models: Remove all trailing newlines from Model defaults and setup * [bc81ade] api.py (Setup.Instance.diff): Simplify code -- Stephan Sürken Sun, 29 Jan 2023 19:42:15 +0100 mini-buildd (1.9.115) unstable; urgency=medium Summary: * More HTML/usability updates * Test and document "ongoing" handling (BUILDING, PACKAGING) * Initial tests and improvements for new 'setup' feature Details: * [d30dc0e] dir.html: Avoid links to raw (static twisted default) dir index && make text links always be "Download", icon links "View" * [618fea6] dir.html: Add up (..) to dir index * [9016daf] tags/datatable.html: better doc && somewhat nicer style for reset workaround * [857c808] mini_buildd/base.html: Rather show custom menu 1st (usually keeps general menus on same place) * [086a467] repositories/index.html: Fix: Don't show table when there are no repos (e.g., after initial install) * [8293ea9] web: Simplify HomeView to just show 'Ongoing Events' * [81279bf] web: Simplify 'Events' && 'Builds' to not have an extra header and menu * [d71ca85] events/index.html: Consistent table id name * [65cfa37] events.py: Drop "ongoing" run time flag workaround (no longer needed) * [9736378] api/show.html: DSC && CHANGES: Add DSC link to base version, drop event links && consolidate code * [b5ce6ea] manual/roadmap.rst: setup: Add sub-todo * [70be1bf] manual(notation): Update section hierarchy to ``#*=-~`` * [dc0b444] manual/index.rst: Simplify && re-order toctree * [9a1bf39] builder.py: Fix: Log ``BUILT`` event after build has finished (not after successful upload) * [f6d1068] events.py: Add per event "ongoing" template helper (enables 'ongoing' (blinking) display in 'EventsView') * [6b74dcf] includes/events.html(cancel): Fix: Rather use 'ongoing' shortcut, not calling function again * [1b7bb59] includes/events.html: Add "retry" for orphaned PACKAGING as well * [543276d] manual/administrator.rst: Add section explaining the 'ongoing handling' on restart (or lack thereof) * [e2907c2] manual/administrator.rst(Custom Event Hooks): Add version && minor fixups * [9354b3b] api.py (Setup.x_or_create): Add _defaults var (handling None-dict arg) * [77eb017] api.py (Setup.x_or_create): Update obj creation/update code (fixes: defaults would always be set, even w/o --update) * [0ccff3a] api.py: Simplify code && json result * [36394b7] api.py (Setup.x_or_create): Another refactoring of code (fixes diff on --update) * [9d0b8eb] api/setup.html: Add initial custom API 'setup' template * [2c9f5ad] src/mini-buildd-backup (--restore): Rather default to "no" && add DANGER text before proceeding * [446da0a] api/port.html: Reword "Event Queue"->"Ongoing Events" -- Stephan Sürken Fri, 06 Jan 2023 18:51:28 +0100 mini-buildd (1.9.114) unstable; urgency=medium Summary: * Documentation: Cleans up roadmap && admonitions * API: Adhere to "newer RFC" for json, allowing for a cleanup && simplification using non-dict JSON results * Another painful "HTML iteration" (make it less ugly) Details: * [be86ab8] manual/administrator.rst: Update apt-get update stall phenomena hint * [1057224] manual/administrator.rst: Update profiling hint * [7ee2c76] builder.py (Uploader): Migrate ``self.failed`` to dict * [a7339e4] events.html (BUILDING): Display "Upload failed" warning * [57fd86b] events.html: Display key (as title of event row) * [9b691a9] events.html: Rather use 'yesno' for ongoing class * [34e9e32] administrator.rst: Constitute two items from atok roadmap as bugs ;) * [55ef38c] manual/roadmap.rst: Fixup "setup todo" * [3d23b72] manual/roadmap.rst: Move SSL bug (from roadmap) to Administrator's Manual && update doc * [5992d8a] manual/roadmap.rst: Remove mbd-off/web bug (retests show it's fixed now) * [1d8cfe5] manual/roadmap.rst: Don't use admonitions for Open Tasks && Brainstorm * [4b02fab] manual/roadmap.rst: Drop 'debconf/make ssl default' item from brainstorm * [1fa0d66] manual/roadmap.rst: Move (to admin manual) and update "ssl/squeeze" bug * [96da765] manual/roadmap.rst: Move RFC 5147 hint/note to (PlainFilter) code * [972045c] manual/roadmap.rst: Drop dataclasses brainstorm (not valid I think) * [8a26188] manual/roadmap.rst: Simplify django brainstorm order * [13443b4] manual/roadmap.rst: Update && fixup 'Open Tasks' * [30700bc] manual/_templates/layout.html: Make 1st line of any admonition be bolder (via CSS) * [9a9f2e9] manual/roadmap.rst: Admonitions: Downgrade all wrong "error" admonitions (fixes the "bug" list) * [21501c3] *.py, *.rst: Replace "important" admonition by "note" * [863e8ad] src/mini_buildd/api.py: Update debmirror bug note * [c227031] includes/tags/file.html: Rather use 'strong', not 'h4' * [93d3857] mini_buildd.css: Add standard padding for section * [5e2c49d] api/base.html: cli/plin menus: Make result sections * [a5eea00] mini_buildd.css (section, aside): Make section borders thin (was medium) * [22fb30a] api/show.html: Simplify version menu (drop "More") * [dda07ba] *.py (refactor): Add generic misc.json_pretty() && update all code * [6a04eaa] api/base.html: Menu: Just show json, not json or plain * [c5225df] mini_buildd.css (nav ul): vertical-align=top * [71f79e8] api.py(Command): Add with_output option for http_args(); add url() * [558e8ac] api/base.html: Add "URL" to menu * [2a58dd5] API(plain): Replace __PLAIN__ special key in favor of method inheritance * [9c36569] manual/roadmap.rst: Add item to test/doc remotes handling * [205c886] api.py (calls with plain support): Update json result to be list of lines, not one big string * [4cbdb45] api/source_header.html: Fix: Don't use shortcut var "source" (defined elsewhere) * [158b8a6] mini_buildd.css: Center 'mbd-grid-ll' * [ef20e05] builtins.py: Add custom helper tag: mbd_repository * [883e6b3] api/migrate.html: Add custom template for "migrate" * [b5398b2] api/remove.html: Add custom template for "remove" * [3c17349] api.py: Remove mixin '_Show' (no longer needed) * [0da3e76] builtins.py (mbd_api): Move "output" option to end * [73177c9] package.py: Fix "port" when no version is supplied * [ce81ceb] package.py (port): Refac: Rather (more consistently) use 'to_version', not 'port_version' var name * [a674d8f] package.py (_port): Rather return a dict, omit unneeded 'source' && add 'dsc_url' (API calls port, portext) * [d342eb1] api.py (_Plain calls): Simply use a list as json result * [0ec93c7] api.py (all port-like calls): Just use list (of dicts) as result (drop superfluous "uploaded" key) * [72920ff] package.py (_port): Revive "source" entry in port results (convenient when checking results) * [7fabfd2] api.py (KeyringPackages): Fixup postprocessing (after port result change) * [ac85b47] api.py (TestPackages): Fixup postprocessing (after port result change) * [7ed2358] api/port.html: Add custom template * [9765e3b] api/port.html: Add custom templates for all port-likes (portext, keyring-packages, test-packages) as link * [d96400d] api/port.html: Don't include generic "source header" here * [67e6035] port_ext.html: Fix link name * [745b8e7] views.py (ExceptionMiddleware.error): Rather use log_exception (so we see stacktrace on debug) * [37893b4] views.py (APIView.get): Allow non-dict JsonResponse * [9007aef] api.py (subscribe/unsubscribe): Simplify json result * [cde5816] api.py (SnapshotLs): Simlify json result * [9777d33] api.py (retry, cancel): Simplify json result * [222d14e] api.py (Debmirror): Fix typo in docs * [468cf45] mini_buildd.css (pre, code): Use 'break-spaces' * [c8a6ab1] api.py (get_plain(), plain(), json_pretty()): Refactor * [962da75] scripts: Where ``m-b-api`` is used together with ``jq``, use --json * [f407eb2] mini-buildd-bootstrap-apt (get_pub_key): Fixup when getting pub_key via wget ('__plain__' is no more) * [ea2d694] models/gnupg.py (Remote.mbd_prepare): No longer needed to call get_plain() on API results -- Stephan Sürken Sun, 01 Jan 2023 16:36:00 +0100 mini-buildd (1.9.113) unstable; urgency=medium This release mainly cleans up (debconf) templates, READMEs and various other documentation; also changes handling of the default file (should appease piuparts): * [e4cee00] manual/administrator.rst: Add bug note about the rare "apt- get update build stalled" phenomena * [f32de6f] debian/mini-buildd.templates: Fix hint on (1.0.x) 'Quickstart' to new administrator's manual * [949053c] mini-buildd.postinst: Don't mix quoting on options (' vs ") when writing the default file (always use ") * [e52316d] mini-buildd.postinst: Drop deprecated '--verbose' as default option (now just empty) * [35d974f] mini-buildd.default: Sync with the default postinst (potentially) writes * [f7bf531] mini-buildd.postinst (default file handling): Simplify: Just always either write new line or replace * [ee24ab1] mini-buildd.default: Clarify wording of comment * [e805ef2] mini-buildd.postinst: Further simplify the default file handling code * [d26fca8] devel: Drop writing default file directly, rather do all via debconf * [855320a] devel (install): Use 'noninteractive' hardcoded for *.deb install, as sudo arg * [78963f5] mini-buildd.templates (admin_password): Description wording clarifications * [495712b] devel: Drop extra MBD_DEBIAN_FRONTEND (just directly set/use DEBIAN_FRONTEND) * [58896a0] devel (install): Empty out (old) options from default file before dpkg-reconfigure * [b40627a] devel (mbd_setupcert): Just always run 'create' (script already does not overwrite itself) * [fd065e1] devel (certificates): Setup certificates late (avoids perm problems when mini-buildd user is missing) && only if needed * [6afd7e7] devel (mbd_setupcert): Call browser/cert helper after updating certs (not before any browser start) * [f15c4b8] httpd.py (Events.mbd_ssl_workaround): Add setTimeout(None) due to new findings w/ twisted 22.4 * [22e15f7] debian/mini-buildd.README.Debian: Update wording and link to manual * [8794e83] mini-buildd.README.Debian: Drop note on shm bug (fixed in schroot, now an optional sbuild setup block snippet, documented there) * [dc3ede3] mini-buildd.README.Debian: Drop emacs mode hint * [f7574b8] src/mini-buildd: Update link to manual * [86f23c9] devel (changelog): Fixup snapshot versioning (so it will be > than the previous release) * [dd6ed93] mini-buildd.templates (options): Improve wording, mention options to get HTTPS * [038eeca] manual/administrator.rst (Running encrypted): Improve and complete section * [73b4f4d] debian/po: Updates from debconf-updatepo -- Stephan Sürken Sat, 24 Dec 2022 12:10:45 +0100 mini-buildd (1.9.112) unstable; urgency=medium Upload to unstable: * Bug fix: "mini-buildd (build-)depends on cruft package.", thanks to Peter Michael Green (Closes: #933751). * Bug fix: "Python2 removal in sid/bullseye", thanks to Matthias Klose (Closes: #937049). Please wait for a '2.0.x release' for any production purposes. While no serious problem is known, some mandatory testing (&& documentation) is still outstanding, especially on - upgrades from 1.0.x - the new 'setup' system Details: * [cf90668] dist.py(setup): 'wheezy' needs 'apt-key-add' workaround * [bf3d0e1] dist.py(setup): 'wheezy' needs 'apt-urold' workaround * [8a646b2] builder.py,ftpd.py: Cosmetic: Update two now misleading code comments * [5f4bc16] builtins.py (Css): Add "failed" as possible sbuild status (color) * [3d837a9] builder.py: Add "Canceled-By" tag for explicit build cancellation (by shutdown or user) * [353cddb] manual/administrator.rst: Improve 'vsyscall hint' * [d7743d6] repository.py (Repository._mbd_package_migrate): Fix 'migrate' when 'version' not given * [b4734f5] events.html: Add 'rebuild' button on 'INSTALLED' * [e4b9c0e] dist.py: Add Ubuntu 22.10 (kinetic) * [a21af05] api/source_header.html: Use same header for ls && show * [a96f655] api.py (Output): Add meta argument class for 'output' * [ce187e4] builtins.py, api.html (mbd_api): 'output': Rather use 'Output' meta option instance than explicit HTML * [ff6c6ea] api.py, tags/api_arg.html: Revive HTML 'select' for Choice* arguments * [fe3b5df] tags/api_arg.html: Fix includes of "checked" and "required" for correct spacing * [918f2b4] mini_buildd.js(mbd_api_call): Code (mostly style) improvements * [c8d37ee] api.html/js(API calls): Switch "confirm" to HTML only * [fea4f2c] api.html/mini_buildd.js: Switch to "onsubmit/action" (drop extra