lp:~cjwatson/launchpad

Owned by Colin Watson
Get this repository:
git clone https://git.qastaging.paddev.net/~cjwatson/launchpad
Only Colin Watson can upload to this repository. If you are Colin Watson please log in for upload directions.

Branches

Name Last Modified Last Commit
master 2023-11-15 17:21:48 UTC
charm: Add a sync-branches action to launchpad-codehosting

Author: Colin Watson
Author Date: 2023-11-15 17:21:48 UTC

charm: Add a sync-branches action to launchpad-codehosting

Merged from https://code.launchpad.net/~cjwatson/launchpad/+git/launchpad/+merge/455646

merge-db-stable 2023-09-27 15:00:53 UTC
Add pro_enable field to Snap table

Author: Ines Almeida
Author Date: 2023-09-27 15:00:53 UTC

Add pro_enable field to Snap table

Merged from https://code.launchpad.net/~ines-almeida/launchpad/+git/launchpad/+merge/452119

ci-build-multi-arch-ui 2023-08-23 19:29:46 UTC
Clarify CI build links when they exist for multiple architectures

Author: Colin Watson
Author Date: 2023-08-23 19:29:46 UTC

Clarify CI build links when they exist for multiple architectures

If you set up a `.launchpad.yaml` that runs builds on multiple
architectures, the UI presentation currently looks like this:

  [ ] build:0 (build)
  [ ] build:0 (build)

That leaves something to be desired in terms of clarity. Show the
series and architecture in the link text that currently just reads
"build", so that it looks like this instead:

  [ ] build:0 (focal/amd64)
  [ ] build:0 (focal/arm64)

charmrecipebuild-traversal 2023-08-03 11:47:02 UTC
Add +charmrecipebuild stepthrough navigation on BuilderSet

Author: Colin Watson
Author Date: 2023-08-03 11:47:01 UTC

Add +charmrecipebuild stepthrough navigation on BuilderSet

This is useful when repairing the build farm after outages, or otherwise
needing to look up a charm recipe build by its ID alone. It goes with
similar stepthroughs for other build types.

charm-charmhub-secrets-private-key 2023-04-20 19:56:17 UTC
charm: Add charmhub_secrets_private_key

Author: Colin Watson
Author Date: 2023-04-20 19:56:17 UTC

charm: Add charmhub_secrets_private_key

Otherwise Charmhub authorization doesn't work when authorizing upload of
charm recipe builds.

kafka-producer 2023-03-22 18:22:30 UTC
Add a simple Kafka producer abstraction

Author: Colin Watson
Author Date: 2023-03-22 18:22:30 UTC

Add a simple Kafka producer abstraction

This isn't used anywhere as yet, but in an earlier experiment I was able
to use this to send events to Kafka on `git push`.

I want the abstraction layer in place for ease of testing, and in order
that we can switch to different bindings without too much trouble, since
we aren't very familiar with the operational properties of these
bindings as yet.

db-kafka-offset 2023-03-13 14:31:52 UTC
Add KafkaOffset table

Author: Colin Watson
Author Date: 2023-03-13 14:31:52 UTC

Add KafkaOffset table

In order to consume events from Kafka, we'll need a way to keep track of
our position in any given event stream. This is tracked by topic name
and partition (with the number of partitions depending on the number of
parallel consumers of any given topic). Updating a table of (topic,
partition, offset) in the same transaction as we handle whatever else we
need to do for that event gives us exactly-once event delivery, and
seems to integrate quite nicely into the rest of Launchpad.

refactor-pgsession-queries 2023-02-23 12:06:26 UTC
Refactor PGSession queries to reduce manual SQL

Author: Colin Watson
Author Date: 2023-02-23 12:06:25 UTC

Refactor PGSession queries to reduce manual SQL

Pushing the special handling for old session pickles saved by Python 2
down to the `SessionPkgData` model and adding some named function
declarations allows us to make quite effective use of Storm's query
compiler, eliminating some manually-constructed SQL and giving us better
type annotations.

It's possible that at least the dump compatibility with Python 2 can now
be removed, but I deliberately haven't attempted that in this commit:
this should be a pure refactoring with no functional change.

zcml-namespaces-mail 2023-02-20 15:24:37 UTC
Move ZCML mail-related directives to lp namespace

Author: Colin Watson
Author Date: 2023-02-20 15:24:36 UTC

Move ZCML mail-related directives to lp namespace

As with commit 57196c1d6a220f00039e027768cc05368135f556, it makes sense
to move our various local `*MailBox` and `*Mailer` directives to our own
namespace rather than poking them into the Zope mail namespace.

We retain some backward-compatibility registrations with the old
namespace for the time being, as these directives appear in some
per-environment configuration files.

