Skip to content

Commit

Permalink
0.4.2 (#267)
Browse files Browse the repository at this point in the history
* Bump version string

Need some diff to start an LLB PR

* [fix] change condition for checking legacy if user used blue

I did an oopsie whoopsie and flipped the logic in my brain!!

* [doc] add all properties to the BlueBlockUser interface

With the new integrations system I want to document everything that gets sent over so other extension devs can implement their own checks that use data that we don't.

* [fix] refix skipping TweetTombstones

Idk what happened here? Did I write code past my bed time? Maybe, no one can ever truly know

* [fix] remove reference to chrome.runtime.restartAfterDelay

* [chore] run prettier on src/background/index.ts

* [feat] add endpoint for external extensions to automatically register as an integration

External extensions can now send a request to Blue Blocker to be registered as a new integration. New integrations registered in this way are set to the disabled state by default, and the user of Blue Block still has to manually set the permissions of the new integration in order for the integration functionality to be enabled. This feature just makes it so that extension users do not have to find the extension ID of an external extension to register an integration.

* Add the ability to block users based on their offensive usernames

explain 'i'

Reapply "case insensitive"

This reverts commit ae0aa51.

Revert "case insensitive"

This reverts commit 2272caa.

case insensitive

Update index.ts

Update index.html

Update shared.ts

Stylizing changes, refactor element name, add status element

[Fix[ Unclosed textarea tag that caused safelist and integrations buttons to not render

Add a warning to the option explanation

Change to a better console log string

Use input number rules for textarea

Should make the textarea look more cohesive with the rest of the UI

[Fix] Typo

Refactor disallowed words update func, remove uneeded error logging, strip whitespace before storing

Update shared.ts

remove unused function

* switch firefox workflow to new action

* quote zip url and source filename

* simple check

* Fixes severe false positives

* Add space/end lookahead to the end of generated regex

The array.join method does not add the separator to the end of the last array entry, but we need the lookahead on each entry to make sure we don't match on fragments inside of a word

* adds the option to skip blue checkmark users

* [fix] add registerAction definition

Co-authored-by: dani <[email protected]>

* [fix] use registerAction instead of bare string

Co-authored-by: dani <[email protected]>

* [fix] Simplify regex for disallowed words

Thx Dani for saving me from being lost in the sauce <3

* Fix twitter x rename (#282)

Closes #280
Co-authored-by: dani <[email protected]>

* [fix] don't spread browser.runtime

* [fix] replace consecutive spaces with a single space, not delete them

* [fix] simplify skipBlueCheckmark check

* [fix] trim whitespace first

Co-authored-by: dani <[email protected]>

* [fix] use new api url for tweetdeck requests

* [fix] use chrome.runtime type definition

annoying annoying annoying :(

* [fix] escape regex characters

* [fix] move RegExp escaping to utilities, don't escape the word list that sits at rest

this will all make sense in a bit lol

* [fix] precompile disallowed word regex, treat emojis differently, store both list and regexp

* [fix] i forgor how escapes in strings work 💀

* compile config

* [fix] Use better emoji regex

* [fix] remove .list from config key selection

lol oops

* [fix] use null to signal an empty word list

* [chore] run prettier

* cleanup block for use and verified logic a lot, add feature use reason

* added other reason codes

* cleanup popup immensely

* add some more logging and some fixes to the page functions

* move ts-ignore

* add block disallowed words option

* prettier hell

* move use blue features block outside verified block so it still catches people when skip blue is enabled

* move block for use outside verified func

* more accurate wording

---------

Co-authored-by: MaxIsJoe <[email protected]>
Co-authored-by: dani <[email protected]>
Co-authored-by: Eric Gallager <[email protected]>
  • Loading branch information
4 people authored May 22, 2024
1 parent b4376ea commit 20a1598
Show file tree
Hide file tree
Showing 39 changed files with 1,835 additions and 1,129 deletions.
2 changes: 2 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ This is a long-lived branch, intended to aggregate all changes planned for versi
Pull requests should be made against this branch. Merges to this branch should be done via a merge commit. When ready, this branch should be merged to main via a squash commit.

## Changelog

```txt
Summary
1. document grouping follow 'SemVer2.0' protocol
Expand All @@ -13,6 +14,7 @@ Summary
```

## Deployment Checklist

1. [ ] merge all pull requests to llb
2. [ ] ensure `src/manifest.ts` and `package.json` have the correct version number
3. [ ] use makefile to generate zips (`make chrome`, `make firefox`)
Expand Down
24 changes: 16 additions & 8 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ jobs:
runs-on: ubuntu-latest
outputs:
filename: ${{ steps.build.outputs.filename }}
sourcefile: ${{ steps.src.outputs.sourcefile }}
steps:
- uses: actions/checkout@v4
- name: Set up Node.js
Expand All @@ -24,17 +25,24 @@ jobs:
run: |
make firefox
echo "filename=blue-blocker-firefox-$(make version).zip" >> "$GITHUB_OUTPUT"
- name: downloading source code
id: src
run: |
export SOURCE_FILENAME="blue-blocker-source-v$(make version).zip"
curl --connect-timeout 5 --retry 10 --retry-delay 10 --retry-max-time 30 "${{ github.event.zipball_url }}" -o "$SOURCE_FILENAME"
echo "sourcefile=$SOURCE_FILENAME" >> "$GITHUB_OUTPUT"
- name: publish firefox
uses: wdzeng/firefox-addon@v1.1.0-alpha.0
uses: browser-actions/release-firefox-addon@v0.1.3 # https://github.com/marketplace/actions/release-firefox-addon#inputs
with:
addon-guid: "{119be3f3-597c-4f6a-9caf-627ee431d374}"
xpi-path: "${{ steps.build.outputs.filename }}"
self-hosted: false
release-notes: "{\"en-US\": toJSON(${{ github.event.body }})}" # this should be the content of the release, make sure to include changelog
approval-notes: "source code for this version is available at https://github.com/kheina-com/Blue-Blocker/releases/tag/${{ github.event.tag_name }}\nrunning `npm run build` and then `make firefox` should build the addon package, then load and use twitter. you should start seeing users be blocked fairly quickly"
addon-id: "{119be3f3-597c-4f6a-9caf-627ee431d374}"
addon-path: "${{ steps.build.outputs.filename }}"
source-path: "${{ steps.src.outputs.sourcefile }}"
approval-note: "The extension can be built and tested locally using `make firefox`. Simply navigate to twitter.com and you should see users being queued and blocked fairly quickly."
release-note: "{\"en-US\": ${{ toJSON(toJSON(github.event.body)) }}}" # this should be the content of the release, make sure to include changelog. also yes the double use of tojson is intentional
compatibility-firefox-min: 48.0
license: MPL-2.0
jwt-issuer: ${{ secrets.MOZILLA_ADDONS_JWT_ISSUER }}
jwt-secret: ${{ secrets.MOZILLA_ADDONS_JWT_SECRET }}
auth-api-issuer: ${{ secrets.MOZILLA_ADDONS_JWT_ISSUER }}
auth-api-secret: ${{ secrets.MOZILLA_ADDONS_JWT_SECRET }}

Release-Chrome:
runs-on: ubuntu-latest
Expand Down
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Ignore artifacts:
.github
build
coverage
node_modules
Expand Down
19 changes: 11 additions & 8 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
{
"jsxSingleQuote": false,
"singleQuote": true,
"trailingComma": "all",
"endOfLine": "lf",
"printWidth": 100,
"semi": true,
"tabWidth": 4,
"useTabs": true
"jsxSingleQuote": false,
"singleQuote": true,
"trailingComma": "all",
"endOfLine": "lf",
"printWidth": 100,
"semi": true,
"tabWidth": 4,
"useTabs": true,
"arrowParens": "avoid",
"bracketSpacing": true,
"bracketSameLine": true
}
72 changes: 39 additions & 33 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# CHANGELOG

```txt
Summary
1. document grouping follow 'SemVer2.0' protocol
Expand All @@ -9,44 +10,49 @@ Summary
```

# v0.3.4 [2023.07.04]
- feat: show alert when user is logged out
- patch: write to history when block fails due to account deletion
- fix: retry after db failure
- fix: errors not surfacing during db transactions
- chore: add typedefs to all messages
- chore: display variance in popup

- feat: show alert when user is logged out
- patch: write to history when block fails due to account deletion
- fix: retry after db failure
- fix: errors not surfacing during db transactions
- chore: add typedefs to all messages
- chore: display variance in popup

# v0.3.3 [2023.07.01]
- feat: track block history, click blocked number in context menu to access (#63)
- feat: added safelist control buttons: import, export, clear
- feat: import block lists into queue via json files (#145)
- feat: added close button to all popups (#68)
- feat: auto-safelist unblocked users (#136)
- update: popups can now be placed in any corner of the screen (#68)
- fix: skip legacy verified error recovery
- chore: make toasts slightly slimmer
- chore: more and better header assignment
- chore: add entropy to block interval

- feat: track block history, click blocked number in context menu to access (#63)
- feat: added safelist control buttons: import, export, clear
- feat: import block lists into queue via json files (#145)
- feat: added close button to all popups (#68)
- feat: auto-safelist unblocked users (#136)
- update: popups can now be placed in any corner of the screen (#68)
- fix: skip legacy verified error recovery
- chore: make toasts slightly slimmer
- chore: more and better header assignment
- chore: add entropy to block interval

# v0.3.2 [2023.06.28]
- fix: chrome prior to version 109
- fix: stop parsing twitter error responses when sent using status 200
- fix: stop blocking automated accounts (those clearly labelled as such by twitter)
- fix: better error handling in blocking logic, wrap legacy verified logic to prevent deadlocks when db doesn't start
- chore: remove some unneeded debug logs

- fix: chrome prior to version 109
- fix: stop parsing twitter error responses when sent using status 200
- fix: stop blocking automated accounts (those clearly labelled as such by twitter)
- fix: better error handling in blocking logic, wrap legacy verified logic to prevent deadlocks when db doesn't start
- chore: remove some unneeded debug logs

# v0.3.1 [2023.06.27]
- feat: overhaul popup menu to have new quickmenu for quick changes and an advanced tab for full options list (#141)
- remove: management permissions requirement in manifest (#155)
- chore: update integration logic to send test message instead of using management api
- feat: block users promoting tweets (#5)

- feat: overhaul popup menu to have new quickmenu for quick changes and an advanced tab for full options list (#141)
- remove: management permissions requirement in manifest (#155)
- chore: update integration logic to send test message instead of using management api
- feat: block users promoting tweets (#5)

## v0.3.0 [2023.06.26]
- chore: migrate to create-chrome-ext with typescript
- chore: also check profile shape to detect nft avatars (#130)
- feat: use travis brown's verified db to check legacy verifications (#134)
- feat: integration with soupcan (#139)
- fix: queue locking and overly fast blocking (#66)
- fix: critical point logic in queue and counter new generate ref ids per lock
- fix: ignore error responses from twitter (#142)
- perf: change user object in queue to be slimmer

- chore: migrate to create-chrome-ext with typescript
- chore: also check profile shape to detect nft avatars (#130)
- feat: use travis brown's verified db to check legacy verifications (#134)
- feat: integration with soupcan (#139)
- fix: queue locking and overly fast blocking (#66)
- fix: critical point logic in queue and counter new generate ref ids per lock
- fix: ignore error responses from twitter (#142)
- perf: change user object in queue to be slimmer
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "blue-blocker",
"version": "0.4.1",
"version": "0.4.2",
"author": "DanielleMiu",
"description": "Blocks all Twitter Blue verified users on twitter.com",
"type": "module",
Expand Down
4 changes: 2 additions & 2 deletions readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ npm run dev

1. run `npm run dev` or `npm run build`
2. Visit the [chrome extentions page](chrome://extensions/)
1. (or enter `chrome://extensions/` in the Chrome url bar)
1. (or enter `chrome://extensions/` in the Chrome url bar)
3. Enable `Developer mode` in the top right
4. Click `Load unpacked` in the top left and select `blue-blocker/build` folder

Expand All @@ -40,7 +40,7 @@ npm run dev
1. Run `npm run build`
2. Run `make firefox`
3. Visit the [firefox addon debugging page](about:debugging#/runtime/this-firefox)
1. (or enter `about:debugging#/runtime/this-firefox` in the Firefox url bar)
1. (or enter `about:debugging#/runtime/this-firefox` in the Firefox url bar)
4. Click `Load Temporary Add-on` in the top right and select `manifest.json` in the `blue-blocker/build` folder

## License
Expand Down
Loading

0 comments on commit 20a1598

Please sign in to comment.