Updates to the Groups.io service.
December 7, 2019
- SYSADMIN: Upgraded the outbound email machine.
- CHANGE: We are no longer accepting new Yahoo Group transfer requests.
- API: Added `reply`, `bcc_me` and `from_owner` parameters to the `/postdraft` endpoint.
- API: Added `/authenticateloginlink` endpoint.
November 26, 2019
- API: Added `/sendloginlink`, `/resendconfirmationemail` and `/unbounceuser` endpoints.
- API: Added `/getsubgroupsbycategory` endpoint.
- NEW: When changing your email address, we now send a notification email to your old email address.
- API: Added `/getsubgroupcategories` endpoint.
November 15, 2019
- API: Added `/searchwikis` endpoint.
- API: Changed `search_result` object to `message_search_result`.
- API: Added `/getbounceinfo` and `/getdeliveryinfo' endpoints.
- API: Added `/getmessagehistory` endpoint.
- API: Added optional `type` parameter to the `getmembernotices` endpoint.
- API: Added `muted` and `followed` fields to `hashtag` object.
- API: Added `/getsinglefeed` endpoint.
- CHANGE: When switching from monthly to yearly billing, charge the card immediately instead of waiting until the next invoice date.
- BUGFIX: Updated the list of timezones with their current UDT offsets.
- BUGFIX: Fixed an issue where going to an open chat would just return you to the available chats page.
November 8, 2019
- INTERNAL: Several database optimizations to speed group imports.
- INTERNAL: Completed webhook server.
- API: Added `/getmemberdirectory` endpoint.
- API: Added `sticky_wiki_page_id` field to the `group` object.
- API: Added new `id` parameter to `/getwikiset` endpoint.
- API: Added new `Types` section to the docs. Currently only lists the `action` enum.
- API: Changed all view_* permissions to be *_visible, to be consistent.
- API: Added `msg_num`, `subject`, `extra`, `extra2`, `extra_id` fields to `webhook_event` objects.
November 1, 2019
- API: New endpoints: `newpoll`, `updatepoll`, `getpoll`, `vote`.
- API: New endpoint: `registeruser`.
- NEW: Testing prioritizing support emails from group owners of premium groups.
- API: New endpoints: `newwikipage`, `getwikipages`, `getwikipageset`.
October 18, 2019
- INTERNAL: Various software changes and additional machines to deal with the extreme massive influx of new groups.
- NEW: For premium/enterprise groups on annual billing, we now send out a courtesy reminder two weeks before billing them.
- API: Added `signature` to `member_info` object.
October 11, 2019
- INTERNAL: More work on the API webhooks system.
- CHANGE: When forwarding a message using the Mac email client (and maybe others), it takes the forwarded message, encloses it in a blockquote and adds at the top 'Begin forwarded message'. Because it was in a blockquote, we were collapsing it. This was not good behavior, so we now look for this special case and don't collapse that blockquote.
- API: Added `open_donations_visible` to `perms` object.
- API: Added `hashtags_visible` to `perms` object.
- API: Removed `view_archives` from `perms` object.
- API: Changed `view_guidelines` to `guidelines_visible` in `perms` object.
- API: Added `subgroups_visible` to `perms` object.
- API: Added `perms` field to `member_info` object.
- API: Added new Subs array to `user` object.
- API: The `member_info` object now only returns the fields that are set by the endpoint. Previously it returned all fields, regardless of whether the fields were set or not (some endpoints won't set all the fields based on permissions).
- BUGFIX: When dealing with a message from someone not a part of the group, who has DMARC p=reject set on their domain, use their name in the From line (ie Mark Fletcher via Groups.io). Previously this was blank.
- CHANGE: When banning a member of a group, we now generate a past member object for them so they properly appear in the past members list.
- CHANGE: Added autocomplete="off" to email fields when viewing a member and when viewing your account information to prevent the browser from changing the fields.
October 4, 2019
- INTERNAL: More work on the upcoming notifications system.
- INTERNAL: Much work to revamp the activity log system to support webhook API functionality.
- BUGFIX: The `/getmembers` API endpoint would return all members, including banned and pending members, if you didn't specify a `type`, instead of only returning normal members, which it should do.
- NEW: Added subject checks for 'ris:' and 'r: ' which can indicate a message is a reply.
- CHANGE: Changed the file upload notification so that only one notification is generated regardless of the number of files/directories that are uploaded.
- API: Added `/getphoto` endpoint.
- API: Added `display_name`, `user_name`, `profile_photo_url`, `profile_privacy`, `email` fields to the `photo` object.
- API: Added `/reportcontent` endpoint.
September 27, 2019
- NEW: Upload Folder button in the Files area to upload a directory of files.
- API: Added `/newmembernotice`, `/updatemembernotice`, `/deletemembernotice`, and `/getmembernotices` endpoints.
- NEW: Checkbox to notify the group when you modify a file.
- CHANGE: Rate limit how often someone can report a message, to make abuse more difficult.
- CHANGE: Changed how we present start/end dates/times in calendar invite emails, to match how we present them when clicking Download Event. Even though both should be equivalent, apparently Outlook likes the Download Event version better.
- API: Added `/searchfiles` endpoint.
- BUGFIX: We now consider email addresses with parentheses as invalid.
- API: Added `/searchphotos` endpoint.
- API: Added `/getdirectory` and `/getfile` endpoints.
- API: Changed `snippet` field to `summary` in the `search_result` object for naming consistency.
- INTERNAL: Upgraded Go compiler to 1.13.1
- API: Added `/testnotification` endpoint.
- API: Handle case where group is not in the same domain as the API request. Caused incorrect direct add emails.
September 20, 2019
- API: Added `sort_field`, `second_order`, `query`, `sort_dir` fields to the pagination object.
- BUGFIX: In some cases, when doing a photos search, clicking an individual photo would bring up a different photo.
- CHANGE: Sorting group calendar ICS feeds by start time, to maybe, hopefully, fix a weird Outlook bug.
- BUGFIX: Fix issue where the photo may not match the thumbnail if the album was sorted by Posted.
- API: Added `/registerdevice` endpoint for registering device tokens for notifications.
- NEW: Added `exclude_aliases` flag to `/gethashtags` endpoint.
- NEW: Include the IP address of the mail server we were attempting to delivery email to in bounce message lists on the website.
- API: Added `/searcharchives` endpoint and related `search_result` and `search_results_list` objects.
- API: Added `profile_photo_url`, `name` and `can_view_profile` fields to the `chat` object.
- API: Added `alias` field to `hashtag`.
- API: Added `announce` flag to `/newchat` endpoint.
- API: Setting the `chat_sub` field on the chat object whenever we can. Previously this was only set in a few instances.
- BUGFIX: You couldn't change the case of your email address; it thought you were merging with a different email address and would fail.
- API: Added `/addalbum`, `/updatealbum`, `/deletealbum`, `/addphotos`, `/updatephoto`, `/deletephoto` endpoints.
September 13, 2019
- NEW: More work on the new notifications system.
- API: Changed `gallery_url` field in the photo and attachment objects to `thumbnail_url` because it's more clear.
- API: Added `getalbums` and `getphotos` endpoints.
- API: Changed `profile_photo_id` field in `member_info` to `profile_photo_url`.
- BUGFIX: We had disabled signature parsing in plain text messages where we couldn't tell if the sig was part of the reply or the original message. That change wasn't also added to html messages.
- BUGFIX: Subscribing to a subgroup via email did not work.
- BUGFIX: Fixed a loophole that would sometimes allow emails from numbered qq.com accounts through.
- API: Added `/chatmembers` endpoint.
- API: Fixed bug in `/joinchat` endpoint that caused it to return a `no_group_specified` error.
- API: Added `updateprofile` endpoint.
- API: Added `num_drafts` field to `member_info` object.
- API: Added `updateprofilephoto` and `deleteprofilephoto` endpoints.
- CHANGE: No longer allowing the CSS height attribute because in some instances we were ending up with archives that had overlapping text at the bottom.
- BUGFIX: After creating a group, fix text for groups that are unlisted but with public archives.
September 6, 2019
- CHANGE: Changed a bunch of references to 'post' to 'message'.
- API: Changed `profile_photo_id` to `profile_photo_url` in the User object.
August 30, 2019
- CHANGE: The email bounce returned when sending a message to a group you're not subscribed to had a link to the /join page, which if you are logged in, would bounce you to another page. Removed the /join part of the URL.
- INTERNAL: Updated Facebook API integration to use their latest version.
- API: Added `googleloginstart` and `googleloginfinal` endpoints.
- API: Added `facebookloginstart` and `facebookloginfinal` endpoints.
- NEW: Enterprise groups now support single sign-on (currently only by Auth0, others by request).
- API: New `logout` endpoint.
August 23, 2019
- NEW: Enterprise Settings screen for enterprise accounts to make changes to their domain settings.
- BUGFIX: The email address displayed when you edit an email integration was incorrect. The email address displayed in the overall email integration display is correct.
- CHANGE: In certain messages, we cannot tell if a signature is part of the original message or a part of the reply. We were displaying these sigs, but that lead to some 'false positives'. So, we're no longer displaying the sigs.
- CHANGE: Event notification and cancellation emails now include the Organizer name, if there is one.
- INTERNAL: Cleanup of various javascript displaytime file versions usage.
- API: Implemented `/chatdata` endpoint for chats.
- INTERNAL: Re-implemented much of the chat system to behave well with API calls.
- BUGFIX: We were not recording failed confirmation email results.
- API: Changed `is_subscribed` field in the chat object to `chat_sub`.
- API: Added `show_closed` parameter to the `getchats` endpoint.
- BUGFIX: We were not detecting quoted message parts from Outlook that included a "Cc:" header line.
- CHANGE: Redid the Login With Google authentication system to hopefully conform with their updated requirements.
August 16, 2019
- CHANGE: For premium/enterprise groups, only automatically add an event to the calendar that was emailed to the group if the message is not a reply.
- BUGFIX: When viewing a database row that had checkbox columns, the checkboxes were always checked.
- BUGFIX: Registering a new account via Google or Facebook was broken.
- API: Changed /getgroup endpoint to require a group_name for groups that you are not subscribed to, for security.
- API: Documentation change: The Objects section has been moved to the end of the docs.
- API: The Group object now includes a Perms object if you are subscribed to the group.
- API: Relaxed the requirement for having the `manage_group_settings` permission when accessing the `/getgroup` endpoint.
- API: Added `/sendchatmsg` endpoint.
- INTERNAL: Optimizations for calendars with a lot of repeating events.
- API: Added `/getchathistory` endpoint.
- API: Added `group_name` and `nice_group_name` to the Event object.
August 9, 2019
- INTERNAL: Work to support the app.
- CHANGE: Tweaked the wording of 'Changed display name' activity log entries to be more clear.
- BUGFIX: If someone had changed their display name for a particular subscription, and then changed their display name through their overall profile, an activity log was generated incorrectly saying that the modified display name had been changed, even though it had not.
- NEW: There is a new activity log entry type, 'Moderator changed display name'.
- BUGFIX: Display name activity log records were generated even when the display name wasn't changed when editing a member.
- CHANGE: In the activity log Actions dropdown, change 'Moderated message' to 'Sent message requiring approval'.
- API: Renamed all instances of `sub_id` parameters to `member_info_id`. In all cases, `sub_id` will still be accepted to maintain backwards compatibility.
- BUGFIX: Sending invites still worked even when the group was locked.
- BUGFIX: In message search and member activity search, custom date ranges didn't work correctly if the user had selected a different date format.
- BUGFIX: If a basic group previously was a premium group with a different person set as payor, you could not change who was the payor or upgrade the group.
- API: Removed API_KEY requirement for the /login endpoint.
- API: Changed the /login endpoint from GET to POST.
- NEW: In the sub/resub notification emails, now link to the member pages of the people who joined.
- BUGFIX: Fix for weekly event summary emails not being sent out if the first of the month falls on a Thursday.
July 25, 2019
- BUGFIX: We were not logging when a moderator changed a user's display name.
- INTERNAL: A lot of work to support the API/app.
- BUGFIX: Links in wiki pages were unintentionally opening in new browser windows.
- NEW: You can now view past member +Owner messages.
- CHANGE: When attempting to view member only parts of a group after you've been banned, instead of saying you were banned, we now say 'You are not a member of this group.'
July 19, 2019
- CHANGE: In the activity log, we sometimes truncate long entries. We now have 'more' links to show the full entry.
- NEW: Added new chat API endpoints: /newchat, /updatechat, /getchats, /deletechat, /joinchat, /leavechat.
- NEW: Added /getevent API endpoint.
- BUGFIX: In some cases when someone RSVPs to an event but is waitlisted, an incorrect activity log entry was generated.
- NEW: Added /rsvp endpoint to set/update an event RSVP.
- CHANGE: Previously, the /getsubgroups endpoint would return group objects that represented group aliases. It now longer returns these.
- CHANGE: In the /directadd endpoint, if a subgroupname or subgroupid is specified that points to a group alias, the pointed to group will be used instead.
- NEW: Added /getgroupaliases API endpoint to fetch group aliases.
- INTERNAL: Split out chat websocket endpoint from the web server into a new chat server process.
July 12, 2019
- CHANGE: When resending a pending member notification, we now prepend 'Resend: ' to the subject line.
- BUGFIX: Fixed infinite scroll in the group hashtags view.
- CHANGE: Moved 'Member Sync' button from Settings to Members, and renamed it 'Service Sync'. Also cleaned up formatting of the page.
- NEW: In Direct Add and Invite, you can now select the member notice to include in the page. Edits to the member notice are no longer saved to the member notice. Also, in Member Notices, no direct add or invite notices are labeled as Active.
- NEW: There's a new 'File Sync' button in Members, for the new file sync functionality. You can now sync your membership to a file. This is restricted to premium groups only and to parent groups only.
- CHANGE: In the /groups page, changed the wording of individual delivery for better consistency.
- BUGFIX: The example text in the invite screen did not always have the correct group name in some enterprise groups.
- BUGFIX: On the search results page, the drop down for each topic had 'Edit Subject' listed twice.
- BUGFIX: With Auto Moderate Threads, we were sometimes ignoring the # of days and moderating all threads created in the past day.
- API: Misc formatting improvements to the API docs.
- API: New hashtag endpoint: /gethashtags.
- API: Added new draft endpoints: /newdraft, /updatedraft, /getdrafts, /deletedraft, /uploadattachment, /getattachments, /deleteattachments, /postdraft.
- CHANGE: We now strip out the tracking image from Superhuman emails.
- INTERNAL: Consolidated two of our internal monitoring apps into one program to make things easier.
- BUGFIX: Fixed an issue with the /getevents API endpoint not returning any results.
- SYSADMIN: Replaced the backup database instance because a kernel mismatch issue was causing backups to fail.
June 28, 2019
- BUGFIX: Information on successful adds to subgroups in the API /directadd endpoint were not correctly returned.
- BUGFIX: In a subgroup, you could not change the Privacy from 'Group not listed in parent group, publicly viewable messages' to 'Group listed in parent group, publicly viewable messages'.
- BUGFIX: In the feed view, the list of new subgroups were linked to the parent group home page instead of to their individual home pages.
- BUGFIX: In the feed view, only list new subgroups that are set to be listed in the directory.
- SYSADMIN: Thirty minutes of downtime to upgrade the main Postgres instance to mitigate the latest Intel vulnerability.
- BUGFIX: The .ics files produced for all day events could, depending on interacting timezones, be off by a day.
- BUGFIX: When viewing a multi-day all day event, don't display start/end times.
- CHANGE: Changed all time references using "GMT" to "UTC" instead for consistency.
- CHANGE: The background of the header for the Emailed Photos album is now just grey.
- CHANGE: The height of the header of any photo albums without descriptions has been decreased.
- CHANGE: Created a utility to regenerate the list of timezones with the currently correct UTC offsets and timezone abbreviations.
- CHANGE: The 'Your Groups' dropdown is limited to 400px height, and becomes scrollable after that.
- CHANGE: The 'Your Groups' dropdown now uses the group title if it's set. NOTE: Sorting is still done by group name. This will be addressed with a future update.
- CHANGE: Rate limiting login link requests to prevent abuse.