Revision:

Revisions

# Date Author Comment
96990dc7 09/17/2015 02:15 pm Hans-Christoph Steiner

psutil removed get_pid_list() in v3.0

079aac41 09/17/2015 01:45 pm Hans-Christoph Steiner

add links to the README

c36bcf40 06/17/2015 04:47 pm Hans-Christoph Steiner

set to v0.2.2 for release

7dc61f35 04/11/2015 01:20 pm Ralf Jung

run-tests: copy gajim outfiles

3a7ecf3a 04/03/2015 03:18 pm Ralf Jung

fix detection of public keys

37eb4857 11/10/2014 07:55 pm Ralf Jung

implement writing gajim keys

86e25de6 11/01/2014 06:55 pm Ralf Jung

Make it clear that the selection at the top just determines the sources

d52c3055 07/17/2014 01:36 am Hans-Christoph Steiner

switch default 'Python Imaging' to Pillow, that's what is shipped

PIL is defunct, more or less, and only available via a non-pypi, insecure
download location with no way to verify the integrity.

d61ace88 07/17/2014 01:34 am Hans-Christoph Steiner

include jenkins-build in source tarball

2cb5a2ea 07/17/2014 01:34 am Hans-Christoph Steiner

jenkins-build: make `pip install` cache all downloaded files

This reduces bandwidth use, reduces the secure risk since the tarball is
only downloaded once, and reduces the ability of a network observer to
profile what kind of build activity is happening on a machine.

92c00e9f 07/07/2014 08:18 pm Hans-Christoph Steiner

update kopete.png to work, and make sure it is installed and in sdist

The original kopete.png seemed to have issues displaying sometimes. Also,
it was not installed via setup.py, so it was not in the source tarball and
was not being installed.

01a3f21a 07/07/2014 07:13 pm Hans-Christoph Steiner

set to v0.2.1 for release

5aa3f5a6 06/24/2014 05:35 pm Hans-Christoph Steiner

add test of decrypting chatsecure's otr_keystore.ofcaes file

20d6b856 06/24/2014 05:35 pm Jeremy B. Merrill

support decrypting otr_keystore.ofcaes file and turn it into pidgin format

closes #22
fixes #2430 https://dev.guardianproject.info/issues/2430

7a912ea5 06/24/2014 04:54 pm Timothy Redaelli

