Updates to the Groups.io service.
June 21, 2019
- BUGFIX: In some instances, all day events were displayed on the calendar as lasting a day longer than scheduled. Also, all all day events were displayed with a time, which didn't make sense.
- BUGFIX: In some instances with a repeating event, it was not possible to check the 'Send Notice To Group When Event Happens' checkbox and have it saved properly.
- BUGFIX: Direct add activity log entries were not showing up in the member's activity log section. This fix only applies to new log entries; previous direct adds will still not show up in the member's activity log.
- NEW: For domains hosted by Mimecast: if a message from one of those domains is sent to another user on that same domain, we now re-write the From line, to hopefully stop tripping a bounce.
- CHANGE: Show the updated date in the member notices view instead of the created date.
- API: Many navigation improvements and other cleanups of the API docs.
- CHANGE: All links in messages now open in new tabs.
- CHANGE: Default sort order for columns is a-z, or largest to smallest, or most recent to oldest, as appropriate.
- BUGFIX: For certain replies to messages that already contained a signature, we would display both signatures outside of the collapsed text when we should only display the last signature.
- BUGFIX: For certain HTML replies to messages, we would not show the signature outside of the collapsed text.
- BUGFIX: In certain situations, when doing a bulk remove of members, we would report 'Other Error' for someone who was not a subscriber.
- API: The sidebar for the api docs is now scrollable for easier navigation.
- API: New /getevents endpoint.
- CHANGE: Various feed view improvements to hashtags and events.
June 14, 2019
- INTERNAL: Entered into a contract with a consulting firm to finish up the iOS/Android app.
- CHANGE: Incorporated the feed view into the group home page and changed how hashtags are displayed. Currently tested on beta@.
- NEW: New activity log entry for when a message is sent to a (premium) group with a calendar invite, and the sender doesn't have permission to add events to the calendar.
- CHANGE: Tweaked hashtag box text colors and margins.
- CHANGE: Changed the calendar header buttons to better fit smaller screens/better fit the rest of the site.
- NEW: Messages/Topics now includes a Hashtag dropdown to view by hashtag.
- INTERNAL: Upgraded fontawesome to 5.9.0.
- BUGFIX: Upgraded Fullcalendar to v 3.10.0 to fix a couple of formatting bugs on mobile.
- BUGFIX: The cancel button on the Mute Topic page didn't cancel the muting.
- INTERNAL: Rearchitected how we save past subscriber information. Also changed the past member object returned by the API.
- BUGFIX: In some instances of HTML messages that only contain a quoted section, we'd just display a blank page.
- BUGFIX: Fix crash when replying to a message in a subgroup that you're not subscribed to (that has Allow Parent Subs To Post set to true).
- BUGFIX: Fix group and user export issue when the exported file is greater than 5GB.
- NEW: Track delivery status of private replies to group messages.
June 7, 2019
- CHANGE: When viewing a database table in map view, changed the formatting of the rows to match the non-map view and added in the ability to collapse columns.
- CHANGE: When viewing a database table with an address, the [Map] link now opens up in the new page.
- NEW: New /getpastmembers API endpoint and lots of little API documentation fixes.
- CHANGE: Changed the expiry of login links from 2 hours to 24 hours.
- NEW: Barracuda Networks firewalls are sometimes blocking messages from us, for reasons I don't yet understand. The bounce message was being interpreted as a hard bounce, but the blocks are not consistent, so I've changed the bounce parsing for these messages to treat them as soft bounces instead.
- CHANGE: For emails originating from the website, we replaced the X-Originating-IP header with two new headers, X-Originating-Location and X-Originating-Platform
- NEW: When specifying a yahoo group to transfer, you can now specify a list of people to exclude from the transfer process.
- INTERNAL: More work on automating adding and monitoring new machines.
- NEW: Upcoming event summary email for premium groups.
- NEW: In pending subscription notifications, include the pending subscriber's platform, browser, location and IP address.
May 31, 2019
- BUGFIX: The activity log line when editing a message was 'via email' when it can only be 'via web'.
- BUGFIX: The 'Vote Now' link in poll announcement emails would fail for members of announcement groups.
- CHANGE: If a group had separate footers checked, we were not resizing any attached images according to group settings. I don't remember why I coded it that way, but I've changed it so that we do resize images.
- NEW: Remove 'ADV:' from subject lines.
- CHANGE: Moved the Indivisible link in the pricing page to be in the non-profits section. Also updated the instructions for enterprise non-profits.
- NEW: Added a 'Types Of Groups That Aren't Permitted' section to the help.
- CHANGE: In the help section, changed the sidebar so it didn't stay fixed, which was causing issues for some people.
- BUGFIX: Fixed a couple of cases where we didn't handle collapsing quoted message replies when viewing the archives.
- CHANGE: When viewing messages, we no longer collapse signatures within a quoted block.
- BUGFIX: Fixed a goroutine leak in the anti-virus checker.
May 24, 2019
- CHANGE: Previously, members couldn't vote in polls in announcement groups. Now the announcement setting has no effect on whether someone can vote in a poll.
- CHANGE: Changed wording/color of the button to expand/collapse quoted message parts.
- CHANGE: Groups can now have multiple active welcome messages.
- INTERNAL: Added the ability to re-write the From lines of emails from specific domains, as we already do with DMARC, to hopefully fix a delivery issue with samsung.com
- CHANGE: Added additional text to the Repost Message item in the More menu, describing when you can next repost the message.
- BUGFIX: When paging through member search results for a query that includes a special character (like @), the query was not properly unescaped.
- BUGFIX: Changed how we pull messages from the database during a group export to decrease the load on the database as well as increase reliability of the operation.
- BUGFIX: For groups requiring hashtags, posting on the website didn't display an error when you tried to post without a hashtag.
- SYSADMIN: Replaced all webserver instances to fix a kernel issue.
May 17, 2019
- SYSADMIN: Work to mitigate new Intel ZombieLoad exploit.
- BUGFIX: In the API endpoint /updategroup, if there was an error, it was returned along with the group object, resulting in an unparseable mess.
- BUGFIX: The subgroup direct add email didn't parse HTML direct add messages correctly, so the HTML was visible in the email.
- CHANGE: Tweaked wording of FBL unsub email.
- NEW: We now will resize HEIC images based on group settings (previously we were unable to resize them, so passed them through untouched).
- BUGFIX: Found and fixed a memory leak in the webserver.
- CHANGE: Changed the application fee for donations from 20% to 5%.
- SYSADMIN: Added a new web server and retired final web server running CentOS 6.
May 10, 2019
- BUGFIX: Slack authentication was broken for groups that had subdomains.
- CHANGE: Temporarily disabled new Google Drive authentication, because Google changed things on their end and broke the integration.
- SECURITY: Rate limiting access to the /login page.
- CHANGE: Do not include topics tagged with 'no email' hashtags in the daily summaries.
- CHANGE: In the /feed, show next upcoming events, not events that have been most recently created.
- BUGFIX: In the /feed, don't show database activity for groups you don't have permission to view.
- INTERNAL: Converted source code dependencies to use new Go modules system.
- BUGFIX: Timezones were sometimes not being read correctly from calendar invites emailed to the group, due to a bug in the underlying library.
- BUGFIX: Pending message viewing would fail if the sender user record had been deleted.
- NEW: Display RSVP status on event popups on the calendar. Also, new 'RSVPed Events Only' button to show only events you've RSVPed to.
- CHANGE: Improved the format of the event reminder email.
- NEW: Monday Start checkbox in user preferences and group default sub settings to indicate that the calendar should start on Mondays instead of Sundays.
May 3, 2019
- CHANGE: For events added by email, we consider events up to one year from now (the previous limit was 30 days).
- BUGFIX: Fixed the name of the subgroup in the activity log message for creating a subgroup.
- NEW: Premium groups can now ask for and accept donations.
- INTERNAL: Removed TLS 1.0 support on the webservers.
- BUGFIX: Fix links to wiki pages in the /feed page.
- NEW: Automatically update credit card info when we're notified someone's credit card is updated by Stripe.
- BUGFIX: Changes to a pending member (like Display Name) were not saved when approving the pending member if the pending member was also being confirmed at the same time.
- BUGFIX: The API endpoint /getmembers was ignoring the type parameter.
- BUGFIX: Fix links to subscribed-to subgroups on the /static/welcome page for enterprise groups.
- INTERNAL: Upgraded to latest version of Go compiler.
- BUGFIX: Events weren't being exported in the group export system.
- BUGFIX: API docs had quotes around numbers and bools in the examples that should not have been there.
- BUGFIX: The API endpoint /updatesub wasn't accepting sub_id when it should have.
- BUGFIX: Cancelling the one month downgrade before it happened didn't actually stop the downgrade from happening.
April 18, 2019
- INTERNAL: Work on adding the ability to charge for subscriptions.
- BUGFIX: Work to fix a parsing bug in Outlook for ICS files with newlines in the description.
- NEW: New Monthly Reminder member notice. These are sent on the 1st of the month, and you can have multiple active ones.
- INTERNAL: More changes to automate the process of adding enterprise groups.
- CHANGE: You cannot like messages in locked topics.
April 12, 2019
- INTERNAL: Work on adding the ability to charge for subscriptions.
- INTERNAL: Added ability to redirect from one enterprise domain to another.
- BUGFIX: Fixed weird timeout issue when downloading huge archives using the /downloadarchives API endpoint.
April 5, 2019
- BUGFIX: When editing a repeating event, if no date/time changes are made, we no longer lose any RSVPs to existing events.
- INTERNAL: Upgraded Stripe API library to the latest version as part of the work to support group payments.
- BUGFIX: The GMT offset in the #cal-invite message would be off if the new event is on a date that has a different daylight savings than today's date.
- CHANGE: A user's overall calendar now defaults to list view on mobile. It also respects a user's time format.
- INTERNAL: Changed admin system to not rely on the main database for authentication.
- CHANGED: Updated the credit card forms with newer code from Stripe.
March 29, 2019
- CHANGED: Tweaked the header text for full digests and summaries to hopefully make things a little more clear.
- CHANGED: When adding/editing an event, replaced the 'Send Invite To Group' checkbox with dedicated Add/Update Event buttons to make things more clear.
- CHANGE: Changed the SMTP error status message we return for no reverse DNS and some other errors so that it's a bit less opaque.
- BUGFIX: Fixed parsing of a bunch of additional bounce messages (if you've seen 'Unable to parse bounce message' in your email delivery history, hopefully this will fix that.)
- INTERNAL: Added additional statistics tracking along with improved web site log analysis.
- SYSADMIN: Audited our database alerts and added an additional one for transaction wraparound.
- NEW: We remember your last home page and return to it when going to https://groups.io or clicking on the Groups.io logo.
- NEW: The feed view is now the home page view and the previous page, the listing of your groups, is now at /groups.
- NEW: Remember sort field/order when viewing photo albums.
March 22, 2019
- NEW: Remember sort field/order for the Photos section (not yet viewing a specific album).
- BUGFIX: If a subscription's display name was not set and the user's display name wasn't set, we would set ALL of the user's subscriptions to the name we pulled from the From line in an email. This would overwrite a display name previously set by a moderator.
- NEW: The /feed page is now feature complete, including displaying chats, wikis, databases, new subgroups, and recent images sent as attachments.
- CHANGE: In the Photos section, changed the default sort for albums and within albums to be most recent first.
- BUGFIX: Fixed obscure redirect bug because 'groups.io' is a suffix of the new enterprise group dgroups.io.
- INTERNAL: Parallelized the deletion of attachments from S3 when we delete a group, because it was taking too long.
- CHANGE: When viewing banned members, the column name is now Banned. When viewing normal members of a restricted group, the column name is now Applied.
- CHANGE: When banning someone, we record the moment the person is banned. Previously, if the person was a member, we kept the date the person applied/joined and used that.
- CHANGE: When adding/editing an event, check by default the 'Send Invite To Group' option.
March 15, 2019
- CHANGE: Updates to /feed page based on feed ... back.
- BUGFIX: The hover display of all day, multi-day events was off by one day on the ending day.
- CHANGE: Changed summary and digest subject lines to include the group subject tag and to use the group title, if one is set.
- INTERNAL: Increased concurrency of the digest generation process.
- CHANGE: Changed title of Topics page to just 'Topics.'
- BUGFIX: Generated ICS files for repeating events ending on a specific day didn't work correctly in Google Calendar (the last event instance was left out).
- NEW: When deleting calendar events, you have the option to send a message to the group. The message contains the necessary ICS file to propagate the change to other calendars.
- CHANGE: ICS feeds no longer including canceled events. This is the proper way to handle them.
- SYSADMIN: Switched to a different DNS resolver/cache system.
- CHANGE: For premium/enterprise groups, don't automatically add events from messages when the events are cancelled.
- SYSADMIN: More monitoring of digest generation queue.
- CHANGE: Upgraded to latest version of file upload dialog widget.
- CHANGE: Dashes are no longer converted to underscores in filenames of uploaded files/photos.
- CHANGE: Allow periods in subgroup names.
March 8, 2019
- SYSADMIN: Switched to using our own DNS resolver/cache because Linode's DNS resolver stopped working for some domains.
- NEW: New /feed page for testing.
- CHANGE: Wording change in bounce probe message.
- API: Misc updates.
- NEW: For cancelled events, include them in the ICS feeds, but set their status to CANCELLED.
- CHANGE: When viewing an event with an RSVP, don't display the cancel event button if no one has RSVPed yet.
- BUGFIX: 'Save and send to group' didn't work for a moderator editing a message in a subgroup.
- NEW: Added an addition Italian language quote separator.
- CHANGE: Default calendar view on mobile is now the list view.
- NEW: Add an additional French language quote separator.
- NEW: When viewing topics/searching by hashtag, show the hashtag description at the top of the page.
- NEW: Added subgroupnames parameter to the /directadd API endpoint, to compliment the subgroupids parameter.
- BUGFIX: When using the /directadd API endpoint, the wrong domain was used when composing the direct add notification emails.
March 1, 2019
- API: Updated the /getmessages api.
- SYSADMIN: Increased security of internal systems.
- SYSADMIN: Added an additional web server.
- CHANGE: Wording change in the pending group approval message. Thanks Shal and J.
- NEW: We use the DNS MX domains when sending email to determine if a person's email is hosted by Gmail or by Outlook 365. If such, we re-write the From header, if appropriate.
- NEW: In the account prefs page, we display if we are re-writing the From line of messages sent to you because your email is hosted by Gmail or Exchange.
- NEW: We now have two internal lists of domains: domains hosted by Gmail and domains hosted by Exchange. For gmail hosted domains, we re-write the From line for messages we send back to the sender. For Exchange hosted domains, we re-write the From lines for all messages.
- NEW: Internal infrastructure to substitute email headers in group messages more easily.
- CHANGE: Updated API docs with latest version, generated using the new automated tools.
- SYSADMIN: Moved disaster recovery backups off the main database server to a replica to reduce load.
- CHANGE: We were virus scanning files that are uploaded to the files section, but we weren't blocking them when they tested positive. We now block and log them.
February 22, 2019
- CHANGE: Made group icons clickable in the mobile home page.
- CHANGE: Added a switch to summary button when unsubscribing from the Edit Subscription page.
- CHANGE: Increased the write timeout of the api server to partially fix an issue where archive downloads were taking a long time to generate.
- CHANGE: When setting up a hashtag alias, make the explanatory text more clear.
February 15, 2019
- BUGFIX: When a member sent a message via the group directory, they were offered the ability to use one of the group messages as a template. Now, we limit that to mods/owners only.
- NEW: For premium groups, when viewing a pending message from a non-member, new 'Approve & Add Sender' button for owners/mods with appropriate privileges.
- NEW: Mods/owners can now edit messages in topics that have been locked.
- NEW: Subgroups have a new 'Allow Parent Subs To Post' settings checkbox.
- BUGFIX: Search queries that contained a single double quote were failing because it was not properly escaped.
- BUGFIX: Add organizer info to #cal-notice notifications.
- CHANGE: Yahoo transfers now require a year of premium.
- CHANGE: Reverted previous change to how notification messages are handled. Now, as originally, notification messages do not follow the group moderation setting.
- CHANGE: Got Yahoo transfers working yet again.
- CHANGE: For enterprise groups that have disabled signups, allow +subscribe email commands if the person already exists and is subscribed to the parent group.
- INTERNAL: Fix issue preventing paging me when the smtp check process fails.
- INTERNAL: Set Elasticsearch processes to automatically reboot when they crash.
February 8, 2019
- INTERNAL: Work on automating a tool to test database backups.
- CHANGE: Do not delete pending messages or pending subscriptions older than 14 days if they've been claimed.
- INTERNAL: Generating a lot more config files automatically through software, to make it easier to change configurations/add machines.
- INTERNAL: Added ability to off-load queries to replica databases and have started doing so to reduce the load on the main database.
- NEW: You can now claim pending subscribers.
- BUGFIX: Event reminders did not include organizer name.
- NEW: Including a login link in direct add notifications.
- NEW: You can now invite someone to join a subgroup (they will be added to the parent as well if they accept).
February 1, 2019
- INTERNAL: Wrote a tool to move a subgroup from one enterprise account to another enterprise account.
- INTERNAL: Refactored the API code and wrote a utility to generate the API docs from the code itself.
- INTERNAL: Added additional logging to track requests over multiple services.
- CHANGE: Temporarily disabled bounce processing for cox.net and charter.net addresses, as they seem to be blocking us.
- BUGFIX: The Download Members button wasn't shown on the Members page for some people who did in fact have permission to download members.