more-relative-build-scores 2023-02-08 16:02:11 UTC
Add relative_build_score to CharmRecipe/GitRepository/Snap

Author: Colin Watson
Author Date: 2023-02-08 16:02:10 UTC

Add relative_build_score to CharmRecipe/GitRepository/Snap

This lets us adjust the priority of all builds for a given recipe or
repository, which is occasionally useful.

The new attributes are currently only editable by commercial admins and
people with similar privilege, which isn't perfect; ideally these would
also be editable by Launchpad staff, since they don't allow privilege
escalation. However, that would have involved a fair bit more
rearrangement (particularly in `GitRepository`, where the
`launchpad.Moderate` permission is already in use for something else),
and I wanted to get this out the door without blocking on that.

LP: #1974360

db-artifactory-publishing-columns-not-null 2023-01-31 13:15:30 UTC
Make Artifactory publishing columns non-nullable

Author: Colin Watson
Author Date: 2023-01-31 13:15:28 UTC

Make Artifactory publishing columns non-nullable

The backfill jobs have all finished everywhere now.

soss-source-url-deb 2023-01-12 17:49:40 UTC
Add an example URL in a comment

Author: Colin Watson
Author Date: 2023-01-12 17:49:40 UTC

Add an example URL in a comment

db-devel 2022-11-22 19:10:27 UTC
Automatic merge from stable up to 5aee8f659f6d

Author: Patch Queue Manager
Author Date: 2022-11-22 19:10:27 UTC

Automatic merge from stable up to 5aee8f659f6d

scan-generic-detect-float-version 2022-10-03 12:52:23 UTC
Explicitly check type of report's version property

Author: Colin Watson
Author Date: 2022-10-03 12:52:23 UTC

Explicitly check type of report's version property

This is an easy mistake to make in YAML, so check for it explicitly to
avoid a confusing OOPS later on.

lpcraft-pre-commit 2022-08-03 17:45:03 UTC
Run pre-commit checks via Launchpad CI jobs

Author: Colin Watson
Author Date: 2022-06-17 11:59:10 UTC

Run pre-commit checks via Launchpad CI jobs

db-narrow-bpr-ci-build-unique-index-cleanup 2022-06-22 13:25:35 UTC
Drop BPR (ci_build, binarypackagename) index

Author: Colin Watson
Author Date: 2022-06-22 13:25:35 UTC

Drop BPR (ci_build, binarypackagename) index

Replaced by a unique index that also includes
`BinaryPackageRelease.binpackageformat`.

numbercruncher-empty-build-queues 2021-10-29 22:34:26 UTC
Send buildqueue gauges for active builders with empty queues

Author: Colin Watson
Author Date: 2021-10-29 22:34:26 UTC

Send buildqueue gauges for active builders with empty queues

If builders for a (processor name, virtualized) combination exist but
have no queued builds, we should still send a zero value for the
corresponding `buildqueue` gauge, as otherwise we end up with unsightly
gaps in graphs.

librarian-new-container-workaround 2021-07-15 10:35:08 UTC
Allow librarian-feed-swift to sleep after creating container

Author: Colin Watson
Author Date: 2021-07-15 10:35:08 UTC

Allow librarian-feed-swift to sleep after creating container

radosgw apparently has a bug where newly-created containers need to be
left idle for a short time before they can be used reliably. For now,
allow working around this by configuring
`librarian_server.new_container_delay` to a number of seconds to sleep
after creating a new container.

See https://portal.admin.canonical.com/C131836.

stop-ppa-key-propagation 2020-10-21 19:24:59 UTC
Stop propagating signing keys between an owner's PPAs

Author: Colin Watson
Author Date: 2020-10-21 19:24:59 UTC

Stop propagating signing keys between an owner's PPAs

Things were perhaps different in 2009 when this feature was designed,
but add-apt-repository has dealt with fetching keys on a per-archive
basis for a long time now, and it makes more sense for keys to be
per-archive. This also improves behaviour for users whose default
archive was created long enough ago that it has a 1024-bit signing key.

LP: #1700167

unreplicated-means-primary 2020-07-01 10:36:15 UTC
Always use the primary DB in unreplicated environments

Author: Colin Watson
Author Date: 2020-07-01 10:36:15 UTC

Always use the primary DB in unreplicated environments

If there's no replication, it doesn't make sense to keep trying to talk
to a possibly-broken standby. Just use the primary instead.

LP: #1885859

fix-ui-oci-reg-creds 2020-05-11 23:03:04 UTC
Fix OCIEditRegistryCredentialsView field handling

Author: Colin Watson
Author Date: 2020-05-11 22:58:05 UTC

Fix OCIEditRegistryCredentialsView field handling

This reworks the field layout and parsing along the same lines as the
similar table in GitRepositoryPermissionsView.

