Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.4.2 #267

Merged
merged 50 commits into from
May 22, 2024
Merged

0.4.2 #267

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
8753f24
Bump version string
rougetimelord Apr 17, 2024
020b9d6
[fix] change condition for checking legacy if user used blue
rougetimelord Apr 17, 2024
9eeb0de
[doc] add all properties to the BlueBlockUser interface
rougetimelord Apr 17, 2024
580d74d
[fix] refix skipping TweetTombstones
rougetimelord Apr 18, 2024
ea68f6c
[fix] remove reference to chrome.runtime.restartAfterDelay
rougetimelord Apr 19, 2024
6181323
Merge pull request #271 from rougetimelord/remove-restartAfterDelay
rougetimelord Apr 25, 2024
b669383
[chore] run prettier on src/background/index.ts
rougetimelord Apr 30, 2024
c150e66
[feat] add endpoint for external extensions to automatically register…
rougetimelord Apr 30, 2024
a482b0c
Merge pull request #274 from rougetimelord/integration-registration-p…
rougetimelord May 3, 2024
83f8687
Add the ability to block users based on their offensive usernames
MaxIsJoe May 3, 2024
52659d2
switch firefox workflow to new action
kheina May 8, 2024
dd605e6
Merge pull request #277 from kheina-com/new-firefox-workflow-action
kheina May 8, 2024
a8636d6
quote zip url and source filename
kheina May 8, 2024
602cec8
simple check
MaxIsJoe May 9, 2024
f8fcc01
Fixes severe false positives
MaxIsJoe May 9, 2024
e6f2761
Add space/end lookahead to the end of generated regex
rougetimelord May 9, 2024
e0efcb7
adds the option to skip blue checkmark users
MaxIsJoe May 10, 2024
f76fd14
Merge pull request #275 from MaxIsJoe/block-usernames
rougetimelord May 10, 2024
73ee337
Merge branch '0.4.2' into disable-bluecheck-block
cooljeanius May 10, 2024
e316cf3
[fix] add registerAction definition
rougetimelord May 11, 2024
3299cba
[fix] use registerAction instead of bare string
rougetimelord May 11, 2024
9256d4b
[fix] Simplify regex for disallowed words
rougetimelord May 15, 2024
6fb6616
Merge pull request #278 from MaxIsJoe/disable-bluecheck-block
rougetimelord May 16, 2024
2b20f35
Fix twitter x rename (#282)
kheina May 16, 2024
1e71966
[fix] don't spread browser.runtime
rougetimelord May 17, 2024
4d77697
[fix] replace consecutive spaces with a single space, not delete them
rougetimelord May 17, 2024
8975374
[fix] simplify skipBlueCheckmark check
rougetimelord May 17, 2024
1f972a2
[fix] trim whitespace first
rougetimelord May 17, 2024
616dcca
[fix] use new api url for tweetdeck requests
rougetimelord May 18, 2024
a6db734
[fix] use chrome.runtime type definition
rougetimelord May 18, 2024
633d0e1
[fix] escape regex characters
rougetimelord May 18, 2024
3d85abe
[fix] move RegExp escaping to utilities, don't escape the word list t…
rougetimelord May 18, 2024
480ef4e
[fix] precompile disallowed word regex, treat emojis differently, sto…
rougetimelord May 18, 2024
adcdc08
[fix] i forgor how escapes in strings work 💀
rougetimelord May 18, 2024
84aad75
compile config
kheina May 18, 2024
56a3b1c
Merge pull request #283 from kheina-com/compile-config
rougetimelord May 20, 2024
5e3fc23
[fix] Use better emoji regex
rougetimelord May 20, 2024
8bfb772
[fix] remove .list from config key selection
rougetimelord May 20, 2024
bf81ab1
[fix] use null to signal an empty word list
rougetimelord May 21, 2024
fdb7f50
[chore] run prettier
rougetimelord May 21, 2024
775b019
cleanup block for use and verified logic a lot, add feature use reason
kheina May 21, 2024
d098db5
added other reason codes
kheina May 21, 2024
96bdb03
cleanup popup immensely
kheina May 21, 2024
85e90e6
add some more logging and some fixes to the page functions
kheina May 21, 2024
1a13afd
move ts-ignore
kheina May 21, 2024
7d83299
add block disallowed words option
kheina May 21, 2024
31d37a5
prettier hell
kheina May 21, 2024
7b05ee1
move use blue features block outside verified block so it still catch…
kheina May 21, 2024
6df2e53
move block for use outside verified func
kheina May 21, 2024
cd2cd67
more accurate wording
kheina May 21, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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
Loading