Amish Shah
8a2ec437e5
Merge branch 'master' into indev-prism
2017-02-22 20:37:59 +00:00
Gus Caplan
61e12c637b
Add support for more OAuth features ( #1203 )
2017-02-22 20:09:40 +00:00
Schuyler Cebulskie
f2a6c1d98c
Improve Client docs a bit more
2017-02-21 14:02:29 -05:00
Schuyler Cebulskie
7232531eb1
Move all util methods into class
...
Remove TransformMessageOptions altogether
2017-02-15 22:25:18 -05:00
Schuyler Cebulskie
d6f17a9319
Merge branch 'master' into indev-prism
2017-02-06 01:54:31 -05:00
Schuyler Cebulskie
b859ba7639
Increase some documentation detail
2017-02-05 23:00:36 -05:00
Gus Caplan
59ff1d99ba
fix types for snowflakes ( #1156 )
...
* fix types for snowflakes
* Update TextBasedChannel.js
2017-02-03 21:37:58 -05:00
Schuyler Cebulskie
e8ac18489e
Merge branch 'master' into indev-prism
2017-02-01 15:29:45 -05:00
Gus Caplan
87b600f78f
switch to os shim for safety ( #1136 )
...
* switch to os shim for safety
* Update Client.js
2017-01-26 21:21:43 +00:00
Schuyler Cebulskie
b13fdcc8d3
Merged master into indev-prism
2017-01-18 19:23:18 -05:00
Gus Caplan
3f4cbd07dd
add voice region getting ( #1108 )
...
* add voice region getting
* clean up this mess
* add docstrings
* Update VoiceRegion.js
* Update RESTMethods.js
2017-01-18 19:14:44 -05:00
Amish Shah
ba465bc680
Merge branch 'master' into indev-prism
2017-01-15 14:20:32 +00:00
Gus Caplan
78bf402e8e
allow users and members to not be cached ( #1097 )
2017-01-14 21:20:09 +00:00
Amish Shah
d13c48bafa
more tiny voice docs
2016-12-30 18:10:48 +00:00
Amish Shah
72a99f9582
start work with broadcast streams
2016-12-29 21:22:13 +00:00
Schuyler Cebulskie
289447e4c9
Update Client.js
2016-12-28 16:28:36 -05:00
Gus Caplan
2410fdf8d2
fix heartbeats once and for all ( #1016 )
2016-12-25 16:28:36 +00:00
Gus Caplan
3eca3ba95e
add handler in case heartbeat is not acked ( #1013 )
...
* add handler in case heartbeat is not acked
* ffs
2016-12-24 11:04:27 +00:00
Gus Caplan
fa7d63a10a
add an invite generator ( #993 )
...
* add an invite generator
* `number |= null` is safe, so we can simplify this
* Update Client.js
* aaaaaa
2016-12-20 23:37:36 +00:00
Gus Caplan
b74c1b70b6
fix 992 ( #994 )
2016-12-18 16:06:42 -05:00
Gus Caplan
a20bac7258
update per issue 69 on the h&c github ( #963 )
...
* update per issue 69 on the h&c github
* clean up things that don't exist anymore
2016-12-15 16:32:19 +00:00
Schuyler Cebulskie
58c7c2e7b8
Add client ping stuff
2016-12-02 20:58:19 -05:00
Schuyler Cebulskie
dc6c1140bc
Improve some JSDocs
2016-11-27 01:08:08 -05:00
Schuyler Cebulskie
ac64f8bd23
Improve rest args docs
2016-11-24 11:22:13 -05:00
Schuyler Cebulskie
ee4a8bb3b6
Made Client.browser a getter
2016-11-20 22:45:59 -05:00
Schuyler Cebulskie
f6a60581c4
Remove even more stuff from web dists
2016-11-20 22:40:06 -05:00
Gus Caplan
2440a4a2c8
Add webpack building ( #907 )
...
* friggin webpack tho
* probably important
* add all the stuff to the package.json
* add minify builds and a nice package.json script to run it all
* clean up
* use uglify harmony branch so we can actually run minify builds that work
* update build system
* make test better
* clean up
* fix issues with compression
*
* c++ requirements in a node lib? whaaaaat?
* fix travis yml?
* put railings on voice connections
* 🖕🏻
* aaaaaa
* handle arraybuffers in the unlikely event one is sent
* support arraybuffers in resolvebuffer
* this needs to be fixed at some point
* this was fixed
* disable filename versioning if env VERSIONED is set to false
* Update ClientDataResolver.js
* Update ClientVoiceManager.js
* Update WebSocketManager.js
* Update ConvertArrayBuffer.js
* Update webpack.html
* enable compression for browser and fix ws error handler
* Update WebSocketManager.js
* everything will be okay gawdl3y
* compression is slower in browser, so rip the last three hours of my life
* Update Constants.js
* Update .gitignore
2016-11-20 19:38:16 -05:00
Schuyler Cebulskie
b07a31d44e
Change case of "function"
2016-11-12 21:07:22 -05:00
Schuyler Cebulskie
90304aa7d6
Fix loads of JSDoc type issues
2016-11-12 20:52:37 -05:00
Schuyler Cebulskie
ce132d5f54
Make bot/user account warnings MOAR CONSISTENT!!one!
2016-11-12 17:15:17 -05:00
Programmix
fe3914658a
Grammar cleanup ( #875 )
...
This commit:
* fixes inconsistencies (primarily regarding capitalization)
* fixes non-proper nouns that were improperly capitalized
* fixes reminents from not-so-meticulous copy+paste jobs
2016-11-05 23:57:34 +00:00
Schuyler Cebulskie
d7e1e1c0c9
Add warnings for Collection.find/exists
2016-10-30 22:22:16 -04:00
Schuyler Cebulskie
f2496070d3
Document client timeout/interval stuff
2016-10-30 17:02:06 -04:00
Schuyler Cebulskie
85330769a7
Refactor OAuth application stuff
2016-10-30 16:55:08 -04:00
Schuyler Cebulskie
589c44327a
Make bot/user account notices consistent
2016-10-30 16:41:39 -04:00
Schuyler Cebulskie
60e0d507f0
Clean up nearly all promises to utilise chaining, other small fixes
2016-10-30 16:27:28 -04:00
isonmad
4bd19c94ba
fix Client.destroy ( #853 )
...
_timeouts and _intervals were changed to Set objects in
commit 6ede7a32fd a month ago.
Like #844 , this fix was reverted in 7d04863b66 (#839 )
without explanation and was never included in the followup rewrite in
commit 5e2ee2398e .
2016-10-27 17:38:34 -04:00
Hackzzila
c9dbf1f7f0
OAuth info stuff ( #849 )
...
* OAuth info stuff
* fix docs
* oops
2016-10-27 21:50:04 +01:00
Amish Shah
00fe45f6b3
simplify client destruction
2016-10-26 19:52:41 +01:00
Amish Shah
5e2ee2398e
Fix some destroy stuff ( #828 )
2016-10-26 19:42:21 +01:00
Amish Shah
7d04863b66
Revert "fix Client.destroy bugs" ( #839 )
2016-10-26 17:30:18 +01:00
isonmad
e9fa8a438c
fix Client.destroy bugs ( #828 )
...
* add test for Client.destroy()
* propagate errors in ClientManager.destroy
If the promise returned by logout() rejects, previously
it would be completely uncaught, and just return an
eternally pending promise that never resolved.
* fix RESTMethods.logout
Without a data argument, the POST that superagent sends causes
the discord server to reply with a HTTP 400 error:
text: '{"Content-Type": "Expected Content-Type to be one of set([\'application/json\'])."}',
* fix Client.destroy
_timeouts and _intervals were changed to Set objects in
commit 6ede7a32fd a month ago.
Changing them to arrays causes failures if you try to reuse
the client object again.
* always close websocket in ClientManager.destroy
Invoking logout does not implicitly cause the server to close
the websocket for you, so cleanup everything.
Otherwise the websocket being open keeps node alive and hanging
mysteriously until the connection hits a timeout.
* fix indentation for eslint
2016-10-26 14:49:45 +01:00
Schuyler Cebulskie
fc307fab8a
Remove unnecessary array conversions
2016-10-16 21:14:59 -04:00
Gus Caplan
853a3dfa04
Add getRecommendedShards and automatic shard count in ShardingManager ( #796 )
...
* draft stuff
fix docstring for Client#token
Reorganise resolver
make env better for shards, clean up docs
Fix Gus' log messages
7
meh just gateway/bot not v7 :(
final changes, ready for mergin!
build docs
make default totalShards 'auto', fix docs for totalShards type
clean up docs more
run docs
* make consistancy real
* Update and rename getRecommendedShards.js to GetRecommendedShards.js
* Update GetRecommendedShards.js
* Update index.js
* Update RESTMethods.js
* Update Shard.js
* Update GetRecommendedShards.js
* Update ShardingManager.js
* run docs
2016-10-13 23:26:10 -04:00
Gus Caplan
32eeb8ad5e
Fix feature/login ( #790 )
...
* eeeeeeee
* too tired
* ok gawdl3y
Signed-off-by: Gus Caplan <fluffyrobotcheese@gmail.com>
2016-10-10 02:55:09 -04:00
Schuyler Cebulskie
29b33bffaa
Rearrange and clean up more webhook stuff
2016-10-09 15:50:50 -04:00
Schuyler Cebulskie
7a53f70978
Rename maxMessageCache -> messageCacheMaxSize
2016-10-09 15:16:54 -04:00
Schuyler Cebulskie
a717b60417
Add validation for all non-ws client options
2016-10-09 15:11:15 -04:00
Schuyler Cebulskie
dabe51fc8d
Reorganise disabledEvents stuff
2016-10-09 14:41:57 -04:00
Programmix
3e2d6ccc48
Convert disabledEvents Array to Object ( #786 )
...
* Convert disabledEvents Array to Object
Increased performance
* Commit to please Lord Gawdl3y
* Nitpick with chopsticks
2016-10-09 14:22:52 -04:00
Schuyler Cebulskie
f9b7f9c27e
Add readonly
2016-10-06 21:49:08 -04:00
Schuyler Cebulskie
79b0d3f2a5
Client.readyTime -> readyAt (consistency)
2016-10-06 21:48:25 -04:00
Programmix
c4e1e4f50f
Add InviteResolvable ( #766 )
...
* Add InviteResolvable
Add InviteResolvable
* Return data as fallback instead
* Rename resolver method
2016-10-02 19:21:08 -04:00
Schuyler Cebulskie
682e33cad9
Whoopsies
2016-09-27 20:21:52 -04:00
Schuyler Cebulskie
b8e659d544
Make Client.emojis suck less
2016-09-27 20:11:22 -04:00
Schuyler Cebulskie
973dbe8266
Add more @readonly and clean up some stuff
2016-09-27 20:07:33 -04:00
Schuyler Cebulskie
1e57c968dd
Made date/timestamps consistent and less shitty
2016-09-27 19:46:53 -04:00
Schuyler Cebulskie
ba8dd3467a
Switch config back to camelCase
2016-09-27 18:42:32 -04:00
Schuyler Cebulskie
49d905a7b1
Reorganise some shard logic
2016-09-27 17:23:03 -04:00
Schuyler Cebulskie
e5a987e0ef
Add client shard eval/client property fetching, and improve existing shard stuff
2016-09-27 02:19:53 -04:00
Schuyler Cebulskie
4fe30aa4d3
Rip out client sharding logic into its own class
2016-09-26 23:23:56 -04:00
Gus Caplan
b4f3575335
i am facepalming so hard right now ( #740 )
2016-09-26 03:55:54 -07:00
Amish Shah
f1cb39a319
Expose Presence and Game structures
2016-09-25 20:17:35 +01:00
Amish Shah
03651fd6e3
Change how presences are handled
2016-09-25 14:16:03 +01:00
Schuyler Cebulskie
d9bc5cea1e
Small cleanups
2016-09-24 02:43:27 -04:00
Schuyler Cebulskie
d62551bea2
Remove old code
2016-09-24 02:20:48 -04:00
Schuyler Cebulskie
1008f601f4
Add shard client prop fetching, remove guild count fetching, improve eval
2016-09-24 02:12:45 -04:00
Schuyler Cebulskie
e4f416ae6c
Add shard eval, broadcastEval, and fix fetchGuildCount response
2016-09-24 01:21:41 -04:00
Gus Caplan
063be5cee2
smarter sharding™ ( #732 )
2016-09-23 21:43:16 +01:00
Schuyler Cebulskie
4bf6ad30f3
Remove a line
2016-09-22 23:10:00 -04:00
Schuyler Cebulskie
3fa4ff13e3
Add ShardingManager.fetchGuildCount
2016-09-22 22:48:21 -04:00
Schuyler Cebulskie
e5bac1339d
Improve Client.sweepMessages
2016-09-20 10:57:39 -04:00
Schuyler Cebulskie
6075ec0e19
Add more detail to debug message
2016-09-20 01:25:19 -04:00
Schuyler Cebulskie
8f1bc5edab
Add swept messages counter and debug message
2016-09-20 01:14:15 -04:00
Schuyler Cebulskie
9503990a86
Rename max_message_lifetime to message_cache_lifetime
2016-09-19 17:52:11 -04:00
Schuyler Cebulskie
afc8e5bee0
Add message sweeping
2016-09-19 16:52:46 -04:00
Schuyler Cebulskie
47d873a8ca
Move and improve debug/warn docs
2016-09-19 05:11:35 -04:00
Schuyler Cebulskie
6a94658dd7
Clean up some stuff
2016-09-19 04:32:24 -04:00
Schuyler Cebulskie
6ede7a32fd
Switch timeouts/intervals to Sets
2016-09-19 04:16:32 -04:00
Schuyler Cebulskie
7d8667694d
Fix massive timeout/interval memory leaks
2016-09-19 03:49:42 -04:00
Schuyler Cebulskie
336366d653
Bad Hydra.
2016-09-18 23:46:59 -04:00
Amish Shah
3dab19a3bc
Add Client.fetchInvite
2016-09-11 18:19:55 +01:00
Schuyler Cebulskie
d42b589528
Rename emailOrToken -> tokenOrEmail
2016-09-08 22:27:38 -04:00
Tyler
6dfe160c52
Add get status() for Client ( #622 )
...
* Add get status() for Client
* Fix trailing space
2016-09-05 07:52:15 +01:00
Amish Shah
bcab8805af
Add client.emojis and fix eslint
2016-09-04 17:54:31 +01:00
Amish Shah
1155c482f1
make client.readyTime a date
2016-09-04 11:55:23 +01:00
Schuyler Cebulskie
0b908f5bce
Cleanup Part 2: Electric Boogaloo (Reloaded) ( #594 )
...
* Cleanup Part 2: Electric Boogaloo (Reloaded)
* Moar cleanup
* Tweak NOT_A_PERMISSION error
2016-09-04 10:08:09 +01:00
Amish Shah
5a9c42061f
Fix permissionsFor
2016-09-03 23:46:39 +01:00
Amish Shah
16fbbde35c
Make syncGuilds off limits to bot accounts
2016-09-03 23:25:26 +01:00
Schuyler Cebulskie
68acf37fd4
Add stricter/better ESLint config ( #589 )
...
* Add stricter/better ESLint config
* Remove more unnecessary @returns
2016-09-03 20:45:23 +01:00
Amish Shah
a172fffd76
Actually add GUILD_SYNC
2016-09-03 17:59:16 +01:00
Schuyler Cebulskie
27652b94af
Make JSDocs follow general conventions ( #582 )
...
* Make JSDocs follow usual conventions
* Fix StringResolvable name
* Make function lowercase
2016-09-03 09:57:25 +01:00
Hyper-Coder
168256469e
Re add <Client>.uptime ( #579 )
2016-09-02 00:03:33 +01:00
Amish Shah
892e162229
fix setTyping and many other timeout/interval based methods
2016-08-31 19:28:00 +01:00
Amish Shah
4f41a86dd3
Clear timeout IDs from array after execution
2016-08-30 14:20:33 +01:00
Amish Shah
d249aa10cc
Add client.destroy();
2016-08-30 13:05:57 +01:00
Schuyler Cebulskie
6faa409e96
Add note about requiring bot accounts ( #552 )
2016-08-27 20:22:08 +01:00
Schuyler Cebulskie
7ae12ab325
Rename client.cacheUser to client.fetchUser ( #551 )
2016-08-27 19:28:18 +01:00
Schuyler Cebulskie
f944dce5c7
Add client.cacheUser method ( #548 )
...
* Add client.cacheUser method
* Fixed ESLint issues
* Added existence check first
2016-08-27 15:22:07 +01:00
Amish Shah
baff7a094c
Merge remote-tracking branch 'origin/indev-rewrite' into indev-rewrite-voice
2016-08-25 14:26:38 +01:00