Skip to content

Green Galago

Compare
Choose a tag to compare
@funilrys funilrys released this 22 Jun 17:24
· 1822 commits to master since this release
5221052

🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟

Hello, World!

I'm glad to announce this new major version of PyFunceble!

Many of you (if not everybody) wrote, talked and/or mentioned that PyFunceble is a great idea but it takes some times if not days to test lists.
Let me invite you to review your input with this new version which offers the usage of multiprocessing (as an option) while testing for files.

This new version includes many improvements, review and sometimes complete rewrite of most (if not all) subsystems. As we are all human, I strongly invite you to report any issue which you might meet or get with this new version. A lot of things have been taken into consideration to minimize issue but I'm and you should still stay aware that even if we are stable enough, bugs can emerge from nowhere.

Let me know what you think or how you use PyFunceble with #PyFunceble on Twitter 😄!

I wish you all the best!

🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟🎉 🌟

What was fixed?

  • The generation of the percentage.txt file which did not work when the quiet/silent mode was in use.
  • The Git command output which was not showing up while using PyFunceble under Travis CI.

What was improved?

  • The project structure.
  • The documentation structure.
  • The documentation.
  • The way we do a DNS Lookup.
  • The way we determine, manage and return the status of a subject.
  • The way we imported some entities.
  • The way we share states and information across classes/subsystems.
  • The way we generate/update iana-domains-db.json
  • The Python API (Mostly backend).
  • The way we load the configuration file.
  • The way we clean what needs to be cleaned.
  • The way we clean everything we generated.
  • The way we handle some exceptions.
  • The way the databases/class/subsystems are structured.
  • The inactive database subsystem.
  • The whois database subsystem.
  • The auto-continue subsystem.
  • The default user-agent.
  • iana-domains-db.json.
  • public-suffix.json.
  • The CLI dispatcher.

What is new?

  • The support of some custom DNS Server for DNS Lookup.
  • The environment variable PYFUNCEBLE_CONFIG_DIR which will replace PYFUNCEBLE_OUTPUT_DIR in the future.
  • The support of dotenv files for environment variable declaration.
  • The possibility to make a DNS lookup through our Python API.
  • The possibility to make a WHOIS lookup through our Python API.
  • The support of Python 3.7.3.
  • The usage of Codacy code review.
  • The test of a file using multiprocessing (optional).
  • Logs sharing is now disabled by default.
  • The possibility to generate and fill a normal output/ directory structure from the API.
  • The possibility to use a different database type: SQLite, MySQL, MariaDB ou JSON.
  • The possibility to test complements.
    • Complements are for example www.example.org if example.org is given and vice-versa.
  • We now ignore the well-known list of reserved IPv4 address.
    • If you need to test such IPs please use the --local argument from the CLI or its configuration equivalent.
  • A safety check if a domain is syntactical INVALID.
    • Indeed, we try to resolve to confirm it's invalidity.
  • The percentage which shows up (if needed) in simple mode.
  • The version number is now appended into all generated files.
  • The execution time (when needed) is now appended to percentage.txt.
  • The support of explicit port while testing for URL.
  • The possibility to know the status of subject indexed into the inactive database.
  • The separation of API, CLI Simple, CLI File, CLI Multiprocessing in the code for more clarity.

What is coming?

  • Fix of reported issues.
  • Review of the tests.

Contributors

Thanks to those awesome people who contributed to this release!