From 445f7c62e15e9e0b0049d5dcf694824b42ddceec Mon Sep 17 00:00:00 2001 From: Pawel Kleczkowski Date: Sun, 31 May 2020 00:03:24 +0200 Subject: [PATCH 1/6] Updated documentation of version 4.1.0 --- README.md | 110 ++++++++++++++++++++++++++++++++++---------- doc/images/logo.png | Bin 0 -> 14455 bytes 2 files changed, 86 insertions(+), 24 deletions(-) create mode 100644 doc/images/logo.png diff --git a/README.md b/README.md index ba52b7db..d7f84221 100644 --- a/README.md +++ b/README.md @@ -1,34 +1,96 @@ -# ProteGO Safe +# ProteGO Safe iOS App -![ProteGO Safe logo](https://github.com/SafeSafe-app/ios/blob/feature/PSAFE-579/ghImages/logo.png) +![Logo](./doc/images/logo.png "ProteGO Safe") -ProteGO Safe is a publicly open reference implementation of OpenTrace. +## Project overview -To get more information about OpenTrace itself, please visit this [repository](https://github.com/opentrace-community/opentrace-ios). +This is an iOS application for [ProteGO Safe project](https://github.com/ProteGO-Safe/specs) and it implements two main features: +* User daily triage +* Contact tracing - module that is fully based on [Exposure Notification API](https://developer.apple.com/documentation/exposurenotification) provided by Google and Apple and it's goal is to inform people of potential exposure to COVID-19. +Application is structured based MVVM-C pattern, where presentation (UI) layer is almost fully realized with a single UIViewController with a WKWebView that loads a website application called 'PWA' (Progressive Web App). PWA is responsible for GUI, user interaction and 'User daily triage' feature. Website app interacts with native code through the JavaScript bridge. + + +## Project modules + +- App - contains classes related to app's life cycle +- Common - contains app's extensions, helpers etc. +- Components/PWA - module containing classes responsible for managing PWA's logic +- DependencyContainer - contains DI implementation, including factories for PWA and app's services +- Networking - implementation of app's networking logic, based on [Moya](https://github.com/Moya/Moya) framework +- Resources - module containing app's assets, entitlements and configuration files +- Services - module containing majority of apps business logic. Services are described in more detail in [services overview](#services-overview) section + + +## Services overview + +* [AppManager](safesafe/Services/AppManager.swift) - service which holds info about app's first launch +* [ConfigManager](safesafe/Services/ConfigManager.swift) - service that provides a proper configuration based on currently used environment (Dev/Stage/Live) +* [DeviceCheckService](safesafe/Services/DeviceCheckService.swift) - service responsible for providing a valid verification payload for uploaded TEKs +* [KeychainService](safesafe/Services/KeychainService.swift) - service responsible for managing Keychain related activities +* [NotificationManager](safesafe/Services/NotificationManager.swift) - service responsible for managing push notification related activities +* [StoredDefaults](safesafe/Services/StoredDefaults.swift) - service managing logic related to UserDefaults +* [ServiceStatusManager](safesafe/Services/AppStatus/ServiceStatusManager.swift) - service that gathers data about statuses of permissions and states of Notifications and Exposure Notification services +* [BackgroundTasksService](safesafe/Services/ExposureNotification/BackgroundTasksService.swift) - service which is responsible for scheduling backround tasks in the app. Each background task is meant to perform an exposure detection, based on periodically downloaded TEKs +* [DiagnosisKeysDownloadService](safesafe/Services/ExposureNotification/DiagnosisKeysDownloadService.swift) - service responsible for downloading TEKs from the server +* [DiagnosisKeysUploadService](safesafe/Services/ExposureNotification/DiagnosisKeysUploadService.swift) - service responsible for uploading TEKs to the server +* [ExposureService](safesafe/Services/ExposureNotification/ExposureService.swift) - service responsible for implementing exposure detection part of Exposure Notification API +* [ExposureSummaryService](safesafe/Services/ExposureNotification/ExposureSummaryService.swift) - service responsible for providing information about potential exposure risk + + +## Environments + +Application has 3 different environments: Dev, Stage and Live. + +Each environment has different configuration files - they are respectively divided in `safesafe/Resources` directory. +Each environment uses: +- \[env\].entitlements file +- Config-\[env\].plist file, which contains appropriate PWA links and (legacy) BlueTrace configurations +- \[env\].xcconfig and \[env\]Dist.xcconfig Xcode config files +- GoogleService-Info-\[env\].plist files (those names are modified in one of build scripts, so that for compilation phase file's name is changed to `GoogleService-Info.plist`) + +There are two build configurations for each environment: debug and release + + +## Initial setup -### Initial setup Make sure you have [CocoaPods](https://cocoapods.org) and [XcodeGen](https://github.com/yonaskolb/XcodeGen) already installed. To setup the project, proceed with following steps: 1. Open terminal and go to project's directory -2. Run `git submodule update --init --recursive` to fetch OpenTrace repo 3. Run `xcodegen generate` to generate .xcodeproj file -4. Run `pod install` to install necessary dependencies - -### Configuration -As app relies on OpenTrace implementation, there's a need for some Firebase functions setup. For more details, please visit [OpenTrace cloud functions repository](https://github.com/opentrace-community/opentrace-cloud-functions). - -- After setting up Firebase project, you need to put proper `GoogleService-Info.plist` files in respective directories. -``` -|-- /safesafe - |-- /Resources - |-- /Dev - |-- GoogleService-Info.plist - |-- /Live - |-- GoogleService-Info.plist - |-- /Stage - |-- GoogleService-Info.plist -``` - -- You can find a `Config-live.plist` file under `safesafe/Resources`. It has necessary information for Bluetrace and PWA setup. For security reasons, there's only a `Live` configuration available publicly. +4. Run `pod install` to install necessary dependencies and generate .xcworkspace file + +For convenience, there's a `rebuild.sh` script which performs actions mentioned above. Aditionally, it let's you select Xcode that you want to use to open the project (if you have multiple Xcode versions on your machine). +To launch it, type `sh rebuild.sh` in your console. + +## ChangeLog + + +**4.1.0** + +- Exposure Notification API added +- OpenTrace module fully removed together with all collected data + + +**3.0.2** + +- Manage project settings with yml config files - XcodeGen added +- Debug console added for Stage and Dev configs +- Moved anonymous signIn to Firebase on app start +- Added custom Config.plist for every xcode configuration +- Disabled app idle timer +- Pass notification payload to webkit UI +- Fix for refreshing BlueTrace Temp ID +- Fix for deleting data from device +- Add GPL LICENSE file + + +**3.0.1** + +- Added OpenTrace module for collecting BLE contacts + + +**2.0.1** + +- Basic version with PWA, and notifications \ No newline at end of file diff --git a/doc/images/logo.png b/doc/images/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..a8f6c65c1ea1a1e791cfbd974f1f45d889423350 GIT binary patch literal 14455 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 T(LxAOwgIRpXv$YUF%SAbU^5Jv literal 0 HcmV?d00001 From 1844f0037d997d0d8082ed6a36d2bf99a526d3c5 Mon Sep 17 00:00:00 2001 From: i'm kamil Date: Tue, 2 Jun 2020 12:04:55 +0200 Subject: [PATCH 2/6] contrib docs v4 --- .github/CODE_OF_CONDUCT.md | 131 +++++++++++++++++++++++++++++++++- .github/CODE_OF_CONDUCT_en.md | 124 ++++++++++++++++++++++++++++++++ .github/CONTRIBUTING.md | 27 ++++--- .github/CONTRIBUTING_en.md | 9 +++ .github/SECURITY.md | 4 +- .github/SUPPORT.md | 1 + CONTRIBUTORS.md | 51 +++++++------ 7 files changed, 312 insertions(+), 35 deletions(-) create mode 100644 .github/CODE_OF_CONDUCT_en.md create mode 100644 .github/CONTRIBUTING_en.md diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md index e0613720..4bfcb68c 100644 --- a/.github/CODE_OF_CONDUCT.md +++ b/.github/CODE_OF_CONDUCT.md @@ -1,5 +1,130 @@ -## Code of Conduct +# Kodeks Postępowania +## Nasza Deklaracja -This Code of Conduct is adapted from the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md). +W celu wspierania otwartego i przyjaznego środowiska, my — jako współtwórcy, +kontrybutorzy i opiekunowie — zobowiązujemy się dopilnować, aby uczestnictwo +oraz przynależność do naszej społeczności były pozbawione dyskryminacji bez +względu na fizyczność, doświadczenie, kolor skóry, narodowość, niepełnosprawność, +orientację i identyfikację seksualną, pochodzenie etniczne, poglądy polityczne, +religię, wiek czy wygląd zewnętrzny. + +Zobowiązujemy się działać i reagować w sposób, który promuje otwartą, przyjazną, +różnorodną i zdrową społeczność. + +## Nasze Standardy + +Wśród przykładów zachowania, które przyczyniają się do tworzenia pozytywnego +środowiska dla społeczności, są: + +* Wykazywanie empatii wobec innych członków społeczności +* Okazywanie szacunku dla różnych punktów widzenia i osobistych doświadczeń +* Przyjmowanie konstruktywnej krytyki z wdzięcznością +* Przyjmowanie odpowiedzialności za nasze błędy, wyciąganie wniosków z ich + doświadczenia oraz wyrażanie współczucia tym, których dotknęły +* Skupianie się na tym, co dobre dla całej społeczności, a nie jednostki + społecznej + +Wśród przykładów zachowania, którego nie będziemy akceptować, są: + +* Używanie języka i grafik o podtekście seksualnym, okazywanie niepożądanego + zainteresowania seksualnego, a także zaloty +* Trollowanie, obraźliwe bądź urągające komentarze oraz ataki osobiste + bądź polityczne +* Nękanie, zarówno na forum publicznym jak i prywatne +* Publikowanie danych osobistych innych osób — takich jak adres fizyczny + czy elektroniczny — bez ich wyraźnej zgody +* Naruszenie jakichkolwiek praw lub wolności innych osób, w tym w szczególności + naruszanie prawa powszechnie obowiązującego +* Inne zachowania, które mogłyby zostać uznane za nieodpowiednie w kontekście + profesjonalnym + +## Nasza Odpowiedzialność + +Opiekunowie społeczności są odpowiedzialni za objaśnianie i egzekwowanie +standardów akceptowalnego zachowania i reagowanie na wszelkie przypadki +nieodpowiedniego zachowania, w sposób sprawiedliwy i adekwatny do sytuacji. + +Opiekunowie społeczności mają prawo do i są odpowiedzialni za usuwanie, +edycję oraz odrzucanie komentarzy, zmian w kodzie (ang. commit), edycji Wiki, +oraz innych treści, które łamią niniejszy Kodeks Postępowania, oraz mają prawo +tymczasowo lub na stałe zablokować dostęp do projektu każdemu ze współpracowników: +w przypadku gróźb bądź obraźliwych komentarzy pod adresem innych współpracowników, +a także innych zachowań, które uznają za nieodpowiednie lub szkodliwe. + +## Zakres działania + +Ten Kodeks Postępowania ma zastosowanie wewnątrz społeczności, a w przypadku +reprezentowania społeczności przez współpracownika — także na zewnątrz projektu. +Do przykładów reprezentowania społeczności zalicza się używanie oficjalnego adresu +e-mail, publikowanie na oficjalnym koncie w mediach społecznościowych lub branie +udziału w wydarzeniu (zarówno w Internecie, jak i poza nim) jako oficjalny +przedstawiciel społeczności. + +## Egzekwowanie + +Przypadki nękania, gróźb oraz innych form nieakceptowalnego zachowania mogą być +zgłaszane do opiekunów społeczności pod adresem +[protego@safesafe.app](mailto:protego@safesafe.app). +Wszystkie skargi zostaną odpowiednio rozpatrzone oraz podjęte zostaną działania +uznane za konieczne i odpowiednie do sytuacji. + +Wszyscy opiekunowie społeczności mają obowiązek zachowania tożsamości osoby +zgłaszającej incydent w tajemnicy. + +## Wytyczne dotyczące Egzekwowania + +W rozstrzyganiu konsekwencji wszelkich czynów, które łamią niniejszy +Kodeks Postępowania, my — jako współtwórcy, kontrybutorzy i opiekunowie +— zobowiązujemy się przestrzegąć tych Wytycznych Wpływu na Społeczność: + +### 1. Korekcja + +__Wpływ na Społeczność__: Używanie nieprzyjaznego języka lub innych form wypowiedzi +uważanych za nieetyczne i nieprzyjazne dla społeczności. + +__Konsekwencje__: Bezpośrednie, pisemne ostrzeżenie od opiekunów społeczności, +klasyfikujące naturę wykroczenia oraz objaśnienie dlaczego takie zachowanie +jest niestosowne. Może wystąpić prośba o publiczne przeprosiny. + +### 2. Ostrzeżenie + +__Wpływ na Społeczność__: Wykroczenie spowodowane jednym incydentem lub serią zdarzeń. + +__Konsekwencje__: Ostrzeżenie o konsekwencjach w przypadku kontynuowania niepoprawnego +zachowania. Brak interakcji z zaangażowanymi osobami, wliczając w to dobrowolną +interakcję z osobami odpowiedzialnymi za Egzekwowanie Kodeksu Postępowania przez +określony okres czasu. Wliczono również unikanie interakcji w przestrzeniach +społecznościowych jak i kanałach zewnętrznych jak media społecznościowe. +Łamanie tych zasad może prowadzić do Tymczasowej lub Permanentnej Blokady. + +### 3. Tymczasowa Blokada + +__Wpływ na Społeczność__: Poważne łamanie standardów społeczności, wliczając w to +powtarzające się niewłaściwe zachowanie. + +__Konsekwencje__: Tymczasowa blokada we wszelkich metodach interakcji i komunikacji +publicznej ze społecznością przez określony okres czasu. W tym okresie czasu +niedozwolona jest żadna forma publicznej i prywatnej interakcji z zaangażowanymi +osobami, wliczając w to dobrowolną interakcję z osobami odpowiedzialnymi +za Egzekwowanie Kodeksu Postępowania. Łamanie tych zasad może prowadzić +do Permanentnej Blokady. + +### 4. Permanentna Blokada + +__Wpływ na Społeczność__: Demonstrowanie szeregu zachowań łamiących standardy +społeczności, wliczając w to powtarzające się niewłaściwe zachowanie, nękanie +lub dyskredytacja jednostki lub grup społecznych, a także jakiekolwiek naruszenie +prawa powszechnie obowiązującego. + +__Konsekwencje__: Permanentna blokada we wszelkich metodach interakcji i komunikacji +publicznej ze społecznością. + +## Autorstwo + +Ten Kodeks Postępowania został zaadaptowany z Contributor Covenant w wersji 2.0, +dostępnej pod adresem https://www.contributor-covenant.org/version/2/0/code_of_conduct.html +(w języku angielskim). + +Wytyczne Wpływu na Społeczność są inspirowane: +[Drabiną Egzekucyjną Fundacji Mozilla](https://github.com/mozilla/diversity). -Instances of abusive, harassing, or otherwise unacceptable behavior across GitHub [ProteGO Safe](https://github.com/ProteGO-Safe) organization may be reported by contacting the ProteGO-Safe Code of Conduct Committee via community@safesafe.app. For other projects, please contact apropriate project maintainer or our mediator - Mateusz Romanów mr@safesafe.app. diff --git a/.github/CODE_OF_CONDUCT_en.md b/.github/CODE_OF_CONDUCT_en.md new file mode 100644 index 00000000..384f47bb --- /dev/null +++ b/.github/CODE_OF_CONDUCT_en.md @@ -0,0 +1,124 @@ +# Code of Conduct + +## Our Pledge + +We as members, contributors, and leaders pledge to make participation in our +community a harassment-free experience for everyone, regardless of age, body +size, visible or invisible disability, ethnicity, sex characteristics, gender +identity and expression, level of experience, education, socio-economic status, +nationality, personal appearance, race, religion, or sexual identity +and orientation. + +We pledge to act and interact in ways that contribute to an open, welcoming, +diverse, inclusive, and healthy community. + +## Our Standards + +Examples of behavior that contributes to a positive environment for our +community include: + +* Demonstrating empathy and kindness toward other people +* Being respectful of differing opinions, viewpoints, and experiences +* Giving and gracefully accepting constructive feedback +* Accepting responsibility and apologizing to those affected by our mistakes, + and learning from the experience +* Focusing on what is best not just for us as individuals, but for the + overall community + +Examples of unacceptable behavior include: + +* The use of sexualized language or imagery, and sexual attention or + advances of any kind +* Trolling, insulting or derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or email + address, without their explicit permission +* Voilating any rights of other people in terms of generally applicable laws +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +## Enforcement Responsibilities + +Community leaders are responsible for clarifying and enforcing our standards of +acceptable behavior and will take appropriate and fair corrective action in +response to any behavior that they deem inappropriate, threatening, offensive, +or harmful. + +Community leaders have the right and responsibility to remove, edit, or reject +comments, commits, code, wiki edits, issues, and other contributions that are +not aligned to this Code of Conduct, and will communicate reasons for moderation +decisions when appropriate. + +## Scope + +This Code of Conduct applies within all community spaces, and also applies when +an individual is officially representing the community in public spaces. +Examples of representing our community include using an official e-mail address, +posting via an official social media account, or acting as an appointed +representative at an online or offline event. + +## Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported to the community leaders responsible for enforcement at +[protego@safesafe.app](mailto:protego@safesafe.app). +All complaints will be reviewed and investigated promptly and fairly. + +All community leaders are obligated to respect the privacy and security of the +reporter of any incident. + +## Enforcement Guidelines + +Community leaders will follow these Community Impact Guidelines in determining +the consequences for any action they deem in violation of this Code of Conduct: + +### 1. Correction + +__Community Impact__: Use of inappropriate language or other behavior deemed +unprofessional or unwelcome in the community. + +__Consequence__: A private, written warning from community leaders, providing +clarity around the nature of the violation and an explanation of why the +behavior was inappropriate. A public apology may be requested. + +### 2. Warning + +__Community Impact__: A violation through a single incident or series +of actions. + +__Consequence__: A warning with consequences for continued behavior. No +interaction with the people involved, including unsolicited interaction with +those enforcing the Code of Conduct, for a specified period of time. This +includes avoiding interactions in community spaces as well as external channels +like social media. Violating these terms may lead to a temporary or +permanent ban. + +### 3. Temporary Ban + +__Community Impact__: A serious violation of community standards, including +sustained inappropriate behavior. + +__Consequence__: A temporary ban from any sort of interaction or public +communication with the community for a specified period of time. No public or +private interaction with the people involved, including unsolicited interaction +with those enforcing the Code of Conduct, is allowed during this period. +Violating these terms may lead to a permanent ban. + +### 4. Permanent Ban + +__Community Impact__: Demonstrating a pattern of violation of community +standards, including sustained inappropriate behavior, harassment of an +individual, or aggression toward or disparagement of classes of individuals, +as well as voilating generally applicable law. + +__Consequence__: A permanent ban from any sort of public interaction within +the community. + +## Attribution + +This Code of Conduct is adapted from the Contributor Covenant, +version 2.0, available at +https://www.contributor-covenant.org/version/2/0/code_of_conduct.html. + +Community Impact Guidelines were inspired by [Mozilla's code of conduct +enforcement ladder](https://github.com/mozilla/diversity). diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index df455b46..bed9a831 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -1,9 +1,18 @@ -## Contributing -Our guidelines are mostly located around [.github](/.github/) directory of the project. - -### ToC for contributors -- [Code of Conduct](CODE_OF_CONDUCT.md) -- [Issues & Support](SUPPORT.md) -- [License](/LICENSE) -- [Security](SECURITY.md) -- [Pull request](PULL_REQUEST_TEMPLATE/README.md) +# Współpraca nad projektem + +Zapraszamy wszystkich do współpracy nad projektem: + +1. [Zasady ogólne.](.github/CODE_OF_CONDUCT.md) +2. [Chcę zgłosić pomysł dotyczący aplikacji.](.github/SUPPORT.md) +3. [Chcę zgłosić błąd dotyczący bezpieczeństwa.](.github/SECURITY.md) +4. [Programuję, jak mogę pomóc?](#Programuję-jak-mogę-pomóc) + +## Programuję, jak mogę pomóc? + +Jest mnóstwo sposobów w jaki możesz nam pomóc: +* Rób razem z nami audyt kodu. +* Dodawaj swoje `Pull Request`y. +* Przeglądaj istniejące `Pull Request`y. +* Pomagaj innym użytkownikom. +Komunikuj się z nami przez GitHub i Stackoverflow. +Więcej informacji w temacie komunikacji znajdziesz [tutaj](.github/SUPPORT.md) diff --git a/.github/CONTRIBUTING_en.md b/.github/CONTRIBUTING_en.md new file mode 100644 index 00000000..df455b46 --- /dev/null +++ b/.github/CONTRIBUTING_en.md @@ -0,0 +1,9 @@ +## Contributing +Our guidelines are mostly located around [.github](/.github/) directory of the project. + +### ToC for contributors +- [Code of Conduct](CODE_OF_CONDUCT.md) +- [Issues & Support](SUPPORT.md) +- [License](/LICENSE) +- [Security](SECURITY.md) +- [Pull request](PULL_REQUEST_TEMPLATE/README.md) diff --git a/.github/SECURITY.md b/.github/SECURITY.md index 4c0115de..f1d92397 100644 --- a/.github/SECURITY.md +++ b/.github/SECURITY.md @@ -4,9 +4,9 @@ | Version | Supported | | ------- | ------------------ | -| 3.0.x | :white_check_mark: | +| 4.1.x | :white_check_mark: | +| 3.0.1 | :white_check_mark: | | 2.0.X | :white_check_mark: | -| 1.x.x | :white_check_mark: | This document outlines Security Procedures and General Policies for this Project. diff --git a/.github/SUPPORT.md b/.github/SUPPORT.md index 11da362e..69a8116b 100644 --- a/.github/SUPPORT.md +++ b/.github/SUPPORT.md @@ -1,6 +1,7 @@ ## Issues - Features, Bugs and Security: Please create new Issues in apropriate repository only using the correct issue template type: +- [Pull Requests](PULL_REQUEST_TEMPLATE/README.md) - [Features](ISSUE_TEMPLATE/feature_request.md) - [Bugs](ISSUE_TEMPLATE/bug_report.md) - [Security](SECURITY.md) diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 3d0ca426..ce4a7a7f 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -1,23 +1,32 @@ ## Lista osób które podpisały [oświadczenie o udzieleniu licencji](CONTRIBUTING.md#Oświadczenie-o-udzieleniu-licencji) i wprowadziły zmiany w projekcie: -Imię i nazwisko | GitHub ID | Komponenty ----------------------- | --------------------------------------------------- | ----------------------------- -Jakub Lipiński | [jakublipinski](https://github.com/jakublipinski) | backend, specs -Adam Dobrawy | [ad-m](https://github.com/ad-m) | specs -Piotr Kalinowski | [optimusbits](https://github.com/optimusbits) | iOS -Oskar Hinc | [oskarhinc](https://github.com/oskarhinc) | specs -Maciej Janusz | [maciekjanusz](https://github.com/maciekjanusz) | android -Tobiasz Olejnik | [tobiaszolejnik](https://github.com/tobiaszolejnik) | android -Błażej Biesiada | [bejo](https://github.com/bejo) | iOS -Piotr Szczepaniak | [D0han](https://github.com/D0han) | backend -Mikołaj Lewandowski | [mikolevy](https://github.com/mikolevy) | specs -Bartosz Paszcza | [bpaszcza](https://github.com/bpaszcza) | specs -Wojciech Dziwulski | [wojdziw](https://github.com/wojdziw) | specs -Wojciech Szkutnik | [wojtekszkutnik](https://github.com/wojtekszkutnik) | specs -Szymon Teżewski | [jasisz](https://github.com/jasisz) | backend, specs -Michał Kuchtar | [michalkuchtar](https://github.com/michalkuchtar) | android -Tomasz Heimowski | [theimowski](https://github.com/theimowski) | android -Adam Kozłowski | [vetin4ri](https://github.com/vetin4ri) | backend -Jarosław Smiejczak | [jotes](https://github.com/jotes) | backend -Paweł Kleczkowski | [pkleczko](https://github.com/pkleczko) | android -Kamil Pawlak | [qLb](https://github.com/qLb) | specs +Imię i nazwisko | GitHub ID | Komponenty +---------------------- | ----------------------------------------------------------| ----------------------------- +Jakub Lipiński | [jakublipinski](https://github.com/jakublipinski) | backend, specs +Adam Dobrawy | [ad-m](https://github.com/ad-m) | specs +Piotr Kalinowski | [optimusbits](https://github.com/optimusbits) | ios +Oskar Hinc | [oskarhinc](https://github.com/oskarhinc) | specs +Maciej Janusz | [maciekjanusz](https://github.com/maciekjanusz) | android +Tobiasz Olejnik | [tobiaszolejnik](https://github.com/tobiaszolejnik) | android +Błażej Biesiada | [bejo](https://github.com/bejo) | ios +Mikołaj Lewandowski | [mikolevy](https://github.com/mikolevy) | specs +Bartosz Paszcza | [bpaszcza](https://github.com/bpaszcza) | specs +Wojciech Dziwulski | [wojdziw](https://github.com/wojdziw) | specs +Wojciech Szkutnik | [wojtekszkutnik](https://github.com/wojtekszkutnik) | specs +Michał Kuchtar | [michalkuchtar](https://github.com/michalkuchtar) | android +Tomasz Heimowski | [theimowski](https://github.com/theimowski) | android +Adam Kozłowski | [vetin4ri](https://github.com/vetin4ri) | backend +Jarosław Smiejczak | [jotes](https://github.com/jotes) | backend +Paweł Kleczkowski | [pkleczko](https://github.com/pkleczko) | android +Kamil Pawlak | [qLb](https://github.com/qLb) | specs,backend +Artur Słomowski | [tarvald](https://github.com/tarvald) | specs,backend +Łukasz Dąbrzalski | [lukaszdabrzalski](https://github.com/lukaszdabrzalski) | web +Rafał Małczyński | [RMalczynski](https://github.com/RMalczynski) | ios +Łukasz Szyszkowski | [lukasz-szyszkowski](https://github.com/RMalczynski) | ios +Wojciech Nasiłowski | [wnasilowski](https://github.com/wnasilowski) | android +Tomasz Molenda | [TomaszMolenda](https://github.com/TomaszMolenda) | web +Jakub Rękas | [jakubrekas1](https://github.com/jakubrekas1) | web +Mateusz Andruszko | [mateuszandruszko](https://github.com/mateuszandruszko) | web +Michał Poteralski | [MikeSPtr](https://github.com/MikeSPtr) | android +Oleksandr Katrych | [OKatrych](https://github.com/OKatrych) | android +Wojciech Brydak | [wbrydak](https://github.com/wbrydak) | specs From ee355e6bd71be3112dc54c8e0bfab645b1673781 Mon Sep 17 00:00:00 2001 From: i'm kamil Date: Tue, 2 Jun 2020 12:09:02 +0200 Subject: [PATCH 3/6] Update CONTRIBUTORS.md --- CONTRIBUTORS.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index ce4a7a7f..79d8b476 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -29,4 +29,4 @@ Jakub Rękas | [jakubrekas1](https://github.com/jakubrekas1) Mateusz Andruszko | [mateuszandruszko](https://github.com/mateuszandruszko) | web Michał Poteralski | [MikeSPtr](https://github.com/MikeSPtr) | android Oleksandr Katrych | [OKatrych](https://github.com/OKatrych) | android -Wojciech Brydak | [wbrydak](https://github.com/wbrydak) | specs +Wojciech Brydak | [wbrydak](https://github.com/wbrydak) | specs From 3d1b745b9d876b7e354ee07f14182c1e3b05016e Mon Sep 17 00:00:00 2001 From: i'm kamil Date: Tue, 20 Oct 2020 01:33:45 +0200 Subject: [PATCH 4/6] Update CONTRIBUTORS.md --- CONTRIBUTORS.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index a8270162..09f260de 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md @@ -31,3 +31,5 @@ | Oleksandr Katrych | [OKatrych](https://github.com/OKatrych) | android | | Wojciech Brydak | [wbrydak](https://github.com/wbrydak) | specs | | Damian Klimas | [D4mK](https://github.com/D4mK) | specs, legal | +| Kamil Gałuszka | [galuszkak](https://github.com/galuszkak) | android, web | +| Piotr Konieczny | [piotr-cz](https://github.com/piotr-cz) | web | From b18f1f1940de8c6f7198d07cac7a583c558c23c1 Mon Sep 17 00:00:00 2001 From: i'm kamil Date: Fri, 30 Oct 2020 13:20:04 +0100 Subject: [PATCH 5/6] Update README.md --- README.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.md b/README.md index ad964a61..ec9bd2e1 100644 --- a/README.md +++ b/README.md @@ -75,6 +75,12 @@ To launch it, type `sh rebuild.sh` in your console. ## ChangeLog +**4.7.0** +- Omit package analysis on very first app run +- Added ability for sign-in for covid-19 test +- Added js contract for high risk and covid-19 test +- Added simulate exposure risk to debug panel + **4.6.0** - Added restricted districts feature - Added subscribing for notification for restricted districts From 6a0d42dd02d478117175ba389e885303a19e3991 Mon Sep 17 00:00:00 2001 From: lukasz szyszkowski Date: Thu, 12 Nov 2020 16:11:30 +0100 Subject: [PATCH 6/6] [] Changelog update --- CHANGELOG.md | 4 ++++ README.md | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7b50bf5b..05a9013d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/). +## 4.7.1 +- Bump iOS version availability for some log methods +- Clear exposure risk info on demand + ## 4.7.0 - Omit package analysis on very first app run - Added ability for sign-in for covid-19 test diff --git a/README.md b/README.md index ec9bd2e1..f715ba4e 100644 --- a/README.md +++ b/README.md @@ -75,6 +75,10 @@ To launch it, type `sh rebuild.sh` in your console. ## ChangeLog +**4.7.1** +- Bump iOS version availability for some log methods +- Clear exposure risk info on demand + **4.7.0** - Omit package analysis on very first app run - Added ability for sign-in for covid-19 test