forem.dev Community

loading...
Cover image for Changelog: Forem Extension, Sign in with Apple, Profile Updates, and more!
Forem Core Team

Changelog: Forem Extension, Sign in with Apple, Profile Updates, and more!

coffeecraftcode profile image Christina Gorton ใƒป2 min read

Welcome to the first Forem changelog of 2021! Here is a round-up of the latest highlights from our repository that add improvements to Forem.

Forem Browser Extension v0.1.3 is Live ๐ŸŽ‰

Chrome Forem Browser extension
The Forem Browser Extension makes it easier to switch between different Forems.
We have also started rolling out new branding for Forem. You can catch a glimpse of the new logo in this updated extension.

Chrome

Chrome Extension

Firefox

FireFox Extenstion

You can view the code for the extension below.

GitHub logo forem / forem-browser-extension

The Forem browser extension which allows users to seamlessly navigate between communities.

Forem Browser Extension ๐ŸŒฑ

Everyone is free to download and use this Chrome extension.

This extension will eventually be listed in the Chrome Store, but in the meantime we are loading from this source. You will be alerted when there is a new beta version available for download.

๐Ÿ‘‰ How to install Chrome extensions from GitHub

Installation is just a few clicks. Follow the guide to get started.

About this extension

This is a fairly functional work-in-progress. Let's try to keep it clean and functionally minimal as we evolve it.

  • Currently the code is written for Chrome, but this should be able to share 99% of the code with Firefox as long as we take care to do that early on.
  • Forem logo is a placeholder.
  • Link to forem.com should link to a functional page, probably with discovery of new forems etc.
  • We should add service workers to that functionalโ€ฆ

Sign in with Apple ๐ŸŽ

Recently, a Sign in with Apple authentication provider was added to Forem. This is currently in beta mode only and we are testing it in several Forem instances. We plan to add it to DEV soon.

We will move it out of beta preview once we are sure it is robust and tested thoroughly.

Add Sign in with Apple #11934

What type of PR is this? (check all applicable)

  • [ ] Refactor
  • [x] Feature
  • [ ] Bug Fix
  • [ ] Optimization
  • [ ] Documentation Update

Description

Feature: Add Sign in with Apple Authentication Provider

Due to changes in the flow I'm trying out a test in a branch rather than a fork PR. The work here started in #7952

Here is a video of the feature working locally (requires HTTPS and Apple Developer Program config): https://share.getcloudapp.com/12uK0kpn

Related Tickets & Documents

#7952

closes https://github.com/forem/security/issues/337

QA Instructions, Screenshots, Recordings

Existing OAuth providers Since this PR also refactors the OAuth provider buttons to use POST instead of GET (https://github.com/forem/security/issues/337) try to log in and log out with other OAuth service providers

Apple Auth behind Feature Flag

  1. Boot up locally
  2. Go to sign in/sign up path (Apple Auth should not appear)
  3. Log in as admin and go to /admin/config > Authentication
  4. Apple Auth provider should not appear
  5. Open the rails console and run Flipper.enable(:apple_auth)
  6. Log in as admin and go to /admin/config > Authentication
  7. This time Apple Auth provider should appear
  8. Fill up all four details from Apple Auth to enable it
    • You can pass in jibberish like "qsdfsdfas" it doesn't matter because you won't be able to test it locally
  9. Go to sign in/sign up path and this time Apple Auth should appear (it won't work)
  10. Go to the rails console and run Flipper.disable(:apple_auth)
  11. Both the Apple provider from /admin/config and the provider option from sign in/sign up paths should not appear anymore
  12. Yay feature flag! Now lets test in production ๐Ÿ˜ˆ

UI accessibility concerns?

Nope, everything was refactored in place. Maybe double check /enter to make sure those buttons still work the same?

Added tests?

  • [x] Yes
  • [ ] No, and this is why: please replace this line with details on why tests have not been included
  • [ ] I need help with writing tests

Added to documentation?

[optional] Are there any post deployment tasks we need to perform?

None, we need to use our Canary Forem instances to fully test out the feature because it's inherently tied Apple Services that require HTTPS and other necessary configurations

[optional] What gif best describes this PR or how it makes you feel?

the time has come

Removal of Auto-Following Hiring Tag in Forems

This is a two part PR. The current implementation removes the automatic following of the hiring tag after ticking the Looking for work checkbox on a user's profile.

Attention:

In the near future, this PR will be removing the Looking for Work and Display "Looking for Workโ€ on Profile fields from user profile settings.
Looking for work fields on DEV

If you are a DEV user who is making use of the looking_for_work_publicly field, we advise you to update your profile summary with your work status before this feature is deprecated.

Remove autofollowing hiring tag #11722

What type of PR is this? (check all applicable)

  • [X] Refactor

Description

This PR removes the automatic following of the hiring tag after ticking the "Looking for work" checkbox on a user's profile. This was primarily done for two reasons:

  1. It's very DEV specific and dates back to a time where DEV was still exploring other possible futures than Forem.
  2. The hiring fields are pretty complex, as they rely on the interaction of two fields (are you looking at all and if yes, is it public?) which doesn't generalize well.

Because of 2. I vote for completely removing the "looking for work publicly" field from all Forems via a data update script once the generalized profile page has been merged (see #11485) as it will no longer serve a purpose. We might even do that as part of the other PR.

I'll leave this PR as draft for now, as we still have some product-related discussion going on in https://github.com/forem/InternalProjectPlanning/issues/366 as to how to notify users who currently have these flags set about the upcoming change.

Related Tickets & Documents

Closes https://github.com/forem/InternalProjectPlanning/issues/366

QA Instructions, Screenshots, Recordings

  1. Ensure your user doesn't follow the hiring tag.
  2. Go to /settings/profile
  3. Check the "Looking for work" checkbox and save your profile: Screen Shot 2020-12-03 at 12 22 15
  4. Your user should still not follow the hiring tag.

Added tests?

  • [X] No, and this is why: I'm removing a feature, so I'm also removing the corresponding spec.

Added to documentation?

  • [X] No documentation needed

[optional] What gif best describes this PR or how it makes you feel?

image

Working Edit/Delete Buttons for Listings

This PR fixes a commonly reported issue where in the listings dashboard, a listing's edit and delete buttons were HTML <button> tags, when they should be <a> tags that link to the proper page. This prevented users from having the ability to Edit or Delete their posts.

Note:
This fix currently works on our DEV instance of Forem and will soon be deployed to all instances.

Use anchor tag instead of button for edit/delete links #12098

What type of PR is this? (check all applicable)

  • [x] Bug Fix

Description

This fixes an issue where in the listings dashboard, a listing's edit and delete buttons were HTML <button> tags, when they should be <a> tags that link to the proper page.

Related Tickets & Documents

Closes #10937

QA Instructions, Screenshots, Recordings

  1. Make a listing: http://localhost:3000/listings/new
  2. Go to your listings dashboard: http://localhost:3000/listings/dashboard
  3. Click the edit button and see that it routes properly
  4. Click the delete button and see that it routes to /:listing_slug/delete_confirm

UI accessibility concerns?

Don't think so! Just changed it to a regular link.

Added tests?

  • [x] Yes

Added to documentation?

  • [x] No documentation needed

[optional] Are there any post deployment tasks we need to perform?

No

[optional] What gif best describes this PR or how it makes you feel?

Can't load Giphy today :(

Discussion

pic
Editor guide