Giter Club home page Giter Club logo

theia's People

Contributors

adammcmaster avatar amy-langley avatar amyrebecca avatar camallen avatar chelseatroy avatar dependabot[bot] avatar eatyourgreens avatar yuenmichelle1 avatar zwolf avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

theia's Issues

reject images that contain all water or no water

floating forests only cares about coastline images. detecting coastlines is hard, but maybe the answer lies in a) pixel_qa data that estimates water vapor or b) a simple neural net to look at the rgb histograms from #16

images with no water or images that are only water shouldn't be uploaded

more logging

service should just do more logging in general so we can look at the kube logs to see what it's doing

Design object model

Needs to describe image acquisition request, including search criteria, target project, and configuration options.

Login button on homepage obscured by footer

Desired Behavior: When visiting the Theia homepage, I can click the "Connect to Zooniverse" button to login/authenticate.

Current Behavior: The footer component of the webpage obscures the "Connect to Zooniverse" button and I cannot click it to follow the login link. Note: if I use dev tools to hide the footer component, I'm able to click the button and follow the link.

Screenshot:
Screen Shot 2021-04-08 at 2 43 58 PM

Device Info: Chrome 89 on Mac OSX 10.14, also tested and see same behavior for Firefox 87.

Limit celery retries

Currently celery tasks are retried forever, which has the potential for a ton of noise. It's possible to specify pretty easily how many retries a task should get and what kind of back-off period there should be before retrying

Upload entire directory

Since tiles are an entire directory full of images we need a way to process all of them in a stage, especially for uploading them all

CSRF protection for oauth login links

When using oauth login links we have to be careful to avoid allowing activation of the oauth login process without ensuring the request originated by a known logged in user.

This is a recent exploit that was raised in rails land via omniauth/omniauth#809

A mitigation would be a CSRF validation via a POST method to the social auth routes before redirecting to the upstream social auth provider. Depending on what your application does with the upstream user data it may be a vector for account take over. I assume in this app it won't be, most likely changing the logged in user at worst but something to keep in mind with oauth flows.

Build out docker container

If we want to be able to deploy this in EC2 then it should be containerized so it can run on kubernetes.

Integrate oauth stuff with rest-framework

Right now anyone who can access the /api routes can do configuration for any project without any kind of authentication or authorization. It'd be ideal to get django-rest-framework to play nice with django-social-auth but this has been quite a struggle.

logging

  • add logging statements
  • configure greylog or other provider
  • errors to rollbar

github repo integrations

need to integrate with:

  • jenkins
  • travis
  • something to run linter
  • require tests to pass before merging

Technology selection

Since we're going to tentatively build this pipeline out in Python, we need to select Python versions of our familiar tools:

  1. ORM (Rails)
  2. Job queue (Sidekiq)
  3. REST (Faraday)
  4. Oauth
  5. Unit tests (rspec)

As well as tools for handling some novel challenges:

  1. Image processing
  2. GIS processing

REST API

Necessary operations:

  1. authenticate
  2. create request
  3. get request status
  4. cancel request

[Security] Bump Pillow to >= 9.0.0

Multiple security updates have been tagged over the past few months; however, dependabot isn't opening an automated PR. These are found in this repo under Security - Dependabot alerts - Pillow. Info for the most recent bump is found here, and they are all moderate vulnerabilities.

Parse KML file

The plan for the first iteration of the pipeline is to have users create a KML file in something like Google Earth and then upload it to search for imagery. It'd probably be nice if we could figure out how to parse that format.

Integration with Doorkeeper by Oauth

Users of the pipeline will need to be authenticated with their panoptes credentials to ensure they can access the project they want to add images to

generate and upload manifest file

a manifest file relating image filenames to their various geo-coordinates should be generated using a gis_operation and then we should use that in conjunction with uploading subjects to panoptes

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.