The update logic is now easier to follow, because the business of
parsing data from the form is separated from the business of applying
the changes to the database. Updates are done by iterating over the
parsed form rather than iterating over the existing credentials, because
there's no guarantee that the latter match what existed at the time the
form was generated, and we check for mismatches (of the form of an
attempt to update a credentials row with a nonexistent ID or one that
isn't owned by the context person).

The template now has a way to get hold of the widgets for a given
OCIRegistryCredentials object, rather than trying to reuse the same
widgets on each row of the table.

built-using-domination 2020-04-23 16:46:39 UTC
Fix calculation of live source versions

Author: Colin Watson
Author Date: 2020-04-23 16:46:39 UTC

Fix calculation of live source versions

The dominator previously incorrectly reinstated source publications if
they were the latest one being considered for domination, even if that
was an inactive publication with only inactive Built-Using references.

built-using-guard-copying 2020-04-22 20:00:14 UTC
Guard copies of binaries with Built-Using references

Author: Colin Watson
Author Date: 2020-04-22 19:56:17 UTC

Guard copies of binaries with Built-Using references

If binaries have Built-Using references, then we need to make sure that
we can resolve those references and keep the corresponding sources
published while the binaries are published. Prevent copies of binaries
if any such references can't be resolved in the target publishing
context.

LP: #1868558

built-using-guard-deletion 2020-04-22 19:59:22 UTC
Simplify tests using createFromSourcePackageReleases

Author: Colin Watson
Author Date: 2020-04-22 16:54:25 UTC

Simplify tests using createFromSourcePackageReleases

simplify-external-translation-messages 2020-04-01 21:16:23 UTC
Simplify POTMsgSet._getExternalTranslationMessages

Author: Colin Watson
Author Date: 2020-04-01 21:16:23 UTC

Simplify POTMsgSet._getExternalTranslationMessages

There's no obvious point to sorting the results of a subquery and then
passing it straight to the IN operator; this seems to be a vestige of
earlier code that fetched the result of the subquery into Python. This
doesn't seem to make a massive difference (though it's a bit hard to
tell due to caching), but it at least simplifies the query plan.

LP: #736005

db-potmsgset-msgid-plural-idx 2020-04-01 20:32:11 UTC
Index POTMsgSet(msgid_plural)

Author: Colin Watson
Author Date: 2020-04-01 20:32:11 UTC

Index POTMsgSet(msgid_plural)

This is used by POFileMixIn._getTemplateSearchQuery. Adding this index
probably won't fix timeouts on its own, but it certainly helps avoid
some full table scans.

LP: #736005

livefs-build-pocket 2019-10-08 08:27:21 UTC
Allow livefs build metadata to override the default build pocket.

Author: Colin Watson
Author Date: 2019-09-06 23:53:16 UTC

Allow livefs build metadata to override the default build pocket.

This makes it possible, for example, to distinguish the case of building a
livefs using tools from -updates but with contents from the release pocket
from the case of building a livefs using tools from -updates and contents
from -updates.

snap-check-request-private-git 2019-10-07 16:46:44 UTC
Check that the snap owner has read access to the repository, rather than that...

Author: Colin Watson
Author Date: 2019-03-28 14:59:34 UTC

Check that the snap owner has read access to the repository, rather than that owners match.

login-interstitial 2019-10-07 13:53:48 UTC
Add interstitial pages when creating or reactivating an account.

Author: Colin Watson
Author Date: 2018-05-25 22:18:52 UTC

Add interstitial pages when creating or reactivating an account.

These provide an opportunity to present the user with the terms of service
and privacy policy and require that they explicitly accept them, as well as
making it harder to reactivate an account by accident.

To support testing this locally, I extended make-lp-user to be able to
create placeholder accounts, and adjusted testopenid so that it can
authenticate as an inactive account by explicitly supplying the username.

sourcedeps-codetree 2019-10-07 12:45:07 UTC
Replace most of devscripts.sourcecode with codetree.

Author: Colin Watson
Author Date: 2017-11-01 01:09:59 UTC

Replace most of devscripts.sourcecode with codetree.

git-subscriptions-by-path 2019-10-07 11:21:23 UTC
Make GitSubscription.paths be a JSON-encoded list instead.

Author: Colin Watson
Author Date: 2016-11-17 15:00:35 UTC

Make GitSubscription.paths be a JSON-encoded list instead.

opt-in-zopeless-immediate-mail 2019-10-07 09:59:51 UTC
Drop immediate mail delivery from LaunchpadScript and LaunchpadZopelessLayer.

Author: Colin Watson
Author Date: 2015-09-08 11:35:19 UTC

Drop immediate mail delivery from LaunchpadScript and LaunchpadZopelessLayer.

132 of 32 results
This repository contains Public information 
Everyone can see this information.

Subscribers