Skip to content
This repository has been archived by the owner on Jan 27, 2024. It is now read-only.

Latest commit

 

History

History
100 lines (59 loc) · 3.73 KB

HACKING.md

File metadata and controls

100 lines (59 loc) · 3.73 KB

Contributing

This is Open Source Software. We realized that we didn't pass the Patch Test

What to contribute

Here's a few places to start:

  • Report any bugs you find.
  • No, seriously! Most of the bugs don't even get reported, or the reporter only writes "Doesn't work for me" and then vanishes.
  • "help wanted" issues, especially automated testing
  • "secret chat" issues
  • Portability (especially endianness) of tgl (external project)
  • Issues of tgl -- lots and lots of false or obsolete reports
  • Slim down the size of the generated files in tgl/auto, as this currently dominates the build time. Yuk!
  • Make sure that the libpurple-devs don't break libpurple any further.

How to contribute

Write an issue, shoot us a mail (scrape the address from the git history), or contact us in dev chat (changing URL, see README for that).

How to release

Translations

Ideally, do a string freeze beforehand; however, this has proven to be too impractical for this project.

Go to the translation site, and close the current resource for new translations. Rename and re-prioritize it appropriately. Download the zip-file, extract it, remove the annoying prefix. Move all files to po/, except en.po.

While waiting for the download link, create the new resource with the new potfile, then re-upload all the old translations there.

Run make po/*.po to fix the filenames. Do not delete any files. Rationale see Makefile.

Adjust po/LINGUAS* as you see fit.

Also import the translations for AppStream/po/, and run make -C AppStream translate.

Increment version

Attempt to use semver.

Adjust configure.ac, in macro AC_INIT. Remember to run autoreconf.

Adjust telegram-adium/telegram-adium/telegram-adium-Info.plist. TWO PLACES!

Adjust rpm/purple-telegram.spec, in version at the top and "changelog" below.

Godspeed to the Debian maintainers. If you're reading this, check out tdlib-purple and it's fork!

AppStream: Nothing to do.

Update CHANGELOG.md.

Run some tests

First locally (make check), then on Travis. Also, install it locally. Don't forget to ./configure first.

Prepare release files

Fetch/pull recent changes.

Merge into master.

Make a tag: git tag v1.something Remember to push the tag to github.

Make a dist-bundle: make dist Keep the resulting telegram-purple_1.something.orig.tar.gz safe.

Make the windows installer: USE_PNG=n ./mkwindows.sh && USE_PNG=n USE_WEBP=n ./mkwindows.sh Keep the resulting telegram-purple-1.something+gcafebabe5.exe safe.

Create release on github

See the release page. Feel free to be inspired by the previous release-messages.

Remember to upload the origtar and Windows installer.

Close associated issues

All relevant issues are marked with in-pipeline, but sadly too many are marked this way.

Organize branches

Create a new branch dev-1.nextsomething, delete the old branch.

Create new translation goal on transifex

Be pessimistic in the slug-name.

Run ./autogen.sh to make all string changes available.

Also, create an announcement that yes there is a new resource, but this resource may change significantly until the next string freeze.