qulogic/pidgin

Implement PurpleFileTransferManager

4 months ago, Gary Kramlich
dcdf8a9a686b
Implement PurpleFileTransferManager

This is a pretty simple manager as duplicates are allowed and
PurpleFileTransfer all property driven which means we only need to propagate
the notify signal.

This doesn't persist across restarts as we have some other issues that are
making that harder than it needs to be.

Testing Done:
Ran the unit tests under valgrind.

Bugs closed: PIDGIN-17831

Reviewed at https://reviews.imfreedom.org/r/2874/
---
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}
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
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