pidgin/pidgin

Stop automatically adding/remove conversations from the conversation manager

This was done to mimic the old conversations API and shouldn't be needed going
forward. However, since we can't create conversations right now, we're probably
missing some edge cases here.

Also make sure to keep a reference around on the conversation while removing to avoid use after frees.

Testing Done:
Trained with the turtles.

Reviewed at https://reviews.imfreedom.org/r/3049/
---
environment:
- BUILD_NUMBER
- REPOSITORY=pidgin/builders
- REGISTRY=docker.io
- DOCS_BUILD_IMAGE=${REGISTRY}/${REPOSITORY}:debian-trixie-amd64
tasks:
import:
type: docker/import
files: .:.
build:
type: docker/run
image: ${REGISTRY}/${REPOSITORY}:${TARGET}
clean:
type: convey/clean
files:
- alpine-edge-amd64
- clang
- debian-trixie-amd64
- debian-trixie-arm64
- debian-trixie-riscv64
- fedora-39-amd64
- fedora-rawhide-amd64
- scanbuild
- ubuntu-mantic-amd64
docs-clean:
type: convey/clean
files:
- pidgin3-docs.zip
- purple3-docs.zip
docs-build:
type: docker/run
image: ${DOCS_BUILD_IMAGE}
workdir: ${CONVEY_WORKSPACE}
shell: /bin/bash
script:
- set -ex
- meson setup build-docs -Ddoc=true
- ninja -C build-docs doc
# - pushd build-docs/doc/reference/finch
# - mv finch finch3
# - zip -9r finch3-docs.zip finch3
# - popd
- pushd build-docs/doc/reference/pidgin
- mv pidgin pidgin3
- zip -9r pidgin3-docs.zip pidgin3
- popd
- pushd build-docs/doc/reference/libpurple
- mv libpurple purple3
- zip -9r purple3-docs.zip purple3
docs-export:
type: docker/export
files:
- build-docs/doc/reference/libpurple/purple3-docs.zip:purple3-docs.zip
- build-docs/doc/reference/pidgin/pidgin3-docs.zip:pidgin3-docs.zip
export:
type: docker/export
files: build-${TARGET}:${TARGET}
bare-export:
type: docker/export
files: ${TARGET}:${TARGET}
girlint:
type: docker/run
image: docker.io/imfreedom/gir-tools:latest
script:
- cd ${CONVEY_WORKSPACE}
- xsltproc /gir-tools/girlint.xsl $(find build-${TARGET} -iname "*.gir" | grep -v subproject) | tee ${CONVEY_WORKSPACE}/log
- exit $(wc -l < ${CONVEY_WORKSPACE}/log)
plans:
alpine-edge-amd64:
environment: [TARGET=alpine-edge-amd64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
clang:
environment: [TARGET=clang]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
clean:
stages:
- tasks: [clean, docs-clean]
debian-trixie-amd64:
environment: [TARGET=debian-trixie-amd64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
debian-trixie-arm64:
environment: [TARGET=debian-trixie-arm64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
debian-trixie-riscv64:
environment: [TARGET=debian-trixie-riscv64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
docs:
stages:
- tasks: [docs-clean, import, docs-build, docs-export]
fedora-39-amd64:
environment: [TARGET=fedora-39-amd64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
fedora-rawhide-amd64:
environment: [TARGET=fedora-rawhide-amd64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
girlint:
environment: [TARGET=debian-trixie-amd64]
stages:
- tasks: [import, build, girlint]
scanbuild:
environment: [TARGET=scanbuild]
stages:
- tasks: [import, build]
- tasks: [export]
run: always
ubuntu-mantic-amd64:
environment: [TARGET=ubuntu-mantic-amd64]
stages:
- tasks: [import, build]
- tasks: [export]
run: always