Commit Graph

1365 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 696273558e degesch: rewrite input layer
Now with less #ifdefs.
2016-03-07 22:52:56 +01:00
Přemysl Eric Janouch 584d2f0295 degesch: use libffi to unify input callbacks
And fuck you both, Readline and Editline.
2016-03-06 18:12:12 +01:00
Přemysl Eric Janouch 3304b718aa Try to use version information from git 2016-03-06 03:52:39 +01:00
Přemysl Eric Janouch 10bdf90fe2 Don't force override compile flags 2016-03-06 03:50:35 +01:00
Přemysl Eric Janouch 17804fa49b degesch: fix +=/-= to null config items 2016-03-05 19:15:40 +01:00
Přemysl Eric Janouch 4b10ea7ab0 factoids: safer DB writes 2016-02-29 03:15:44 +01:00
Přemysl Eric Janouch fb0b0c4cf0 factoids: allow querying definitions by number 2016-02-29 03:11:33 +01:00
Přemysl Eric Janouch f492592735 factoids: look for duplicates case-insensitively 2016-02-29 02:50:53 +01:00
Přemysl Eric Janouch 6190733079 degesch: mark a problem 2016-02-29 02:50:41 +01:00
Přemysl Eric Janouch 676e6c20fa ZyklonB: add a factoids plugin 2016-02-27 22:29:19 +01:00
Přemysl Eric Janouch ed20322e5e ZyklonB: run plugins in a special work directory
Also small refactoring.
2016-02-20 00:37:57 +01:00
Přemysl Eric Janouch a275f9636c ZyklonB: revisit error handling 2016-02-20 00:01:54 +01:00
Přemysl Eric Janouch 056e0a4765 Resolve tls_ca_{file,path} relative to config dir 2016-02-19 23:46:44 +01:00
Přemysl Eric Janouch 798ed73a8c ZyklonB: fix segfault on total SOCKS failure 2016-02-12 04:11:33 +01:00
Přemysl Eric Janouch 7be995f74a ZyklonB: avoid infinite reexec loops 2016-02-12 04:05:09 +01:00
Přemysl Eric Janouch 06b03d336e degesch: fix segfault on sent messages w/o buffer 2016-02-12 04:04:35 +01:00
Přemysl Eric Janouch 11519ee860 degesch: update screen size when terminal resumed
Apparently we don't receive the events when we give up the terminal.
2016-02-10 23:02:33 +01:00
Přemysl Eric Janouch 03d5b27398 degesch: use mkstemp() with a safe umask 2016-02-09 13:52:56 +01:00
Přemysl Eric Janouch 3315b16f79 degesch: log messages from /quote and plugins
That is, parse back all output messages and log based on that.
2016-02-09 05:10:41 +01:00
Přemysl Eric Janouch 0c19a384f1 Fix typos 2016-02-09 04:50:51 +01:00
Přemysl Eric Janouch 333ad2c981 degesch: allow changing the list of used CAPs
Bump liberty.
2016-02-01 21:57:43 +01:00
Přemysl Eric Janouch a850ee45f1 degesch: optimize buffer memory usage
We have approximately 5 formatter_items per buffer_line.  Let's assume
we're on a 64-bit machine.  Then there were (5 * 2) + 3 useless pointers
(104 bytes) as well as 5 * (4 + 4) = 40 bytes of wasted space because
of needless padding.  That's 144 bytes already.  Compared to that, this
change adds 16 bytes of overhead for an array sentinel, i.e. 128B less.

With a limit of 1000 lines per buffer, we've saved ~128kB per buffer
on completely useless data, and code complexity stays roughly the same.

All in all, memory usage for buffers should be about 50% lower.
2016-01-31 21:43:23 +01:00
Přemysl Eric Janouch 10a264ec3d kike: add support for IRCv3.2 server-time 2016-01-31 21:43:23 +01:00
Přemysl Eric Janouch 2ec6258ff3 last-fm.lua: don't use empty album names 2016-01-18 01:28:53 +01:00
Přemysl Eric Janouch f57664ddd0 degesch: add an assertion
It should never fail with current code.
2016-01-18 00:59:43 +01:00
Přemysl Eric Janouch 773d14e740 degesch: disable TLS compression 2016-01-18 00:45:20 +01:00
Přemysl Eric Janouch 221ae03b5c degesch: Lua: fix memory leak on load failure 2016-01-17 22:57:16 +01:00
Přemysl Eric Janouch 588a696c68 degesch: lesser heap fragmentation 2016-01-17 22:15:48 +01:00
Přemysl Eric Janouch 6db40c4503 Bump liberty 2016-01-17 04:43:43 +01:00
Přemysl Eric Janouch f070523085 Bump liberty 2016-01-16 06:30:08 +01:00
Přemysl Eric Janouch dac5c9df6d kike: more cleanup 2016-01-16 06:30:08 +01:00
Přemysl Eric Janouch ced2a57cfc kike: allow messages before protocol establishment
We can just queue them.
2016-01-16 06:30:08 +01:00
Přemysl Eric Janouch f36d66b0cb kike: asynchronous address resolution
As well as some refactoring and cleanup.
2016-01-16 06:30:08 +01:00
Přemysl Eric Janouch fdeb550ee0 degesch: fix backlog limit
It was effectively infinite.
2016-01-15 22:11:05 +01:00
Přemysl Eric Janouch c4a18ec8a7 degesch: fix and simplify screen handling
Now with less madness.
2016-01-15 05:40:20 +01:00
Přemysl Eric Janouch d0db1a6cdc degesch: enforce fullscreen buffers
Probably long overdue.

Now we actually look like something resembling a regular IRC client.
2016-01-15 05:12:03 +01:00
Přemysl Eric Janouch 9333081178 degesch: option for fullscreen buffers 2016-01-15 05:09:42 +01:00
Přemysl Eric Janouch b7c9e8ca23 degesch: make backlog limit configurable 2016-01-15 05:09:42 +01:00
Přemysl Eric Janouch f39e2a4bc8 degesch: Lua: add autocomplete hooks 2016-01-15 02:39:10 +01:00
Přemysl Eric Janouch 91f3bd60df degesch: Lua: finish the last-fm plugin 2016-01-14 04:13:03 +01:00
Přemysl Eric Janouch 56858a97dd degesch: Lua: allow simulating user input
Also added UTF-8 validation to buffer:log() while I'm at it.
2016-01-14 03:34:29 +01:00
Přemysl Eric Janouch 331d1842b9 Bump liberty, shuffle some code 2016-01-14 03:26:02 +01:00
Přemysl Eric Janouch 19b09a8cec degesch: add a last-fm "now playing" plugin 2016-01-09 10:27:01 +01:00
Přemysl Eric Janouch 32f719dec7 degesch: Lua: pass hostname to on_connected 2016-01-09 06:19:54 +01:00
Přemysl Eric Janouch 0b92e9210c degesch: Lua: set sockets to nonblocking 2016-01-09 05:47:24 +01:00
Přemysl Eric Janouch 092e9b5101 Bump liberty 2016-01-09 05:27:45 +01:00
Přemysl Eric Janouch faa0c989f8 degesch: Lua: actually allow filtering out input 2016-01-09 05:05:46 +01:00
Přemysl Eric Janouch 53e72dd12d degesch: Lua: provide a traceback on load error 2016-01-09 05:01:50 +01:00
Přemysl Eric Janouch 83c14ba264 degesch: Lua: fix plugin configuration names 2016-01-09 05:01:50 +01:00
Přemysl Eric Janouch 64143a5957 degesch: Lua: fix luaL_ref() usage 2016-01-09 05:01:50 +01:00