mirror of
https://github.com/tiennm99/telegram-exporter.git
synced 2026-10-11 03:13:49 +00:00
A run reported one aggregate line, which could say how much was done but never what was happening: which files were moving, whether a stall was a slow download or a slow upload, or how long the rest would take. On a transfer measured in hours those are the only questions worth answering. The pipeline now emits a per-item lifecycle rather than only Stats, and a terminal renders it as an overall bar plus one bar per file in flight. Uploads get a spinner rather than a bar because rclone's MoveFile is a single blocking call with no byte callbacks; naming the file is still the point, since a run that looks stalled is usually waiting on one large object. Before the transfer, the run states what it found and what it will do. The survey breaks the outstanding set down by reason — never fetched, zero-byte, wrong size, unarchivable — because that is the difference between a run that will converge and one that cannot, and the old "N to fetch" hid it. The plan states the cap, staging path and concurrency, so a wrong setting is visible before hours of transfer rather than after. Redirected output keeps plain lines and gains one per archived file. Bars are continuous cursor movement, and a captured log of them is what tdl's progress bar did to the shell pipeline's logs. cmd/uidemo renders the whole thing against fake data. It is how the layout was checked without a session, and it earned its place immediately: the overall bar sat at zero because Stats only tracked the file count and never advanced it.
258 lines
13 KiB
AMPL
258 lines
13 KiB
AMPL
module github.com/tiennm99dev/telegram-exporter
|
|
|
|
go 1.27.1
|
|
|
|
require (
|
|
github.com/gotd/td v0.140.0
|
|
github.com/iyear/tdl/core v0.20.4
|
|
github.com/rclone/rclone v1.75.1
|
|
go.etcd.io/bbolt v1.5.0
|
|
golang.org/x/sync v0.22.0
|
|
)
|
|
|
|
require (
|
|
cloud.google.com/go/auth v0.20.0 // indirect
|
|
cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect
|
|
cloud.google.com/go/compute/metadata v0.9.0 // indirect
|
|
github.com/Azure/azure-sdk-for-go/sdk/azcore v1.22.0 // indirect
|
|
github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.14.0 // indirect
|
|
github.com/Azure/azure-sdk-for-go/sdk/internal v1.12.0 // indirect
|
|
github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.8.0 // indirect
|
|
github.com/Azure/azure-sdk-for-go/sdk/storage/azfile v1.7.0 // indirect
|
|
github.com/Azure/go-ntlmssp v0.1.1 // indirect
|
|
github.com/AzureAD/microsoft-authentication-library-for-go v1.7.2 // indirect
|
|
github.com/FilenCloudDienste/filen-sdk-go v0.0.39 // indirect
|
|
github.com/Files-com/files-sdk-go/v3 v3.3.194 // indirect
|
|
github.com/IBM/go-sdk-core/v5 v5.23.1 // indirect
|
|
github.com/Max-Sum/base32768 v0.0.0-20230304063302-18e6ce5945fd // indirect
|
|
github.com/Microsoft/go-winio v0.6.2 // indirect
|
|
github.com/ProtonMail/bcrypt v0.0.0-20211005172633-e235017c1baf // indirect
|
|
github.com/ProtonMail/gluon v0.17.1-0.20230724134000-308be39be96e // indirect
|
|
github.com/ProtonMail/go-crypto v1.4.1 // indirect
|
|
github.com/ProtonMail/go-srp v0.0.7 // indirect
|
|
github.com/ProtonMail/gopenpgp/v3 v3.4.1 // indirect
|
|
github.com/PuerkitoBio/goquery v1.12.0 // indirect
|
|
github.com/VividCortex/ewma v1.2.0 // indirect
|
|
github.com/a1ex3/zstd-seekable-format-go/pkg v0.10.0 // indirect
|
|
github.com/abbot/go-http-auth v0.4.0 // indirect
|
|
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d // indirect
|
|
github.com/adrg/xdg v0.5.3 // indirect
|
|
github.com/anchore/go-lzo v0.1.1 // indirect
|
|
github.com/andybalholm/brotli v1.2.2 // indirect
|
|
github.com/andybalholm/cascadia v1.3.4 // indirect
|
|
github.com/apache/arrow-go/v18 v18.7.0 // indirect
|
|
github.com/appscode/go-querystring v0.0.0-20170504095604-0126cfb3f1dc // indirect
|
|
github.com/aws/aws-sdk-go-v2 v1.43.7 // indirect
|
|
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.18 // indirect
|
|
github.com/aws/aws-sdk-go-v2/config v1.32.30 // indirect
|
|
github.com/aws/aws-sdk-go-v2/credentials v1.19.29 // indirect
|
|
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.30 // indirect
|
|
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.22.34 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.38 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.38 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.39 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.17 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.9.31 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.38 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.19.39 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/s3 v1.107.3 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/signin v1.4.1 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/sso v1.32.1 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.37.1 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/sts v1.44.1 // indirect
|
|
github.com/aws/smithy-go v1.27.8 // indirect
|
|
github.com/bahlo/generic-list-go v0.2.0 // indirect
|
|
github.com/beevik/ntp v1.5.0 // indirect
|
|
github.com/beorn7/perks v1.0.1 // indirect
|
|
github.com/boombuler/barcode v1.1.0 // indirect
|
|
github.com/bradenaw/juniper v0.15.3 // indirect
|
|
github.com/buengese/sgzip v0.1.1 // indirect
|
|
github.com/buger/jsonparser v1.2.0 // indirect
|
|
github.com/calebcase/tmpfile v1.0.3 // indirect
|
|
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
|
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
|
github.com/chilts/sid v0.0.0-20190607042430-660e94789ec9 // indirect
|
|
github.com/clipperhouse/uax29/v2 v2.7.0 // indirect
|
|
github.com/cloudflare/circl v1.6.4 // indirect
|
|
github.com/cloudinary/cloudinary-go/v2 v2.16.0 // indirect
|
|
github.com/cloudsoda/go-smb2 v0.0.0-20260701064823-d8c5600d73b8 // indirect
|
|
github.com/cloudsoda/sddl v0.0.0-20250224235906-926454e91efc // indirect
|
|
github.com/coder/websocket v1.8.15 // indirect
|
|
github.com/colinmarc/hdfs/v2 v2.4.0 // indirect
|
|
github.com/coreos/go-semver v0.3.1 // indirect
|
|
github.com/coreos/go-systemd/v22 v22.6.0 // indirect
|
|
github.com/creasty/defaults v1.8.0 // indirect
|
|
github.com/cronokirby/saferith v0.33.1-0.20250226174546-1f11f94ce488 // indirect
|
|
github.com/diskfs/go-diskfs v1.9.4 // indirect
|
|
github.com/dlclark/regexp2 v1.12.0 // indirect
|
|
github.com/dromara/dongle v1.0.1 // indirect
|
|
github.com/dropbox/dropbox-sdk-go-unofficial/v6 v6.4.0 // indirect
|
|
github.com/ebitengine/purego v0.10.1 // indirect
|
|
github.com/emersion/go-message v0.18.2 // indirect
|
|
github.com/emersion/go-vcard v0.0.0-20260618161152-d854b7e0e2d3 // indirect
|
|
github.com/fatih/color v1.19.0 // indirect
|
|
github.com/felixge/httpsnoop v1.1.0 // indirect
|
|
github.com/flynn/noise v1.1.0 // indirect
|
|
github.com/gabriel-vasile/mimetype v1.4.15 // indirect
|
|
github.com/geoffgarside/ber v1.2.0 // indirect
|
|
github.com/ghodss/yaml v1.0.0 // indirect
|
|
github.com/go-chi/chi/v5 v5.3.1 // indirect
|
|
github.com/go-darwin/apfs v0.0.0-20211011131704-f84b94dbf348 // indirect
|
|
github.com/go-faster/errors v0.8.0 // indirect
|
|
github.com/go-faster/jx v1.2.0 // indirect
|
|
github.com/go-faster/xor v1.0.0 // indirect
|
|
github.com/go-faster/yaml v0.4.6 // indirect
|
|
github.com/go-git/go-billy/v5 v5.9.0 // indirect
|
|
github.com/go-logr/logr v1.4.3 // indirect
|
|
github.com/go-logr/stdr v1.2.2 // indirect
|
|
github.com/go-ole/go-ole v1.3.0 // indirect
|
|
github.com/go-openapi/errors v0.22.8 // indirect
|
|
github.com/go-openapi/strfmt v0.27.0 // indirect
|
|
github.com/go-playground/locales v0.14.1 // indirect
|
|
github.com/go-playground/universal-translator v0.18.1 // indirect
|
|
github.com/go-playground/validator/v10 v10.30.3 // indirect
|
|
github.com/go-resty/resty/v2 v2.17.2 // indirect
|
|
github.com/go-viper/mapstructure/v2 v2.5.0 // indirect
|
|
github.com/goccy/go-json v0.10.6 // indirect
|
|
github.com/gofrs/flock v0.13.0 // indirect
|
|
github.com/gogo/protobuf v1.3.2 // indirect
|
|
github.com/golang-jwt/jwt/v4 v4.5.2 // indirect
|
|
github.com/golang-jwt/jwt/v5 v5.3.1 // indirect
|
|
github.com/google/btree v1.1.3 // indirect
|
|
github.com/google/flatbuffers v25.12.19+incompatible // indirect
|
|
github.com/google/s2a-go v0.1.9 // indirect
|
|
github.com/google/uuid v1.6.0 // indirect
|
|
github.com/googleapis/enterprise-certificate-proxy v0.3.18 // indirect
|
|
github.com/googleapis/gax-go/v2 v2.22.0 // indirect
|
|
github.com/gorilla/schema v1.4.1 // indirect
|
|
github.com/gotd/contrib v0.20.0 // indirect
|
|
github.com/gotd/ige v0.3.0 // indirect
|
|
github.com/gotd/log v0.1.0 // indirect
|
|
github.com/gotd/neo v0.1.5 // indirect
|
|
github.com/hashicorp/errwrap v1.1.0 // indirect
|
|
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
|
|
github.com/hashicorp/go-multierror v1.1.1 // indirect
|
|
github.com/hashicorp/go-retryablehttp v0.7.8 // indirect
|
|
github.com/hashicorp/go-uuid v1.0.3 // indirect
|
|
github.com/internxt/rclone-adapter v0.0.0-20260708165336-dd6561bacfa2 // indirect
|
|
github.com/iyear/connectproxy v0.1.1 // indirect
|
|
github.com/jcmturner/aescts/v2 v2.0.0 // indirect
|
|
github.com/jcmturner/dnsutils/v2 v2.0.0 // indirect
|
|
github.com/jcmturner/gofork v1.7.6 // indirect
|
|
github.com/jcmturner/goidentity/v6 v6.0.1 // indirect
|
|
github.com/jcmturner/gokrb5/v8 v8.4.4 // indirect
|
|
github.com/jcmturner/rpc/v2 v2.0.3 // indirect
|
|
github.com/jlaffaye/ftp v0.2.1-0.20251026020404-6602e981a1bb // indirect
|
|
github.com/jtolds/gls v4.20.0+incompatible // indirect
|
|
github.com/jtolio/noiseconn v0.0.0-20231127013910-f6d9ecbf1de7 // indirect
|
|
github.com/jzelinskie/whirlpool v0.0.0-20201016144138-0675e54bb004 // indirect
|
|
github.com/klauspost/compress v1.19.2 // indirect
|
|
github.com/klauspost/cpuid/v2 v2.4.0 // indirect
|
|
github.com/koofr/go-httpclient v0.0.0-20240520111329-e20f8f203988 // indirect
|
|
github.com/koofr/go-koofrclient v0.0.0-20221207135200-cbd7fc9ad6a6 // indirect
|
|
github.com/kr/fs v0.1.0 // indirect
|
|
github.com/kylelemons/godebug v1.1.0 // indirect
|
|
github.com/lanrat/extsort v1.4.2 // indirect
|
|
github.com/leodido/go-urn v1.4.0 // indirect
|
|
github.com/lpar/calendar v0.2.0 // indirect
|
|
github.com/lufia/plan9stats v0.0.0-20260627054121-477a66015f15 // indirect
|
|
github.com/mailru/easyjson v0.9.2 // indirect
|
|
github.com/mattn/go-colorable v0.1.15 // indirect
|
|
github.com/mattn/go-isatty v0.0.23 // indirect
|
|
github.com/mattn/go-runewidth v0.0.28 // indirect
|
|
github.com/mitchellh/go-homedir v1.1.0 // indirect
|
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
|
github.com/ncw/swift/v2 v2.0.5 // indirect
|
|
github.com/ogen-go/ogen v1.23.0 // indirect
|
|
github.com/oklog/ulid/v2 v2.1.1 // indirect
|
|
github.com/oracle/oci-go-sdk/v65 v65.121.0 // indirect
|
|
github.com/panjf2000/ants/v2 v2.12.1 // indirect
|
|
github.com/patrickmn/go-cache v2.1.0+incompatible // indirect
|
|
github.com/pengsrc/go-shared v0.2.1-0.20190131101655-1999055a4a14 // indirect
|
|
github.com/peterh/liner v1.2.2 // indirect
|
|
github.com/pierrec/lz4/v4 v4.1.27 // indirect
|
|
github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect
|
|
github.com/pkg/errors v0.9.1 // indirect
|
|
github.com/pkg/sftp v1.13.11 // indirect
|
|
github.com/pkg/xattr v0.4.12 // indirect
|
|
github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect
|
|
github.com/pquerna/otp v1.5.0 // indirect
|
|
github.com/prometheus/client_golang v1.23.2 // indirect
|
|
github.com/prometheus/client_model v0.6.2 // indirect
|
|
github.com/prometheus/common v0.70.0 // indirect
|
|
github.com/prometheus/procfs v0.21.1 // indirect
|
|
github.com/putdotio/go-putio/putio v0.0.0-20200123120452-16d982cac2b8 // indirect
|
|
github.com/rclone/Proton-API-Bridge v1.0.5 // indirect
|
|
github.com/rclone/go-proton-api v1.0.4 // indirect
|
|
github.com/refraction-networking/utls v1.8.2 // indirect
|
|
github.com/relvacode/iso8601 v1.7.0 // indirect
|
|
github.com/rfjakob/eme v1.2.0 // indirect
|
|
github.com/sabhiram/go-gitignore v0.0.0-20210923224102-525f6e181f06 // indirect
|
|
github.com/samber/lo v1.53.0 // indirect
|
|
github.com/segmentio/asm v1.2.1 // indirect
|
|
github.com/shirou/gopsutil/v4 v4.26.6 // indirect
|
|
github.com/shopspring/decimal v1.4.0 // indirect
|
|
github.com/sirupsen/logrus v1.9.4 // indirect
|
|
github.com/skratchdot/open-golang v0.0.0-20200116055534-eef842397966 // indirect
|
|
github.com/smarty/assertions v1.16.0 // indirect
|
|
github.com/sony/gobreaker/v2 v2.4.0 // indirect
|
|
github.com/spacemonkeygo/monkit/v3 v3.0.25-0.20251022131615-eb24eb109368 // indirect
|
|
github.com/spf13/pflag v1.0.10 // indirect
|
|
github.com/stretchr/testify v1.12.1 // indirect
|
|
github.com/t3rm1n4l/go-mega v0.0.0-20260717075258-c6acd6a5bd04 // indirect
|
|
github.com/tklauser/go-sysconf v0.4.0 // indirect
|
|
github.com/tklauser/numcpus v0.12.0 // indirect
|
|
github.com/tyler-smith/go-bip39 v1.1.0 // indirect
|
|
github.com/ulikunitz/xz v0.5.15 // indirect
|
|
github.com/unknwon/goconfig v1.0.0 // indirect
|
|
github.com/vbauerster/cupwriter v0.0.4 // indirect
|
|
github.com/vbauerster/mpb/v8 v8.16.1 // indirect
|
|
github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect
|
|
github.com/xanzy/ssh-agent v0.3.3 // indirect
|
|
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect
|
|
github.com/yuin/goldmark v1.8.4 // indirect
|
|
github.com/yunify/qingstor-sdk-go/v3 v3.2.0 // indirect
|
|
github.com/yusufpapurcu/wmi v1.2.4 // indirect
|
|
github.com/zeebo/blake3 v0.2.4 // indirect
|
|
github.com/zeebo/errs v1.4.0 // indirect
|
|
github.com/zeebo/xxh3 v1.1.0 // indirect
|
|
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
|
|
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.69.0 // indirect
|
|
go.opentelemetry.io/otel v1.44.0 // indirect
|
|
go.opentelemetry.io/otel/metric v1.44.0 // indirect
|
|
go.opentelemetry.io/otel/trace v1.44.0 // indirect
|
|
go.uber.org/atomic v1.11.0 // indirect
|
|
go.uber.org/multierr v1.11.0 // indirect
|
|
go.uber.org/zap v1.28.0 // indirect
|
|
go.yaml.in/yaml/v2 v2.4.4 // indirect
|
|
go.yaml.in/yaml/v3 v3.0.5 // indirect
|
|
golang.org/x/crypto v0.56.0 // indirect
|
|
golang.org/x/exp v0.0.0-20260709172345-9ea1abe57597 // indirect
|
|
golang.org/x/image v0.45.0 // indirect
|
|
golang.org/x/mod v0.38.0 // indirect
|
|
golang.org/x/net v0.58.0 // indirect
|
|
golang.org/x/oauth2 v0.36.0 // indirect
|
|
golang.org/x/sys v0.47.0 // indirect
|
|
golang.org/x/term v0.45.0 // indirect
|
|
golang.org/x/text v0.41.0 // indirect
|
|
golang.org/x/time v0.15.0 // indirect
|
|
golang.org/x/tools v0.48.0 // indirect
|
|
google.golang.org/api v0.279.0 // indirect
|
|
google.golang.org/genproto/googleapis/rpc v0.0.0-20260715232425-e75dac1f907d // indirect
|
|
google.golang.org/grpc v1.84.0-dev.0.20260723093437-b6eac429d7b6 // indirect
|
|
google.golang.org/protobuf v1.36.11 // indirect
|
|
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
|
|
gopkg.in/validator.v2 v2.0.1 // indirect
|
|
gopkg.in/yaml.v2 v2.4.0 // indirect
|
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
|
moul.io/http2curl/v2 v2.3.0 // indirect
|
|
rsc.io/qr v0.2.0 // indirect
|
|
sigs.k8s.io/yaml v1.6.0 // indirect
|
|
storj.io/common v0.0.0-20260629224719-ba1bff0a7846 // indirect
|
|
storj.io/drpc v1.0.0 // indirect
|
|
storj.io/eventkit v0.0.0-20260716074419-6861a92e2aa5 // indirect
|
|
storj.io/infectious v0.0.2 // indirect
|
|
storj.io/picobuf v0.0.4 // indirect
|
|
storj.io/uplink v1.14.3 // indirect
|
|
)
|