Commit Graph

46 Commits

Author SHA1 Message Date
Teemu Patja a9e178a2f1
Avoid unneeded watch transactions
Store tx id for watch smart contract call while it is pending to avoid
sending unneeded transactions.
2017-12-18 19:31:53 +02:00
Teemu Patja 4303181781
Add created_at column to pull_requests table 2017-11-22 12:39:33 +02:00
Teemu Patja 7ed831ab2f
Add created_at field to issues table
Fixes: #173
2017-11-22 12:18:08 +02:00
Teemu Patja 48f2d024fe
Show pending payouts with missing address in activity 2017-11-09 17:01:46 +02:00
Teemu Patja d2c63c59cc
Activity feed item for claim pending
Fixes: #152
2017-11-08 12:23:32 +02:00
Teemu Patja 072353d13b
Fix activity view timestamp for payout event
Fixes: #153
2017-11-08 12:02:47 +02:00
Teemu Patja be6b3809c5
Simpler way of storing winner login 2017-11-02 15:48:40 +02:00
Teemu Patja 7aa8205115
DB support tracking welcome email sends 2017-10-28 21:10:09 +03:00
Teemu Patja 6f2cb1c2a5
Only show claim related events in activity feed 2017-10-27 09:19:47 +03:00
Teemu Patja 6522265f7d
Never show closed github issues as open bounties
* do not show a bounty issue in open bounties listing or activity feed
  items in case it was closed (manually or via PR)

Fixes: #95
2017-09-13 11:11:37 +03:00
Teemu Patja eb9b4d18b8
Include value_usd and tokens in sql views 2017-08-23 22:12:55 +03:00
Teemu Patja 31d8a07b97
Keep track of USD value update datetime in DB 2017-08-22 22:15:40 +03:00
Teemu Patja b2cd1886f6
DB changes for bounty USD value + token support
* rename balance -> balance_eth
* add tokens jsonb column
* add value_usd column
* update existing SQL
2017-08-19 22:41:41 +03:00
Teemu Patja 473a525779
Use github username on activity feed if name does not exist
Fixes: #68
2017-06-13 11:39:15 +03:00
Teemu Patja 3f0ff567a8
Progressive Github permissioning & client-side oauth tokens
* require only user:email oauth scope when signing up
* if user wants to set bounties on repos, request additional oauth
  scopes
* do not store github access tokens on server side and use client-side
  localStorage instead

