Commit graph

417 commits

Author SHA1 Message Date
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
Alan Hamlett
fbdaf77abe v2.0.7 2014-08-27 03:29:28 -07:00
Alan Hamlett
a5572bfc29 find svn binary location from common install directories 2014-08-27 03:25:05 -07:00
Alan Hamlett
0581963f55 v2.0.6 2014-08-07 08:21:25 -07:00
Alan Hamlett
1e50a6a1b6 encode json when sending to urllib 2014-08-07 08:21:06 -07:00
Alan Hamlett
9128585fe8 correct error message 2014-07-25 03:39:36 -07:00
Alan Hamlett
abe2e97591 v2.0.5 2014-07-25 02:29:31 -07:00
Alan Hamlett
1055a25aff option for obfuscating file names called --hidefilenames 2014-07-25 02:28:32 -07:00
Alan Hamlett
3759127e9a v2.0.4 2014-07-25 01:00:10 -07:00
Alan Hamlett
e392ff6e77 namespace logger to prevent conflicts with other plugins 2014-07-25 00:59:25 -07:00
Alan Hamlett
c07bef55af v2.0.3 2014-06-18 10:08:25 -07:00
Alan Hamlett
35bd98ca6d use project passed from command line when no revision control project is found 2014-06-18 10:05:27 -07:00
Alan Hamlett
f6e1eba0df v2.0.2 2014-06-09 15:16:14 -05:00
Alan Hamlett
cedfa30a27 disable offline logging when Python was not compiled with sqlite3 module 2014-06-09 15:15:38 -05:00
Alan Hamlett
5303f25614 fix unicode string with Python3.2 bug in simplejson package 2014-06-06 15:13:31 -05:00
Alan Hamlett
0ae5f37a40 include python3.2 compatible versions of simplejson, pytz, and tzlocal 2014-06-06 13:55:20 -05:00
Alan Hamlett
4476d0401d use normal string instead of unicode for python v3.2 support 2014-06-06 12:56:32 -05:00
Alan Hamlett
f1f57561c4 change except lines 2014-05-26 20:02:30 -07:00
Alan Hamlett
62f297b768 always log error when action not sent to api 2014-05-26 17:16:40 -07:00
Alan Hamlett
72bf4526ec v2.0.1 2014-05-26 14:56:11 -07:00
Alan Hamlett
7d94be516f fix bug in queue preventing actions with null values from being purged 2014-05-26 14:55:16 -07:00
Alan Hamlett
934d5a4ca6 disable queue until bug fixed 2014-05-26 14:05:54 -07:00
Alan Hamlett
2e048319d7 v2.0.0 2014-05-25 17:22:30 -07:00
Alan Hamlett
22766bb14b support for offline time logging 2014-05-25 17:14:38 -07:00
Alan Hamlett
c7e4c2951d v1.0.2 2014-05-06 17:17:20 -07:00
Alan Hamlett
96899ed46b use args.project_name to prevent conflicting with project argument 2014-05-06 17:16:35 -07:00
Alan Hamlett
81c3e6d336 allow project to be set as cmd line arg 2014-05-06 17:07:36 -07:00
Alan Hamlett
dba5615f65 change www.wakatime.com to wakatime.com 2014-03-14 13:34:02 -07:00
Alan Hamlett
408e9c4b7b v1.0.1 2014-03-05 13:46:59 -08:00
Alan Hamlett
8054595d8f switch to new domain name wakatime.com 2014-03-05 13:45:52 -08:00
Alan Hamlett
f542e1a862 v1.0.0 2014-02-05 00:57:38 -08:00
Alan Hamlett
7697b54e8e detect project name and branch from mercurial revision control 2014-02-05 00:55:52 -08:00
Alan Hamlett
e54f393721 v0.5.3 2014-01-15 16:42:53 -08:00
Alan Hamlett
eb479efa52 define unicode as str for Python3 2014-01-15 16:41:35 -08:00
Alan Hamlett
74f84f0048 v0.5.2 2014-01-14 05:08:28 -08:00
Alan Hamlett
275a2a6e57 set system language to English before running subversion program 2014-01-14 05:02:51 -08:00
Alan Hamlett
ade6084819 improved description in header 2013-12-20 16:36:32 +01:00
Alan Hamlett
d55bbe5d45 v0.5.1 2013-12-13 16:35:32 +01:00
Alan Hamlett
c3642fade2 second line in .wakatime-project sets branch name 2013-12-13 16:33:09 +01:00
Alan Hamlett
89c21f03bd fix variable definition bug 2013-12-13 15:41:29 +01:00
Alan Hamlett
0533df08ca v0.5.0 2013-12-13 15:33:56 +01:00
Alan Hamlett
1f8f6f8781 migrate ignored directories from old config file to new configparser format 2013-12-13 15:30:21 +01:00
Alan Hamlett
4e03de91d8 update wakatime package header comment 2013-12-13 15:05:20 +01:00
Alan Hamlett
05ced3dbc0 update description with example of using projectmap config section 2013-12-13 15:02:44 +01:00
Alan Hamlett
297ebb902b updates to project plugins:
- force projects to return unicode names and branches, or None
 - refactor ProjectMap to set project name from cfg file
 - pass configs to find_project() as dict from plugin's cfg section
 - clean up git project class

updates to config file:

 - rename ~/.wakatime.conf to ~/.wakatime.cfg
 - better error handling while parsing and getting configs
 - no longer need to set defaults when parsing config file
 - use configparser for python3 when python2 import fails
2013-12-13 14:46:39 +01:00
3onyc
b75570a589 Fix ProjectMap always returning true if it has a config section 2013-12-12 10:09:14 +01:00
3onyc
5b9eb937ff Rename config to settings in BaseProject 2013-12-11 15:13:40 +01:00
3onyc
a4913289ce Make ProjectMap use config section 2013-12-10 13:46:56 +01:00
3onyc
d6e1da7073 Pass config to plugin, but only if it has a section for the plugin 2013-12-10 13:46:56 +01:00
3onyc
23c586e616 Use ConfigParser and add [settings] header in case it's missing 2013-12-10 13:46:56 +01:00
3onyc
81fe41409a Implement ProjectMap plugin 2013-12-10 13:46:56 +01:00
Alan Hamlett
731ce02a59 recognize .twig extension as Twig language 2013-12-03 20:20:57 +01:00
Alan Hamlett
9ca3ac3e49 simplify encodings 2013-12-03 02:36:52 +01:00
Alan Hamlett
d714bb9299 fix character encoding problem with localized datetime in log 2013-12-03 02:34:00 +01:00
Alan Hamlett
59de87799e decode file names with filesystem encoding, then encode as utf-8 before encoding with simplejson 2013-12-02 09:15:06 +01:00
Alan Hamlett
6c7e722390 catch UnicodeDecodeErrors from simplejson. 2013-11-21 01:06:50 -08:00
Alan Hamlett
28da601ad3 v0.4.10 2013-11-13 10:43:42 -08:00
Alan Hamlett
b345a1ff7b set project name with .wakatime-project file 2013-11-13 10:41:56 -08:00
Alan Hamlett
7ab0d54ec9 recognize markdown file extension as Markdown language 2013-11-03 11:34:54 -08:00
Alan Hamlett
4e8d3ead82 recognize jinja2 file extensions as HTML 2013-10-31 17:16:38 -07:00
Alan Hamlett
8f38ba5932 add rhtml translation 2013-10-29 00:25:12 -07:00
Alan Hamlett
14e1a5d2e0 handle case where ignore patterns not defined 2013-10-28 18:04:25 -07:00