Commit graph

378 commits

Author SHA1 Message Date
Alan Hamlett
43c461a7cc try opening files with filesystem encoding when opening with utf-8 causes UnicodeDecodeError 2015-08-23 18:49:34 -07:00
Alan Hamlett
31a353be7a fix ImportError when non-ASCII characters in import path 2015-08-23 13:37:25 -07:00
Alan Hamlett
4e415fe4ab use pickle protocol 2 for python2/3 compatibility 2015-08-22 19:55:46 -07:00
Alan Hamlett
afc012ab63 overwrite definition of where in requests.certs for different filesystem encodings 2015-08-22 19:49:56 -07:00
Alan Hamlett
85de7a3deb test python dependency detection and --alternate-project argument 2015-08-12 15:03:39 -07:00
Alan Hamlett
4eab860dc0 increase test coverage 2015-08-12 11:04:11 -07:00
Alan Hamlett
f818a64d3d always parse args from sys.argv 2015-08-12 10:28:01 -07:00
Alan Hamlett
5d5b79d445 stop supporting old config file format 2015-08-11 16:38:17 -07:00
Alan Hamlett
7b4711ad54 fallback to builtin json module when importing simplejson fails 2015-08-11 13:52:14 -07:00
Alan Hamlett
337e4bae5b upgrade simplejson to v3.8.0 2015-08-11 12:21:27 -07:00
Alan Hamlett
4a5e2d9328 first tests, and disable logging while testing 2015-08-11 11:19:22 -07:00
Alan Hamlett
ccb0b11ffb only use lexer if one was found 2015-08-10 20:10:09 -07:00
Alan Hamlett
e8f2d75927 use os.path.splitext everywhere 2015-08-10 18:32:17 -07:00
Alan Hamlett
2da75aa119 use C++ for header file language if directory contains C++ files 2015-08-10 18:17:50 -07:00
Alan Hamlett
82f9fcb5d4 Revert "Revert "upgrade requests package to v2.7.0""
This reverts commit 052f255a0c.
2015-08-10 11:43:35 -07:00
Alan Hamlett
6e9e8a9ce2 move language rules to server, detect header files
- move language translations to api server
- move extension rules to api server
- detect correct header file language based on presence of .cpp or .c
  files named the same as the .h file