Fixes: #35
Fixes: #40
2017-03-22 22:20:52 +02:00
Teemu Patja b25e01f14d
Simple "open bounties" view
* add simple tab for showing all open bounties (#37). Probably needs
  some UX improvements
* rename old "bounties" tab to "manage payouts"
* fix issues in db migration
2017-03-17 23:17:30 +02:00
Teemu Patja 020f9cdc5d
Gather usage metrics to db table with sql trigger 2017-03-17 23:17:29 +02:00
Teemu Patja 3ba4956a78
Show bounty open & balance update feed items in context of repo
For bounty related activity feed items:
* show full repository name in activity item title instead of admin name
* show owner avatar instead of admin avatar

Fixes: #41
2017-03-16 22:44:34 +02:00
Teemu Patja b788f91149
Improve query for bounty-claim events in activity feed
* include pull-requests in activity feed that have been merged but are
  pending maintainer confirmation or bounty hunter to save own
  ethereum address
2017-03-12 19:06:51 +02:00
Teemu Patja 01f1bffd77
Store payout receipt as postgresql jsonb
* store bounty payout receipt as a jsonb object in the database
  instead of a varchar containing json
2017-03-10 20:23:14 +02:00
Teemu Patja 331b227f5e
Fix problem in db migration 2017-03-03 16:44:59 +02:00
Teemu Patja 9f010648aa
Error handling improvements, #22 fix & more
Error handling improvements
* show error message on UI in case repo toggling fails
* eliminate possibility of creating multiple webhooks

Store comment PNG for all balances of a bounty (Fixes: #22)
* include balance in computation of verification hash for image request
* store hash in db

Refactoring
* use 'owner' for a repo owner everywhere instead of 'login'

Minor
* move cider dependencies to top-level in project file to avoid errors
  with tests and migratus
2017-03-02 10:51:18 +02:00
Teemu Patja 211cc96c90
Activity feed + UI tweaks
* finish missing parts of activity feed feature
* render time ago labels with moment.js
* css tweaks
2017-02-27 22:38:41 +02:00
Teemu Patja 2599b85d41
WIP: Activity feed feature
* backend support for activity feed
* partial frontend support (still needs work)
* save issue modification timestamp to db
* rename commit-id -> commit-sha everywhere for consistency
* "No data" texts for UI collections when no data exists
2017-02-26 23:43:57 +02:00
Teemu Patja c33fb858f9
"Top Hunters" feature + more
* frontend + backend support for top hunters
* fix issues with bounties view
* logging
* cleanup
2017-02-26 16:14:39 +02:00
Teemu Patja 9cb48b5183
Bounties view + related backend functionality & more
Changes to bounty/pull-request data model and logic
* save git sha of pull request's HEAD instead of possible merge commit
  and save it for opened, merged and closed events
* only look for bounties being accepted in pull-request closed via
  merge events (no need for compilicated logic with issue-closed event)
* pull_request now has issue_id column to make many sql queries
  simpler

Frontend
* owner-bounties app-db structure changes
* bounties view with confirm pending payout UI

Other
* removed lots of unused legacy code
* bug fixes + refactoring
* added comments + TODOs
2017-02-25 00:15:44 +02:00
Teemu Patja ec5f07a578
DB query refactoring, save PRs also when opened
* store pull-requests to DB also when opened instead of only when
  merged to allow for showing bounty claims
* refactor SQL queries
* look for PR keywords also in title
* improve PR keyword regexes
2017-02-24 11:05:13 +02:00
Teemu Patja b112155134
Add debug logging, add forgotten column constraint 2017-02-23 13:23:20 +02:00
Teemu Patja 9b972625e0
Rewrite Github comment PNG functionality
* removed old swing JEditorPane based html to png rendering due to
  it's lack of support for modern css
* new implementation uses wkhtmltoimage (on prod server via wrapper
  script using xvfb)
* no longer generating image on every GET request for QR, but rather
  generating image when a bounty is cretaed or contract balance
  changes
* images stored to DB
* comment image design updated according to UI spec
2017-02-21 10:49:25 +02:00
Teemu Patja d35b794ca4
New UX, webhook securing, atomic repo toggling etc.
Secure Github webhooks (Fixes #18)
* Use a unique random secret for webhooks
* Validate payload signature when receiving webhook

Make enabling + disabling a repo more robust
* store repository state instead of enabled flag in DB
* atomic toggle UI button (Fixes #17)

New UX for managing repos
* group repos by owner
* look and feel according to UI spec

General improvements
* only request user's repos via Github API once per session
* fix issue with cljs code figwheel reload
* simplify app-db structure
2017-02-18 11:07:51 +02:00
Teemu Patja 6e646280c2
WIP: new UX
* semantic UI + less based UI styling
* header, tabs, user-profile component
* store avatar URL in DB, show image in user
* unify :user and :user-profile in app-db for simplicity
2017-02-12 22:25:32 +02:00
Teemu Patja 8cb5995d5a
Use SQL timestamp instead of time
* Use SQL data type timestamp for users.created and
  repositories.updated since we want to store datetimes, not time of
  day
* Fix :migration-dir in project file

Fixes: #15
2017-01-21 18:06:37 +02:00
kagel e68891a936 `send` button now reflects tx status + display some errors 2016-10-04 03:13:43 +03:00
kagel 401f8dcf8c Fix multisig wallet payout flow 2016-10-01 15:29:18 +03:00
kagel 7fb0f9ddae Update github comment only when balance changes 2016-09-13 19:50:04 +03:00
kagel 8fb363218a Edit github comment on balance update 2016-09-12 19:44:29 +03:00
kagel c1af7788eb Sign transaction 2016-09-10 02:06:56 +03:00
kagel 4e8a5148d5 * deploy multisig contract bytecode
* check for transaction receipt every 5 minutes
2016-09-06 03:18:33 +03:00
kagel fceac393a4 Rename migrations 2016-08-31 03:00:34 +03:00
kagel fdfaafc2c1 Get rid of parents and merge_commit_sha 2016-08-31 00:45:25 +03:00
kagel 520e5e34e4 Prepare for deployment + bugfixes
Add empty css directory (again)

Remove sassc hook (Heroku)
2016-08-30 01:40:10 +03:00
kagel 4a5196987b Issue and PR webhooks 2016-08-28 23:16:45 +03:00
kagel a6459a2a32 Handle issue labeling via github webhooks 2016-08-26 04:10:05 +03:00
kagel b29eaaaf80 Repositories list 2016-08-25 01:46:29 +03:00
kagel baf07a21ec Persist user 2016-08-22 03:22:39 +03:00
kagel 7e8d0f1f0b Initial database structure 2016-08-21 00:36:30 +03:00