switch from BeautifulSoup 3 to 4 (closes #24)

686381ca 06/24/2014 04:42 pm Jochen Hein

Initial conversion to and from kopete keys (closes #27)

c0306207 06/23/2014 03:39 pm Hans-Christoph Steiner

fix pyflakes warnings for otrapps/*.py

This enables pyflakes checks on otrapps/*.py but not yet keysync and
keysync-gui because those have warnings which are hard to fix.
Unfortunately, pyflakes does not have a way to ignore issues.

49930506 06/23/2014 03:38 pm Hans-Christoph Steiner

run pyflakes against all python code

c7c08460 05/01/2014 04:05 pm Hans-Christoph Steiner

rename jenkins script to new standard name: jenkins-build

a83494a8 05/01/2014 04:05 pm martin-v

Fix forgotten settingsdir=None in gajim.py (closes #26)

Causes:
Traceback (most recent call last):
File "./keysync", line 110, in <module>
main()
File "./keysync", line 87, in main
otrapps.util.merge_keydicts(keydict, properties.parse())
TypeError: parse() takes exactly 1 argument (0 given)

d577220c 03/21/2014 11:26 am Abel Luck

gajim: fix tests by using the same settings dir during tests

when parse() is run without arguments, the real config location will be used.

cfb2e34b 03/18/2014 05:39 pm Abel Luck

gajim: use prpl-jabber protocol internally

b077837e 03/18/2014 05:29 pm Abel Luck

gajim: implement full account reading

Exporting public and private keys from Gajim now works.

fe6419cc 03/11/2014 04:13 pm Abel Luck

readme: Add missing build deps for Fedora 20

1536fcf6 11/20/2013 04:02 pm Abel Luck

parse version number from setuptools

Rather than have multiple copies of the version string strung out in different places, this allows us to maintain the version number directly in setup.py

refs #2204

6eaf9f07 11/14/2013 08:44 pm Hans-Christoph Steiner

include keysync.png in iconsdir with the rest of the icons

Yes, this is making an installed copy of the file, but its an easy fix.
Disk space is cheap. In the long run, this should probably follow all the
XDG standards, using python-xdg, etc.

refs #2345

40970610 11/14/2013 08:42 pm Hans-Christoph Steiner

set version to 0.2.1-pre

8284940f 10/26/2013 01:04 am Hans-Christoph Steiner

update MANIFEST.in to include everything in the source dist

0f48ae68 10/26/2013 12:23 am Hans-Christoph Steiner

set version to 0.2 for release

e3019049 10/25/2013 05:50 pm Abel Luck

only check for the Android file transfer app on OS X

For some reason psutil is crashing on windows, and since we don't
need psutil for windows we might as well just stop the that codepath
from executing. We can debug the crash later if/when we need psutil.

de082e74 10/23/2013 12:11 am Hans-Christoph Steiner

jitsi: fix bug where it was writing data to the wrong key

If the *publicKey_verified line for a given account name came first, then
a key[] would be created there, but then it wouldn't be used in the section
that parsed out the _publicKey line. I also normalized the code in...

76c0176f 10/23/2013 12:11 am Hans-Christoph Steiner

jitsi: represent Google Talk as prpl-jabber for now

keysync will have to track the XMPP variants like Google Talk and Facebook
because some apps do special things based on which XMPP variant. For now,
keysync will just mark Google Talk keys as prpl-jabber.

bcbed88a 10/23/2013 12:11 am Hans-Christoph Steiner

run-tests: test that converts each app to every other app, one at a time

This makes sure the args and defaults are working properly, and might catch
odd bugs.

e606c0da 10/22/2013 09:49 pm Hans-Christoph Steiner

keysync: use OrderedDict from ordereddict if on python < 2.7

OrderedDict was included in Python starting with 2.7 as part of the
'collections' module. The standalone module 'ordereddict' provides a
compatible version for Python < 2.7

b93c3dae 10/22/2013 09:47 pm Hans-Christoph Steiner

keysync: fix bug when no -i or no -o options are specified

ec7cf3b9 10/22/2013 08:54 pm Hans-Christoph Steiner

include gnupg icon in installed icons

10ba7393 10/22/2013 06:48 pm Hans-Christoph Steiner

jenkins.sh: only exit with error on ERROR or FATAL from pylint

refs #1888

f2ecd8b6 10/22/2013 06:46 pm Hans-Christoph Steiner

jenkins.sh: run pylink on keysync and keysync-gui last since they break more

d0e025e7 10/22/2013 06:46 pm Hans-Christoph Steiner

jenkins.sh: write pylint output to a file for Jenkins Violations to parse

refs #1888

fcd416f5 10/22/2013 06:46 pm Hans-Christoph Steiner

otr_private_key.py: remove non-existent function and variable

ada760e7 10/22/2013 06:46 pm Hans-Christoph Steiner

jenkins.sh: make pylint handle the hashlib hash classes properly

hashlib uses some magic to load whatever is built into the local openssl.
pylint gets confused by this, so we need a pylint plugin to trick pylint
into thinking everything is good.

refs #1888

e19c678f 10/22/2013 06:46 pm Hans-Christoph Steiner

jenkins.sh: add pylint error checking

Eventually we should enable more pylint stuff, like warnings and more.
Right now there are just too many to deal with...

refs #1888

d777abc5 10/22/2013 06:46 pm Hans-Christoph Steiner

standardize shebang on: /usr/bin/env python

Packaging will rewrite it as needed, like Debian will rewrite it to
/usr/bin/python. This one is the most flexible, it works basically
anywhere, including virtualenv.

0aef09c5 10/22/2013 06:46 pm Hans-Christoph Steiner

fix pylint complaints about style

  • Missing docstring
  • Invalid name "fileMenu" (should match [a-z_][a-z0-9_]{2,30}$)
  • Unused import
  • Unnecessary semicolon
  • Comma not followed by a space
  • Redefining built-in 'dir'

refs #1888

c1626a2b 10/22/2013 06:46 pm Hans-Christoph Steiner

keysync-gui: rename global var 'root' to 'ROOT' following python conventions

42e30223 10/22/2013 06:46 pm Hans-Christoph Steiner

keysync-gui: inside the App class, use self instead of root

root is an instance of App, so it the class should not be referencing an
instance of itself.

9a24390c 10/22/2013 06:46 pm Hans-Christoph Steiner

keysync-gui: move setup code into App.__init__() to limit global vars

This keeps the "main()" very tiny, with ROOT as the only global var.

bcd1f313 10/22/2013 06:46 pm Hans-Christoph Steiner

fix all "Relative import" problems from pylint, standardize access to util

This standardizes the way to access the stuff in otrapps.util and makes
pylint happy, so we have nice clean Python code.

refs #1888

16ca1683 10/22/2013 03:17 pm Hans-Christoph Steiner

gnupg: remove unused imports

b2def697 10/22/2013 03:14 pm Hans-Christoph Steiner

run-tests.sh: add gnupg as a source to the multi-input test

1b060fcc 10/22/2013 03:11 pm Hans-Christoph Steiner

pylint thinks its bad form to have two letter variable names

a3b01a41 10/22/2013 03:09 pm Hans-Christoph Steiner

move all relevant TODOs to the issue tracker, delete the rest

3c101b14 10/22/2013 02:57 pm Hans-Christoph Steiner

jenkins.sh: add additional pip+virtualenv run that uses no site packages

This should be a better test of whether all of the dependencies are
properly lists in setup.py.

22f7d276 10/22/2013 02:49 pm Hans-Christoph Steiner

keysync-gui: add app icon on all platforms (Mac OS X gets it from .app)

This code should load up the standard keysync.png as the app's icon. On
Mac OS X this is already handled by the standard .app wrapper, and that
call does not doing anything on Mac OS X.

80edf94b 10/22/2013 02:13 pm Hans-Christoph Steiner

safety checks for jenkins.sh so it doesn't delete things in the wrong place

0b16e4b1 10/22/2013 02:04 pm Hans-Christoph Steiner

jenkins: run the tests in the virtualenv after its setup

This should test that the setup.py file listings are complete, and that all
of the files and dependencies are getting properly installed.

refs #1888

81e403e9 10/22/2013 02:04 pm Hans-Christoph Steiner

moved jenkins script into its own script in this git repo

This will mean that all the jenkins jobs will share the same changes
without having to update anything in the GUI. Plus other people can run
the test suite as they want.

refs #1888

0438c9b7 10/21/2013 10:57 pm Hans-Christoph Steiner

If the ChatSecure file must be manually copied, show instructions to user

fixes #2145

65eedc24 10/21/2013 10:53 pm Hans-Christoph Steiner

make function to get ChatSecure keystore path to remove duplicate code

e40aff65 10/21/2013 10:34 pm Hans-Christoph Steiner

reorg device detection and sync logic to account for many techniques

When this code was written there were only two techniques supported: GVFS
mount and direct MTP. But we've found that there are many approaches that
KeySync should use, so the core app logic should better reflect that....

8f590a09 10/18/2013 06:34 pm Abel Luck

win32: update the pyinstaller spec files

one is for onefile mode and the other for older mode

a8892f24 10/18/2013 06:32 pm Abel Luck

win32: ignore gvfs path setting on windows

apparently geting non existing env vars causes crashes

f569d26e 10/18/2013 06:31 pm Abel Luck

win32: fix the icons' datadir detection in windows

8901afd9 10/18/2013 04:33 pm Abel Luck

win32: after writing the CS keystore, pop open explorer.exe

fixes #2127

5215177a 10/18/2013 04:17 pm Abel Luck

Use the word 'save' instead of 'write' in user facing messages

Most people know what save means, while 'write' is more devspeak.

648684e6 10/18/2013 04:15 pm Abel Luck

mtp_is_mounted() will never return True on win32 for now

refs #2127

8ddeaa10 10/18/2013 04:14 pm Abel Luck

tell windows users that we can't automatically sync for them yet

refs #2127

b72c8439 10/18/2013 01:12 pm Abel Luck

gnupg: gracefully handle error conditions when no data exists

c961e33d 10/18/2013 01:04 pm Abel Luck

setup.py: add minimum required qrcode version

refs #2124

ff8132ba 10/18/2013 03:50 am Hans-Christoph Steiner

rename get_mtp_mount_path to get_keystore_savedir for clarity

a0eb5da2 10/18/2013 03:48 am Hans-Christoph Steiner

improve gvfs detection to allow systems with gvfs to also use pymtp

  • the logic was broken, using a test of 'darwin' to decide when to use MTP
  • this now tests whether the GVFS MTP is actually active, and if not it
    then uses the pymtp method of transferring. This means it'll still sync...
ea027f9c 10/18/2013 03:48 am Hans-Christoph Steiner

gnupg: rename GPGProperties to GnuPGProperties

8b369661 10/18/2013 03:48 am Hans-Christoph Steiner

gnupg: rename files from 'gpg' to 'gnupg' since that's the canonical name

The software package is called GnuPG, as in http://gnupg.org. gpg is but
one command in the GnuPG suite. I suppose we could go with Gnu Privacy
Guard, but I think few people call it that.

bb9c1bb1 10/17/2013 04:40 pm Hans-Christoph Steiner

small step towards keysync and keysync-gui having the same convert process

Ultimately, keysync and keysync-gui should be calling the same function to
run the conversion so we know that they are doing the same thing.

bec0e599 10/17/2013 04:40 pm Hans-Christoph Steiner

update man page to reflect new I/O flow and new options (fixes #2106)

70ae1ee7 10/17/2013 04:39 pm Hans-Christoph Steiner

add gpg as supported app, KeySync reads DSA subkeys into the keydict

This is very preliminary support, only reading and only private keys.

closes #1872

c6c65328 10/17/2013 04:00 pm Hans-Christoph Steiner

alphasort app names in keysync --help output

9ecf203a 10/17/2013 02:58 pm Hans-Christoph Steiner

set version to 0.2.0beta3

a9761a3b 10/17/2013 12:58 pm Abel Luck

the icon entry in the .desktop shouldn't contain an extension

.. unless it is an absolute path as per the Desktop Entry and Icon
Theme specifications.

b7d75f27 10/17/2013 12:56 pm Abel Luck

add required traling semicolon to string lists in the .desktop

fedora's packaging tools require it, and it is part of the spec
http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s03.html

d2dd9c20 10/16/2013 12:40 am Hans-Christoph Steiner

python-potr has been released, so special instructions are no longer needed

c42dd868 10/16/2013 12:40 am Hans-Christoph Steiner

keysync-gui: handle MTP connection errors better, and show a popup error

refs #1967, #1968

234474ed 10/16/2013 12:40 am Hans-Christoph Steiner

set version to 0.2.0beta1 in prep for upcoming release

d73aa120 10/16/2013 12:40 am Hans-Christoph Steiner

support pymtp v0.0.6, which has essential bug fixes

refs #1939

b3728672 10/16/2013 12:40 am Hans-Christoph Steiner

keysync-gui: detect if pymtp is available, and use it if its there

Before, pymtp was only used on Mac OS X, which has no MTP support. But it
turns out to be useful on GNU/Linux as well. Sometimes gvfs FUSE mounting
fails to be available, but then the MTP send_file_from_file still works....

5f010843 10/16/2013 12:40 am Hans-Christoph Steiner

add tests for sameness between adium and pidgin, refs #1888

This shows that we have work to do:

  • a lookup table for app-specific protocol names, refs #1964
  • support multiple keys per id/name, refs #1871, #1868
  • figure out zero padding problems, refs #1867
d1d4f388 10/16/2013 12:40 am Hans-Christoph Steiner

use keydict key as canonical account name, key['name'] stores the app's name

For example, Adium uses account numbers, so given a keydict key of
, a key read from Adium will have something like
key['name'] == 1

63e73fa1 10/16/2013 12:40 am Hans-Christoph Steiner

pidgin: update logic for including XMPP Resource to get correct output

Pidgin sometimes requires that the XMPP Resource is included in the
account name in OTR files. This updates the code to do this correctly in
the cases that I am aware of.

5c2ed554 10/16/2013 12:40 am Hans-Christoph Steiner

write test of 'sameness', keysync should gen same file that it reads

for example, `keysync -i pidgin -o pidgin` should generate the exact same
files, given that the input file is alphasorted. This test currently fails
for a number of reasons, so it does not report as broken yet (|| true).

990a14fe 10/16/2013 12:40 am Hans-Christoph Steiner

alphasort the whole keydict before outputing files

This makes it easier to compare previous versions of the files since the
order should stay the same. This also makes writing tests easier.

dcb7efae 10/10/2013 10:53 pm Hans-Christoph Steiner

add curated files to set up 'sameness' test

503b6625 10/10/2013 10:53 pm Hans-Christoph Steiner

adium: fix error in Accounts.plist test data that was manually edited

2eeaa615 10/10/2013 10:53 pm Hans-Christoph Steiner

added note that keysync does not address OTR issues with multi-party (closes #20)

Added some language to further clarify what syncing OTR identity and trust
relationships means, and added language to clarify what KeySync is not
meant to do.

thanks to the.solipsist for contributing to this.

a08a892e 10/10/2013 12:26 pm Abel Luck

readme: reference windows build instructions

also change ~/ -> APPDATA for pidgin on windows

e7294706 10/10/2013 12:24 am Hans-Christoph Steiner

adium: add whole settings tree for reference, using the full path from ~/

This is the whole Adium settings folder that was created from a blank user
account, then used to do a couple of quick OTR things.

bfd7ccb6 10/10/2013 12:19 am Hans-Christoph Steiner

gpg: convert keydict to standard format and add fingerprint

refs #1872

974cf513 10/10/2013 12:19 am Hans-Christoph Steiner

add GnuPG logo from GPGTools (GPLv2+)

https://github.com/GPGTools/pinentry-mac/blob/75e8aa8b36b60fd075e9556bfbb5ec985faddb00/logo.png

dac641c9 10/10/2013 12:19 am Hans-Christoph Steiner

simple MTP test will only run on Mac OS X for now, where pymtp is required

18eb6bd9 10/10/2013 12:19 am Hans-Christoph Steiner

add duplicate public keys to check conflict handling

This includes some IDs with different keys, and the same key used in
different IDs.

345aeb03 10/10/2013 12:19 am Hans-Christoph Steiner

gpg: added my key to the public keyring as a test of multiple keys

1 2 3 4 (1-100/350) Per page: 25, 50, 100, 250

Also available in: Atom