servo / crowbot Goto Github PK
View Code? Open in Web Editor NEWThis project forked from leibovic/fennecbot
Friendly robot to help Servo developers in #servo.
License: MIT License
This project forked from leibovic/fennecbot
Friendly robot to help Servo developers in #servo.
License: MIT License
[11:16:02] <jack> tetsuharu: what was the build error on #1419 that you fixed?
[11:16:02] <crowbot> Issue #1419: Hide to initialize steps of `CompositorTask` from Servo `main` fn. - https://github.com/mozilla/servo/pull/1419
[11:17:05] <tetsuharu> @jack: no. #1419 has been rebased && succeeded.
[11:17:05] <crowbot> Issue #1419: Hide to initialize steps of `CompositorTask` from Servo `main` fn. - https://github.com/mozilla/servo/pull/1419
Crowbot currently will turn issue references like #123 (and £123) into links to the main Servo repo. It would be nice if this also worked for other repositories since we use a bunch of repos, with the syntax in the issue title.
Sometimes it's useful to know what time it is in London/Seoul.
09:13 <jdm> crowbot: what prs need a reviewer?
09:13 <crowbot> add `faster` flag to `./mach test` command : https://api.github.com/repos/servo/servo/issues/9273
09:13 <crowbot> Support device-pixel-ratio in wpt reftests.: https://api.github.com/repos/servo/servo/issues/9272
09:13 <crowbot> Add build-essential to Debian based Linuxes' requirements: https://api.github.com/repos/servo/servo/issues/9264
09:13 <crowbot> mozbrowsersecuritychange event: https://api.github.com/repos/servo/servo/issues/9244
09:13 belew.mozilla.org has kicked crowbot (Channel flood triggered (limit is 5 lines in 3 secs))
We should do this on a timer so it's one every second or something.
rust-internals could make use of this bot, but it would need to fetch meetings notes and issues from a different place.
There have been some regressions recently because crowbot has grown organically and it's hard to test everything. We should refactor the bot to separate the interaction with the IRC library from the actual handlers, which would allow us to write automated tests that verify that everything behaves as expected. I imagine the handler function could accept a say
argument which would be a function to be called in place of bot.say
and bot.act
. For the tests this could just append to an array, while for the real bot it would redirect to the appropriate methods of bot
.
We often notice things that should be noted in TWiS but forget to include them when the time comes. Let's add a command that remembers a phrase and who said it, another command that spits them all out, and a third command that clears the existing set of notes.
09:15 <crowbot1> add `faster` flag to `./mach test` command : https://api.github.com/repos/servo/servo/issues/9273
That links is not as useful as it could be :)
From https://developer.github.com/v3/issues/:
Note: In the past, pull requests and issues were more closely aligned than they are now. As far as the API is concerned, every pull request is an issue, but not every issue is a pull request.
This endpoint may also return pull requests in the response. If an issue is a pull request, the object will include a pull_request key.
This will require reading the documentation for the node irc library that we're using, presumably.
It's pretty annoying.
22:52 gw crowbot1: ping Ms2ger The changes to get the glutin build working on ubuntu 12.04 have landed (it works on my old 12.04 laptop and 12.04 VM now). please let me know if that fixes the issues on your machine
22:52 crowbot1 gw: Try looking at our readme: https://github.com/servo/servo/#prerequisites
At minimum we could have a hash of the most common ones: http://logs.glob.uno/?a=search&c=mozilla%23servo&q=w3.org%2FTR&ss=24+Mar+2013&se=24+Feb+2015
We should write out the known pings each time the list gets updated, either due to getting a new instruction to ping someone or having completed a ping.
Is there any reason to use 0.10.x ? The current version is v6.2.2. It provides better ES6 support along with improved performance and bug fixes.
When you type a whole link into IRC, this happens
you> https://github.com/servo/servo/pull/14707
crowbot> PR #14707: Pipeline documentation comments - https://github.com/servo/servo/pull/14707
But if you just type the number in, you get
you> #14707
crowbot> Issue #14707: Pipeline documentation comments - https://github.com/servo/servo/pull/14707
This is dumb. Crowbot has enough information to tell that it's a PR, based on the URL it put in to IRC (also, the GitHub API has a "pull_request"
JSON key, so crowbot really doesn't need to parse the URL at all).
It would be nice if crowbot responded to pms to allow people to experiment without cluttering the main channel.
We can learn about current build jobs on our machines by fetching http://build.servo.org/json/slaves?as_text=1. One example shows that sevo-linux-cross3 has been running for more than 2 hours: https://gist.github.com/jdm/ae1be5ef10ef308f9fdc93856a0515e0 . We should query this information every 30 minutes and squawk loudly if any build machine is stuck.
We're seeing notifications for build jobs which have only started <10 minutes ago, so it appears the ETA cannot be trusted at all. We should instead look at the start time for the running build and notify the channel if it has been running for more than 90 minutes. Additionally, we should ensure that our time comparisons take place in the PST timezone, since there's no guarantee that the current time for the bot matches the time for the build log.
Specifically, I'd like to say something like "crowbot: what issue should I poke?" and get back a random issue that:
E-easy
or E-less easy
label appliedC-assigned
label appliedfindIssue
function by passing the appropriate github API arguments (see the command for reviewing a PR for an example).The warning added in #75 is no longer always correct since we started using taskcluster.
Both 'help' and 'explain' are not exactly helpful.
It would be handy to say things like "is vertical-lr-blocks.html intermittent?" and have crowbot search for I-intermittent issues with that filename in them.
They're never intended as github references, in my experience.
15:43 <jdm> Savago: I'm talking about https://github.com/servo/servo/pull/5366/files#diff-90a6391c1c7c20ffbfca3665f13cd657R490
15:43 <crowbot> PR #5366: Load a placeholder when a url to an image is broken. - https://github.com/servo/servo/pull/5366
We use the assignee for a PR in servo/servo to indicate who is responsible for reviewing the changes. We should add a command that finds all of the PRs with no assignee and reports the title and url, one per line.
We could have crowbot return a random issue to triage (ie. is this issue still valid?), or just the least recently modified issue in the database.
This will prevent it being misused in attempts to learn more about how the bot works. We should just silently ignore anything like <user> crowbot: explain
.
<Ms2ger> Shut up, crowbot
<jdm> crowbot: shut up
eg.: [15:36:01] <pcwalton> anyone: https://github.com/mozilla/servo/pull/1574
The bot gets restarted by heroku at least every 24 hours, so we sometimes drop pending messages. We should write a file of pending pings and read it in at startup.
Could easily grab it from http://mxr.mozilla.org/servo/search?string=unsafe\s*{®exp=1&case=on&find=&findi=&filter=^[^\0]*%24&hitlimit=&tree=servo, but that's updated every day.
I've been receiving pings from #servo in #jsapi because I join that channel first, and crowbot hangs out in both.
It currently responds with a link to the Servo documentation, but I've never seen the command used for that purpose. Users are more likely to want information about crowbot's features, so we should provide that (probably by linking to a document in this repository).
Similar to 459b4a6, sometimes we want to perform some CI maintenance when there are no active build jobs. We should add a command that pings a user the next time that the queue becomes idle (and check the queue more frequently than once an hour when someone is waiting to be pinged).
If I want to talk to someone not in the channel (!summon nick), it would be nice to be notified when that person arrives.
TRUMPET THAT FACT
[11:09:18] <jdm> teodor: I would recommend #1535 or #1534
[11:09:18] <crowbot> Issue #1535: `make_url` should take `&str` instead of `~str` - https://github.com/mozilla/servo/issues/1535
We're using an old version of node that doesn't like some of the newer syntax in the newsflash module.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.