#16 v0.7.0 TODO

开启中
CYBERDEViL9 月之前创建 · 0 条评论

Connections

For downloading thumbnails it would be nice to have the ability to have multiple connections in one thread and use something like select() or poll() instead of having multiple threads.

I did not found a solution for python-requests, but found pycurl which can do such a thing.

  • Replace python-requests with pycurl (pycurl.CurlMulti()).

Core

Currently many features are handled inside views/*.py or models/*.py. I like to move some of them to core/*.py. This will making tests for the overall features more easy and eventually the core module could be turned into a lib to be used by other UI/GUI projects.

The list below is probably incomplete and will be updated in the future:

  • Instances filter.
  • Instance selecter (random instance).
  • All thread stuff (create Qt subclass in anything but core when needed, but keep core free of Qt stuff, so use the Python threading module).

Threads

Current implementations of the request threads have flaws, they are not safe. Surprisingly I did not encounter any problems yet on current releases but while developing the images branch I ran into issues which made them visible to me inside the code (locks are needed here and there).

On releases v0.5 and v0.6 this may be an issue when a request is made and the connection settings are changed, but the timing has to be perfect.

  • Thread-safety

Thumbnail support

See https://notabug.org/CYBERDEViL/searx-qt/pulls/15

## Connections For downloading thumbnails it would be nice to have the ability to have multiple connections in one thread and use something like `select()` or `poll()` instead of having multiple threads. I did not found a solution for `python-requests`, but found `pycurl` which can do such a thing. - [ ] Replace `python-requests` with `pycurl` (`pycurl.CurlMulti()`). ## Core Currently many features are handled inside `views/*.py` or `models/*.py`. I like to move some of them to `core/*.py`. This will making tests for the overall features more easy and eventually the `core` module could be turned into a lib to be used by other UI/GUI projects. The list below is probably incomplete and will be updated in the future: - [ ] Instances filter. - [ ] Instance selecter (random instance). - [ ] All thread stuff (create `Qt` subclass in anything but `core` when needed, but keep core free of `Qt` stuff, so use the Python `threading` module). ## Threads Current implementations of the request threads have flaws, they are not safe. Surprisingly I did not encounter any problems yet on current releases but while developing the images branch I ran into issues which made them visible to me inside the code (locks are needed here and there). On releases v0.5 and v0.6 this may be an issue when a request is made and the connection settings are changed, but the timing has to be perfect. - [ ] Thread-safety ## Thumbnail support See https://notabug.org/CYBERDEViL/searx-qt/pulls/15
登录 并参与到对话中。
未选择标签
未选择里程碑
未指派成员
1 名参与者
正在加载...
取消
保存
这个人很懒,什么都没留下。