This commit increases strictnes of tests by failing on tests (even though they pass) if `console.warn` or `console.error` is used. This is used to fix warning outputs from Vue, cleaning up test output and preventing potential issues with tests. This commit fixes all of the failing tests, including refactoring in code to make them more testable through injecting Vue lifecycle hook function stubs. This removes `shallowMount`ing done on places, improving the speed of executing unit tests. It also reduces complexity and increases maintainability by removing `@vue/test-utils` dependency for these tests. Changes: - Register global hook for all tests to fail if console.error or console.warn is being used. - Fix all issues with failing tests. - Create test helper function for running code in a wrapper component to run code in reliable/unified way to surpress Vue warnings about code not running inside `setup`.
privacy.sexy — Privacy is sexy
Enforce privacy & security best-practices on Windows, macOS and Linux, because privacy is sexy.
Get started
- 🌍️ Online: https://privacy.sexy.
- 🖥️ Offline: Download directly for: Windows, macOS, Linux. For more options, see here.
See also:
- Desktop vs. Web Features: Differences and unique aspects of desktop and web versions.
- System Requirements: Hardware and software requirements for the desktop version.
💡 Regularly applying your configuration with privacy.sexy is recommended, especially after each new release and major operating system updates. Each version updates scripts to enhance stability, privacy, and security.
Features
- Rich: Hundreds of scripts that aims to give you control of your data.
- Free: Both free as in "beer" and free as in "speech".
- Transparent. Have full visibility into what the tweaks do as you enable them.
- Reversible. Revert if something feels wrong.
- Accessible. No need to run any compiled software on your computer with web version.
- Secure: Security is a top priority at privacy.sexy with comprehensive safeguards in place.
- Open. What you see as code in this repository is what you get. The application itself, its infrastructure and deployments are open-source and automated thanks to bump-everywhere.
- Tested. A lot of tests. Automated and manual. Community-testing and verification. Stability improvements comes before new features.
- Extensible. Effortlessly extend scripts with a custom designed templating language.
- Portable and simple. Every script is independently executable without cross-dependencies.
Support
Sponsor 💕. Consider sponsoring on GitHub Sponsors, or you can donate using other ways such as crypto or a coffee.
Star 🤩. Feel free to give it a star ⭐ .
Contribute 👷. Contributions of any type are welcome. See CONTRIBUTING.md as the starting point. It includes useful information like how to add new scripts.
Additional Install Options
- Check the releases page for all available versions.
- Other unofficial channels (not maintained by privacy.sexy) for Windows include:
-
Scoop 🥄 (latest version):
scoop bucket add extras scoop install privacy.sexy -
winget 🪟 (may be outdated):
winget install -e --id undergroundwires.privacy.sexyWith winget, updates require manual submission; the auto-update feature within privacy.sexy will notify you of new releases post-installation.
-
Development
Refer to development.md for Docker usage and reading more about setting up your development environment.
Check architecture.md for an overview of design and how different parts and layers work together. You can refer to application.md for a closer look at application layer codebase and presentation.md for code related to GUI layer. collection-files.md explains the YAML files that are the core of the application and templating.md documents how to use templating language in those files. In ci-cd.md, you can read more about the pipelines that automates maintenance tasks and ensures you get what see.
docs/ folder includes all other documentation.
Security
Security is a top priority at privacy.sexy. An extensive commitment to security verification ensures this priority. For any security concerns or vulnerabilities, please consult the Security Policy.

