forked from deanishe/alfred-workflow
-
Notifications
You must be signed in to change notification settings - Fork 1
/
TODO
154 lines (125 loc) · 7.42 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
Features to Add:
background.py:
- Add `kill_process()` function.
Allow `killing` of running processes. Can be used for stopping servers.
notify.py:
Post notifications directly from Python code. Uses workflow's own icon.
- Post warning on 2.6 instead of doing anything
- Retrieve Notify.app from a URL instead of bundling it?
- Encode Notify.app in `notify.py`?
update.py:
- Generalise update functionality @v2
Use subclass-based plugin feature to automatically register updaters?
web.py:
- Prevent returning of `None` if a redirect fails
https://github.com/smargh/alfred_pandoctor/issues/1
workflow.py:
- Add interface to `notify.notify()`.
- `workflow:magic` should allow ↩ and ⇥ to expand and run magic arguments
- `filter()` should warn when comparing Unicode and `str` objects @priority(3)
- `max_age` argument of `cached_data()` should default to 0 (always return cached data) @v2 @priority(1)
Docs:
- Add "Quick Start" section
- Add tutorial using `workflow.web`
- Add tutorial using filesystem/Unicode
Features to Consider:
icons.py:
- `IconSet` — Manage equivalent sets of light/dark icons and return whichever is appropriate to the current theme.
background.py:
- Enable `background.py` to be run from within a ZIP file
bundler.py:
Integrate Shawn's bundler
- Include Bundler's Python bundlet
filesearch.py:
Interface to `mdfind`
handlers.py:
Module to provide system-default apps for protocols like `http`, `mailto` etc.
ui.py:
Possibly provide access to dialog boxes, notifications w/out having to use AppleScript
NOTE: The bundler would obviate the need for this
- Yes/no dialog
Would it be possible to implement this via Alfred's UI?
- Text input
Would it be possible to implement this via Alfred's UI?
- Select list
Would it be possible to implement this via Alfred's UI?
- Notification center notifications
workflow.py:
- automatically add `workflow_libs` subdirectory to `sys.path`
- Add `TechnicolorLogger` formatter
General:
___________________
Archive:
- Offline tests. @done(16-02-28 02:14) @project(Features to Add)
Connections to GitHub are causing the integration tests to fail.
Also, it's really slow.
- Update list of files in workflow @done(16-02-23 21:24) @project(README.rst)
- Add notifications to features list @done(16-02-23 21:24) @project(README.rst)
- Integrate sphinx.ext.napoleon @priority(1) @done(16-02-23 21:14) @project(Features to Add / Docs)
to parse the Google-style doctstrings in `notify.py`
- Generate Dash docset from AW documentation @done(16-02-23 21:14) @project(Features to Add / Docs)
- Better theme @done(16-02-23 21:14) @project(Features to Add / Docs)
RTD theme looks awful in Dash. Py3 theme perhaps?
- Document `notify.py` in the manual. @done(16-02-23 11:01) @project(Features to Add / Docs)
- Non-ASCII doesn't work via environmental variables. @done(16-02-22 22:02) @project(Features to Add / notify.py)
Probably have to use native libraries and post notifications in the background.
- Allow GET params in URL as well as in `params` @done(15-07-05 13:31) @project(Features to Add / web.py)
- Add file-locking to prevent `Workflow` from reading half-written files @priority(3) @v2 @done(15-07-05 12:54) @project(Features to Add / background.py)
- Add `first_run()` to determine if the workflow has been run on this computer before. @priority(1) @done(15-04-28 12:50) @project(Features to Add / workflow.py)
Save a "flag" in the data directory upon first run.
Should the file only be created the first time `first_run()` is called instead?
How about being able to pass a version argument to `first_run()`?
- move "magic" args to class-level dictionary, so authors can add their own. @priority(2) @v2 @done(14-12-20 14:17) @project(Features to Add / workflow.py)
- `filter()` should replace "smart" punctuation with dumb equivalents @priority(1) @done(14-12-20 14:17) @project(Features to Add / workflow.py)
- Allow users to turn off automatic update checks @done(14-12-20 11:20) @project(Features to Add / update.py)
- Add `help_url`. Will be shown in log when an error occurs and can be opened via `workflow:help` magic arg. @done(14-12-20 10:39) @project(Features to Add / workflow.py)
- Handle gzip-encoded HTTP data @done(14-12-20 10:34) @project(Features to Add / web.py)
- Add `save_to_path()` method to save HTTP data directly to disk @done(14-12-20 10:34) @project(Features to Add / web.py)
- Improve description of how to use `Workflow(libraries=)` @done(14-09-25 11:59) @project(Features to Add / Docs)
Make paths to specify to `pip` clearer.
See https://github.com/deanishe/alfred-workflow/issues/28
- Perform download & installation in the background, so Workflow can inform user that an update is being performed @priority(1) @done(14-09-25 11:57) @project(Features to Add / update.py)
- Allow omission of `v` in version specified in `update_settings` @done(14-09-14 22:14) @project(Features to Add / update.py)
- Integrate Fabio's update feature @done(14-09-14 19:50) @project(Features to Add / update.py)
- Move documentation out of module docstrings into ReST files under /doc @priority(1) @done(14-09-14 14:23) @project(Features to Add / Docs)
A lot of the documentation isn't super-suitable for Python's `help()`
function. The published HTML documentation could be much better arranged
by putting more of the documentation in ReST files.
- Move workflow into top-level directory to allow use as a Git submodule. @nope @done(14-09-14 01:20) @project(General)
Is this necessary? I have to copy stuff hither and thither all the time, but
I'm the one developing the workflow package. Will this be such a problem for
other developers? In this case, where would the docs go? Including them in the workflow package would be antithetical to what I'm trying to achieve.
- Add `setup.py` so `Alfred-Workflow` can be added to PyPi and installed with `pip` @done(14-09-14 01:19) @project(General)
- Add explicit `save()` method to `Settings` @done(14-08-17 00:08) @project(General)
- optimise `filter` by memoising expensive operations, e.g. `pattern`/`search` generation @done(14-05-11 23:13) @project(workflow.py)
- add `openterminal` magic arg. @done(14-03-08 00:05)
@project(workflow.py)
- Update list of "magic" arguments in tutorial2.rst @done(14-03-07 19:02)
@project(Docs)
- Normalise Unicode @done(14-03-06 20:34)
@project(web.py)
- Add magic arguments for opening cache/data directories in Finder @done(14-03-05 00:10)
@project(workflow.py)
- Add `workflowdir` method to match `datadir` and `cachedir`. @done(14-03-05 00:10)
@project(workflow.py)
- Tests for `Workflow` data caching methods @done(14-03-03 03:21)
@project(workflow.py / Unit Tests)
- Tests for `Workflow` Keychain methods @done(14-03-03 03:21)
@project(workflow.py / Unit Tests)
- Tests for `Workflow.run` method @done(14-03-03 03:21)
@project(workflow.py / Unit Tests)
- Add unit tests @done(14-03-03 03:20)
@project(workflow.py)
- Add unit tests @done(14-03-02 01:23)
@project(web.py)
- Give log file more unique name @done(14-02-27 23:01)
@project(workflow.py)
bundleid.log?
- Add and adapt phyllisstein's `keychain` module @done(14-02-27 22:56)
@project(Other)
https://github.com/phyllisstein/alp/blob/master/alp/keychain.py
Created own version
- Add and adapt phyllisstein's `fuzzy` module @done(14-02-27 22:56)
@project(Other)
https://github.com/phyllisstein/alp/blob/master/alp/fuzzy.py
Created own version