Skip to content

Commit

Permalink
Preparation for release 0.1.0 (#236)
Browse files Browse the repository at this point in the history
* Added publish script

* WebRTC first tests

* Improve expected value

* Added badges for CI and version

* Change badge version

* Draft with okHttp

* Socket with okhttp plus previous work on networking

Co-authored-by: Varun Khare  [email protected]

* Address review comments

* Addressed comments

* Fixing style guidelines (#25)

* added project style file

* reformat code

* Added roadmap objectives from openmined (#27)

* Check validity of protocol and timeout (#26)

* Check validity of protocol and timeout

* Added test. Addressed comments

* Changes with style

* Refactor using protocol and injecting signalling client

* Fix Bintray badge link (#38)

* Auto versioning with nebula (#22)

* Add dependency on PySyft protobuf classes (#45)

* refactoring strings from json data, setting up Job and syft API (#41)

* refactoring strings from json requests, setting up Job API

* add response handler and new API types

* added deserialization for API endpoints

* Kotlin serialization is love. Everything removed with polymorphic deserialization

* reformat code

* polymorphic serialization only for report. Implemented custom deserialization for the rest

* added unit tests

* Ci action build check (#48)

* Create android.yml

* added deploy script

* updated CI badge

Co-authored-by: Jose A. Corbacho <[email protected]>

* Update github action to fire on pull request (#52)

* extracted dependency version to a separate file (#49)

* extracted library version to a separate file

* applied requested changes

* applied requested changes

* Minor typo changes (#55)

* Http client for downloading files, pygrid requests (#51)

* scaffolding basic job scheduling

* job worker API implemented

* Added http client. Refactored common api usage

* Made socket client and http client uniform in usage

* WIP downloader

* added file saver

* rebase with dev

* updated standalone-demo

* added throwable for jobs and other minor changes

* added subscriber class for jobs,addressed comments

* code clean up

* updated federated learning network API (#60)

* updated federated learning network API

* added status field in authentication

* fixed bug data serialization

* added client config module

* remove version field

* no version in cycle response from pygrid

* Protobuf infrastructure (#54)

* Merge from upstream

* Unbuffer plan operations

* Deserialise script module

* Remove not-need lib

* Wee refactor

* Remove rogue activity. It's not the time yet

* Restore deleted files

* Wire up MNIST

* Added vm

* Remove long files

* Working model

* Refactor with repository pattern

* Wiring up

* Addressed comments

* Demo app (#63)

* added pygrid integration demo and logging

* debugging pygrid integration

* Wip streaming downloads don't work but direct succeeds

* updated syftlib to have new job status callbacks

* cleaning up code

* Syft instance (#65)

* auto initialise communication client

* added HTTP protocol and made snetworking clients to be modifiable

* added test for socket client initialization

* reformat code

* cleared duplicate http protocol

* updated demo app to use new syft worker

* added tensor serialization (#68)

* added tensor serialization

* removed lateinit initialization, SyftModel integeration into job

* reformat code

* cleared duplicate http protocol

* addressed comments and rebasing

* remove message processor test

* removed pytorch tensor wrapper since we wont perform computation in kotlin

* added syftmodel test

* updated order of schedulers

* Wire up cycle with data training and process (#67)

* Draft

* Logger

* Attempt to read mnist script

* Almost there

* Added logger

* Almost there

* Fix data loading

* Move out zip

* And it is working

* More wiring

* Show loss in chart

* Pass floats directly

* made UI responsive (#73)

* updated syft-proto (#77)

* updated syft-proto

* removed syft-proto from jetifier

* Add demo steps to README (#76)

Co-authored-by: varun khare <[email protected]>

* added batch support, UI tweaks (#74)

* added batch support, UI tweaks

* addressed comments Added real mnist training data

* added training data to git lfs

* code clean up

* remove lfs and made loading batches clear

* updated readme

* updated pytorch (1.5.0) and gradle version

* Docs protobuf serialization (#80)

* refactor readme (#86)

* Docs Plan Execution (#85)

* plan documentation

* changes

* bug

* minor changes

* fixes

* speed test functional

speed test error handling

correct syft tests

created netowrk state manager

* Syft config (#89)

* added configuration parameter

* added syft config and device monitor

* refactor datasource for device status

* added syft status subscriber

* made class constructors internal for testing support

* register callbacks for broadcasts

* updated demo app

* corrected syft test

* network cache bug cleared

* correct default schedulers

* Test (#92)

* initiated testing files and added tests for JobStatusSubscriber

* added socket client test

* updated readme (#95)

* updated readme

* Update README.md

Co-authored-by: Patrick Cason <[email protected]>

* docs: add mccorby as a contributor (#181)

* docs: update README.md [skip ci]

* docs: create .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* docs: add vkkhare as a contributor (#180)

* docs: update README.md [skip ci]

* docs: create .all-contributorsrc [skip ci]

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: varun khare <[email protected]>

* docs: add cereallarceny as a contributor (#182)

* docs: update README.md [skip ci]

* docs: create .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: varun khare <[email protected]>

* docs: add codeboy5 as a contributor (#183)

* docs: update README.md [skip ci]

* docs: create .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: varun khare <[email protected]>

* docs: add IamRavikantSingh as a contributor (#185)

* docs: update README.md [skip ci]

* docs: create .all-contributorsrc [skip ci]

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: varun khare <[email protected]>

* docs: add IamRavikantSingh as a contributor (#186)

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* docs: add cereallarceny as a contributor (#187)

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* docs: add vkkhare as a contributor (#188)

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* docs: add vkkhare as a contributor (#189)

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* docs: add mccorby as a contributor (#190)

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* added test coverage and moved tests to a new action (#179)

* added test coverage and moved tests to a new action

* updated readme badge

Co-authored-by: Patrick Cason <[email protected]>

* NDK cache in CI build (#191)

* added test coverage and moved tests to a new action

* added ndk caching for faster builds

* tests badge rename

* corrected url space

* corrected badge position and ndk cache permissions (#194)

* added network monitoring (#195)

* added network monitoring

* added device state checks

* removed redundant JobStatusMessage.JobError

* corrected demo app call to stop execution on fail

* disposing jobs functional

* updated demo app to accomodate dispose

* corrected tests

* added unit tests for device monitor

Co-authored-by: Patrick Cason <[email protected]>

* Docs Update http-client (#193)

* Clean mnist (#199)

* cleaning mnist

* corrected syft worker disposal

* updated readme

* made login UI full screen

* updated readme for sleep/wake support

* Charge detection (#200)

* added battery listener

* solved battery intent action bug

* corrected device monitor tests

* added robolectric tests

* remove usage of junit5 engine

* Dont skip ci to get code coverage (#203)

* docs: add galalen as a contributor (#202)

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: varun khare <[email protected]>

* docs: add erksch as a contributor (#205)

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

* docs: update README.md [skip ci]

* docs: update .all-contributorsrc [skip ci]

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: varun khare <[email protected]>

* Documentation for SocketAPI, SocketClient, and SyftWebSocket (#201)

* Documentation for SocketAPI, SocketClient, and SyftWebSocket

* add links and additional info to documentation

* follow KDoc standard in documenting SyftWebSocket constructor params

* fix README typo

Co-authored-by: varun khare <[email protected]>

* Docs HttpAPI interface (#192)

* Docs HttpAPI

* update

* update

* feature testing (#207)

* complete run through added

* reformat

* made auth token optional

* correct handling multiple disposals

* correct singleton syft worker creation

* WIP adding tests

* constraint validation added

* correct looper robolectric

* multiple jobs tested

* add disposing in test to clear worker

* SyftJob tests (#209)

* Added first tests. Refactor SyftJob

* First tests for JobDownloader

* Added conditions to download

* Download using CycleAccept response data

* Make requestKey available to other parts of the workflow

* Test report

* Improved test

* Added test for throwError

* JobDownloader test

* Refactor downloader to use data sources and add tests

* Restrict visibility of data sources to internal

* Tests for jobDownloader

* Tests for RemoteDataSource

* Remove unused method

* Remove duplicated logic

* Pass the correct object to remote data source

* Rename and place classes

* Fix failing test

* Remove activity monitoring and API clean up (#211)

* activity detection removed

* syft job docs, restricted public APIs

* describe multi threading support (#210)

* Test for jobLocalDataSource. Refactor IO (#212)

* Tests for SyftTensor (#213)

* Test for SyftTensor deserialisation

* Fix recursive calls

* Refactor deserialize name

* Pytorch Tensor to SyftTensor test

* Cover content types

* Tests for serialize and getTorchTensor

* Model tests

* Check size of new params

* Report diff (#217)

* diff reporting added

* update running mutliple cycles

* remove open tag from configuration

* correct tests

* added tests for files

* addressing comments

* refactor asset reading

* remove tests for createDiff of repository

* added new tests for jobRepository and jobLocalDataSource

* added jobLocaldatasource test

* cosmetic change

* Speed tests optional (#219)

* Speed tests optional

* Introduce Either to handle failure when checking conditions

* No need for requiresSpeedTest to be lateinit

* Add feature flag to allow execution while the server is updated

* Remove ignored files

* Too many deletions

* Update syft-proto version

* Property for buildConfig

* Revert to 0.4.1

* correct version of SyftProto

* Remove feature flags as too many issues with integration tests

* Remove unused methods

* Small changes

* Failing test

* Leave only in use methods

* Background demo (#220)

* first draft of background execution

* add UI

* removed boilerplate code

* update syft proto dependency

* refactor paarameter mismatch

* correct default device monitoring status

* code cleanup

* work manager logging

* corrected tests

* remove unsubscribe for background tasks

* refactoring WIP

* job worker functional

* refactor attachmnistlogger

* added tests for diff coverage

* refactor view models

* rebase

* empty commit for codecov

* docs: add mccorby as a contributor (#223)

* docs: update README.md

* docs: update .all-contributorsrc

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* docs: add vkkhare as a contributor (#224)

* docs: update README.md

* docs: update .all-contributorsrc

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* restrict file scope (#227)

* documentation for JobStatusSubscriber (#229)

* documentation for JobStatusSubscriber

* add description of the class

* correct syft model doc

* adding tests for codecov

* Add dokka and docs dir (#225)

* Add dokka and docs dir

* Remove docs in wrong place

* Docs to root

* Documentatino workflow

* GH format

* Doc public only/

* Add docs

* Update docs and go

* Fix wrong directory

* Internals missing

* docs: add galalen as a contributor (#231)

* docs: update README.md

* docs: update .all-contributorsrc

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* docs: add mccorby as a contributor (#232)

* docs: update README.md

* docs: update .all-contributorsrc

Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>

* General config (#233)

* added variable client config

* refactor plan

* regenerate the docs

* document Client Config

* correct doc references

* regenerate docs

* add tests for SyftModel

* add some more tests

* corrected http handler and added jwt token (#234)

* corrected http handler and added jwt token

* added plan name

* updated tests

* update docs

* single socket per job

* plan updated

* demo working

* added small database

* updated tests

* remove changes in network and add params tester

* README Change

Co-authored-by: varun khare <[email protected]>
Co-authored-by: Henning Dodenhof <[email protected]>
Co-authored-by: Ravikant Singh <[email protected]>
Co-authored-by: Saksham Rastogi <[email protected]>
Co-authored-by: Patrick Cason <[email protected]>
Co-authored-by: allcontributors[bot] <46447321+allcontributors[bot]@users.noreply.github.com>
Co-authored-by: Mohammed Galalen <[email protected]>
Co-authored-by: Ravikant Singh <[email protected]>
  • Loading branch information
9 people authored Jul 11, 2020
1 parent 63e4bfa commit 08da58b
Show file tree
Hide file tree
Showing 284 changed files with 17,149 additions and 191 deletions.
87 changes: 87 additions & 0 deletions .all-contributorsrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
{
"files": [
"README.md"
],
"imageSize": 100,
"commit": false,
"contributors": [
{
"login": "vkkhare",
"name": "varun khare",
"avatar_url": "https://avatars1.githubusercontent.com/u/18126069?v=4",
"profile": "http://vkkhare.github.io",
"contributions": [
"code",
"test",
"doc",
"design"
]
},
{
"login": "mccorby",
"name": "Jose A. Corbacho",
"avatar_url": "https://avatars2.githubusercontent.com/u/4661075?v=4",
"profile": "https://github.com/mccorby",
"contributions": [
"code",
"test",
"design",
"doc"
]
},
{
"login": "IamRavikantSingh",
"name": "Ravikant Singh",
"avatar_url": "https://avatars3.githubusercontent.com/u/40258150?v=4",
"profile": "http://ravikantsingh.com",
"contributions": [
"code",
"doc"
]
},
{
"login": "codeboy5",
"name": "Saksham Rastogi",
"avatar_url": "https://avatars0.githubusercontent.com/u/40931412?v=4",
"profile": "https://github.com/codeboy5",
"contributions": [
"doc"
]
},
{
"login": "cereallarceny",
"name": "Patrick Cason",
"avatar_url": "https://avatars1.githubusercontent.com/u/1297930?v=4",
"profile": "https://www.patrickcason.com",
"contributions": [
"doc",
"business"
]
},
{
"login": "galalen",
"name": "Mohammed Galalen",
"avatar_url": "https://avatars0.githubusercontent.com/u/16897043?v=4",
"profile": "http://galalen.github.io",
"contributions": [
"doc",
"test"
]
},
{
"login": "erksch",
"name": "Erik Ziegler",
"avatar_url": "https://avatars2.githubusercontent.com/u/19290349?v=4",
"profile": "https://github.com/erksch",
"contributions": [
"bug"
]
}
],
"contributorsPerLine": 7,
"projectName": "KotlinSyft",
"projectOwner": "OpenMined",
"repoType": "github",
"repoHost": "https://github.com",
"skipCi": false
}
46 changes: 46 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Android CI

on:
push:
branches:
- dev
- master
pull_request:
branches:
- dev
- master

jobs:
build:

runs-on: [ubuntu-18.04]

steps:
- uses: actions/checkout@v2
- name: set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Gradle Cache
uses: actions/cache@v2
with:
path: .gradle/caches
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
- name: Create ndk cache dir
run: |
sudo mkdir -p /usr/local/lib/android/sdk/ndk
sudo chown -R $USER /usr/local/lib/android/sdk/ndk
- name: NDK Cache
id: ndk-cache
uses: actions/cache@v2
with:
path: /usr/local/lib/android/sdk/ndk
key: Linux-ndkcache
restore-keys: Linux-ndkcache
- name: Install NDK
if: steps.ndk-cache.outputs.cache-hit != 'true'
run: echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;20.0.5594570" --sdk_root=${ANDROID_SDK_ROOT}
- name: Build with Gradle
run: ./gradlew build
24 changes: 24 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Java CI

on:
release:
branches:
- master

jobs:
build:

runs-on: [ubuntu-18.04]

steps:
- uses: actions/checkout@v2
- name: Set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Install NDK
run: echo "y" | sudo ${ANDROID_HOME}/tools/bin/sdkmanager --install "ndk;20.0.5594570" --sdk_root=${ANDROID_SDK_ROOT}
- name: Build with Gradle
run: ./gradlew final
28 changes: 28 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Testing Workflow

on:
push:
branches:
- dev
- master
pull_request:
branches:
- dev
- master


jobs:
test:

runs-on: [ubuntu-18.04]

steps:
- uses: actions/checkout@v2
- name: set up JDK 1.8
uses: actions/setup-java@v1
with:
java-version: 1.8
- name: Run unit tests
run: ./gradlew check
- name: upload code coverage
run: bash <(curl -s https://codecov.io/bash)
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,7 @@
*.iml
local.properties
.gradle/
.idea
.idea/*.xml
.idea/caches
.idea/libraries
demo-app/local_config.properties
136 changes: 136 additions & 0 deletions .idea/codeStyles/Project.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 5 additions & 0 deletions .idea/codeStyles/codeStyleConfig.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions .idea/dictionaries/jco59.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

37 changes: 0 additions & 37 deletions .travis.yml

This file was deleted.

Loading

0 comments on commit 08da58b

Please sign in to comment.