Commit graph

558 commits

Author SHA1 Message Date
Chris Mayo
9ed2d8703b Fix installation from source without git installed 2021-12-15 19:40:27 +00:00
Chris Mayo
a2e379a595 Remove built-in GNOME and KDE proxy support
Only http_proxy was ever supported.

Requests uses urllib.request.getproxies().

Fedora 35 and Ubuntu 20.04 do set proxy environment variables when
settings are added through the GUI.

GNOME location of proxy settings is subject to change:
https://wiki.gnome.org/Projects/NetworkManager/Proxies
https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas/-/issues/27
2021-12-13 19:25:23 +00:00
Chris Mayo
699008ddc2 Set release date from HEAD
Match the version reported using setuptools_scm.
Use the same git command as setuptools_scm uses for node_date.
2021-12-07 19:44:20 +00:00
Chris Mayo
2d9c2b229c Set minimum Beautiful Soup version in setup.py 2021-11-29 19:41:38 +00:00
Chris Mayo
af93386bcc Version application using setuptools_scm
Version has the format X.Y.Z.postN+g12345678
2021-11-28 18:55:46 +00:00
Chris Mayo
e297b1a477 Stop including binary translation catalogs in the source
Makes it easier to contribute and accept translations.

Does add a new dependency on installation from source, polib. This is
not made mandatory because not all users will want translations.

polib has no further dependencies and can be installed anywhere
LinkChecker can, using pip too.

Add release process step to check polib is installed

The Wheel still includes translations. Recommend install from PyPI in
the README.

Translations were being compiled in setup.py until 2014, using a bundled
copy of msgfmt.py.
9c3739f1c ("Replace msgfmt.py with local tools.", 2014-09-08)
2021-11-22 19:30:33 +00:00
Chris Mayo
375bedf79a List Python 3.10 as supported in trove classifiers 2021-10-18 19:47:18 +01:00
Chris Mayo
c4b8a4aeec Changes for release 10.0.1 2021-01-28 19:20:24 +00:00
Chris Mayo
efb3e31ab3 Declare long description content type
Fix twine warning.
2021-01-28 19:20:24 +00:00
Chris Mayo
136e8a3625 Update to version 10.0.1.dev0 2021-01-28 19:20:24 +00:00
Chris Mayo
732f988500 Changes for release 10.0.0 2021-01-14 19:48:22 +00:00
Chris Mayo
ed948f6a9b Update version to 10.0.0.dev2 2020-10-02 19:12:06 +01:00
Chris Mayo
26c15c5e67 Fix deprecation warning for resolver.query()
/home/travis/build/linkchecker/linkchecker/linkcheck/checker/mailtourl.py:321: DeprecationWarning: please use dns.resolver.resolve() instead
    answers = resolver.query(domain, 'MX')
2020-09-14 19:55:05 +01:00
Chris Mayo
70d749a967 Drop Python 3.5, add 3.9 2020-09-14 19:55:05 +01:00
Chris Mayo
7ef599fc20
Merge pull request #491 from cjmayo/sphinx2
Documentation Updates
2020-08-29 16:50:27 +01:00
Chris Mayo
b1d19e5eab Update copyright and version 2020-08-23 17:24:09 +01:00
Chris Mayo
2de25d54fd Rename blacklist to failures
Continue to support blacklist for the time being, with deprecation
warnings.
2020-08-23 17:19:26 +01:00
Chris Mayo
22089a5af2 Move man pages into doc/man 2020-08-15 17:02:40 +01:00
Chris Mayo
4009039158
Merge pull request #420 from cjmayo/dconf
Update GNOME proxy support for GNOME 3 and Python 3
2020-06-14 18:56:19 +01:00
Chris Mayo
648a5f04f1 Use python3 for setup.py
Enable ./setup.py when python is Python 2.
2020-06-05 16:59:46 +01:00
Chris Mayo
b9c8e33878 Update GNOME proxy support for GNOME 3 and Python 3
GConf is replaced by dconf and the GSettings API in GNOME 3.
2020-06-05 16:29:45 +01:00
Chris Mayo
0ea620999d
Merge pull request #432 from cjmayo/flake-linkcheck
Resolve flake8 violations in linkchecker/ and require success in Travis
2020-06-04 18:04:57 +01:00
Chris Mayo
a6b1eb45b1 Convert to Python 3 super() 2020-06-03 20:06:36 +01:00
Chris Mayo
00e715cd71 Update optional dependencies to PyPI project links in setup.py 2020-06-01 16:25:15 +01:00
Chris Mayo
7281dc5cdd Reinstate separate lines for install_requires in setup.py 2020-05-29 19:24:17 +01:00
Chris Mayo
b5d4391ae1 Fix remaining flake8 violations in linkchecker and setup.py
linkchecker:259:1: E266 too many leading '#' for block comment
linkchecker:297:1: E266 too many leading '#' for block comment
linkchecker:385:1: E266 too many leading '#' for block comment
linkchecker:498:1: E266 too many leading '#' for block comment

