All notable changes to this project will be documented in this file.
This is a release candidate for v2.4.0 to ensure maximum stability for public release. Please refer to the commit list given above for a complete list of changes, or wait for the stable release to get a thoroughly prepared change log entry.
As with all pre-releases, this version requires explicit use of the next
tag to be installed:
npm install -g thelounge@next
This is a release candidate for v2.4.0 to ensure maximum stability for public release. Please refer to the commit list given above for a complete list of changes, or wait for the stable release to get a thoroughly prepared change log entry.
As with all pre-releases, this version requires explicit use of the next
tag to be installed:
npm install -g thelounge@next
For more details, see the full changelog and milestone.
This patch releases brings a lot of fixes and small improvements here and there, as well as the ability to display seconds in timestamps, a long-awaited feature!
- Add a client option to display seconds in timestamps (#1141 by @bews)
- Add "Reload page" button when the client fails to load (#1150 by @bews)
- Treat
click
as a read activity (#1214 by @xPaw) - Fade out for long nicks (#1158 by @bews, #1253 by @xPaw)
- Include trickery to reduce paints and improve performance (#1120 by @xPaw, #1083 by @bews)
- Make everything un-selectable by default (#1233 by @xPaw)
- Handle images with unknown size in prefetch (#1246 by @bews)
- Update production dependencies to their latest versions, by Greenkeeper π:
spdy
(#1184)
- Stop showing the unread messages marker when
joins
/parts
/quits
/etc. are hidden (#1016 by @swordbeta) - Correctly finish scroll animation when using page keys (#1244 by @xPaw)
- Hide link time element on small devices (#1261 by @xPaw)
- Fix MOTD underline in Safari (#1217 by @MaxLeiter)
In the main repository:
- Update to ESLint 4 and enforce extra rules (#1231 by @xPaw)
- Improve the PR tester script a bit (#1240 by @astorije)
- Add modules for socket events (#1175 by @YaManicKill)
- Ignore
package-lock.json
(#1247 by @xPaw) - Use
stylelint-config-standard
(#1249 by @xPaw) - Update development dependencies to their latest versions, by Greenkeeper π:
For more details, see the full changelog and milestone.
This release mostly fixes a few bugs, as listed below.
- Keep original
<title>
name when changing the title (#1205 by @xPaw) - Update production dependencies to their latest versions, by Greenkeeper π:
handlebars
(#1179)
- Do not store unnecessary information in user objects (#1195 by @xPaw)
- Correctly configure client socket transports (#1197 by @xPaw)
- Fix network name not being set when
displayNetwork
isfalse
(#1211 by @xPaw)
- Fix
localtime
test to correctly use UTC (#1201 by @xPaw) - Update Node.js versions for Travis CI (#1191 by @YaManicKill)
- Update development dependencies to their latest versions, by Greenkeeper π:
For more details, see the full changelog and milestone.
What a release! Our biggest one since the v2.0.0 release / milestone! Expect a lot of new cool stuff, tons of bug fixes and performance improvements. Thanks to all 16 contributors (!!) who pitched in for this release, open source at its finest!
On the server side, The Lounge now supports an auto-away mechanism, stores channel keys across restarts and key changes, and supports a new SSL CA bundle option in the configuration file.
Users of the client will notice some changes as well:
-
A bunch of new hotkeys to style messages (bold, italic, underline, foreground/background color), all listed in the Help window
-
A new autocomplete mechanism for emoji, users, channels, commands, and colors:
Note that due to the new nick autocomplete, we removed the now unnecessary nick cycle button that was temporarily added in the meantime. Lots of users have reported it had been broken by a previous release anyway.
-
Support of page up/down keys to browse the current chat
-
Friendliness-bump of time-related tooltips and date marker:
-
Support of browsers' Back/Forward actions:
-
Better and more discreet inline previews for links and images:
-
Improved channel list with
/list
-
Support for
/ban
,/unban
and/banlist
-
Fuzzy-matching of the user list search to find folks more easily:
That's all for this release, and onto the next one now!
- Add
data-from
attribute to allow styling messages from specific users (#978 by @williamboman) - Auto away when no clients are connected (#775, #1104 by @xPaw)
- Implement color hotkeys (#810 by @xPaw)
- Store channel keys (#1003 by @xPaw, #715 by @spookhurb)
- Implement pgup/pgdown keys (#955 by @xPaw, #1078 by @YaManicKill)
- Add CSS tooltips on time elements to give ability to view time on mobile (#824 by @xPaw)
- Add SSL CA bundle option (#1024 by @metsjeesus)
- Implement History Web API (#575 by @williamboman, #1080 by @YaManicKill)
- Add slug with command to unhandled messages (#816 by @DanielOaks, #1044 by @YaManicKill)
- Add support for the
/banlist
command (#1009 by @YaManicKill) - Add support for
/ban
and/unban
commands (#1077 by @YaManicKill) - Add autocompletion for emoji, users, channels, and commands (#787 by @yashsriv, #1138, #1095 by @xPaw)
- Add autocomplete strategy for foreground and background colors (#1109 by @astorije)
- Add support for
0x04
hex colors (#1100 by @xPaw)
- Remove table layout for chat messages (and fix layout issues yet again) (#523 by @maxpoulin64)
- Improve inline previews for links and images (#524 by @maxpoulin64)
- Use local variables to check length (#1028 by @xPaw)
- Add
rel="noopener"
to URLs inindex.html
and replace mIRC colors URL to @DanielOaks's documentation (#1034 by @xPaw, #1051 by @astorije) - Preload scripts as soon as possible (#1033 by @xPaw)
- Improve channels list (#1018 by @swordbeta)
- Show MOTD by default (#1052 by @KlipperKyle, #1157 by @astorije)
- Switch to a new IRC message parser (#972 by @xPaw, #699 by @Bonuspunkt)
- Use moment on the client to display friendly dates (#1054 by @astorije)
- Implement fuzzy-matching for the user list (#856, #1093, #1167 by @astorije, #1091 by @PolarizedIons, #1107 by @xPaw)
- Use moment to render dates everywhere (#1114 by @xPaw)
- Update production dependencies to their latest versions, by Greenkeeper π:
- Remove invalid CSS perspective properties (#1027 by @astorije)
- Remove cycle nicks button (#1062 by @xPaw)
- Rewrite identd server, combine with oidentd (#804, #970 by @xPaw)
- Fix wrong font size in help center labels (#994 by @astorije)
- Fix filling in the nickname, overriding the username in the New Network window (#873 by @PolarizedIons)
- Correctly append date marker when receiving a message (#1002 by @xPaw)
- Count only message items for when loading more messages (#1013 by @awalgarg)
- Fix Zenburn and Morning channel list font color (#1017 by @swordbeta)
- Stick to bottom when opening user list (#1032 by @xPaw)
- Reset notification markers on document focus (#1040 by @xPaw)
- Disable show more button when loading messages (#1045 by @YaManicKill)
- Fix to
helper.expandhome
to correctly resolve""
andundefined
(#1050 by @metsjeesus) - Fix displayNetwork to work correctly (#1069 by @xPaw)
- Enable show more button correctly (#1068 by @xPaw)
- Rewrite server code of channel sorting (#1064 by @xPaw and (#1115 by @PolarizedIons))
- Fix showing prefetch options (#1087 by @YaManicKill)
- Add
/ctcp
command to constants and auto-completion (#1108 by @MaxLeiter) - Disable
tabindex
on user list search input (#1122 by @xPaw) - Fix date-marker not being removed on loading new messages (#1132, #1156 by @PolarizedIons)
- Switch to
bcryptjs
and make password comparison asynchronous (#985 by @rockhouse,b46f92c
by @xPaw) - Use Referrer-Policy header instead of CSP referrer (#1015 by @astorije)
- Enforce more space and new line rules (#975 by @xPaw)
- Setup ESLint to make sure an EOF feed is always present (#991 by @astorije)
- Do not build json3 module with Webpack (#977 by @xPaw)
- Remove extra newline to please ESLint (#997 by @astorije)
- Use
require()
instead of import in client code (#973 by @xPaw) - Do not build feature branch with open pull requests on AppVeyor (
934400f
by @xPaw) - Exclude Webpack config from coverage report (#1053 by @astorije)
- Create socket module (#1060 by @YaManicKill)
- Change index.html to be rendered using handlebars (#1057 by @YaManicKill)
- Move commands into constants module (#1067 by @YaManicKill)
- Use
babel-preset-env
(#1072 by @xPaw) - Use
irc-framework
'ssetTopic()
for topic command (#1082 by @MaxLeiter) - Create options module (#1066 by @YaManicKill)
- Update development dependencies to their latest versions, by Greenkeeper π:
This is a release candidate for v2.3.0 to ensure maximum stability for public release. Please refer to the commit list given above for a complete list of changes, or wait for the stable release to get a thoroughly prepared change log entry.
As with all pre-releases, this version requires explicit use of the next
tag to be installed:
npm install -g thelounge@next
This is a release candidate for v2.3.0 to ensure maximum stability for public release. Please refer to the commit list given above for a complete list of changes, or wait for the stable release to get a thoroughly prepared change log entry.
As with all pre-releases, this version requires explicit use of the next
tag to be installed:
npm install -g thelounge@next
For more details, see the full changelog and milestone.
This patch release brings a lot of dependency upgrades and a few fixes. Passing options to the lounge
CLI (lounge start --port 8080
, etc.) now works as expected without requiring --
. We have also disabled ping timeouts for now to hopefully fix automatic reconnection. Finally, upgrading irc-framework
allows us to fix an extra couple of bugs.
You will now notice a new (?)
icon at the bottom of the sidebar. It is home of a help center that currently details supported shortcuts and commands. It will be improved over time, but we encourage contributors to help us improve it.
Note that as of this release, lounge
without any arguments wil display the help information (mirroring lounge --help
). Prior to this release, it used to start a server, which must now be done explicitly using lounge start
.
- Update to
jQuery
3 (#931 by @xPaw) - Update
express
andnyc
to latest versions (#954 by @xPaw) - Update production dependencies to their latest versions, by Greenkeeper π:
- Disable (temporarily) client ping timeouts (#939 by @xPaw)
- Update arg parsing and default
lounge
tolounge --help
(#929 by @msaun008) - Prevent message sending in lobbies (#957 by @xPaw)
In the main repository:
On the website:
- Add notes about moving client docs to the app itself (#63 by @astorije)
- Deprecate (and attempt one last fixing) documentations of Heroku and Passenger (#61 by @astorije)
- Fix
run_pr.sh
script (#919 by @astorije) - Make sure multiline chains of calls are correctly indented (#930 by @astorije)
- Update development dependencies to their latest versions, by Greenkeeper π:
For more details, see the full changelog and milestone.
This patch release packs up a change of the default value of maxHistory
, an interactive prompt when creating a user to enable/disable user logging, a UI bug fix, and a few dependency upgrades.
- Change default
maxHistory
to 10000 (#899 by @xPaw) - Prompt admin for user log at user creation (#903 by @astorije)
- Update
irc-framework
to the latest version π (#902 by Greenkeeper) - Update
urijs
to the latest version π (#904 by Greenkeeper) - Update
express
to the latest version π (#898 by Greenkeeper)
- Fix body height, regression from v2.2.0 (#913 by @YaManicKill)
In the main repository:
On the website:
- Sort depedencies in
package.json
(#896 by @xPaw) - Update
nyc
to the latest version π (#882 by Greenkeeper) - Update
npm-run-all
to the latest version π (#880 by Greenkeeper) - Add nyc and Webpack config files to the files ignored when releasing (#906 by @astorije)
- Update
stylelint
to the latest version π (#907 by Greenkeeper) - Update
eslint
to the latest version π (#910 by Greenkeeper)
For more details, see the full changelog and milestone.
Another long-overdue release for The Lounge!
On the client, it is now possible to generate URLs that pre-fill connection inputs in public mode, a date separator makes it into the chats, /away
and /back
commands are now supported, idle time gets displayed on /whois
.
Also, the client does not abruptly refresh when connection is lost anymore, and user search has been slightly improved. Note however that these last 2 items are still not optimal, but improvements are underway!
On the server, more logging! The debug
option is now an object instead of a boolean, so make sure to update your configuration file accordingly. More details here.
There are changes revolving around user configuration autoloading: it has been greatly improved and therefore it is now enabled by default. Make sure to remove the autoload
option from your configuration files.
And of course, tons of fixes and less noticeable feature additions and changes, so make sure to check the full list below!
- Override network connection inputs with URL parameters (#674 by @MaxLeiter)
- Add
id
to submit button (#717 by @xPaw) - Add a UI element to cycle through nick completions on mobile (#708 by @astorije)
- Report configuration file path, Node.js version and OS platform on server start-up (#736 by @williamboman and #743 by @xPaw)
- Add
lounge
keyword to npm registry (#747 by @xPaw) - Add a date separator to channels/PMs (#671 and #765 by @PolarizedIons)
- Add support for hexip ilines and fix storing client IP address in configuration file (#749 and #822 by @xPaw)
- Implement
/away
and/back
commands (#745 by @xPaw) - Remind channel name or nick in input placeholder (#832 and #889 by @astorije)
- Add human-readable idle time in whois info (#721 by @astorije)
- Option to log raw IRC traffic (#783 by @astorije)
- Improve support for opening multiple clients at once (#636 by @xPaw)
- Match window title border line to text color (#716 by @xPaw)
- Focus input after chat form submit (#483 by @williamboman)
- Refactor user autoload to use
fs.watch
and make it more transparent in the app (#751 by @xPaw and #779 by @astorije) - Sync reordering of channels/networks to other clients in real-time (#757 by @PolarizedIons)
- Do not accept empty password when adding new user (#795 by @MaxLeiter)
- Stop refreshing the page on every socket.io error (#784 by @xPaw)
- Only append "says" to notifications if it is a message (#805 by @xPaw)
- Allow user search to find a pattern anywhere in the nicks (#855 by @MaxLeiter)
- Remove browser notification polyfill and inform user when unsupported (#709 by @astorije)
- Remove erroneous classname from password field (#748 by @xPaw)
- Do not dismiss native web notifications programmatically after 5s (#739 by @williamboman)
- Fix
/mode
command to correctly assume target (#679 by @xPaw) - Fix crash when LDAP server is unreachable (#697 by @gramakri)
- Fix channels behaving strangely while dragging (#697 by @PolarizedIons)
- Fix unread counters resetting when they should not (#720 by @PolarizedIons)
- Silence failures to trigger notifications when not available (#732 by @astorije)
- Avoid unnecessary disk writes when saving user (#750 by @xPaw)
- Use correct channel when pushing link prefetch messages (#782 by @xPaw)
- Correctly remove closed sockets from oident file, remove unused functions (#753 by @xPaw)
- Do not automatically focus on touch devices (#801 by @xPaw)
- Strip control characters from notifications (#818 by @xPaw)
- Improve CLI a bit (output formatting and subcommand/option bug fix) (#799 and #868 by @astorije)
- Make HTML container take the entire screen estate (#821 by @xPaw)
- Fix unread marker being removed from DOM (#820 by @xPaw)
- Remove margin on date marker on smallest screen size (#830 by @xPaw)
- Do not ignore window opens when considering active channels (#834 by @xPaw)
- Calculate menu width on touch start (#836 by @xPaw)
- Increase IRC colors contrast (#829 by @xPaw)
- Do not prefetch URLs unless they are messages or
/me
actions (#812 by @birkof) - Bump
irc-framework
to bring a couple of fixes (#790 by @astorije, #802 by @xPaw and #852 by Greenkeeper)
In the main repository:
- Warn against running from source as root in README (#725 by @astorije)
- Add screenshot to README (#694 by @MaxLeiter)
- Simplify introduction on README (#789 by @astorije)
On the website:
- Remove distribution-specific install instructions of Node.js (#49 by @astorije)
- Remove wrong information about setting up password along with creating a user (#50 by @astorije)
- Update documentation of the configuration file (#43 by @daftaupe)
- Document the
/away
and/back
commands (#59 by @drkitty)
- Fix AppVeyor cache never being successfully built and unblock AppVeyor (#700 by @astorije and #755 by @IlyaFinkelshteyn)
- Add a simple (first) test for
localetime
Handlebars helper (#703 by @astorije) - Get rid of OSX CI builds until they get much faster (#707 by @astorije)
- Update badges in README (#713 by @xPaw and #780 by @astorije)
- Add Node.js v7, current stable, to Travis CI (#800 by @astorije)
- Use Webpack to build our client code and dependencies (#640 by @nornagon and #817 by @xPaw)
- Switch
istanbul
code coverage CLI to more recentnyc
one (#850 by @astorije) - Add web server tests (#838 by @xPaw)
- Fix stuff that breaks in jQuery 3 (#854 by @xPaw)
- Do not uglify builds when running start-dev (#858 by @xPaw)
- Update dependencies to latest stable versions (#746 by @xPaw)
- Update dependencies to enable Greenkeeper π΄ (#826 by Greenkeeper)
- Update
lodash
to the latest version π (#840 and #862 by Greenkeeper) - Update
stylelint
to the latest version π (#861 by Greenkeeper) - Update
npm-run-all
to the latest version π (#860 by Greenkeeper) - Update
eslint
to the latest version π (#875 by Greenkeeper) - Update
babel-core
to the latest version π (#883 by Greenkeeper)
Here comes another release with some nice additions!
While the administrators will notice some bug fixes, most of the changes are client-side: support for /list
, a slideout menu on mobile, editing one's nick from the UI, wallops message handling.
Enjoy!
- Implement
/list
(#258 by @maxpoulin64) - Add touch slideout menu for mobile (#400 by @maxpoulin64)
- Display extra steps when loading the app (#637 by @xPaw)
- Display localized timestamp in title of message times (#660 by @astorije)
- Changing nick in the UI (#551 by @astorije)
- Add hostmasks in logs when possible (#670 by @astorije)
- Display wallops in server window (#658 by @xPaw)
- Make use of multi-prefix cap and remove NAMES spam on mode changes (#632 by @xPaw)
- Strict mode for all JS files (#684 by @astorije)
- Enforce more ESLint rules (#681 by @xPaw)
- Use CI caches for downloaded files instead of installed ones (#687 by @astorije)
- Consolidate version numbers throughout all interfaces (#592 by @williamboman)
- Replace lodash's each/map with ES5 native forEach/map (#689 by @astorije)
- Themes: Fixed CSS rule selectors for highlight messages (#652 by @DamonGant)
- Fix unhandled message color in default and Crypto themes (#653 by @MaxLeiter)
- Check if SSL key and certificate files exist (#673 by @toXel)
- Fix loading fonts in Microsoft Edge (#683 by @xPaw)
- Fill in prefixLookup on network initialization (#647 by @nornagon)
- Fix nick changes not being properly reported in the logs (#685 by @astorije)
- Fix memory and reference shuffling when creating models (#664 by @xPaw)
This is a minor house-keeping release with mostly two sets of changes.
First, a few bugs were fixed, including one simply preventing The Lounge to run in Safari's private browsing.
Additionally, the developer experience has been made a tiny bit better, with better documentation, lighter dependencies and simpler theme creation.
- Add info on README about how to run from source, how to upgrade (#621 by @astorije)
- Move uglify invocation into npm scripts and remove grunt (#628 by @nornagon)
- Move Shout theme borders to example theme (#359 by @xPaw)
- Update developer dependencies (#639 by @xPaw)
- Remove -ms-transform and add missed -webkit-transform (#629 by @xPaw)
- Ensure localStorage cannot fail because of quota or Safari private browsing (#625 by @astorije)
- Disable pull-to-refresh on mobile that conflicts with scrolling the message list (#618 by @astorije)
- Handle stderr when using edit or config command (#622 by @MaxLeiter)
After more than 5 months in the works, v2.0.0 is finally happening, and it's shipping with lots of new and enhanced features! π
First of all, the backend IRC library is completely different, which was the first step to deciding on a major release. This change brings many improvements and fixes, including support for auto-reconnection! This also allows us to easily improve our IRCv3 compliance.
Main changes on the server include support for WEBIRC, oidentd and LDAP. On the client, users will notice a lot of improvements about reporting unseen activity (notifications, markers, etc.), support for custom highlights, a new loading page, an auto-expanding message input, a theme selector, and more.
Administrators should note that the channel list format in user configuration files has changed. The old format is deprecated, but it will be automatically converted when the server starts (support may or may not be removed later). Additionally, The Lounge now only runs on Node v4 and up.
The above is only a small subset of changes. A more detailed list can be found below. The following list features the most noticeable changes only, and more details can be found on all v2.0.0 pre-releases.
- Add tooltips on every clickable icons (#540 by @astorije)
- Add debug config option for
irc-framework
debug log (#547 by @maxpoulin64) - Client-side theme selector (#568 by @astorije)
- LDAP support (#477 by @thisisdarshan and @lindskogen)
- Add custom highlights (#425 by @YaManicKill)
- Add auto-grow textarea support (#379 by @maxpoulin64)
- Display unhandled numerics on the client (#286 by @xPaw)
- A proper unread marker (#332 by @xPaw)
- Add information on the About section of the client (#497 by @astorije)
- Add a red dot to the mobile menu icon when being notified (#486 by @astorije)
- Add "The Lounge" label to the landing pages (#487 by @astorije)
- Display network name on Connect page when network is locked and info is hidden (#488 by @astorije)
- Display a loading message instead of blank page (#386 by @xPaw)
- Fall back to LOUNGE_HOME env variable when using the CLI (#402 by @williamboman)
- Enable auto reconnection (#254 by @xPaw)
- Add "!" modechar for admin (#354 by @omnicons)
- Add support for oidentd spoofing (#256 by @maxpoulin64)
- Log enabled capabilities (#272 by @xPaw)
- Add support for
~
home folder expansion (#284 by @maxpoulin64) - Document supported node version (#280 by @xPaw)
- Implement WEBIRC (#240 by @maxpoulin64)
- Add
manifest.json
for nicer mobile experience (#310 by @xPaw)
- Cache loaded config and merge it with defaults (#387 by @xPaw)
- Ignore unnecessary files at release time (#499 by @astorije)
- Improve font icon management, sizing and sharpness (#493 by @astorije)
- Maintain scroll position after loading previous messages (#496 by @davibe)
- Perform node version check as soon as possible (#409 by @xPaw)
- Prepend http protocol to www. links in chat (#410 by @xPaw)
- Change default configuration for
host
to allow OS to decide and use both IPv4 and IPv6 (#432 by @maxpoulin64) - Do not hide timestamps on small viewports (#376 by @xPaw)
- Drop
slate-irc
, switch toirc-framework
(#167 by @xPaw) - Improve sticky scroll (#262 by @xPaw)
- Minor wording changes for better clarity (#305 by @astorije)
- Improve nick highlights (#327 by @xPaw)
- CSS classes in themes for nick colors (#325 by @astorije)
- Replace all concatenated paths with Node's path.join (#307 by @astorije)
- Store channels in array format in user configuration files, deprecating previous format (#417 by @xPaw)
- Disable tooltips on mobile to prevent them to stay after clicking (#612 by @astorije)
- Remove Docker-related files now that we have a dedicated repository (#288 by @astorije)
- Remove JavaScript scrollbar library (#429 by @xPaw)
- Remove navigator.standalone detection (#427 by @xPaw)
- Do not increase font size on highlight in morning theme (#321 by @xPaw)
- Remove font family redundancy, fix missed fonts, remove Open Sans (#562 by @astorije)
- Stop propagation when hiding the chat through click/tapping the chat (#455 by @williamboman)
- Improve click handling on users and inline channels (#366 by @xPaw)
- Only load config if it exists (#461 by @xPaw)
- Send user to lobby of deleted chan when parting from active chan (#489 by @astorije)
- Set title attribute on topic on initial page load (#515 by @williamboman)
- Save user's channels when they sort the channel list (#401 by @xPaw)
- Turn favicon red on page load if there are highlights (#344 by @xPaw)
- Keep chat stickied to the bottom on resize (#346 by @maxpoulin64)
- Only increase unread counter for whitelisted actions (#273 by @xPaw)
- Parse CTCP replies (#278 by @xPaw)
- Do not count your own messages as unread (#279 by @xPaw)
- Do not display incorrect nick when switching to a non connected network (#252 by @xPaw)
- Keep autocompletion sort whenever user list updates (#217 by @xPaw)
- Save user when parting channels (#297 by @xPaw)
- Add labels in connect window (#300 by @xPaw)
- Add missing
aria-label
on icon buttons (#303 by @astorije) - Fix missing colors in action messages (#317 by @astorije)
- Don't falsely report failed write if it didn't fail (
e6990e0
by @xPaw) - Fix sending messages starting with a space (#320 by @maxpoulin64)
- Fix notifications in query windows (#334 by @xPaw)
- Implement user token persistency (#370 by @xPaw)
- Restrict access to the home directory by default (#205 by @maxpoulin64)
- Add security headers to minimize XSS damage (#292 by @xPaw)
- Do not write user configs outside of the app's users directory (#238 by @williamboman)
- Don't check for existing password emptiness (#315 by @maxpoulin64)
This release candidate only fixes a UI bug affecting iOS 8 users, introduced in v2.0.0-pre.5.
- Fix flexboxes to work on iOS 8 (#626 by @Gilles123)
Prior to this release, users of Safari 10 were not able to access The Lounge anymore, because of a conscious change the WebKit made to their support of CSP, as explained here. This release addresses this issue.
Another notable change is the removal of tooltips on mobiles, as hovering states on mobile devices breaks in different kind of ways. Hopefully there will be a better solution in the future, or better support across mobiles.
This is also the first release candidate for v2.0.0. This means only critical bug fixes will be merged before releasing v2.0.0.
- Fix small input text on Morning and Zenburn (#601 by @astorije)
- Fix a left margin appearing on all non-default themes (#615 by @astorije)
This prerelease fixes a lot of bugs on both the server and the client. It also adds a theme selector on the client and connection debug log level on the server. Additionally, custom highlights are now case-insensitive.
- Add tooltips on every clickable icons (#540 by @astorije)
- Add debug config option for
irc-framework
debug log (#547 by @maxpoulin64) - Client-side theme selector (#568 by @astorije)
- Use our logger instead of
console.log
andconsole.error
for LDAP logs (#552 by @astorije) - Make custom highlights case-insensitive (#565 by @astorije)
- Bump
request
dependency to 2.74.0 (#563 by @astorije) - Mention wiki in README (#548 by @MaxLeiter)
- Support ES6 features in JS linting outside of client code (#593 by @williamboman)
- Fix token persistency across server refreshes (#553 by @astorije)
- Make sure input height is reset when submitting with icon (#555 by @astorije)
- Fix webirc and 4-in-6 addresses (#535 by @maxpoulin64)
- Allow long URLs to break onto next line on Chrome (#576 by @astorije)
- Make sure users with wrong tokens are locked out instead of crashing the app (#570 by @astorije)
- Remove font family redundancy, fix missed fonts, remove Open Sans (#562 by @astorije)
- Do not set app orientation in manifest to use user setting at OS level (#587 by @astorije)
- Move border-radius from
#main
to.window elements
to fix radius once and for all (#572 by @astorije)
LDAP! That's all there is to be found in this pre-release, but it should please some administrators out there. Big thanks to @thisisdarshan and @lindskogen for sticking with us on this one.
This feature will remain in beta version until the official v2.0.0 release.
- LDAP support (#477 by @thisisdarshan and @lindskogen)
What an exciting release! It's been in the works for more than a month, but the perks are worth the wait.
On the user side, some long-awaited new features can now be found: The Lounge can now track custom highlights, it comes with an auto-expanding text field, and an unread message marker helps keeping track of what happened when you were not watching. A lot of improvements and various bug fixes have been made to the UI. Note that scrollbar look-and-feel is now delegated to the browser and OS. Use the custom CSS editor and your OS settings to customize them.
Administrators will notice a different format for channels in the user configuration files, and the Docker-related files have been moved to a dedicated repository. Many bugs have been solved on the server as well.
- Add custom highlights (#425 by @YaManicKill)
- Add auto-grow textarea support (#379 by @maxpoulin64)
- Display unhandled numerics on the client (#286 by @xPaw)
- A proper unread marker (#332 by @xPaw)
- Add information on the About section of the client (#497 by @astorije)
- Add a red dot to the mobile menu icon when being notified (#486 by @astorije)
- Add "The Lounge" label to the landing pages (#487 by @astorije)
- Display network name on Connect page when network is locked and info is hidden (#488 by @astorije)
- Store channels in array format in user configuration files (#417 by @xPaw)
- Cache loaded config and merge it with defaults (#387 by @xPaw)
- Ignore unnecessary files at release time (#499 by @astorije)
- Improve font icon management, sizing and sharpness (#493 by @astorije)
- Maintain scroll position after loading previous messages (#496 by @davibe)
- Fix storing the updated authentication token (#437 by @williamboman)
- Update
irc-framework
to 2.3.0 to fix a bug occurring when posting messages starting with a colon (#449 by @xPaw) - Update
irc-framework
to 2.4.0 to fix a buffering issue (#451 by @maxpoulin64) - Only auto join actual channels (#453 by @xPaw)
- Only trigger custom highlights for non-self messages and notices (#454 by @xPaw)
- Stop propagation when hiding the chat through click/tapping the chat (#455 by @williamboman)
- Improve click handling on users and inline channels (#366 by @xPaw)
- Update
irc-framework
to 2.5.0 to fix reconnection counter not being reset (#451 by @xPaw) - Register irc-framework events before connecting (#458 by @xPaw)
- Only load config if it exists (#461 by @xPaw)
- Fix window layout a bit (#465 by @maxpoulin64)
- Fix slight bugs introduced by #379 and #465 (#467 by @maxpoulin64)
- Prevent the app from crashing when no theme is specified (#474 by @astorije)
- Fix unread marker disappearing when opacity set to 1 (#471 by @astorije)
- Fix breaking layout when switching portrait/landscape modes (#478 by @astorije)
- Fix chat not being "stickied" to the bottom when joining channel (#484 by @williamboman)
- Add self info to TOGGLE messages to prevent unread marker to render for oneself (#473 by @astorije)
- Send user to lobby of deleted chan when parting from active chan (#489 by @astorije)
- Use
min-height
of textarea when computing auto-resize after deleting a char (#504 by @astorije) - Set title attribute on topic on initial page load (#515 by @williamboman)
- Make sure git commit check for the About section would not send stderr to the console (#516 by @astorije)
- Create a single function to render networks to reduce code duplication (#445 by @xPaw)
- Reset the unread marker on channel change (#527 by @maxpoulin64)
- Fix accidentally removed border-radius (#537 by @astorije)
- Fix font size in themes for new textarea (#536 by @maxpoulin64)
- Restore padding and height of message input pre-textarea era (#539 by @astorije)
- Prevent Ctrl-Tab from triggering tab completion (#541 by @hho)
This pre-release adds a loading window, helpful on slow connections. It also implements token persistency, ensuring users do not have to authenticate at every server restart. As a side effect, security is improved by forcing logging out users on all devices when changing their password.
All generated URLs are now HTTP by default, except when explicitly set to HTTPS. For example, www.example.com
will link to http://www.example.com
. One needs to share https://www.example.com
to point others to a HTTPS location.
As a few users have been having issues when running The Lounge with a non-supported Node.js version, we now detect it early to avoid cryptic errors.
This pre-release also adds minor UI improvements, and fixes from the previous version. While The Lounge still needs a lot of efforts to be fully accessible, this version slightly improves accessibility on clickable nickname.
Internally, we now keep track of our code coverage, which we do not enforce strictly at the moment.
- Add code coverage (#408 by @astorije)
- Display a loading message instead of blank page (#386 by @xPaw)
- Perform node version check as soon as possible (#409 by @xPaw)
- Prepend http protocol to www. links in chat (#410 by @xPaw)
- Use tabs when saving user configs (#418 by @xPaw)
- Do not display the sidebar on sign-in page (#420 by @astorije)
- Make style of loading page similar to other pages (#423 by @astorije)
- Change default configuration for
host
to allow OS to decide and use both IPv4 and IPv6 (#432 by @maxpoulin64) - Change nicks from links to spans everywhere (#428 by @xPaw)
- Increase join delay at connection to 1000ms (#434 by @williamboman)
- Do not lose authentication token when the connection gets lost (#369 by @xPaw)
- Fix crash in public mode (#413 by @maxpoulin64)
- Do not print user loaded message in public mode (#415 by @xPaw)
- Fix focusing input when clicking chat container on the client (#364 by @williamboman)
- Fix channel join regression and fix possibly joining parted channels (#411 by @xPaw)
This release introduces a few internal changes as well as two noticeable ones. When using the CLI, the home path can now be set with the LOUNGE_HOME
environment variable, to avoid repeating --home
over and over. On the client, sorting channels will now be saved in the user configuration.
- Fall back to LOUNGE_HOME env variable when using the CLI (#402 by @williamboman)
- Rename package variable to pkg, as "package" is reserved. (#399 by @hogofwar)
- Capitalise constructor Oidentd (#396 by @hogofwar)
- Bump stylelint and update Travis CI configuration to include OSX builds and package caching (#403 by @xPaw)
- Save user's channels when they sort the channel list (#401 by @xPaw)
- Fix description of
host
andbind
config options (#378 by @maxpoulin64)
This pre-release adds a very, very long-awaited feature: auto-reconnection! It also extends our support of ident with oidentd, shows timestamps on small screens and fix bugs around notifications and sticky scroll.
- Enable auto reconnection (#254 by @xPaw)
- Add "!" modechar for admin (#354 by @omnicons)
- Add CI tool for Windows builds (#367 by @astorije)
- Add support for oidentd spoofing (#256 by @maxpoulin64)
- Update Font Awesome to v4.6.3 (#355 by @MaxLeiter)
- Do not hide timestamps on small viewports (#376 by @xPaw)
- Fetch Font Awesome from npm instead of embedded in repo (#361 by @astorije)
- Cache npm modules on appveyor (#381 by @xPaw)
- Update eslint and enforce key-spacing (#384 by @xPaw)
- Use
npm-run-all
in npm scripts for testing and linting (#375 by @williamboman) - Upload test results on appveyor builds (#382 by @xPaw)
- Turn favicon red on page load if there are highlights (#344 by @xPaw)
- Do not send completely empty messages (#345 by @maxpoulin64)
- Make sure npm test script gets run on AppVeyor (#372 by @astorije)
- Keep chat stickied to the bottom on resize (#346 by @maxpoulin64)
This is a pre-release to allow early adopters to use The Lounge with irc-framework
as our underlying IRC library instead of slate
. This change itself solves a lot of issues and adds many features, most of them listed here: IRCv3 compliance, user feedback improvement, etc.
It also adds WEBIRC support, a better server logging capability, a web app manifest, improves the sticky scroll, and fixes a ton of bugs.
- Log enabled capabilities (#272 by @xPaw)
- Add global logging helper (#257 by @xPaw)
- Add support for
~
home folder expansion (#284 by @maxpoulin64) - Document supported node version (#280 by @xPaw)
- Add support for echo-message and znc.in/self-message caps (#270 by @xPaw)
- Implement WEBIRC (#240 by @maxpoulin64)
- Add
manifest.json
for nicer mobile experience (#310 by @xPaw)
- Drop
slate-irc
, switch toirc-framework
(#167 by @xPaw) - Create a single helper function to write messages (#266 by @xPaw)
- Update dependencies (#281 by @xPaw)
- Improve sticky scroll (#262 by @xPaw)
- Change license link to point at our license file (#290 by @xPaw)
- Stricter eslint rule for curly brackets (#291 by @xPaw)
- Bump patch version of lodash to 4.11.2 (#306 by @astorije)
- Minor wording changes for better clarity (#305 by @astorije)
- Improve tests execution (#260 by @maxpoulin64)
- Update irc-framework (#324 by @xPaw)
- Do not ignore our handlebars plugins in ESLint (#329 by @xPaw)
- Improve nick highlights (#327 by @xPaw)
- CSS classes in themes for nick colors (#325 by @astorije)
- Replace all concatenated paths with Node's path.join (#307 by @astorije)
- Only increase unread counter for whitelisted actions (#273 by @xPaw)
- Parse CTCP replies (#278 by @xPaw)
- Do not count your own messages as unread (#279 by @xPaw)
- Use lowercase global to avoid a deprecation warning in Node.js 6 (
d9a0dd9
by @xPaw) - Do not display incorrect nick when switching to a non connected network (#252 by @xPaw)
- Keep autocompletion sort whenever user list updates (#217 by @xPaw)
- Make sure app does not crash when webirc is not defined in the configuration (#294 by @astorije)
- Save user when parting channels (#297 by @xPaw)
- Add labels in connect window (#300 by @xPaw)
- Add missing
aria-label
on icon buttons (#303 by @astorije) - Fix unread counter not being formatted on page load (#308 by @xPaw)
- Fix wrong CSS for disabled colored nicknames on themes (#318 by @astorije)
- Fix missing colors in action messages (#317 by @astorije)
- Don't falsely report failed write if it didn't fail (
e6990e0
by @xPaw) - Fix sending messages starting with a space (#320 by @maxpoulin64)
- Fix notifications in query windows (#334 by @xPaw)
- Restrict access to the home directory by default (#205 by @maxpoulin64)
- Update demo link to HTTPS (#302 by @MaxLeiter)
- Add security headers to minimize XSS damage (#292 by @xPaw)
- Do not write user configs outside of the app's users directory (#238 by @williamboman)
- Don't check for existing password emptiness (#315 by @maxpoulin64)
With this release, administrators can now define a maximum size for channel history. While this is not optimal nor the definitive solution, it aims at reducing stability issues where The Lounge would crash after filling up the server's memory.
Other changes noticeable by users include removing custom print styles and preventing sequences of white spaces to collapse into one.
- Add config option to limit in-memory history size (#243 by @maxpoulin64)
- Do not parse link titles for IRC formatting (#245 by @xPaw)
- Display multiple white spaces properly (#239 by @maxpoulin64)
- Reword password prompt of
add
andreset
CLI commands (#230 by @williamboman)
This PR fixes a bug introduced in v1.3.0 which prevents deleting disconnected networks from users' configuration files.
This PR fixes a bug introduced in v1.4.1 causing timestamps to use most of the screen.
As of this release, running /query nick
will simply open a chat window with user nick
, instead of calling whois
for this user.
- Remove
join
,nick
Β andwhois
inputs, they are cleanly handled by the server (#208 by @xPaw) - Add a
/query
command that simply opens a query window (#218 by @xPaw) - Disallow
/query
on non-nicks (#221 by @astorije)
- Fix message and topic text wrapping (#215 by @xPaw)
- Fix
/part
command (#222 by @maxpoulin64) - Harden URL fetcher and don't crash on non-ASCII urls (#219 by @xPaw)
Note that this release will reset users' notification settings to their defaults. This unfortunate side effect is the consequence of an improvement of how this setting is handled in the application.
- Add context menu when right-clicking on a sidebar item (#9 by @xPaw)
- Add tests for the
Chan#sortUsers
method (#197 by @astorije) - Add a very basic test for
Network#export
(#198 by @astorije) - Link to the demo from the IRC channel badge on the README (#203 by @Henni)
- Add support for HTTP/2 (#174 by @xPaw)
- Support port in
/connect
command (#210 by @xPaw)
- Update Handlebars to 4.0.5 (#140 by @xPaw)
- Update Socket.IO to 1.4.5 and use client library provided by the dependency (#142 by @xPaw)
- Update ESLint to 2.3.0 and add stricter rules (#171 by @xPaw)
- Mute color of the topic actions (#151 by @astorije)
- Rename "badge" setting and rely on browser choice for desktop notifications (#28 by @lpoujol)
- Invoke
handlebars
outside ofgrunt
and generate a sourcemap (#144 by @xPaw) - Make
whois
a client action template and improve its output (#161 by @xPaw) - Handle commands in a better way and send unknown commands to the IRC server (#154 by @xPaw)
- Switch the Send button to a paper plane icon (#182 by @astorije)
- Keep track of highlights when user is offline (#190 by @xPaw)
- Load input plugins at startup and call them directly when a command is received (#191 by @astorije)
- Make defaults for socket.io transports consistent to use polling before websocket (#202 by @xPaw)
- Update all server dependencies to current stable versions (#200 by @xPaw)
- Update configuration file to reflect HTTP/2 support addition (#206 by @astorije)
- Change close button behavior and add a dropdown context menu (#184 by @xPaw)
- Minor enhancements of the context menu UI (#212 by @astorije)
- Remove
string.contains
library (#163 by @xPaw) - Remove Moment.js library from the client (#183 by @xPaw)
- Disabled emails from Travis CI on successful builds (#172 by @xPaw)
- Remove unnecessary operation when sorting users (#193 by @astorije)
- Make sure self messages are never highlighted and improve highlight lookup (#157 by @astorije)
- Fix Send button style on Zenburn and Morning themes, introduced by this release (#187 by @astorije)
- Make sure all close buttons in the sidebar have same weight (#192 by @astorije)
- Disallow parting from lobbies (#209 by @xPaw)
- Remove attempts to set file modes (#117 by @maxpoulin64)
- Correctly handle inline channels in messages (#128 by @xPaw)
- Fix crash, introduced by this release (#143 by @xPaw)
- Fix highlighted actions and mute colors of some of the actions (#47 by @xPaw)
- Fix stripping multiple colors from notifications (#145 by @xPaw)
- Correctly display channel name in notifications (#148 by @xPaw)
- Fix hover effect on channels in topics (#149 by @xPaw)
- Add missing mode action to muted colors (#150 by @astorije)
- Add hostmask in
join
/part
/quit
messages and move actions to templates (#94 by @xPaw) - Add a section in the README explaining why a fork was created (#95 by @almet)
- Add the ability to let users change their password from the settings page (#57 by @diddledan)
- Add the ability to let users set custom CSS in their settings (#83 by @xPaw)
- Add notifications for channel invites (#127 by @astorije)
- Allow locking network configuration (#82 by @xPaw)
- Add target channel name in notifications (#118 by @astorije)
- Bump
grunt-contrib-uglify
and pin versions ofgrunt
-related dependencies (#119 by @astorije) - Switch to a power-off icon for logging out (#131 by @astorije)
- Fix the "Show more" button being displayed over chat messages and message paddings when
join
/part
/quit
messages are hidden (b53e5c4
by @xPaw) - Fix how highlights are handled and highlighted (#91 by @xPaw)
- Fix favicon highlight on Chrome and remove
Favico.js
library (#100 by @xPaw) - Fix complete crash when refreshing a public instance, introduced by this release (#125 by @astorije)
- Fix clickable "you" in the text of an
/invite
, introduced by this release (#122 by @xPaw) - Fix minor issues with the main HTML file (#134 by @astorije)
- Strip control codes from notifications (#123 by @xPaw)
- Fix CSS selector syntax in channel message handler (#102 by @maxpoulin64)
- Fix fading channel name in sidebar of Crypto and Zenburn themes (#105 by @maxpoulin64)
- Fix
/invite
command broken by lodash bump (#106 by @JocelynDelalande)
Note that this release will reset client-side settings to their defaults. Current users will have to re-set them in the settings page. This is a conscious trade-off as the fork is rather new and there are not many settings overall.
- Add support for the
/invite <nickname> <channel>
command (#7 by @xPaw) - Add a command shorthand to invite in the current channel with
/invite <nickname>
(#76 by @astorije) - Add style linting for all CSS files in the repository (#43 by @xPaw)
- Improve client performance by updating the users' list only when it's needed (#58 by @maxpoulin64)
- Let the badge counter hide with a fade-out (#73 by @xPaw)
- Update
lodash
dependency to the latest major version (#38 by @xPaw) - Use
localStorage
instead of cookies for client-side settings storage (#70 by @xPaw) - Replace Bootstrap's tooltips with CSS tooltips from GitHub's Primer (#79 by @xPaw)
- Fade long channel names in the sidebar instead of breaking to another line (#75 by @maxpoulin64)
- Simplify a great deal the CONTRIBUTING file (#40 by @astorije)
- Use a Font Awesome icon for the channel closing button (#48 by @xPaw)
- Suppress deprecation warning for
moment().zone
(#37 by @deiu) - Fix a bug preventing the closing of a channel when the user was kicked out (#34 by @xPaw)
- Remove
#foo
channel from the default configuration file (#22 by @astorije) - Change the Freenode URL to
chat.freenode.net
in the default configuration file (#13 by @dubzi) - Ensure all
.js
files are linted (#42 by @williamboman)
- Hide the user list button on a server or private message window (#32 by @MaxLeiter)
- Correctly sort the user list whenever a user joins (#33 by @xPaw)
- In the change log, use a permanent URL to link the previous history of The Lounge to Shout (#12 by @xPaw)
- Update some dependencies and pin versions (#8 by @xPaw)
- Add missing form methods that were causing LastPass to trigger a warning (#19 by @maxpoulin64)
- Fix comments in the configuration file (#1 by @FryDay)
This is the first release of The Lounge, picking up where Shout v0.53.0
left off!
- Enable notifications on all messages, which can be controlled in the settings (#540 by @nickel715)
- Add Travis CI and David DM badges on the README (#465 by @astorije)
- Emit sent notice back to the user (#590 by @xPaw)
- Send user agent with link expander requests (#608 by @xPaw)
- Add a
.gitattributes
file to normalize line endings (#610 by @xPaw) - Style scrollbars (WebKit only) (#593 by @xPaw)
- Add a badge to display the IRC channel at the top (#599 by @astorije)
- Rotate
part
/quit
icon for new action display (#617 by @MaxLeiter)
- Update slate-irc to v0.8.1 (#597 by @xPaw)
- Limit maximum height of inline images (#598 by @xPaw)
- Use a single function to process and render messages (#596 by @xPaw)
- Render user actions separately (#588 by @xPaw)
- Simply parse all 0-99 IRC colors (#609 by @xPaw)
- Tag notifications to reduce notification spam (#418 by @williamboman)
- Change all mentions of Shout to the new name: The Lounge (#2 by @astorije)
- Fix initial copyright year in the LICENSE notice (#591 by @pra85)
- Fix wrong color class on Zenburn style (#595 by @astorije)
- Run new topic through parser when it is updated (#587 by @xPaw)
- Fix several things on Morning and Zenburn themes (#605 by @xPaw)
- Fix word wrap on firefox (#570 by @YaManicKill)
- Change user buttons to
a
links, allowing highlighting on Firefox (#571 and #574 by @YaManicKill)
All previous changes can be found on Shout's CHANGELOG, starting at v0.53.0
.