All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
- [Documentation] Deprecate docker-compose and update documentation
- [Typo] 'plateform' to 'platform' in README by @EliasConTildePY in #690
- [Documentation] fix instance port by @codeurimpulsif
- [Storage] create s3 bucket only if it don't already exists by @codeurimpulsif in #692
- [Dependencies] Upgrade multiple dependencies by @codeurimpulsif in #693
- [Languages] Update Dutch and Spanish by @codeurimpulsif in #694
- Add a changelog
- dependencies: upgrade apkeep from 0.17.0 to 0.18.0
- dependencies: upgrade django to 5.2.11
- languages: update Chinese Simplified, Estonian, German, Norwegian, Russian, Swedish
- [Dependencies] Upgrade django to 5.2.9, urllib3 to 2.6.0, fonttools to 4.61.0 by @codeurimpulsif in #680
- [Storage] add missing file.close() by @codeurimpulsif in #681
- [Template] Remove some unsecure DOM interpretation by @codeurimpulsif in #682
- [Dependencies] upgrade django to version 5.2.8 by @codeurimpulsif in #679
- feat: add version label to search results for clarity by @emmanuel-ferdman in #668
- [Licence] Add ODbL licence for database and API results by @codeurimpulsif in #669
- [Static] Remove Django admin files and collect static files by @codeurimpulsif in #665
- fix: typos in the importtracker command error by @Porkepix in #671
- [Dependencies] Migrate to Django 5.2 by @codeurimpulsif in #670
- [Dependencies] Upgrade dev dependencies by @codeurimpulsif in #674
- [Chore] Bump exodus-core from 1.3.13 to 1.3.14 by @codeurimpulsif in #675
- [CI] Add Python 3.12 and 3.13 tests by @codeurimpulsif in #676
- tech: Minor code improvements by @pnu-s in #628
- chore: Bump exodus-core from 1.3.12 to 1.3.13 by @pnu-s in #629
- [Translation] Add 15 new languages by @codeurimpulsif in #656
- chore(deps): Bump gunicorn from 22.0.0 to 23.0.0 by @dependabot[bot] in #641
- chore(deps): Bump setuptools from 75.1.0 to 78.1.1 by @dependabot[bot] in #645
- chore(deps): Bump requests from 2.32.3 to 2.32.4 by @dependabot[bot] in #646
- [Command] Fix importtrackers categories link by @codeurimpulsif in #658
- [Submit] Fix: remove "temporary" workaround for it & es languages by @codeurimpulsif in #659
- [Design] Add icon for external links button by @codeurimpulsif in #634
- [Translation] Generate mo files by @codeurimpulsif in #661
- [Dependency] Remove protobuf by @codeurimpulsif in #662
- [Accessibility] Add missing or change bad media descriptions by @codeurimpulsif in #660
- Improve titles and Open Graph properties by @codeurimpulsif in #619
- chore(deps): Bump urllib3 from 2.2.1 to 2.2.2 by @dependabot in #623
- chore(deps): Bump certifi from 2024.2.2 to 2024.7.4 by @dependabot in #626
- chore(deps): Bump setuptools from 69.5.1 to 70.0.0 by @dependabot in #627
- [Integration] add video in "Better understand" → "Trackers" page by @codeurimpulsif in #625
- chore: Upgrade to apkeep 0.16.0, python 3.11 & Debian bookworm by @Jean-BaptisteC in #612
- chore(deps): Bump idna from 3.6 to 3.7 by @dependabot in #613
- chore(deps): Bump sqlparse from 0.4.4 to 0.5.0 by @dependabot in #614
- chore(deps): Bump gunicorn from 20.1.0 to 22.0.0 by @dependabot in #615
- chore(deps): Bump django from 3.2.23 to 3.2.25 by @dependabot in #609
- chore: Upgrade exodus-core to 1.3.12 & androguard to 4.1.1 by @pnu-s in #610
- chore: Upgrade exodus-core to 1.3.10 by @pnu-s in #603
- Add issue templates for bug report, feature request and question by @codeurimpulsif in #604
- chore: Improve error catching by @pnu-s in #607
- chore: Upgrade exodus-core to 1.3.11 & androguard to 4.1.0 by @pnu-s in #608
- style: Indent HTML templates with djhtml by @pnu-s in #601
- feat: Remove name and firstname from API key creation by @pnu-s in #602
- chore: Upgrade exodus-core to 1.3.9 by @pnu-s in #596
- Update Github actions by @Jean-BaptisteC in #597
- tech: Remove inline CSS usage by @pnu-s in #600
- chore: Upgrade apkeep to v0.15.0 by @pnu-s in #586
- Remove F-droid reference for Blokada on Next page by @codeurimpulsif in #587
- chore: Specify python version to help Dependabot by @pnu-s in #589
- Add CodeQL workflow for GitHub code scanning by @lgtm-com in #559
- ci: Tweak codeql.yml to ignore static admin js files by @pnu-s in #592
- docs: Update LGTM badges in README.md by @pnu-s in #593
- chore: Upgrade django to 3.2.23 by @pnu-s in #594
- fix: Totally disable submissions when parameter is set by @pnu-s in #595
- feat(api): Add tracker option to applications API endpoint by @pnu-s in #585
- Update Github actions by @Jean-BaptisteC in #576
- Remove privacytools.io from next page by @codeurimpulsif in #571
- chore: Use timer to query API fewer times on submission page by @pnu-s in #579
- chore: Upgrade dependencies by @pnu-s in #580
- chore: Upgrade django by @pnu-s in #581
- fix: Use google-play-scraper to retrieve icon from gplay by @pnu-s in #568
- chore(deps): Upgrade dependencies by @pnu-s in #569
- Use Whitenoise to serve static resources by @U039b in #556
- chore: Upgrade dependencies by @pnu-s in #566
- chore: Upgrade google-play-scrapper to fix paid apps check by @pnu-s in #567
- fix: Increase max size for db fields issuer and subject by @pnu-s in #548
- feat: Only return latest report when exact handle searched by @pnu-s in #549
- feat: Return latest app name in /search/handle api endpoint by @pnu-s in #551
- Fix icon redirection by adding language code and leading slash to URI by @codeurimpulsif in #554
- chore: Bump django from 3.2.14 to 3.2.15 by @pnu-s in #544
- fix: Make sure all app icons are square by @pnu-s in #545
- chore: Bump jquery from 3.4.1 to 3.6.1 by @pnu-s in #552
- chore: Update admin static files by @pnu-s in #553
- fix: Use correct link to see existing api keys by @pnu-s in #537
- chore: Upgrade to Django 3.2 by @pnu-s in #538
- chore: Bump django from 3.2.13 to 3.2.14 by @pnu-s in #539
- ci: Optimize order of jobs by @pnu-s in #536
- Upgrade workflow by @Jean-BaptisteC in #533
- Update Android permissions by @Jean-BaptisteC in #495
- fix: Upgrade google-play-scraper to fix paid apps check by @pnu-s in #534
- fix: Change alt attribute to find gplay icon by @pnu-s in #530
- chore: Upgrade various dependencies by @pnu-s in #531
- feat: Keep submissions always enabled for admin by @pnu-s in #528
- feat: Use apkeep instead of gpapi to download apps by @pnu-s in #532
- fix: Remove buggy link for existing API keys by @pnu-s in #520
- fix: Only keep one device model by @pnu-s in #521
- chore: Upgrade django to 2.2.28 by @pnu-s in #522
- chore: Upgrade to Debian bullseye by @pnu-s in #506
- Upgrade Minio and RabbitMQ server by @codeurimpulsif in #507
- Add contrib directory with systemd services for worker and scheduler by @codeurimpulsif in #508
- Update documentation for Debian 11 and Celery 5 by @codeurimpulsif in #509
- Download icons for f-droid from website by @Niveshkrishna in #510
- feat: Switch to pipenv as package manager by @pnu-s in #511
- chore: Bump exodus-core from 1.3.5 to 1.3.6 by @pnu-s in #512
- feat: Add documentation field for trackers by @pnu-s in #503
- Fix docker-compose uid and documentation by @codeurimpulsif in #490
- ci: Test with python 3.7 & 3.9 by @pnu-s in #480
- fix: Fix getting icon in refresh report scripts by @pnu-s in #496
- Bump django from 2.2.26 to 2.2.27 by @dependabot in #498
- Drops support for Python 3.6 (and lower)
- Improving docker tooling by @LupusMichaelis in #435
- chore(deps): Bump Pillow, exodus-core & requests by @pnu-s in #488
- fix: Set categories from ETIP on tracker creation by @pnu-s in #483
- fix: Prevents overwriting request variable in analysis page by @pnu-s in #466
- Update exit code by @Jean-BaptisteC in #475
- Bump lxml from 4.6.3 to 4.6.5 by @dependabot in #476
- feat: New API endpoints to count elements (trackers, reports, apps) by @pnu-s in #478
- fix: Use localized metadata for Fdroid icon in case of failure by @pnu-s in #477
- feat: Add possibility to disable submissions in settings (#458)
- fix: Patch gpapi locally to download apk from GPlay (#462)
- fix: Prevents hanging if app has no version, version_code or app_name (#457)
- fix: Downgrade urllib3 to fix issue with gpapi (#456)
- fix: Fix issue with all apps reported as paid apps (#455)
- docs: Update API request email address (#453)
- chore(deps): Bump dependencies (#444)
- ci: Replace Travis CI by GitHub Actions (#446)
- feat: Add API key creation page
- feat: Add search by name in trackers page (#431)
- chore(deps): Bump handlebars from 4.2.0 to 4.7.7
- fix: Add missing noreferrer on link
- docs: Update API documentation to list permissions in /search/details
- chore(deps): Bump djangorestframework from 3.11.0 to 3.11.2
- Add German translations 🇩🇪
- Fail with explicit message if attempting to scan paid app
- Remove GPlaycli references
- Update dependencies
- Update README documentation
- Add categories to API endpoints
- Update API documentation
- Link to new analysis on home page
- Add --no-cache-dir option for pip in Dockerfile
- New options (q,d) for import_from_etip command
- Fix auto_update_trackers
- Allow any host in the Docker configuration
- Adds Docker folder
- Adds possibility to overwrite CSRF_COOKIE_SECURE setting
- Replace buster by buster-slim in Docker image
- Report contact link now leads to Organization page
- New FUNDING.yml file
- Use environment variables in docker settings
- Trackers auto update & apk upload for Docker dev env
- Remove gplaycli from Docker configuration
- Tweak some details in MEN theme
- Add tracker categories
- Precise that tracker stats are only for GPlay
- Add new analysis admin button on report
- Add more recent devices to the list of mobile devices
- Add Android TV to the list of mobile devices
- Increase max length of permission names
- Display 'Google Play' instead of 'google'
- Update /search API endpoints to handle sources
- Add extra log line for app download
- Use correct link in admin queries list
- Update /applications API endpoint to handle sources
- Add F-Droid as a second source of applications
- Add command to download F-Droid index
- Add Celery scheduler for Docker instances
- Fix redirect issue using a slice of the fullpath
Some of this changes need manual interventions (for the first F-Droid index import and for Docker run), read the documentation.
- More explanation about the search input
- Add new colors for trackers statistics
- Add alert message for apps with georestrictions
- Add short option for API endpoint 'applications'
- Improve Docker setup for development
- Add Greek translation 🇬🇷
- Fix bugs to allow apk download with API call
- Change analysis page title when analysis is complete
- SET CSRF cookies to secure: true
- Docs: Add CONTRIBUTING.md
- New reports page
- New elements in trackers list page
- Allow blank signatures for trackers
- Add new page with list of trackers for admin
- Make sure the updated date is changed after reports refresh
- Bump to exodus-core 1.2.1 & Pillow 6.2.2
- Temporary workaround for IT & ES languages
- Various bug fixes related to new translations
- Only display latest reports on tracker page
- Add Italian translations 🇮🇹
- Use EN by default for Exodus Privacy website links
- Add possibility to paste Google play URL into search field
- Remove XFrameOptionsMiddleware
- Add new open API endpoint to get latest report id & date (fix #317)
- Set PostgreSQL version in Dockerfile to 11*
- Fix: make sure temp directory exists before downloading APK
- Use gpapi for APK download instead of gplaycli
- Only calculate statistics every 3 days and store it in DB
- Add new command
import_from_etip - Move version number to tooltip to gain space in navbar
- Fix a couple of bugs to allow adding additional languages
- Add Spanish translation 🇪🇸
- Fix issue with API not called when pasting Gplay URL in new analysis form
- Remove check existing report API call until issue #317 is fixed
- Allow customization of UI
- Fix link for Prism break in English
- Docker: Allow customization of gplaycli.conf
- Docker: Patch variable docId to docid in gplaycli.py
- API: Added certificate details in GET /api/report/<report_id>
- Add trackers & permissions in search results
- Remove old CSS rules for printed reports
- Prevent wrapped spaces in navbar
- Improve rendering of "Read the article" buttons
- Add delay to avoid hitting too much the API when searching
- Use TrigramSimilarity to search for applications
- Refacto and improve logs of refresh trackers function
- Requires auth on API endpoint /search/
- Upgrade to Django 2.2
- Only display spinner if apk file loaded
- Fail properly for apps with too long version or name
- Only submit analysis if an application handle is given
- Create deprecated note for Vagrant install
- Set auto cleanup time to 24h instead of 1h
- Add Celery beat for scheduling periodic tasks
- Allow the user to upload an APK
- Add dedicated task to cleanup analysis requests
- Add dedicated task to recompute all reports
- Trigger reports update after trackers update
- Add LGTM code analysis
- Change delete report link to button
- Remove unused code related to DNS & HTTP
- Update and clean requirements
- Enforce API key verification (#276)
- Merge API tests
- Fix conficts and import in API tests
- Add a button to delete a report from its page (#280)
- Add details & colors to analysis list
- Limit analysis list to only first 200
- Fix missing semi-colon in CSS
- Extend box-shadow in search boxe, include helper
- Add permissions to API endpoint /search/handle/details
- Refacto tests for trackers module
- Remove F-droid link on EP logo
- Add alt tags for images
- Missing update for switching to new Celery version
- Return exact handle match - if it exists - on home page
- Bump pillow from 5.0.0 to 6.2.0
- Bump versions of exodus-core, gplaycli, gpapi & protobuf
- Set back tooltip on permission name
- Switch to new Celery version
- Docker Python 3.5-stretch to 3.7-buster
- Remove overwritten Celery setting
- New icons for language selector, contact & alternatives
- Update travis CI to use python 3.7
- Bump ruamel.yaml to 0.16.5
- Fix bug with paginator and unordered list (#261)
- Link to sections on report page
- Revert ordering for reports list in tracker page
- Truncate long permission name only on mobile
- Enable PGSQL trigram extension during docker startup
- Remove tooltips with permission details in report page
- UI tweaks: margins & labels
- New theme for exodus
- Improve dockerfile dependencies management
- Add hadolint linter and docker build test
- Added filter to show only reports of latest application version #226 (#248)
- Update count with application count in tracker page (#254)
- Change tracker labels & update French translation
- Refacto paginator & translate to French
- Fix bug with number of 'no trackers' reports
- First version of the page about Exodus Privacy
- First version of new analysis page
- Clean translation files
- Added message about mobile site
- "Let's go" buttons width made same on Homepage (#238)
- Remove search module (merge into exodus main module)
- Add endpoint for latest app icon
- Remove applications page (#243)
- Ignore missing cache file during apk download
- Minor UI tweaks after review of new pages
- Fix broken translations
- Fix broken translation for "Recognized trackers"
- Fix link and label on the home page link to "better understand"
- Add understand page template
- Add new pages about trackers, permissions and what's next
- Only look for exact app handle instead of similar one
- Add favicon
- Use trigram similarity to improve application search
- Add page to display latest report and add link in search results
- New UI for the report page
- New trackers_list page to fit with new theme
- New tracker detailed page
- Make titles of different pages uniform
- Add AOSP permissions details in french language
- Fix rendering bug with search button on home page
- Fix for responsive tables not taking 100% width in bootstrap 4
- Feat/api add report update timestamp (#205)
- Upgrade jQuery to 3.4.1 & handlebars to 4.2.0
- Add rel="noreferrer" to external links
- Fix HTML & JS indentation
- Add new svg images for exodus v2
- Add new home page with EP logo and exodus description
- Add extra links and text on home page + extra tweaks
- Make UI of different pages uniform & take review comments into account
- Change default per_page settings for paginator to 25
- Put signature at the bottom of report page and improve responsiveness
- Flake8 compliance-ish for exodus scripts
- Add flake8 linter stage to TravisCI
- Fix bug with sorting trackers in stats
- Take CSS suggestions from mmuman for printing reports
- More robust download apk function
- Fixed HTML indentation in base.html
- Upgrading to Bootstrap 4.3.1 and removing unused JS files
- New version of navbar using links instead of buttons
- Add last CSS tweaks for new navbar
- feat(admin): add logout on dropdown menu
- Add rounded corner icon on report & search page (#181)
- Fix issue with malformed report on admin page
- Remove Trollius and upgrade pyshark to 0.4.2.4
- Move tracker stats to trackers/stats && optimize stats calculation
- Added tests for tracker stats page
- Add travis CI with django tests
- Add Travis badge to README
- [Docker] replace deprecated MAINTAINER (#177)
- Update to exodus-core 1.0.19
- Reorganized README and FAQ
- Improve Docker-compose (#58)
- Optimization of static analysis
- Add missing migrations
- Set back to filter by creation_date instead of version code
- Fix most PEP8 compliance issues
- Display only the latest report on the submission page
- Fix display glitch on submission page
- Fix badge size bug with 100+ permissions/trackers
- Reorganize reports list page
- Remove dropdowns for reports & applications in nav bar
- Update to exodus-core 1.0.18
- Fix vulnerabilities in pyyaml & mistune
- Migrate to exodus-core 1.0.17
- Update refreshapkcertificates to refresh UAID (#61)
- Add additionnal try/catch to avoid malformed reports bug
- Add search and filter fields for trackers in Admin page
- Add dexdump
- Fix missing application save
- Change APK version display
- Rename APK signature to APK fingerprint
- Add importtrackers command allowing to retrieve the trackers definitions from the official εxodus platform
- Thread pool has been fixed in Minio helper
- Handle X509 parsing error
- Open analysis \o/
- Add translation possibility
- Fix icon perceptual hash
- Fix bad regex on search endpoint
- Migrate to exodus-core 1.0.16
- Add a 4 minutes timeout on APK download
- Handle fingerprinting errors
- Tell only free applications are supported
- Add UTF-8 decoding for trackers import
- Paginator for the reports apps list, apps list in trackers detail
- Migrate to Gplaycli 3.21
- Add list of all applications endpoint
- Security: Only staff users can access the APK
- Add compact reports details API endpoint
- Add docker-compose, Dockerfile for dev environment
- Add application count
- Add script to refresh the missing apk certificates
- Update to latest Django 1.11.X
- Adding special and dangerous permissions count
- Implement REST API providing reports
- Add Exodus Privacy menu
- List existing reports before submission
- Fix memory leak in static analysis process
- Add pagination in report_list
- Fix list of reports on analysis submission form
- Make reports list responsive
- Application search engine
- Add tracker list API endpoint
- Get APK version code
- Add settings template
- Hide list of domains in statistics page
- More explicit disclaimer about static analysis
- Add a REST API for Android application
- Improve documentation
- Sort permissions in alphanumeric order or name
- Implement static analysis v2
- Display how many applications include each tracker in statistic page
- Add "number of tracker" badge
- List reports for each tracker
- First version of εxodus