All notable changes to wuffle are documented here. We use semantic versioning for releases.
Note: Yet to be released changes appear here.
FIX
: do not fail search on missing assigneesCHORE
: make issue search fail safe
FEAT
: log out user on wuffle once her GitHub access token expiredFIX
: correctly handle invalid issue when updating store
FEAT
: various performance improvements for logged in board access (2fe40483
,de5403da
)FEAT
: use app APIs to determine user repository access (579743a9
)FIX
: account for GitHub API changes breaking private repository display (#80)CHORE
: bump dependency versions
FEAT
: be able to specify default column collapsed stateFIX
: prevent collapsed columns from breaking layoutFIX
: correct collapsed column layout in Firefox
FEAT
: supportconnects
to create parent -> child relationship (#78)FEAT
: add ability to whitelist enabled organizations (#75)CHORE
: add sentry support, inherited from ProbotCHORE
: board update errors with contextCHORE
: ensure the app restores before completing startupCHORE
: serialize board version on store dumpFIX
: do not bumpupdated_at
when synchronizing issue detailsFIX
: correct status sync failure on PR openFIX
: don't swallow changes on concurrent store updatesFIX
: prevent accidental double background syncFIX
: handle deleted forks in pull request filters (2b40281f
)
FEAT
: improve background synchronization of pull request details (#70)FEAT
: make background synchronization configurable via environment variables
FEAT
: recognize full list of GitHub closes keywords (#73)FEAT
: recognize colon in issue links (#73)CHORE
: feat with maximum page size during background sync to avoid hitting GitHub rate limits
Special thanks goes to @mjcarroll for contributing #73.
FEAT
: reindex store on board configuration changes (#69, #49)FEAT
: allow to hook into store restore and serialize
FIX(app)
: deduplicate check runs by name (#66)
FEAT
: integrate pull request checks and statuses (#41)FEAT(board)
: provide better link titles (77cf5b2d
)FEAT(board)
: add limited offline supportFEAT(board)
: improve error handling and recoveryFEAT(board)
: cache assets in front-endFEAT(board)
: make header responsiveFIX(app)
: correct label update (3ff74c22
)FIX(app)
: update card onpull_request.synchronize
, too
- The app requires read access to checks and statuses as well as the connected event subscriptions in order to display pull request states (#41).
DOCS
: align app with project documentation
FEAT
: publish aswuffle
to npmFEAT
: validate presence of compiled board assetsFEAT(app)
: log working directory when startingCHORE
: compile board assets to appCHORE(app)
: resolvewuffle.config.js
in working directory
CHORE(board)
: reduce amount of unused styles
CHORE(board)
: add more a11y hintsFIX
: correctly handle dismissed reviews
FIX(board)
: ensure long card titles do not kill card layoutFEAT(board)
: give card links full prominenceFEAT(board)
: show assignees collapsed and expand them as needed
FEAT(app)
: integrate reviews (#22)FEAT(app)
: pick up milestone edits (#46)FEAT(app)
: pick up label editsFEAT(app)
: allow partial issue updatesFEAT(background-sync)
: add ability to hook up external behaviorsFEAT(background-sync)
: batch update issues (1958c9d3
)FEAT(board)
: hide merged, non-closing PRs from cards (06794aa5
)FEAT(board)
: add numerous UI hintsFEAT(board)
: improve assignee displayFEAT(board)
: slightly adjust board styles, making it more pleasent to look atFEAT(store)
: serialize store updates (a5bdcbe5
)
FEAT(search)
: include login/org in repository searchFEAT(search)
: use includes to filter labels and repositoriesFEAT(board)
: deep link milestone to GitHubFIX(board)
: correct icon sizes displaying wrong in Firefox (#48)
FEAT(app)
: reduce re-ordering noise on the board by card order, if possible (62bea58d
)FEAT(app)
: do not move referenced issues via board (260d1e8a
)FEAT(board)
: provide card link titlesFEAT(board)
: make card link icons and PR / epic icons clickableFEAT(board)
: show blocking links first in listFEAT(board)
: make title read-onlyFEAT(board)
: visualize open required by / closes issues as standard link typesFIX(app)
: only move issues to top that move to new column
FEAT(board)
: make click on issue numbers open the issue on GitHub as the default interaction again (#35)FEAT(board)
: make filtering by issue reference, tag or milestone available asSHIFT
/CTRL
+ clickFEAT(board)
: make consecutive click on reference, tag or milestone toggle the relevant filterFEAT(board)
: escape card dragging onESC
key
DOCS
: add troubleshooting documentDOCS
: document column to state mappings
FEAT(app)
: handle PRs from external like new issues (8e0919d5
)FEAT(app)
: allow alternative column names and explicit state mappings (c2575b32
)FEAT(app)
: validate board configuration (#39)FEAT(app)
: crash on run failure (2d2ac864
)
FEAT(app)
: recognize list of linked issues with the same typeDOCS
: document login callback urlFIX(auth-routes)
: gracefully handle missing cached data in auth callback
FEAT(background-sync)
: ignore archived repositoriesFEAT(apps/dump-store)
: allow usage of local dump store outside dev modeCHORE
: di-ify app core
- We restructured internals and made apps expose their own APIs. Things changed.
FEAT
: connect all repositories connected to GitHub app
config.repositories
is now obsolete- The board does not default to a repository for its name, configure a board name via
config.name
FIX(app)
: capture requested reviewer changes
FEAT(app)
: mark column assorting=true
to incrementally sort cards based on links (#29)FIX(app)
: correct GitHub app manifestFIX(board)
: correctly handle reordering updates
DOCS
: new setup and run guide 🎉FIX
: correct various getting started / configuration glitchesFIX
: validateBASE_URL
in run script
FEAT(board)
: filter by tagsFIX(board)
: de-duplicate attached PR linksFIX(app)
: properly update link sources if linked issue changes (#33)CHORE(app)
: improve start validation and hints
FEAT(board)
: add powered by linkFEAT(app)
: allow searching byref
FEAT(app)
: inverse link related to issuesFEAT(board)
: add ability to filter by issue with dependenciesFEAT(board)
: show epic progress bar and completed count (#27)FIX(apps/search)
: allow more special keys in search
FEAT(board)
: display issue links (#3)FEAT(board)
: display full issue key on hoverFEAT(board)
: add epic icon and links (#30)FEAT(app)
: add new/updated issues without order to column topFEAT(project)
: add docker imageFIX(board)
: allow scrolling while dragging card
FEAT(app)
: add ability to force HTTPS redirectFEAT(project)
: provide pre-built docker images (#25)FEAT(app)
: add run scriptFEAT(app)
: validate environment configuration before startFIX(app)
: expose required information for deleted issuesDOCS(project)
: document environment variables
FEAT(project)
: addProcfile
FIX(dump-store-s3)
: correctly handle inbound dataCHORE(dump-store-s3)
: set dump interval to five minutesCHORE(dump-store*)
: log pre-exit actions and timings
FIX(search)
: recognize_
in search valuesFIX(automatic-dev-flow)
: correct branch issue number globbing
FIX(search)
: recognize dashes search values
FEAT(background-sync)
: update only actually changed itemsFEAT(search)
: addis:{ open, closed, issue, pull }
filtersFEAT(search)
: ignore operators with empty valuesFEAT(board)
: focus board filter onCTRL/CMD + F
FEAT(board)
: complete board filter qualifier values
FEAT(background-sync)
: improve sync performance for closed issuesFEAT(background-sync)
: expire and remove closed issues not updated for 60 daysFEAT(board)
: simplify board filterFEAT(board)
: add initial focus hint to board filterFEAT(search)
: put negation char before operatorFEAT(search)
: support!
to negate a search operatorFIX(dump-store)
: correct store not dumping on exit
FEAT(search)
: add ability to negate search using-
FEAT(links)
: unlink closed, unmerged PRs from issueFEAT(board)
: autoresize card titles on focusFIX(board)
: prevent shrinking of PR and collaborator icons
FIX(board)
: prevent error on card filtering
FEAT(app)
: optimize card fetchingCHORE(app)
: cache boardFEAT(board)
: incrementally render cardsFIX(search)
: recognize colons in search values
CHORE
: numerous error handling and logging improvementsCHORE
: propagate board api errorsCHORE
: recover from background sync failuresFIX
: correctly handle related to linksFIX
: update all (including already existing) linksFIX
: correctly reset org-auth installation cache
FEAT
: remove issues that failed to synchronize during background syncFEAT
: parse and publish issue links
FEAT
: collapse issue and closing PR into single cardFEAT
: add pull request icon
FEAT
: combine front-end and back-end into single appFEAT
: migrate front-end to Svelte and BootstrapFEAT
: dump store on exitFEAT
: add ability to dump and restore store to/from S3FEAT
: enable response compression for public routesFEAT
: add ability to configure board viaBOARD_CONFIG
environment variableFEAT
: minimize amout of stored / transfered dataFIX
: allow moving a card to end of column
FEAT
: show search hints as you typeFEAT
: show incremental / partial search resultsFEAT
: add search by reviewer
FEAT
: hide column labelsFEAT
: display reviewersFEAT
: display all assignees
Initial version.