Commit Graph
265 Commits
Author SHA1 Message Date
funilrys dd7904dcc8 Add forgotten sorting.
Indeed, I forgot to sort the content of the hosts file.
2020-04-21 23:54:01 +02:00
funilrys 665dc98191 Unification of the sorting of the sources.
Before this patch, there was no proper sorting and the sources.

As @XhmikosR mentioned in StevenBlack/hosts#1166, without this patch,
the output is totally different in Windows. But let's be honest, if it
is like that under Windows, chances are that the same behavior happens
across different OSes or machines around the globe.

Another reason behind this patch is that - desperate the fact that we
certainly trust @StevenBlack - the integrity of the generated files
could not be guarenteed because of the sorting which may be completely
different from an OS to another and a machine to another.

For those reasons, this patch introduces a unification of the sorting of
all sources.

The idea behind this patch is to have @StevenBlack's ad-hoc hosts
file always on top (1st) and the rest of the sources sorted
alphabetically based on the name of the folder inside the `data`
or `extensions` directory.

This will ensure that we get the same result everywhere.

Concretely speaking, I just added the function (`sort_sources`) which
sorts a given list of sources files. And later on, call the new function
everywhere it was necessary. Tests of the newly introduced function
are also included.

Contributors:
  * @ScriptTiger
  * @XhmikosR

Notes:
  * This patch fix (completely ?) ScriptTiger/hosts#1
  * This patch fix https://github.com/StevenBlack/hosts/issues/1166#issuecomment-590511086
2020-04-21 22:54:25 +02:00
Anthony Molinaro 4aa8b65cc2 provide defaults for args 2020-04-13 16:20:22 -07:00
Anthony Molinaro dd2d878e95 Allow whitelist/blacklist files to be passed via command line 2020-04-13 12:14:34 -07:00
Steven Black e091bcc185 Merge pull request #1216 from djnym/clean-checkout-fixes
Keep checkout unmodified when adding outputpath.
2020-04-08 16:23:58 -04:00
Anthony Molinaro cac15b1c11 use nogendata for arg 2020-04-07 22:55:02 -07:00
Anthony Molinaro 37bc3821f8 applied black 2020-04-07 22:44:37 -07:00
Anthony Molinaro 9c1b8b2579 use more succinct name for arg 2020-04-07 22:40:30 -07:00
XhmikosR 787022fea2 Fix typo 2020-04-08 07:36:24 +03:00
Anthony Molinaro 699b52e1bd forgot to remove a debug 2020-04-07 20:17:04 -07:00
Anthony Molinaro 2d696a42d9 keep checkout clean 2020-04-07 20:08:23 -07:00
funilrys aa4a0f7a46 Fix backslashes issue under Windows.
This patch fixes https://github.com/StevenBlack/hosts/pull/1165#issuecomment-590111613.

This patch simply, replace the `\` Windows directory separator, with the
universal `/` of the web convention.
2020-02-24 18:34:08 +01:00
XhmikosR d2566110ff Fix GitHub capitalization 2020-02-22 16:21:26 +02:00
funilrys 0843d83d09 It's stupid that it should be at the very top but yeah I fixed it... ¯\_(ツ)_/¯ 2019-07-13 21:06:30 +02:00
funilrys b93b427a6e fix #744 #843 and disable E203 (flake8).
Indeed, before this patch, no `# Title: XYZ` was describing our generated
host file. This patch fixes that.

Indeed, we now do the following:

- If no extension is included we add:
    - `# Title: StevenBlack/hosts`
- If exactly one extension is included we add:
    - `# Title: StevenBlack/hosts with the extension_name extension`
- If more than one extension is included we add (in one line):
    - `# Title: StevenBlack/hosts with the extname1,
      extname2 and extname3 extensions`

Please also note that I disable E203 (whitespace before ':') for flake8
at line 773.

Since we use Black for code formatting let me redirect you to
the documentation of Black which explain what I did.

https://black.readthedocs.io/en/stable/the_black_code_style.html#slices :

> Since E203 is not PEP 8 compliant, you should tell
> Flake8 to ignore these warnings.
2019-07-13 13:41:36 +02:00
funilrys 05dad7e657 Introduction of Black: The uncompromising Python code formatter.
Please find more about it there:
* https://github.com/python/black
* https://black.readthedocs.io/en/stable/
2019-07-13 13:40:13 +02:00
funilrys 90420ae751 Fix issue when we meet something like 0.0.0.0
This patch fix StevenBlack/hosts#904
2019-01-30 01:08:59 +01:00
Duck 5c69826a98 Change "utf8" to "UTF-8" in params for encoding in updateHostFile.py 2019-01-05 23:08:46 +08:00
Duck df29ed238f Specify encoding to UTF-8 when opening source file 2019-01-05 19:11:01 +08:00
spirillen ddf5a72906 Replaced (UTC) with %Z
I've changed as suggested in https://github.com/StevenBlack/hosts/pull/836#issuecomment-440452979 by @funilrys

The reason I choose NOT to convert this into ISO-8601 is, that we read date.time in different ways depending on with side on the pond we live. By using the "%d %B %Y %H:%M:%S (%Z)" Full date/time this issue is eliminated  and any confusion on how to read the date is no longer existent. The ISO-8601 is good for active pages, as the date ordering is to be manipulated by interface.

