Coder Social home page Coder Social logo

slack's People

Contributors

aasiddiq avatar amitkumariiit avatar artnez avatar ashokirla avatar bertrandom avatar bkeepers avatar cou929 avatar dennissivia avatar doms avatar gauravsaralms avatar geramirez avatar gimenete avatar gr2m avatar greenkeeper[bot] avatar iamhughes avatar imjohnbo avatar izuzak avatar jasonetco avatar jlord avatar jmilas avatar knolleary avatar orta avatar rapzo avatar sburns avatar steves avatar sushmita-m avatar tarebyte avatar tcbyrd avatar wilhelmklopp avatar yacinehmito avatar

Stargazers

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

Watchers

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

slack's Issues

Notification: deployments

We should send a notification for the deployment event that for example Heroku generates.

Example on branch: #22

Consideration: Only show master deployments?

Estimate: 0.5 weeks

Create Slack Scope previewer

Probot is the best

🤖
🤖
🤖 🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖 🤖
🤖
🤖 🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖 🤖
🤖
🤖 🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖 🤖
🤖
🤖 🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖 🤖
🤖
🤖 🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖
🤖

Setup queuing service

In the interest of resiliency and scalability, the app should store any incoming events in a queue, and run background workers to work the jobs off the queue.

Estimate: 1 week

Tie message builder screenshots to Jest snapshots

When generating new snapshots for the first time (and potentially in other cases), it would be useful to see an image of the rendered slack message, in addition to the JSON object.

Example Jest output at the moment:

● Pull request rendering › works for minor notifications

    expect(value).toMatchSnapshot()

    New snapshot was not written. The update flag must be explicitly passed to write a new snapshot.

    This is likely because this test is run in a continuous integration (CI) environment in which snapshots are not written by default.

    Received value
    Object {
      "attachments": Array [
        Object {
          "author_icon": "https://avatars0.githubusercontent.com/u/173?v=4",
          "author_link": "https://github.com/bkeepers",
          "author_name": "bkeepers",
          "color": "#6f42c1",
          "fallback": "#36 Rearrange logic",
          "footer": "<https://github.com/github-slack/app/pull/36|View it on GitHub>",
          "footer_icon": "https://assets-cdn.github.com/favicon.ico",
          "mrkdwn_in": Array [
            "text",
          ],
          "title": "#36 Rearrange logic",
          "title_link": "https://github.com/github-slack/app/pull/36",
          "ts": 1506619320,
        },
      ],
    }


      at Object.test (test/renderer/index.test.js:91:22)
          at Promise (<anonymous>)
          at <anonymous>
      at process._tickCallback (internal/process/next_tick.js:188:7)

 › 1 snapshot test failed.

If we build this, the Jest output above would remain, but additionally a screenshot would be shown:

image

We would do this by passing in the Jest snapshot to the Slack Message Builder and then take a screenshot of the rendered message with Puppeteer. We can display the image in the terminal using something like imagemagick

@bkeepers

re style guide and the snapshot tests, it’d be cool if the app actually had rendered examples of all them message types. So if you go to /styleguide/examples you could see all the messages in one view

Re-set up Travis CI

Since this is a private repo we cannot use Travis on the free plan.
We need to figure out a way to upgrade :)

Edit: Also something like greenkeeper/dependabot would be neat. I had a problem just now and either of those would have saved me 10-20min of investigating 😬

Tests hang if lib/storage.js is loaded

If I write this test:

require('../lib/storage');

test('hello', () => {
  console.log("done");
});

And run jest test/repro.test.js then I get this output:

 PASS  test/repo.test.js
  ✓ hello (4ms)

  console.log test/repo.test.js:4
    done

Test Suites: 1 passed, 1 total
Tests:       1 passed, 1 total
Snapshots:   0 total
Time:        0.234s, estimated 1s
Ran all test suites matching /test\/repo.test.js/i.

But the process hangs and you have to type ctrl+c to kill it.

End to End tests

Need to create end to end tests for all GitHub events we're listening to

Production monitoring tool

We should set up Sentry or a similar tool so that we can monitor errors that happen in the production environment. We currently don't see those.

Unfurl: private links

A user sees an ephemeral prompt to verify that the private link should be unfurled (always, this time, never)
A user sees an unfurl of a private link.

Estimate: 2 weeks

Private unfurls are available via EARLY ACCESS

Read through this comment to find out how to get early access: #52 (comment)

Road to private unfurls

Things that need to be done before general availability:

  • Persistent user settings #528
  • Better flow in case a user has not yet linked their GitHub account (building on top of #536)
  • Let users change settings using /github settings
  • dm user if chat.ephemeral doesn't work because app is not in channel
    • Can we prompt users via additive permissions to add GitHub to the channel? Nope, not really :/
  • Remove early access for private unfurls 🎉

Investigate using TypeScript

We've talked a few times about looking into TypeScript. Before we get too far on this project, we should evaluate if that is something we want to do.

Estimate: 1 week

Collapse statuses

This is pretty intense (especially for apps that have a lot of statuses).

slack_-_github___slack

Proposal:

  • Collapse success statuses into one attachment, similar to how the GitHub UI does it, maybe with a link to this:
    fix_restore_branch_button_being_cut_off_by_califa_ _pull_request__80759_ _github_github
  • If there are only 2-3 failing statuses, show details of the failure separately
  • Otherwise, just show summary like "5 of 11 checks failed" with link to GitHub UI showing failures.

Staff shipping in production + canary

It would be awesome if our production environment allowed us to make new features available first to all GitHub staff, and then to some small subset of all users (like canary for github/github)

cc @bkeepers for 💬 on whether we should do this and how we would accomplish it

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.