2015-08-10 11:33:39 -07:00
Alan Hamlett
01ed25f948 upgrade argparse to v1.3.0 2015-08-04 14:42:42 -07:00
Alan Hamlett
052f255a0c Revert "upgrade requests package to v2.7.0"
This reverts commit f5357a9e7b.
2015-07-31 13:25:57 -07:00
Alan Hamlett
85ab611632 handle non-ASCII characters in import path 2015-07-27 14:59:10 -07:00
Alan Hamlett
f5357a9e7b upgrade requests package to v2.7.0 2015-07-24 13:16:52 -07:00
Alan Hamlett
739fe4ba99 rename workplace to hostname 2015-07-03 22:51:26 -07:00
Carlos Henrique Gandarez
d6ca2fa489 Added header X-Machine-Name to act as workplace 2015-07-03 21:42:19 -03:00
Alan Hamlett
61b9989641 catch exceptions from pygments.modeline.get_filetype_from_buffer 2015-07-02 12:37:24 -07:00
Alan Hamlett
4b6aee218b v4.1.0 2015-06-29 19:28:35 -07:00
Alan Hamlett
e8bd8bba76 correct priority for project detection
Priority of project detection:
1. .wakatime-project file
2. [project_map] section in .wakatime.cfg INI file
3. --project arg
3. revision control directory name
5. --alternate-project arg
2015-06-29 19:26:01 -07:00
Alan Hamlett
006bab2d71 v4.0.16 2015-06-23 18:12:43 -07:00
Alan Hamlett
5a2ffa7319 fix bug in offline logging where file saved as NULL 2015-06-23 18:11:43 -07:00
Alan Hamlett
8c0c43e58a clean up lexer guessing 2015-06-15 18:55:47 -07:00
Alan Hamlett
6591c4e5e9 limit language detection to known file extensions, unless file contents has a vim modeline 2015-06-15 18:26:10 -07:00
Alan Hamlett
368fecfcf1 auxiliary extension map for when no language can be found, not to overwrite detected language 2015-06-12 17:25:04 -07:00
Alan Hamlett
2880add4c5 v4.0.15 2015-06-11 14:12:46 -07:00
Alan Hamlett
36f6bb9a21 use most accurate language from modeline lexer and filename lexer Pygments guessing functions 2015-06-11 14:11:10 -07:00
Alan Hamlett
127fd115d0 use entity and type for new heartbeats api resource schema 2015-06-02 15:24:02 -07:00
Alan Hamlett
2278e8400f v4.0.14 2015-05-31 17:46:20 -07:00
Alan Hamlett
7f6b6c9c1f correctly log message from py.warnings module 2015-05-31 10:09:39 -07:00
Alan Hamlett
91784f5066 clean up kwargs 2015-05-16 14:44:10 -07:00
Alan Hamlett
66a3be703f v4.0.13 2015-05-16 14:37:18 -07:00
Alan Hamlett
c2a8d197bf remove project from args because we pass it separately to send_heartbeat function 2015-05-16 14:35:49 -07:00
Alan Hamlett
906237221b v4.0.12 2015-05-15 15:30:44 -07:00
Alan Hamlett
1c73ba9969 make --project argument take priority over auto-detected project name. new --alternate-project argument that behaves like --project used to. 2015-05-15 15:29:05 -07:00
Alan Hamlett
652bf480e3 correctly display caller and lineno in log file when debug is true. 2015-05-13 03:00:00 -07:00
Alan Hamlett
7eb7aa80b4 v4.0.11 2015-05-12 15:00:06 -07:00
Alan Hamlett
dd54f9ff13 reuse SSL handshake across multiple processes for improved performance 2015-05-12 14:58:20 -07:00
Alan Hamlett
958cf9a943 v4.0.10 2015-05-06 16:25:38 -07:00
Alan Hamlett
caac39c3bf new --cursorpos argument for the location of cursor within the file's contents 2015-05-06 16:24:25 -07:00
Alan Hamlett
fcf57d1d48 v4.0.9 2015-05-06 15:24:03 -07:00
Alan Hamlett
afe9e429b2 new --lineno argument for passing the current line number being edited at time of heartbeat 2015-05-06 15:19:48 -07:00
Alan Hamlett
f387b7bf04 include package namespace and line number in logger output 2015-05-05 14:27:09 -07:00
Alan Hamlett
615e224162 format py.warnings log messages same as other log messages 2015-04-08 13:14:51 -07:00
Alan Hamlett
59ae20c99b v4.0.8 2015-04-04 11:00:49 -07:00
Alan Hamlett
f5c78ff444 api_url config option and --apiurl argument for sending heartbeats to a different api server 2015-04-04 10:59:45 -07:00
Alan Hamlett
c50d7f208c v4.0.7 2015-04-02 17:13:37 -07:00
Alan Hamlett
ebbfd80a77 capture warnings in log file 2015-04-02 17:12:33 -07:00
Alan Hamlett
1d53a04a7d improve description of project argument 2015-04-02 15:20:10 -07:00
Alan Hamlett
3d17fc343e remove unnecessary sys.path folders 2015-04-02 15:11:08 -07:00
Alan Hamlett
6b176791f2 add urllib3 and urllib3.util folders to sys.path 2015-04-01 21:17:15 -07:00
Alan Hamlett
91aa8d6324 update logger.py header 2015-04-01 12:49:47 -07:00
Alan Hamlett
d7679866ca rename log.py to logger.py 2015-04-01 12:48:42 -07:00
Alan Hamlett
aa52e5462b v4.0.6 2015-03-31 15:36:19 -07:00
Alan Hamlett
8cad800172 add packages directory from requests package to python import path 2015-03-31 14:37:53 -07:00
Alan Hamlett
ba49749285 v4.0.5 2015-03-31 08:39:07 -07:00
Alan Hamlett
5d671f55b2 update requests package to v2.6.0 2015-03-31 08:37:44 -07:00
Alan Hamlett
ab6bdff528 update simplejson to v3.6.5 2015-03-23 13:58:26 -07:00
Alan Hamlett
4cd6d1b0e2 v4.0.4 2015-03-09 15:21:42 -07:00
Alan Hamlett
74829dae01 add back --ignore for backwards compatibility 2015-03-09 15:20:37 -07:00
Alan Hamlett
19c4e9f36b import main function into module __init__ 2015-03-09 15:04:04 -07:00
Alan Hamlett
15ce241280 v4.0.3 2015-03-09 14:58:59 -07:00
Alan Hamlett
5ec42393b3 refactor module 2015-03-09 14:57:41 -07:00
Alan Hamlett
e079ef914d v4.0.2 2015-03-07 19:19:29 -08:00
Alan Hamlett
8e5511c7ff upgrade requests to latest master 2015-03-07 19:06:56 -08:00
Alan Hamlett
4b67dd332e v4.0.1 2015-03-03 13:22:28 -08:00
Alan Hamlett
c8e8e705be upgrade requests to v2.5.3 2015-03-03 13:19:04 -08:00
Alan Hamlett
ef6342f16f new --include and --exclude arguments for whitelisting and blacklisting from logging absolute file paths 2015-02-20 12:41:45 -08:00
Alan Hamlett
ac9044845d v4.0.0 2015-02-12 18:37:01 -08:00
Alan Hamlett
da74592ac4 update readme with config file available settings. support setting proxy from config file. 2015-02-12 18:36:14 -08:00
Alan Hamlett
48b8d72946 send Unknown as user agent if not supplied via --plugin argument 2015-02-12 18:16:53 -08:00
Alan Hamlett
5986a5634d support https proxy with --proxy argument 2015-02-12 18:14:44 -08:00
Alan Hamlett
3918543f0e rename local queue module so it won't collide with builtin queue module 2015-02-12 18:07:17 -08:00
Alan Hamlett
c8a7bd0729 fix requests dependency 2015-02-12 17:59:39 -08:00
Alan Hamlett
cc00cca417 use requests library instead of urllib2 2015-02-12 17:46:59 -08:00
Alan Hamlett
a4f7c6bc32 new command line argument --notfile for logging time towards things other than files 2015-02-12 17:27:21 -08:00
Alan Hamlett
902ba42623 add requests library to packaged dependencies 2015-02-12 17:26:44 -08:00
Alan Hamlett
d3a31fc72d fix a few bugs and remove unused imports 2015-02-10 12:09:32 -08:00
Alan Hamlett
b877310f02 import tzlocal correctly 2015-02-05 01:47:09 -08:00
Alan Hamlett
bf06e558e5 recognize api_key config without underscore 2015-01-19 20:08:48 -08:00
Alan Hamlett
6e227b115a v3.0.5 2015-01-13 14:00:16 -08:00
Alan Hamlett
eba6a9f27c ignore malformed markup errors 2015-01-13 13:58:55 -08:00
Alan Hamlett
d7097d433c v3.0.4 2015-01-06 11:33:59 -08:00
Alan Hamlett
0b0768ffb1 remove unused dependency 2015-01-06 11:32:46 -08:00
Alan Hamlett
2450b8cdbc v3.0.3 2014-12-25 13:34:10 -06:00
Alan Hamlett
41e16eda02 parse js dependencies from script tags in html template files 2014-12-25 13:33:07 -06:00
Alan Hamlett
2042f3209b better debug message when module missing parser class 2014-12-25 12:39:36 -06:00
Alan Hamlett
3c91d802a4 v3.0.2 2014-12-25 01:02:18 -06:00
Alan Hamlett
166f41899c parse bower and npm dependencies. parse dependencies from javascript files. 2014-12-25 00:58:56 -06:00
Alan Hamlett
50a0e9efcb parse dependencies from data files 2014-12-24 23:22:40 -06:00
Alan Hamlett
24d066c572 don't truncate dependencies by default. improve python dependency parser. 2014-12-24 23:09:15 -06:00
Alan Hamlett
40c8067dbf handle missing parser class 2014-12-24 12:15:30 -06:00
Alan Hamlett
f889863eea correctly print traceback to log file in debug mode 2014-12-24 12:11:00 -06:00
Alan Hamlett
f49470a2c9 make param configFile optional 2014-12-24 11:49:46 -06:00
Alan Hamlett
34c92951e0 parse use namespaces from php files 2014-12-23 12:40:10 -06:00
Alan Hamlett
0ec8240725 v3.0.1 2014-12-23 05:32:20 -06:00
Alan Hamlett
78640aebf2 handle unknown language when parsing dependencies 2014-12-23 05:30:40 -06:00
Alan Hamlett
0f76334fc3 v3.0.0 2014-12-23 05:19:47 -06:00
Alan Hamlett
48930ccb9e php dependency parser plugin 2014-12-23 05:05:28 -06:00
Alan Hamlett
8348beb729 remove unused method 2014-12-23 02:30:10 -06:00
Alan Hamlett
75bd1c3f21 C++ dependency parser plugin 2014-12-23 02:29:58 -06:00
Alan Hamlett
6666f1284b add class description 2014-12-23 01:40:45 -06:00
Alan Hamlett
8da0f1fd07 correct copyright year 2014-12-23 01:24:48 -06:00
Alan Hamlett
805929c9b2 don't log namespace declarations as dependencies 2014-12-23 00:33:49 -06:00
Alan Hamlett
4784ee74c8 C# dependency parser plugin 2014-12-22 23:51:24 -06:00
Alan Hamlett
744cc2f6ca java dependency parser plugin 2014-12-22 23:47:24 -06:00
Alan Hamlett
3b0cab2208 python dependency parser plugin 2014-12-22 23:13:11 -06:00
Alan Hamlett
67c5f02a80 dependency parser base models 2014-12-22 23:12:57 -06:00
Alan Hamlett
f6f090ee1f add import_module from imbortlib and backport for py2.6 2014-12-22 11:43:17 -06:00
Alan Hamlett
45bfd7d940 use heartbeats api resource instead of old actions resource 2014-12-22 10:10:29 -06:00
Alan Hamlett
3008ff75f5 v2.1.11 2014-12-22 00:54:22 -06:00
Alan Hamlett
1feca4871f save heartbeat to sqlite db when no response from api 2014-12-22 00:52:41 -06:00
Alan Hamlett
c5e8c1bb31 use stats from arg 2014-12-22 00:42:42 -06:00
Alan Hamlett
8439f3a56e use misc value from kwarg 2014-12-22 00:40:16 -06:00
Alan Hamlett
e144fa4f7a new heartbeat table in offline sqlite database. get ready to detect dependencies from current file. 2014-12-22 00:37:13 -06:00
Alan Hamlett
69d7265ca5 v2.1.10 2014-12-15 12:02:18 -06:00
Alan Hamlett
01689a2ef5 don't queue heartbeats when they will never be valid 2014-12-15 11:59:49 -06:00
Alan Hamlett
76b745c44e v2.1.9 2014-12-05 02:34:23 -08:00
Alan Hamlett
67badc336c fix bug preventing offline heartbeats from being purged 2014-12-05 02:33:31 -08:00
Alan Hamlett
f18da681d3 v2.1.8 2014-12-04 11:40:09 -08:00
Alan Hamlett
25c84259fb fix UnicodeDecodeError when building user agent string 2014-12-04 11:39:03 -08:00
Alan Hamlett
b402c2c6f2 handle case where response is None 2014-12-04 00:51:18 -08:00
Alan Hamlett
f1914df700 v2.1.7 2014-11-30 22:17:28 -08:00
Alan Hamlett
85a68293ac upgrade pygments to v2.0.1 2014-11-30 22:10:30 -08:00
Alan Hamlett
7ddf028041 always log an error when api key is incorrect 2014-11-23 11:35:43 -08:00
Alan Hamlett
d73ac29fa5 v2.1.6 2014-11-18 15:58:04 -08:00
Alan Hamlett
685ba447b4 fix list index error when detecting subversion project 2014-11-18 15:57:29 -08:00
Alan Hamlett
a455d7ce34 v2.1.5 2014-11-17 22:50:46 -08:00
Alan Hamlett
afd488d33b catch exceptions from unknown timezones 2014-11-17 22:33:25 -08:00
Alan Hamlett
acaf539001 v2.1.4 2014-11-12 19:32:31 -08:00
Alan Hamlett
5dbb19eb50 when Python was not compiled with https support, log an error to the log file 2014-11-12 19:30:13 -08:00
Alan Hamlett
7609078d5a support .mdown extension as Markdown 2014-11-10 23:52:48 -08:00
Alan Hamlett
47102afaa2 v2.1.3 2014-11-10 12:25:14 -08:00
Alan Hamlett
1e1b001b61 detect branch name from local directory name for subversion projects 2014-11-10 12:25:01 -08:00
Alan Hamlett
0a6517c2b5 v2.1.2 2014-10-07 04:44:51 -07:00
Alan Hamlett
c8960e2bde if something goes wrong, just return None. 2014-10-07 04:43:00 -07:00
Alan Hamlett
40c5656910 always print error message when not able to read config file 2014-10-04 11:15:33 -07:00
Alan Hamlett
670141413e print actual location of config file in error message when not able to read from it 2014-10-04 11:09:25 -07:00
Alan Hamlett
1800f93d8d v2.1.1 2014-09-30 10:12:49 -07:00
Alan Hamlett
0ec8c8edd9 don't open binary file as utf-8 2014-09-30 10:11:44 -07:00
Alan Hamlett
ffe1a32e5b v2.1.0 2014-09-30 09:15:38 -07:00
Alan Hamlett
4bad3541d9 new compat file for python2 and python3 compatibility. read files as utf-8. 2014-09-30 09:09:30 -07:00
Alan Hamlett
138be33349 use os.devnull for python2 support 2014-08-29 12:45:52 -07:00
Alan Hamlett
c1164d2bd1 v2.0.8 2014-08-29 12:38:36 -07:00
Alan Hamlett
c7989b1eaf supress output from running svn command 2014-08-29 12:37:54 -07:00