setup.py:40:1: F401 'distutils.command.sdist.sdist' imported but unused
setup.py:47:1: F401 'distutils.command.build.build' imported but unused
setup.py:61:5: E722 do not use bare 'except'
setup.py:381:80: E231 missing whitespace after ','
2020-05-28 19:51:38 +01:00
Chris Mayo
fc9efceb46 Run black on linkchecker and setup.py 2020-05-28 19:51:38 +01:00
Marius Gedminas
6a2d247be1 Remove custom MANIFEST logic from setup.py
I don't like the extra MANIFEST file lying around.  It clashes with the
old distutils feature of having a MANIFEST file.  I intend to replace
this check with check-manifest.
2020-05-25 19:27:02 +03:00
Chris Mayo
87f0c31928 Remove linkchecker.desktop
- Not useful for a command-line application
- Refers to an icon with a generic name, that is not installed
2020-05-22 19:43:57 +01:00
Marius Gedminas
05c02da2b0 Bump version in git to 10.0.0.dev0
It is confusing to have different versions of the code self-identify
with the same version number.  In my experience it's always best to
increment the version number and add a .dev0 suffix right after making a
release.  When it's time to make a new release, you remove the .dev0,
commit, tag that commit, then make second commit that bumps the version
and adds .dev0 back.

This way only releases identify themselves as "version X.Y.Z" with no
.dev0 suffix and it's immediatelly apparent when you've got a prerelease
installed from git.
2020-05-17 20:06:50 +03:00
Chris Mayo
a15a2833ca Remove spaces after names in class method definitions
And also nested functions.

This is a PEP 8 convention, E211.
2020-05-16 20:19:42 +01:00
Chris Mayo
1663e10fe7 Remove spaces after names in function definitions
This is a PEP 8 convention, E211.
2020-05-16 20:19:42 +01:00
Chris Mayo
fc11d08968 Remove spaces after names in class definitions 2020-05-16 20:19:42 +01:00
Chris Mayo
77de1545ef Use setuptools.find_packages() 2020-05-13 19:50:19 +01:00
Chris Mayo
b0ea72e8c1 Remove # -*- coding: lines
Except for tests that include non-unicode characters:

tests/test_po.py
tests/test_strformat.py
tests/test_url.py
tests/checker/test_error.py
tests/checker/test_news.py
2020-05-08 10:45:31 +01:00
anarcat
183d483074
Merge pull request #365 from cjmayo/tidyten1
Remove use of the future package
2020-04-26 12:02:30 -04:00
Chris Mayo
ee6628a831 Move HtmlParser/htmlsax.py to htmlutil/htmlsoup.py
Remove one subpackage and some import lines where htmlutil.linkparse is
also being used.
2020-04-18 20:30:45 +01:00
Chris Mayo
f5e7f3a382 Remove use of the future package
It was providing Python 2 compatibility.
2020-04-15 19:49:16 +01:00
Chris Mayo
e0bf5fc24f Remove unused imports and variables from setup.py 2020-04-01 19:21:47 +01:00
Chris Mayo
f6b273d05e Remove code for compiling C extensions from setup.py
C extensions for parser and network utilities have been replaced in
Python.
2020-04-01 19:21:47 +01:00
Chris Mayo
9f899605a9 Remove Python 2 compatibility from setup.py
sys.version_info was introduced in Python 2.0.
2020-04-01 19:21:47 +01:00
Marius Gedminas
7c14bf1ad6 Declare supported Python versions in setup.py
The python_requires is the important one; it means once we publish a
new release on PyPI, pip install will know not to try to install it if
you run it on Python 2 and will fall back to an older version.
2020-04-01 17:49:51 +03:00
Chris Mayo
d2cb1b9dd6 Raise minimum Python version to 3.5 in setup.py 2020-03-31 19:46:31 +01:00
Petr Dlouhý
51a06d8a1e Remove home-cooked htmlparser and use BeautifulSoup 2019-07-22 19:59:37 +01:00
Miro Hrončok
ff5ebbae69 Require beautifulsoup4 instead of bs4
bs4 is a dummy package managed by the developer of Beautiful Soup to prevent
name squatting. The official name of PyPI’s Beautiful Soup Python package is
beautifulsoup4. The bs4 package ensures that if you type pip install bs4 by
mistake you will end up with Beautiful Soup.

However, for requirements, it's cleaner to use the proper name.
For downstream packaging in Fedora, this avoids the need of packaging
the dummy package.
2020-02-06 10:05:13 +01:00
Chris Mayo
c7a32d67fe Remove unused code from network subpackage 2019-10-19 10:27:34 +01:00
Chris Mayo
5fc01455b7 Decode content when retrieved, use bs4 to detect encoding if non-Unicode
UrlBase has been modified as follows:
- the "data" variable now holds bytes
- decoded content is stored in a new variable "text"
- functionality from get_content() has been split out into
  get_raw_content() which returns "data" and download_content() which
  calls read_content() and sets the download related variables.
  This allows for subclasses to do their own decoding and parsers to
  use bytes.
2019-09-30 19:46:24 +01:00
EsuS
004632a99b Update references to GitHub project from wummel to linkchecker
Remove all mention of donations.
2019-04-18 19:59:52 +01:00
Petr Dlouhý
174a059ab5 Python3: add future to requirements 2019-04-09 20:09:35 +01:00
Antoine Beaupré
66c800cd3c
lower requirements to allow install on older systems
PR #196 bumped this to 2.20 to fix a security warning about requests
in our repository, but I believe that warning can be fixed by removing
only the upper bound. This should make backporting linkchecker to
older systems easier, where requests presumably has the 2.20 fix
backported.
2018-11-03 13:14:04 -04:00