Alternative to this is we should add extra lines/info about the date.time ordering, do to this i found this as the easiest way to give this information
2018-12-07 14:31:52 +01:00
spirillen a2989eedc8 Changes to the time.strftime to make it more accurate
Since some host files might need to be updated more frequently it's more appropriate to show timezone and the exact time for last build, hince changed the order of month and date to %d %B
2018-11-20 23:19:19 +01:00
funilrys c0d661f388 Review of the notion of keepdomaincomments
This patch fix StevenBlack/hosts#777

This patch:
  * Change the default state of keepdomaincomments.
    * Indeed, comments are now displayed by default.
    * But if you don't need comments, feel free to use the argument.
  * Delete the requirement input when calling the `-k` argument.
  * Update tests case regarding the new state of keepdomaincomments.
2018-09-14 00:15:56 +02:00
funilrys ec362d81c5 Deletion of the extra \n after each (and especially commented) line.
This patch partially fix StevenBlack/hosts#777 .
2018-09-13 09:17:45 +02:00
StevenBlack ed6f65d970 Issue #733: fix – more robust if the .example files are missing. 2018-09-08 21:19:51 -04:00
gfyoung 92442955bc Minor house-cleaning
* No parentheses single-line string
* Remove builtins function, which was
really for Python 2.x compatibility
2018-09-06 21:12:48 -07:00
gfyoung d8df5f1dc4 Use example files to allow proper git-ignoring
The following files:

* myhosts
* blacklist
* whitelist

can be all be modified by the user for personal usage.
However, git is tracking these files since they exist
in the repository, which makes it difficult to do so
without accidentally pushing one's own customizations.

This commit converts those examples to ".example" files,
which serve as the defaults if one of the files listed
above does not exist.

Closes gh-144.
2018-09-06 12:20:37 -07:00
funilrys e2be45842b Deletion of unneeded comments 2018-09-05 23:53:58 -04:00
funilrys f54a27103c Exlicitly set the python interpreter to use 2018-09-05 23:53:58 -04:00
funilrys 9ef1e4a1fc Deletion of unneeded comment 2018-09-05 23:53:58 -04:00
funilrys f5ef7e02d7 Fixing flake8 issues 2018-09-05 23:53:57 -04:00
funilrys 58db5143ed Deletion of future dependencies
Also:
  * deletion of raw_input
2018-09-05 23:53:35 -04:00
funilrys bcb1434ecd Introduction of an exception saying that we do not support Python 2 anymore.
This patch is the begining of https://github.com/StevenBlack/hosts/issues/729
2018-09-05 23:52:15 -04:00
funilrys 4d6f1d9065 Fixing flake8 issues 2018-09-05 23:51:29 -04:00
funilrys 928bb5201c Deletion of future dependencies
Also:
  * deletion of raw_input
2018-09-05 23:51:28 -04:00
funilrys 943d0d732d Introduction of an exception saying that we do not support Python 2 anymore.
This patch is the begining of https://github.com/StevenBlack/hosts/issues/729
2018-09-05 23:51:27 -04:00
gfyoung 8062b28490 Add docs for DNS cache for FreeBSD
Closes gh-157.
2018-08-03 10:43:37 -07:00
funilrys 6de96c5537 Introduction of Start xx and End xxx
This patch fix #644
2018-06-09 11:35:48 +02:00
gfyoung e66c2cb37e Doc / Check for Centos restart
Closes gh-622.
2018-05-22 21:53:56 -04:00
FadeMind d7e29d9289 updateHostsFile.py: add new ipv6 variants
Based on someonewhocares.org hosts schema
2018-04-02 19:07:56 +02:00
StevenBlack a5142db731 Our Flake8 linter's max-line-length constraint is now 120, so taking advantage of that. 2018-03-19 23:48:22 -04:00
StevenBlack 494c14f6e6 Add link to Releases on Github in our generated hosts. Closes #524 2018-03-19 23:47:25 -04:00
Steven Black 7c79fa7f2f Fixes for linting errors. 2018-03-17 23:33:44 -04:00
Steven Black 2526b76bea Accept IP followed by host IP address. 2018-03-14 00:09:38 -04:00
Ankit Pati 4b5dc8d920 Remove Superfluous Check for Zero-Length List
Checking for zero-length is not necessary here as iterating over a
zero-length list is perfectly valid, and produces exactly zero
iterations, matching the intended behaviour without an extra check.
2018-03-10 00:38:31 +05:30
funilrys 0166642e00 Merge remote-tracking branch 'upstream/master' into encoding-review 2018-03-04 11:19:36 +01:00
funilrys 8405f87edb Review of domain_to_idna() to support more tests cases
Please note this patch comes after an issue reported by @FadeMind
which I could reproduce in 1/3 computer.
2018-03-04 11:17:38 +01:00
Mitch Weaver 1ff8f4b13d add OpenBSD support 2018-03-03 22:55:18 +01:00
Steven Black 2bd48fb7ba Merge pull request #519 from FadeMind/cross-sudo
cross-compatible sudo FIXED CI
2018-03-03 15:13:16 -05:00
FadeMind ee411d82c9 updateHostsFile.py: DEL whitespace after '['
https://travis-ci.org/StevenBlack/hosts/jobs/346915934#L606-L609
2018-03-03 15:30:49 +01:00
funilrys 50fde09ed7 Fix grammar.
This patch fix: https://github.com/StevenBlack/hosts/pull/520/files/d98b31fb921ff35fb1a421243fa4876504cf676e#r171971716

Thanks to @gfyoung
2018-03-02 22:56:32 +01:00