]>
git.phdru.name Git - bookmarks_db.git/log
Oleg Broytman [Mon, 20 Nov 2023 00:16:46 +0000 (03:16 +0300)]
Chore(venv): Only run `pip install` on fresh virtual env
Oleg Broytman [Mon, 20 Nov 2023 00:00:06 +0000 (03:00 +0300)]
Feat(check_url.py): Print "Moved", "Size", "Md5"
Oleg Broytman [Sun, 19 Nov 2023 23:58:53 +0000 (02:58 +0300)]
Fix(robots): Fix "Content-Length" header returning `None`
Oleg Broytman [Sat, 18 Nov 2023 16:47:22 +0000 (19:47 +0300)]
Fix(robots): Store charset
Oleg Broytman [Fri, 17 Nov 2023 23:55:10 +0000 (02:55 +0300)]
Fix(robots): Do not parse empty strings
Some sites return empty "html" that consist only of white spaces.
Strip them to get really empty string.
Oleg Broytman [Fri, 17 Nov 2023 23:54:46 +0000 (02:54 +0300)]
Fix(parse_html): Do not parse empty strings
Oleg Broytman [Fri, 17 Nov 2023 22:32:53 +0000 (01:32 +0300)]
Fix(Py3): Reconfigure logs to write in UTF-8
Oleg Broytman [Fri, 17 Nov 2023 21:48:40 +0000 (00:48 +0300)]
Build(Makefile): Update the list of example shell scripts
Oleg Broytman [Thu, 16 Nov 2023 07:27:26 +0000 (10:27 +0300)]
Feat: Delete bookmarks
Oleg Broytman [Thu, 16 Nov 2023 05:35:41 +0000 (08:35 +0300)]
Feat(robots): Align "Content-Type"
Oleg Broytman [Thu, 16 Nov 2023 05:33:45 +0000 (08:33 +0300)]
Fix(parse_html): Do not parse empty strings
Oleg Broytman [Thu, 16 Nov 2023 05:26:52 +0000 (08:26 +0300)]
Fix(Py3): Fix `unescape`
Oleg Broytman [Wed, 15 Nov 2023 21:28:08 +0000 (00:28 +0300)]
Fix(Py3): Fix `check_url.py`
Oleg Broytman [Wed, 15 Nov 2023 18:12:15 +0000 (21:12 +0300)]
Build: Make Python virtual environment
Install libraries.
Oleg Broytman [Wed, 15 Nov 2023 16:58:36 +0000 (19:58 +0300)]
Fix(Py3): Fix HTML parsers
Oleg Broytman [Tue, 14 Nov 2023 23:27:46 +0000 (02:27 +0300)]
Feat(robots): Handle HTTP redirect 308
Oleg Broytman [Tue, 14 Nov 2023 18:01:59 +0000 (21:01 +0300)]
Feat: Improve stats
Oleg Broytman [Tue, 14 Nov 2023 17:56:26 +0000 (20:56 +0300)]
Feat: Open log files in UTF-8 encoding
Oleg Broytman [Tue, 14 Nov 2023 17:53:50 +0000 (20:53 +0300)]
Feat: Log reports to files
Oleg Broytman [Tue, 14 Nov 2023 16:56:41 +0000 (19:56 +0300)]
Docs(TODO): Increase priority for robots
Oleg Broytman [Tue, 14 Nov 2023 15:11:12 +0000 (18:11 +0300)]
Feat: Report redirects and set URLs
Run through the bookmarks database and set URLs from redirects
from an external file.
Oleg Broytman [Mon, 13 Nov 2023 22:21:45 +0000 (01:21 +0300)]
Fix(Py3): Catch `http.client.IncompleteRead`
Oleg Broytman [Mon, 13 Nov 2023 15:13:14 +0000 (18:13 +0300)]
Fix(Py3): Guess input file encoding
Oleg Broytman [Mon, 13 Nov 2023 14:39:17 +0000 (17:39 +0300)]
Chore: Explicitly open text files in text mode
Oleg Broytman [Mon, 13 Nov 2023 14:36:01 +0000 (17:36 +0300)]
Fix(Py3): Open output text files in utf-8 encoding
Oleg Broytman [Sun, 12 Nov 2023 19:10:20 +0000 (22:10 +0300)]
Docs: Update
Oleg Broytman [Sun, 12 Nov 2023 18:56:15 +0000 (21:56 +0300)]
Fix(robots): Process redirect with non-encoded URL
Oleg Broytman [Sun, 12 Nov 2023 18:19:58 +0000 (21:19 +0300)]
Fix(robots): Process response without `Content-Type`
Try to recognize HTML.
Oleg Broytman [Sun, 12 Nov 2023 18:11:22 +0000 (21:11 +0300)]
Fix(Py3): Fix log reporting
`error` could be bytes.
Oleg Broytman [Sun, 12 Nov 2023 16:11:20 +0000 (19:11 +0300)]
Fix(Py3): Fix subrocess: pass bytes streams to `RecordFile`
Oleg Broytman [Sun, 12 Nov 2023 14:36:14 +0000 (17:36 +0300)]
Fix(Py3): Subrocess must use `urllib`
`urllib2` robot doesn't work in Python 3.
Oleg Broytman [Sun, 12 Nov 2023 14:23:26 +0000 (17:23 +0300)]
Fix(Py3): Fix `subproc.py`
Work with bytes.
Oleg Broytman [Sun, 12 Nov 2023 13:57:51 +0000 (16:57 +0300)]
Fix(Py3): Fix absolute import
Oleg Broytman [Sun, 12 Nov 2023 13:49:28 +0000 (16:49 +0300)]
Fix(Py3): Some socket errors are reported as `OSError`
Oleg Broytman [Sun, 12 Nov 2023 13:35:38 +0000 (16:35 +0300)]
Fix(Py3): Encode unicode to bytes
Oleg Broytman [Sun, 12 Nov 2023 11:46:38 +0000 (14:46 +0300)]
Fix(Py3): Work around an old bug in `urlopen`
It passes an extra parameter `timeout`
which `URLopener.open()` doesn't accept.
Oleg Broytman [Sun, 12 Nov 2023 11:24:49 +0000 (14:24 +0300)]
Fix(Robots/bkmk_rurllib_py3.py): Restore opener
`urllib.request.urlcleanup()` clears opener.
Oleg Broytman [Sun, 12 Nov 2023 11:24:18 +0000 (14:24 +0300)]
Fix(Storage/bkmk_stflad.py): Fix reading header
Oleg Broytman [Sun, 12 Nov 2023 10:38:34 +0000 (13:38 +0300)]
Build(Makefile): The next version will be a new major release
Oleg Broytman [Sun, 12 Nov 2023 10:38:08 +0000 (13:38 +0300)]
Docs(README): Fix copyright year
Oleg Broytman [Sun, 12 Nov 2023 10:04:22 +0000 (13:04 +0300)]
Fix(Py3): Fix `list.join(separator)`
It's now `separator.join(list)`.
Oleg Broytman [Sun, 12 Nov 2023 10:01:29 +0000 (13:01 +0300)]
Fix(Py3): Fix `urllib`-based robot
Oleg Broytman [Sat, 11 Nov 2023 20:10:39 +0000 (23:10 +0300)]
Fix(Py3): Fix `htmlentities` import
Oleg Broytman [Sat, 11 Nov 2023 20:08:17 +0000 (23:08 +0300)]
Fix(Py3): Fix `urljoin` import
Oleg Broytman [Sat, 11 Nov 2023 18:35:26 +0000 (21:35 +0300)]
Fix(Py3): Stop encoding unicode to bytes
Oleg Broytman [Sat, 11 Nov 2023 18:34:51 +0000 (21:34 +0300)]
Fix(Py3): Stop using module `string`
Oleg Broytman [Sat, 11 Nov 2023 18:33:45 +0000 (21:33 +0300)]
Fix(Py3): Open files in text mode
Oleg Broytman [Fri, 10 Nov 2023 14:07:27 +0000 (17:07 +0300)]
Fix(Py3): Fix `.has_key()`
Oleg Broytman [Wed, 1 Nov 2023 15:32:01 +0000 (18:32 +0300)]
Fix(Py3): Fix import from `urllib`
Oleg Broytman [Tue, 31 Oct 2023 19:03:27 +0000 (22:03 +0300)]
Fix(Storage/bkmk_stjson.py): open file in text mode
Oleg Broytman [Tue, 31 Oct 2023 19:03:00 +0000 (22:03 +0300)]
Fix(Py3): `exec` in a local namespce
Oleg Broytman [Tue, 31 Oct 2023 16:45:06 +0000 (19:45 +0300)]
Feat: Set shebang to `python3`
Oleg Broytman [Tue, 31 Oct 2023 16:31:11 +0000 (19:31 +0300)]
Fix(parse_html): Fix import
Oleg Broytman [Thu, 28 Sep 2023 12:34:40 +0000 (15:34 +0300)]
Style: Fix flake8 W605 invalid escape sequence
Oleg Broytman [Thu, 28 Sep 2023 12:21:50 +0000 (15:21 +0300)]
Style: Fix flake8 F841 local variable is assigned to but never used
Oleg Broytman [Sat, 16 Sep 2023 19:40:15 +0000 (22:40 +0300)]
Fix(Py3): Fix `cmp` compatibility
Oleg Broytman [Sat, 16 Sep 2023 19:39:13 +0000 (22:39 +0300)]
Style: Fix flake8 F821 undefined name 'unichr'
Oleg Broytman [Sat, 16 Sep 2023 19:26:28 +0000 (22:26 +0300)]
Fix(Py3): Fix `basestring` compatibility
Oleg Broytman [Sat, 16 Sep 2023 19:23:09 +0000 (22:23 +0300)]
Fix(parse_html/bkmk_parse_html): Fix imports
Oleg Broytman [Sat, 16 Sep 2023 19:20:51 +0000 (22:20 +0300)]
Fix(Py3): Fix `unicode` compatibility
Oleg Broytman [Mon, 11 Sep 2023 14:06:44 +0000 (17:06 +0300)]
Fix(Py3): Replace `unicode()` with `.decode()`
Oleg Broytman [Mon, 11 Sep 2023 13:52:04 +0000 (16:52 +0300)]
Style: Fix flake8 F401 module imported but unused
Oleg Broytman [Mon, 11 Sep 2023 13:49:25 +0000 (16:49 +0300)]
Style: Fix flake8 E999 IndentationError: unexpected indent
Oleg Broytman [Wed, 6 Sep 2023 20:45:07 +0000 (23:45 +0300)]
Style: Fix flake8 E741 ambiguous variable name 'l'
Oleg Broytman [Wed, 6 Sep 2023 20:45:27 +0000 (23:45 +0300)]
Style: Completely ignore some flake8 warnings
E701 multiple statements on one line (colon)
E722 do not use bare 'except'
Oleg Broytman [Tue, 5 Sep 2023 17:55:16 +0000 (20:55 +0300)]
Style: Fix flake8 E501 line too long
Oleg Broytman [Tue, 5 Sep 2023 15:53:07 +0000 (18:53 +0300)]
Style: Fix flake8 E402 module level import not at top of file
Oleg Broytman [Mon, 4 Sep 2023 17:07:25 +0000 (20:07 +0300)]
Style: Fix flake8 E401 multiple imports on one line
Oleg Broytman [Mon, 4 Sep 2023 17:00:36 +0000 (20:00 +0300)]
Style: Fix flake8 E305 expected 2 blank lines, found 1
After class or function definition.
Oleg Broytman [Mon, 4 Sep 2023 16:59:18 +0000 (19:59 +0300)]
Style: Fix flake8 E303 too many blank lines
Oleg Broytman [Mon, 4 Sep 2023 16:56:48 +0000 (19:56 +0300)]
Style: Fix flake8 E302 expected 2 blank lines, found 1
Oleg Broytman [Mon, 4 Sep 2023 16:55:14 +0000 (19:55 +0300)]
Style: Fix flake8 E265 block comment should start with '# '
Oleg Broytman [Mon, 4 Sep 2023 16:52:48 +0000 (19:52 +0300)]
Style: Fix flake8 E261 at least two spaces before inline comment
Oleg Broytman [Sat, 2 Sep 2023 22:05:54 +0000 (01:05 +0300)]
Style: Fix flake8 E231 missing whitespace after ','
Oleg Broytman [Sat, 2 Sep 2023 22:02:46 +0000 (01:02 +0300)]
Style: Silent flake8 E227 missing whitespace around bitwise or shift operator
Oleg Broytman [Sat, 2 Sep 2023 21:56:09 +0000 (00:56 +0300)]
Style: Fix flake8 E124 closing bracket does not match visual indentation
Oleg Broytman [Sat, 2 Sep 2023 21:42:52 +0000 (00:42 +0300)]
Style: Silent flake8 E221 multiple spaces before operator
Here I prefer to align multiple assignments.
Oleg Broytman [Sat, 2 Sep 2023 21:41:17 +0000 (00:41 +0300)]
Style: Fix flake8 E203 whitespace before ':'
Oleg Broytman [Sat, 2 Sep 2023 21:40:14 +0000 (00:40 +0300)]
Style: Fix flake8 E131 continuation line unaligned for hanging indent
Oleg Broytman [Sat, 2 Sep 2023 15:06:10 +0000 (18:06 +0300)]
Style: Fix flake8 E128 continuation line under-indented for visual indent
Oleg Broytman [Sat, 2 Sep 2023 15:00:56 +0000 (18:00 +0300)]
Style: Fix flake8 E127 continuation line over-indented for visual indent
Oleg Broytman [Sat, 2 Sep 2023 11:06:43 +0000 (14:06 +0300)]
Docs: Update TODO
Robot based on `requests`.
Oleg Broytman [Sat, 2 Sep 2023 11:02:23 +0000 (14:02 +0300)]
Style: Fix flake8 warning E124 closing bracket does not match visual indentation
Oleg Broytman [Sat, 2 Sep 2023 11:00:24 +0000 (14:00 +0300)]
Style: Fix flake8 warning E116 unexpected indentation (comment)
Oleg Broytman [Sun, 23 May 2021 14:20:21 +0000 (17:20 +0300)]
Style: Fix `flake8` E114
Oleg Broytman [Fri, 25 May 2018 07:27:16 +0000 (10:27 +0300)]
Upgrade: http://phdru.name -> https://phdru.name
Oleg Broytman [Mon, 30 Oct 2017 18:28:19 +0000 (21:28 +0300)]
Fix(flad): Unindent code erroneously indented in commit
c88cb7a7
Oleg Broytman [Fri, 20 Oct 2017 18:38:32 +0000 (21:38 +0300)]
Feat(subproc.py): Get rid of module string
Use string methods instead of functions.
Oleg Broytman [Thu, 5 Oct 2017 16:22:08 +0000 (19:22 +0300)]
Cleanup: Fix flake8 errors/warnings
Oleg Broytman [Sun, 13 Aug 2017 17:41:17 +0000 (20:41 +0300)]
Fix(parse_html): encode title to utf-8 as the last resort
Oleg Broytman [Sun, 13 Aug 2017 17:40:22 +0000 (20:40 +0300)]
Fix(parse_html): Fix BS4 parser: encode title to utf-8 as the last resort
Oleg Broytman [Tue, 1 Aug 2017 22:14:29 +0000 (01:14 +0300)]
Fix(storage): Adapt to the latest Mozilla format
Mobile Bookmarks folder doesn't have children.
Oleg Broytman [Sat, 1 Jul 2017 00:39:10 +0000 (03:39 +0300)]
Fix(subproc.py): Carefully close file descriptors
Use os.fdopen() to determine if a file descriptor is valid.
Oleg Broytman [Sat, 1 Jul 2017 00:38:25 +0000 (03:38 +0300)]
Fix(subproc.py): Clear pid to avoid repeated killing
Oleg Broytman [Sat, 1 Jul 2017 00:37:03 +0000 (03:37 +0300)]
Feat(subproc.py): Run tests
Oleg Broytman [Sat, 1 Jul 2017 00:34:49 +0000 (03:34 +0300)]
Fix(subproc.py): Test bogus subprocess at the beginning
When is being run in the middle it meddles with the next process.
Oleg Broytman [Sat, 1 Jul 2017 00:33:16 +0000 (03:33 +0300)]
Fix(subproc.py): Convert exception from a string to a class
Oleg Broytman [Fri, 30 Jun 2017 23:29:44 +0000 (02:29 +0300)]
Doc(subproc.py): modified by phd
Oleg Broytman [Sun, 25 Jun 2017 15:18:31 +0000 (18:18 +0300)]
HTML parser based on BeautifulSoup4
Oleg Broytman [Thu, 22 Jun 2017 20:33:40 +0000 (23:33 +0300)]
Remove BeautifulSoup.py