v3.0.0 - 2019-01-27
For more details, see the full changelog and milestone.
Almost a year in the making, 1500+ commits, 650+ merged PRs, and 30+ contributors, The Lounge v3.0.0 really is the release of all the superlatives. It ships some of our most-upvoted and longest-awaited feature requests, with significant improvements all across the board, and a brand new documentation website.
TL;DR: If you are only looking for a simple list of breaking changes before we jump onto a shortlist of the top changes below, we now have an upgrade guide. You can also try our demo to see and test the new features.
We rewrote our entire documentation from scratch to better reflect the full capabilities of The Lounge. The website is now mobile-friendly, has a search feature, detailed pages about installation, usage, and configuration, and a list of guides to make The Lounge effortless to set up to your needs.
The first thing you might notice is how the overall UI has changed. We extracted Crypto and Zenburn into dedicated themes to only ship our default and updated theme, and Morning, the dark version of our default theme. Our logo made its way to the client and its notification-aware favicons. Speaking of notifications, the browser window title now contains the number of unread notifications you have received:
One of the most notable additions of this release is the ability to reload messages from history (previous conversations and channels) between restarts of The Lounge. This bridges a significant and long-standing gap with other traditional IRC clients, and creates an opportunity for more advanced features (such as a search capability). See the corresponding configuration option for more details.
The Lounge now lets you upload files! Once enabled in your configuration file, you can directly upload files and images from the UI:
To upload a file, use the icon in the message input, or simply drag-and-drop it on the UI.
A new set of commands gives you the ability to ignore users based on nickname or hostmask: /ignore
, /unignore
, and /ignorelist
.
List ignored users directly from the UI using the context menu on networks
📂 The channel list packs a lot of improvements:
- It is now possible to collapse channels/direct messages under a given network:
-
New keyboard shortcuts have been added to easily navigate between lobbies. A list of all available shortcuts can be found in the Help window of the client.
-
You can now edit existing networks from the UI. Most changes will take effect after the next reconnection, but editing the network name will go into effect immediately.
To edit a network, click the according action in the network context menu
-
You can also disconnect and re-connect directly from the network context menu. Disconnected networks will stay disconnected upon restarts of the server.
-
Networks now reflect their connection and security status. For a network to be considered secure, it has to use a valid and trusted TLS certificate (trusted by your Node.js installation) or to be connected to localhost.
-
When joining a new channel, it is now added to the list in alphabetical order. You can still sort channels yourself by dragging them around.
-
The channel list can now be hidden on desktop devices.
🌍 Links previews have also been improved:
- They gained an expand button if the title or description text is truncated:
-
Your browser language is now passed onto the server of the URL being fetched so that previews can be displayed in your language (depending on remote server support).
-
Any error occuring while pre-fetching a URL (e.g. request failure or max size exceeded) will be displayed on the interface. More details can be seen by expanding the preview.
💬 The message input also gets a few improvements:
- You can now easily wrap text with quotes, brackets, parentheses, etc. by selecting characters then hitting the corresponding key:
- The input bar no longer aggressively steals the keyboard focus. This change makes it possible to tab through focusable/clickable elements in the UI. Typing or pasting text (using Ctrl/⌘+V) anywhere when nothing is in focus will however automatically set the focus to the input bar.
⚙️ Here are a few new things you may notice in the client settings window:
- Some settings may now be hidden behind the new "Advanced settings" checkbox:
- You can now (optionally) synchronize client settings across all your devices:
- You can also instruct your device to open all URLs starting with
irc://
using The Lounge:
🖥 Administrators handling the server and using the CLI will notice a few changes:
-
Text log format has been modified to improve formatting and consistency with other IRC software. The
logs.format
andlogs.timezone
settings have been removed. The Lounge now logs timestamps using a format ofYYYY-MM-DD HH:mm:ss
(which used to be the default value) in UTC timezone. These are some of the breaking changes we have documented in our upgrade guide. -
The inline documentation of the configuration file that gets generated at
~/.thelounge/config.js
has been entirely rewritten. It can also be found in a rich-format on the configuration documentation. -
The
thelounge install
command now allows you to install a specific version, such asthelounge install thelounge-theme-solarized@1.0.0
. -
A new command,
thelounge update
, has been added to update all installed packages and themes at once. -
Message logging is now enabled for LDAP users.
💎 Other notable changes:
- Visibility of the password fields can now be toggled using the eye icon:
- If you are operator in a channel, the user context menu now lets you voice/devoice and op/deop users:
- MOTDs in network windows have been improved to correctly display ASCII art:
-
The
/whowas
command is now supported and its response is displayed in a direct message window. -
It is now possible to include randomly-generated numbers into the default nickname on page load, using percent signs (
%
). For example, this helps avoiding nick collisions in public mode. See the configuration option. -
URL detection in messages now supports links without protocol or
www.
prefixes (if the top-level domain is valid) and has been improved overall by switching to a better library. -
Accessibility of the interface has been improved throughout the interface. If you are an assistive technology user and encounter accessibility issues, we encourage you to open an issue on GitHub to help us identifying and resolving them.
-
Among other improvements to CTCP handling, the network window now reports when someone is making a CTCP request against your nickname:
This concludes the highlights of this release, but there is a lot more to it: new and improved features, security fixes, etc., of which you will find a more comprehensive list below.
So much work has happened in the last year, result of the hard work of so many contributors that we are incredibly thankful for. We hope you will love The Lounge v3. ❤️
One more thing: we started an Open Collective a few months back, where recurring and one-time donations are welcome, should you wish to help us financially. Among other things, it allows us to assemble and ship free sticker packs, so make sure to grab yours!
Added
- Enable logging for LDAP users (#2098 by @keegan)
- Let user know someone is making a CTCP request against their nick (#1930 by @astorije)
- Add log role to message container (#1907 by @xPaw)
- Add ability to collapse networks in the channel list (#1867, #2225, #2195 by @McInkay, #2298, #2399, #2530 by @xPaw, #2305 by @astorije, #2388 by @Raqbit)
- Add install command support for package version (#2161 by @realies)
- Add support for reloading messages using SQLite logging (#1839, #2188, #2190, #2222, #2391, #2546 by @xPaw, #2541 by @astorije)
- Optional syncing of client settings (#1851 by @creesch)
- Add advanced toggle and hide certain settings by default (#1860 by @McInkay)
- Allow hiding channel list on desktop (#2212, #2235, #2601, #2854 by @xPaw, #2246 by @astorije, #2785 by @williamboman)
- Add keybinds for cycling through networks/lobbies (#2206 by @ESWAT)
- Autocomplete bracket and quote characters like in a modern IDE (#2275 by @xPaw)
- Add auto-prepend behavior for unprefixed channel names (#2289 by @lol768)
- Add
?channels=x,y,z
alias for?join=x,y,z
(#2290 by @lol768) - Allow editing networks via UI (#2229 by @xPaw)
- Add
op
andvoice
to the user context menu (#2355 by @Jay2k1) - Add
upgrade
CLI command for themes and packages (#2380 by @jake-walker) - Add support for
/ignore
,/unignore
and/ignorelist
commands (#2197 by @RockyTV) - Add password visibility toggle feature (#2429 by @c-ciobanu)
- Allow connecting/disconnecting from networks in UI (#2114 by @MaxLeiter)
- Add alert count to title (#2496 by @Jay2k1, #2558 by @xPaw)
- Display visual feedback on self away/back (#2523 by @Jay2k1)
- WHOWAS support (#2554 by @Jay2k1)
- Add "User information" (
whois
) support to the sidebar context menu (#2587 by @aspotton) - Implement
irc://
andircs://
protocol handlers (#2571 by @xPaw) - Add file uploading support (#2552 by @MaxLeiter, #2743, #2744, #2748,
#2749, #2851, #2985 by @xPaw, #2983 by @astorije)
Changed
- Turn channel list into an accessible tablist (#1915, #2079, #2828, #2830, #2840 by @xPaw)
- Render MOTD with a single message (#2059 by @xPaw)
- Show error if image is greater than max prefetch size (#1919 by @McInkay)
- Improve monospace formatting in messages (#2031 by @astorije)
- Switch default home location to
~/.thelounge
(#1734 by @astorije) - Report server errors when preview fetch fails (#2036 by @xPaw)
- Relay client's preferred language in link preview requests (#1918 by @williamboman)
- Allow generating random numbers in nick on page load (#2090 by @xPaw)
- Word prefetch errors differently (#2101 by @xPaw)
- Log socket close error if any (#2108 by @xPaw)
- Add autocompleted names to private chats (#1669 by @edbrannin)
- Change ctrl/command up/down to alt/option up/down to align with other apps (#2133 by @McInkay)
- Move the user list client code to its own file and make it possible to navigate with keyboard (#1842 by @astorije)
- Make code blocks more readable in darker themes (#2135 by @williamboman)
- Center loading screen and add logo (#1668 by @xPaw)
- Try to find
og:video
andog:audio
on html pages (#1838 by @xPaw) - Scroll to joined/activated channel (#2166 by @dgw)
- Upgrade to Font Awesome 5 (#2194, #2205 by @xPaw)
- Convert the entire viewport to use flexbox (#2185 by @xPaw)
- Insert channel/user in alphabetical position into channel list (#2152 by @McInkay)
- Use undate library to handle modifier keys (#2210 by @xPaw)
- Add logo to the sign in page (#2199 by @astorije)
- Do not aggressively focus input when clicking anywhere and handle typing out of focus (#2215, #2242, #2258, #2416, #2414, #2536 by @xPaw)
- Improve accessibility for emoji (#2186 by @MaxLeiter)
- Do not condense actions that are performed by or related to the user (#2268 by @xPaw)
- Reduce lightness of low contrast nick colors to reach AA level of WCAG 2.0 (#2282 by @astorije)
- Reduce top margins in Settings/Help/etc. (#2321 by @MaxLeiter)
- Improve UI of previews (#2272, #2349 by @astorije)
- Extract Crypto and Zenburn from the core codebase, rename "Example" theme, fallback to default theme when a theme is unavailable (#2328 by @astorije)
- Update placeholder rules for modern browsers (#2356 by @xPaw)
- Add project version in outputs that mention source SHA (#2361 by @astorije)
- Remove header border on non-chat windows and reduce top margin a bit more (#2368 by @astorije)
- Make "Show older messages" style consistent with other buttons (#2369 by @astorije)
- Count quits as parts in condensed messages to reduce information density (#2386, #2383, #2392 by @xPaw)
- Favicons, favicons everywhere (#2009, #2540 by @astorije, #2431 by @xPaw, #2755 by @McInkay)
- Show a ghost placeholder when dragging channels (#2405 by @xPaw)
- Use overscroll-behavior (#2413 by @xPaw)
- Switch to
linkify-it
for URL detection in messages (#2397 by @xPaw) - Add asterisk in front of nick in action lines (#2488 by @Jay2k1)
- Put list items in network context menu together (#2494 by @xPaw)
- Do not write topic on join to logs (#2508 by @xPaw)
- Make CTCP requests/responses increase unread counter (#2510 by @Jay2k1)
- De-duplicate link fetching to one request at once (#2538 by @xPaw)
- Improve formatting of text logs (#2501 by @Jay2k1)
- Target more modern browsers in babel (#2565 by @xPaw)
- Make context menus accessible with keyboard (#2377 by @xPaw)
- Revamp default theme a bit (#2315 by @astorije)
- Also send away notices to query windows (#2576 by @xPaw)
- Replace current red-text highlight with a full background-color highlight (#2526, #2585, #2622 by @astorije)
- Warn if config owner does not match process UID (#2570 by @xPaw)
- Improve MOTD styling (#2633 by @astorije, #2653 by @xPaw, #2657 by @MiniDigger)
- Make user list section titles sticky on scroll, improve contrasts for accessibility, use CSS variables (#2643 by @astorije)
- Network-first service worker caches (#2515 by @xPaw)
- Add
X-Purpose
header to link prefetcher (#2695 by @RockyTV) - Keep timestamps aligned when using a font with variable-width numbers (#2683 by @ivan)
- Improve confirmation box wording for network removal in client (#2715 by @fnutt)
- Remember disconnected networks between server restarts (#2718 by @xPaw)
- Update emoji data for Emoji v11 (#2735 by @xPaw)
- Enable underlines on links (#2618, #2790, #2817 by @xPaw)
- Use
Date.toISOString
for logging (#2787 by @xPaw) - Add logging to all code paths in LDAP auth (#2930 by @xPaw)
- Update production dependencies to their latest versions:
irc-framework
(#2097, #2575, #2648, #2826, #2981)web-push
(#2112, #2459, #2579, #2782)yarn
(#2123, #2126, #2358, #2465, #2679, #2688, #2808, #2885)chalk
(#2156, #2365)commander
(#2169, #2253, #2606, #2689, #2694, #2762, #2836)request
(#2202, #2454, #2698)sqlite3
(#2238, #2584, #2651, #2863, #2894, #2972)express
(#2241, #2844)socket.io
andsocketio-file-upload
(#2310, #2456, #2911),
#2832, #2868)lodash
(#2384, #2772)fs-extra
(#2410, #2450, #2654, #2893)ua-parser-js
(#2422, #2873)package-json
(#2461)filenamify
(#2555)uuid
(#2596, #2605)mime-types
(#2659, #2722, #2857)semver
(#2703, #2843, #2871)file-type
(#2833, #2861, #2878, #2897, #2914)linkify-it
(#2908)
Deprecated
Removed
- Switch to Node v6 as the minimal supported version (#1727 by @astorije, #2907 by @xPaw)
- Remove autoload deprecation notice (#1728 by @astorije)
- Remove deprecated support for
debug
as a boolean in the configuration file (#1729 by @astorije) - Remove deprecated support for the
--home
option and$LOUNGE_HOME
environment variable (#1733 by @astorije) - Get rid of
Object.assign
polyfill (#1760 by @astorije) - Remove deprecated options for
thelounge start
(#1834 by @astorije) - Remove session token hash conversion (#1966 by @xPaw)
- Remove deprecated support for CSS filenames in theme configuration (#1730 by @astorije)
- Remove support for the
lounge
CLI (which was replaced withthelounge
) (#2077 by @astorije) - Remove
thelounge config
from the CLI (#2196 by @astorije) - Remove nick editor (#2337 by @xPaw)
- Remove ability to change date format and timezone (#2506 by @xPaw)
Fixed
- Fix CTCP commands always sent upper-case (#1927 by @astorije)
- Rewrite CTCP handling (#1928 by @xPaw)
- Send empty banlist error to lobby for channels user is not in (#2095 by @xPaw)
- Change
wsEngine
tows
(#2099 by @xPaw) - Fix
log.warn
in LDAP (#2106 by @xPaw) - Always correctly trigger sticky scroll on
.chat
container (#2107 by @xPaw) - Fix "rendering..." getting stuck on first connection (#2109 by @xPaw)
- Change "Leave" button tooltip to correspond with right click context menu (#2115 by @fnutt)
- Revert "Allow scaling the page" (#2122 by @astorije)
- Set channel state to joined when channel already exists (#2142 by @xPaw)
- Do not crash when user file can not be read or written (#2143 by @xPaw)
- Cleanup chat/userlist to use flexbox, fix a couple of bugs (#2150, #2160 by @xPaw)
- Fix default ECDH curve for better compatibility (#2159, #2163 by @xPaw)
- Do not listen to touch events until client is initialized (#2158 by @xPaw)
- Normalize unicode URLs in link prefetcher (#2171 by @xPaw)
- Fix background color when hovering users in user list (darker themes) (#2172 by @williamboman)
- Always hide horizontal overflow in chat (#2177 by @xPaw)
- Do not include colon in push message for actions (#2179 by @xPaw)
- Do not crash when
awayMessage
is set but IRC connection does not exist (#2181 by @xPaw) - Remove
contain
as it's causing rendering issues (#2182 by @xPaw) - Allow overriding arrays in config, warn about incorrect types (#2189 by @xPaw)
- Don't access
Notification
if the browser does not support it (#2192 by @creesch) - Do not repaint theme on page load (#2213 by @xPaw)
- Fix some URLs not being sent as-is to the client (#2217 by @xPaw)
- Send hexip in ident responses (#2237 by @xPaw)
- Rework how unread marker is moved when status messages are hidden (#2236 by @xPaw)
- Fix incorrect spelling (#2243 by @birkof)
- Support strikethrough and underline at same time (#2248 by @MaxLeiter)
- Render video and audio previews only after
canplay
event fires (#2251 by @xPaw) - Stop propagation, prevent input history call when
alt
is involved (#2262 by @realies) - Scroll channel list only when using keybinds (#2259 by @xPaw)
- Fix order in oidentd file (#2273 by @xPaw)
- Hide autocompletion menu when input is submitted (#2284 by @xPaw)
- Send
Accept
header when fetching links (#2287 by @xPaw) - Fix/Improve some nick fallbacks (#2297 by @astorije)
- Remove left padding from sidebar in example theme (#2309 by @xPaw)
- Fix line-height showing scrollbar on mobile (#2331 by @xPaw)
- Prevent
undefined
OS version in session list (#2340 by @dgw) - Enable sync on empty local storage, force sync, sync on both load and reconnect (#2317 by @creesch, #2544 by @xPaw)
- Fix nicks with special characters being colored incorrectly in messages (#2363 by @xPaw)
- Quick-fix tooltips not being loaded by Webpack (#2367 by @astorije)
- Fix user list scroll area expanding behind the message input on mobile (#2364 by @astorije)
- Fix your own nick in auto completion (#2381 by @xPaw)
- Make a separate function to execute yarn commands; fallback to global yarn (#2385 by @xPaw)
- Fix join channel UI moving when sorting channels (#2404 by @xPaw)
- Fix CSS issues in Microsoft Edge (#2409 by @xPaw)
- Add prefix to channels from connect window (#2378 by @xPaw)
- Specify
parseInt
base inrespondToIdent
(#2439 by @xPaw) - Pointer cursor hovering nicks in user list (#2445 by @MaxLeiter)
- Show connect window when last network is removed (#2480 by @xPaw)
- Fix being unable to click channel link in chan after being kicked (#2482 by @Jay2k1)
- Prevent long lobby names pushing badges out of sidebar (#2503 by @dgw)
- Do not mark your nick changes as self in each channel (#2505 by @xPaw)
- If a preview fails to load, remove the link from msg object (#2504 by @xPaw)
- Fix
/away
not setting you away (#2524 by @xPaw) - Use
http:
for protocol-less URLs (#2532 by @benharri) - Fix word boundary in the custom highlights regex not matching unicode (#2534 by @McInkay)
- Fix multiple
<title>
tags being concatenated (#2543 by @xPaw) - Synchronize number of highlighted messages to client (#2547 by @xPaw)
- Log notices as correct sender when it will be shown in active window (#2550 by @xPaw)
- Do not remove date marker when loading history if date changes (#2567 by @xPaw)
- Reset highlights on self messages; update title when other client opens a channel (#2580 by @xPaw)
- Fix text not having enough space in
<select>
with some fonts (#2548 by @xPaw) - Name close button text on channels "Leave" and keep "Close" for other types (#2593 by @MaxLeiter)
- Disable username auto-capitalization on login form input field (#2617 by @fnutt)
- Make user list state consistent on mobile and desktop (#2599 by @xPaw)
- Fix incorrect target in connect/disconnect context menu (#2626 by @xPaw)
- Stop handling CTCP messages if the sender/target is ignored (#2609 by @RockyTV)
- Fix disabling autocomplete and fix completing special channels (#2630 by @xPaw)
- Remove extra closing tag (#2639 by @xPaw)
- Do not write
/list
messages to logs (#2637 by @xPaw) - Fix ignore list resetting on server restart (#2640 by @xPaw)
- Change alert sound from OGG to WAV (#2655 by @realies)
- Fix IRC modifiers not working with caps lock (#2677 by @xPaw)
- Fix bugs with URL overrides in Connect window (#2702 by @astorije)
- Hide
Native App
settings section when no items are available (#2705 by @MaxLeiter) - Fix displaying away message multiple times in query windows (#2721 by @xPaw)
- Make sure data is an object (#2730 by @xPaw)
- Drop
spdy
module in favor of nativehttps
module (#2732 by @xPaw) - Enforce lobby to be the 0th channel when sorting (#2733 by @xPaw)
- Add
try
/catch
tolocalStorage
methods (#2701 by @adamus1red) - Fix passwords not being saved in Firefox (#2741 by @xPaw)
- Add 3 commands that were missing on client autocomplete (#2756 by @McInkay)
- Fix fullscreen mode for videos (#2775 by @richrd)
- Fix issues in regards to ignoring your own nickname (#2795 by @xPaw)
- Fix extra padding in condensed messages on mobile (#2798 by @xPaw)
- Fix stored image previews not being dereferenced (#2824 by @xPaw)
- Make sure registered command is actually a function (#2848 by @xPaw)
- Use
hasOwnProperty
when checking for webirc (#2849 by @xPaw) - Hard limit nicks to 100 characters, add maxlength on connect inputs (#2858 by @xPaw)
- Fix timing issue crashing on
undefined
when settingopenChannel
(#2859 by @xPaw) - Serve requests from cache when server responds with non 2xx response (#2973 by @xPaw)
- Add fallback IP address for unix sockets (#2967 by @xPaw)
- Don't fallback to
host
in identd server (#2958 by @xPaw) - Fix
.active
styles incorrectly applying to hovered users in userlist (#2975 by @xPaw) - Empty storage directory after destroying all channels (#2937 by @xPaw)
- Add an extra check for setting names (#2977 by @xPaw)
- Fix highlight styles not applying to notices and actions (#2980 by @xPaw)
- Set yarn cache folder in the packages folder (#2979 by @xPaw)
Security
- Sync network status and security to client UI (#2049 by @xPaw)
- Consider localhost connections secure (#2081 by @xPaw)
- Ignore events on the server if incorrect data is supplied (#2088 by @xPaw)
- Allow setting
rejectUnauthorized
per network (#2075, #2154 by @xPaw) - Print failed login attempts to console (#2247 by @xPaw)
- Empty local storage on sign out and move the sign out button to the settings (#2254 by @astorije)
- Use
attr()
on user-controlled data (#2398, #2406 by @xPaw)
Documentation
In the main repository:
- Replace reference to website with new URL (#1980 by @astorije)
- Improve the README (#2003, #2085, #2086, #2121, #2891 by @astorije, #2535, #2737, #2883, #2890, #2902 by @xPaw)
- Switch from npm to yarn (#1987 by @xPaw, #2664 by @fnutt, #2303 by @benharri)
- Back to
help wanted
label (#2102 by @xPaw) - Remove
mailto:
part of security email address (#2201 by @astorije) - Improve readability and styling of shortcut keys in the Help section (#2221 by @astorije)
- Fix typo in CTCP request (#2255 by @MaxLeiter)
- Create issue templates (#2274 by @xPaw, #2604 by @Zarthus)
- Document npm's
--unsafe-perm
option (#2379 by @xPaw) - Move GitHub-related files to
.github
folder (#2603, #2608 by @Zarthus, #2621 by @richrd) - Clarify
/topic
command in the Help page when sent without a new topic (#2595 by @joandrsn) - Improve inline documentation of config defaults and use it to generate website counterpart (#2645 by @astorije, #2882, #2901 by @xPaw, #2915 by @MaxLeiter)
- Only generate entries for commits/PRs that do not already exist in the CHANGELOG upon re-generation (#2961 by @astorije)
- List website contributors as well when generating changelog entries (#2970 by @astorije)
- Make sure the changelog page is selectable, e.g. for copy-pasting commands (#2984 by @astorije)
On the website repository:
- Create CNAME (
c8cfda5
by @xPaw) - Re-name "User support" header (#77 by @MaxLeiter)
- Set up Gemfile and fix GitHub star counter (#78 by @astorije)
- Add all assets related to the logos (#76 by @astorije, #79, (#80 by @Mandihamza)
- Upgrade jQuery from v2.1.1 to v3.3.1 (#88 by @astorije)
- Enable code formatting in titles and increase a bit code font size (#89 by @astorije)
- Set HTML
lang
attribute to help screen readers (#90 by @astorije) - Switch
redcarpet
engine tokramdown
(#91 by @astorije) - Add new logo as favicon, remove redundant link tags, add and rename favicon assets (#98 by @astorije)
- Update dependencies to suppress a GitHub security warning, and pin their version (#93 by @astorije)
- Improve markup, reduce height of navbar, use GitHub logo, add a link to themes (#95 by @astorije)
- Remove various unnecessary pieces of the website/documentation (#94 by @astorije)
- Add anchor links to
h2
andh3
headers (#99 by @astorije) - Upgrade Font Awesome from 4 to 5 (#100 by @astorije)
- Update Bootstrap to be able to use collapsible components (for navigation) and minify it (#102 by @astorije)
- Search feature (#101 by @astorije, #185 by @xPaw)
- Make
16px
favicon sharper (#105 by @xPaw) - Add security headers (#107 by @xPaw)
- Use Muli font for the site (#106 by @xPaw)
- Rewrite install docs (#104 by @astorije, #191 by @GewoonYorick)
- Update configuration doc with the config generated from the main repo (to master) (#109,
abc0aba
by @xPaw, #184 by @MaxLeiter) - Use apt to install on Debian/Ubuntu (#110 by @benharri)
- Structure doc navigation, use Netlify for redirects (#111, #127 by @astorije,
7d292de
, #181 by @xPaw) - Prevent font flashing (#112 by @astorije)
- Make demo link a bigger target (#114 by @xPaw)
- Create
robots.txt
(#115 by @xPaw) - Set up the stage for upcoming guides (#117 by @astorije)
- Re-write documentation about server usage (and replace
--home
withTHELOUNGE_HOME
) (#116 by @astorije,3435c87
,3ff6d09
, #141 by @xPaw) - Add syntax highlighting (#120 by @astorije)
- Document user management in The Lounge (#118 by @astorije)
- Add a guide about reverse proxies (#119 by @astorije, #182, #186, #189 by @xPaw)
- Add a guide about HTTPS using the built-in server (#121 by @astorije)
- Add a guide about URL overrides (#123 by @astorije)
- Add an introduction page for the doc (#126 by @astorije)
- Add a very high-level overview of CTCP in guides (#122 by @astorije, #194 by @Jay2k1)
- Update features on main page to be the same as main repo README (#113 by @xPaw)
- Move theme authoring information to new doc structure (#128 by @astorije)
- Add preload to HSTS (#129 by @xPaw)
- Fixes (#130 by @astorije)
- Add a guide for custom CSS (#125 by @astorije)
- API reference (#131 by @astorije)
- Add a table of contents where necessary (#132 by @astorije)
- Do not markdownify titles as it wraps them in paragraph (#133 by @astorije)
- Add an "Edit this page" button to docs pages (#134 by @astorije)
- Make internal links extension-less and fix a few links (#135 by @astorije)
- Add an upgrade guide and extract abbreviations into a shared file (#136 by @astorije,
52df65c
by @xPaw) - Update the index page to not contain npm only instructions, add screenshot, and update colors to match branding (#137 by @astorije)
- App screenshot (
8020290
,d10cf1f
by @xPaw) - Make footer more readable, change text, remove Twitter button (#142) (
2c6c137
by @xPaw) - Make navigation usable on mobile (#139 by @astorije)
- Fix
ldapFilter
overflowing on mobile (#151 by @xPaw) - Remove leftover images (#154 by @astorije)
- Set some
meta
tags (#152 by @xPaw) - Improve links on alerts (#157 by @astorije)
- Replace
~
with${THELOUNGE_HOME}
in upgrade guide (#155 by @astorije) - Load search data asynchronously (#159 by @xPaw)
- Use
page.description
if available (#161 by @xPaw) - Replace
bootstrap.js
with vanilla JS (#144 by @xPaw) - Use SVG icons (#162 by @xPaw)
- Add a Community page (#138 by @astorije)
- Mark guides/API links active when in sub pages (#163 by @xPaw)
- Use SVG logos for app stores (#166 by @xPaw)
- Align footer button with the text, remove deprecated
iframe
attributes (#160 by @xPaw) - Community: Add an IRC channel for Scandinavian countries (#171 by @astorije)
- Allow page to be scaled (#170 by @xPaw)
- Prevent redirect from
/docs
to/docs/
(#169 by @astorije) - Fix sitemap, docs redirect, extension hackery, active style in navbar, etc. (#173 by @astorije)
- Warn about API instability (#174 by @xPaw)
- Kill the Heroku docs (#143, #177 by @astorije)
- Fix
/docs
highlighted as active incorrectly (#178 by @xPaw) - Do not link to language-specific URL of Yarn to let them redirect to the correct language (#180 by @astorije)
- Disallow robots in non-production (#175 by @xPaw)
- Add very minimal Google Analytics script (#187, #188,
2f83b05
by @xPaw) - Don't add canonical tag for 404 pages (#190 by @xPaw)
- Add guide "Identify users with identd or oident" (#192 by @xPaw)
Internals
- Skip scripts folder from test coverage (#2076 by @xPaw)
- Enable
no-var
rule (#1962, #2078 by @xPaw) - Deal with npm's
dist-tag
at Travis deploy time (#2080 by @astorije) - Enforce
padding-line-between-statements
(#1920 by @xPaw) - Instrument client code before running tests (#1726 by @astorije)
- Do not publish Webpack config for test env (#2087 by @astorije)
- Change
isOpInChannel
to allow multiple different user roles (#1864 by @McInkay) - Update all links to thelounge repository (#2091 by @xPaw)
- Remove
isRegistered
(#2082 by @xPaw) - Use Yarn in the PR-test script (#2093 by @astorije)
- Use
document.body
when wrapping it in a jQuery object (#2110 by @xPaw) - Enable in-browser run of client testing (#2094 by @astorije)
- Refactor channel titles to use flexbox (#2113, #2140 by @xPaw)
- Remove unintentionally included
lodash
in client build (#2132 by @xPaw) - Increase test timeout on CI (#2134 by @xPaw)
- Replace
colors.js
withchalk
(#2145 by @xPaw) - Remove
setMaxListeners
(#2164 by @xPaw) - Cleanup sidebar to use flexbox (#2149 by @xPaw)
- Optimized notification dot state (#2170 by @xPaw)
- Ignore order of preview results in unicode link tests (#2175 by @astorije)
- Try to fix SQLite test failing on CI randomly (#2180 by @xPaw)
- Enforce object literal shorthand syntax with ESLint (#2073 by @astorije)
- Fix
yarn coverage
script on Windows (#2252 by @astorije) - Bind formatting hotkeys on input element (#2263 by @xPaw)
- Enforce consistent quotes around properties with ESLint (#2285 by @xPaw)
- Fix lint and test issues on master (#2292 by @xPaw)
- Remove Node.js v9, add v10 and v11 to the Travis CI matrix (#2296, #2792, #2387, #2877, #2312 by @astorije)
- Reimplement input history (#2286 by @xPaw, #2314 by @astorije)
- Pull context menu code out of
lounge.js
and make it more generic (#1878 by @McInkay) - Replace pseudo-element gradient fade with mask-image (#2270 by @xPaw)
- Upgrade to Webpack 4 (#2117 by @xPaw)
- Replace client IDs with GUIDs (#2344 by @xPaw)
- Remove network IDs and use UUIDs everywhere (#2390 by @xPaw)
- Use per-client channel and message IDs (#2396 by @xPaw)
- Minor optimization in style parser (#2408, #2428 by @xPaw)
- Use new Font Awesome package (#2420 by @xPaw)
- Configure Renovate (#2437 by @renovate)
- Update Travis and Renovate configs (#2466 by @xPaw)
- Refactor
userLog
to be the same as SQLite logger (#2366, #2670, #2764 by @xPaw) - Remove
URIjs
(#2471 by @xPaw) - Fix mouse cursor on user list (#2487 by @astorije)
- Minify handlebars templates (#2498 by @xPaw, #2502 by @dgw, #2539 by @astorije)
- Remove
log
fromglobal
(#2563, #2569 by @xPaw) - Move
.nyc_output
folder out of root (#2564 by @xPaw) - Update
no-confusing-error
ESLint rule to allow parenthesis (#2592 by @MaxLeiter) - Increase delay between links to remove random test failure (#2624 by @xPaw)
- Refactor
getHumanDate()
to accept a timestamp; avoids possible test failure; more accurate log times (#2669 by @MaxLeiter) - Use a new npmjs token and secure entries to publish through Travis (#2716, #2876 by @astorije)
- Fix stack traces in client tests (#2751 by @xPaw)
- Remove moment locales from build (#2788 by @xPaw)
- Upgrade
yarn.lock
before final release (#2799 by @xPaw) - Enable Windows and macOS builds on Travis, remove AppVeyor (#2850 by @xPaw)
- Fix config generator script comment (#2881 by @astorije)
- Rename
manifest.json
tothelounge.webmanifest
(#2895 by @xPaw) - Move
primer-tooltips
andmoment
todevDependencies
(#2906 by @xPaw) - Make links in generated config relative (#2913 by @xPaw)
- Update changelog generator script (#2786 by @xPaw)
- Relax identd checks to make it more compatible (#2959 by @xPaw)
- Catch LDAP bind error and search warning log messages in ldap tests (#2955 by )
- Update development dependencies to their latest versions:
stylelint
(#2069, #2089, #2092, #2220, #2228, #2323, #2458, #2561, #2676, #2707, #2810, #2880, #2909)eslint
(#2084, #2146, #2244, #2271, #2582, #2590, #2632, #2667, #2690, #2704, #2736, #2778, #2812, #2847, #2875, #2923)copy-webpack-plugin
(#2111, #2139, #2183, #2594, #2841, #2856, #2886)graphql-request
(#2105, #2136, #2394, #2423, #2674, #2685, #2693, #2697)textcomplete
(#2131, #2283, #2320)stylelint-config-standard
(#2137)moment
(#2147, #2319, #2357, #2493, #2931)mocha
(#2155, #2165, #2168, #2280, #2354, #2373, #2451)nyc
(#2208, #2374, #2430, #2433, #2452, #2492, #2509, #2725, #2852)primer-tooltips
(#2265, #2453, #2557, #2610, #2681, #2866, #2899)sinon
(#2269, #2335, #2401, #2407, #2412, #2427, #2455, #2464, #2517, #2542, #2588, #2612, #2623, #2628, #2668, #2696, #2752, #2773, #2776, #2780, #2825, #2853, #2870, #2887, #2925, #2927)istanbul-instrumenter-loader
(#2307)socket.io-client
(#2311, #2457)webpack-dev-server
(#2338, #2339, #2415, #2671, #2720, #2731, #2759, #2802, #2864, #2945)undate
(#2371)webpack
(#2370, #2421, #2460, #2467, #2475, #2476, #2483, #2484, #2514, #2518, #2528, #2586, #2598, #2615, #2619, #2641, #2652, #2672, #2678, #2686, #2692, #2709, #2713, #2745, #2766, #2774, #2777, #2781, #2803, #2805, #2807, #2855, #2860, #2867, #2869, #2888, #2898, #2905, #2917, #2919)webpack-cli
(#2376, #2402, #2425, #2463, #2495, #2497, #2512, #2520, #2551, #2553, #2559, #2662, #2796, #2815)npm-run-all
(#2426, #2904)@fortawesome/fontawesome-free
(#2481, #2577, #2658, #2673, #2724, #2729, #2835, #2845, #2874, #2889, #2922, #2929)mousetrap
(#2500)emoji-regex
(#2531, #2734)html-minifier
(#2589, #2611, #2646, #2708, #2872)mini-css-extract-plugin
(#2607, #2710, #2784, #2842, #2903, #2920)babel-loader
(#2620, #2727, #2740, #2742, #2811)mocha-loader
(#2723)handlebars
(#2750)@babel/core
(#2768, #2813, #2932)chai
(#2809)intersection-observer
(#2862)