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

feat: Implement Push Notifications sync #3304

Merged
merged 1 commit into from Jun 12, 2023

Conversation

GeekCornerGH
Copy link
Contributor

@GeekCornerGH GeekCornerGH commented Mar 4, 2023

Implements the Push Notification feature

Resolves #2469

Push-demo.webm

Special thanks to @samb-devel for your help

How to test:

Get your keys from the Bitwarden website
Set environment variables to the required values:

PUSH_ENABLED=true
PUSH_INSTALLATION_ID=CHANGEME
PUSH_INSTALLATION_KEY=CHANGEME

PUSH_RELAY_URI is already configured to use default Bitwarden server.
Start the server, then test.

This was my first shot at Rust.

@stefan0xC
Copy link
Contributor

Thanks for the contribution. I have not looked at the changes yet but can you run cargo fmt and fix the errors reported by cargo clippy so the automatic checks won't fail?

@GeekCornerGH
Copy link
Contributor Author

Thanks for the contribution. I have not looked at the changes yet but can you run cargo fmt and fix the errors reported by cargo clippy so the automatic checks won't fail?

Sure thing, will do it later

@GeekCornerGH
Copy link
Contributor Author

Removed pretty much every error.
If someone can suggest changes to remove the last 2 ones, feel free to do so, not sure how to resolve them (removing return throw an error about response type for instance)

src/push.rs Outdated Show resolved Hide resolved
Copy link
Collaborator

@BlackDex BlackDex left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm looking at the code right now.
At a first glance the code looks ok, but have not looked detailed at it.

First things that i notice are the following.
There are two migrations done on the database, while that could be done in one go, which would make a down.sql a bit easier I think, and probably wanted.

Also, i have not checked what the effects are yet of this change, since there is a primary key on the old UUID and USER_UUID combined. I don't know if that will break stuff with this rename.
I still tend do keep uuid as is, and use push_token as a new column. Even though that deviates from upstream Bitwarden. But we can put that into the comments at the object.

I also see a lot of extra calls being done in regards to pushing these notifications.
Now every function which has a nt.send... also has a push_... in there.
Can't we merge this in some way and just have one entry point for sending out changes?
Like, and the push:: to the notifications.rs file?
That would solve future notification updates or additions to just add one, instead of two calls every time.

src/api/core/accounts.rs Outdated Show resolved Hide resolved
src/db/models/user.rs Outdated Show resolved Hide resolved
src/api/notifications.rs Outdated Show resolved Hide resolved
Copy link
Collaborator

@BlackDex BlackDex left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some more reviews from my side.
I haven't fully checked everything detailed though.

src/push.rs Outdated Show resolved Hide resolved
src/push.rs Outdated Show resolved Hide resolved
src/push.rs Outdated Show resolved Hide resolved
src/push.rs Outdated Show resolved Hide resolved
src/push.rs Outdated Show resolved Hide resolved
src/main.rs Outdated Show resolved Hide resolved
src/config.rs Show resolved Hide resolved
src/push.rs Outdated Show resolved Hide resolved
src/push.rs Outdated Show resolved Hide resolved
src/push.rs Outdated Show resolved Hide resolved
@GeekCornerGH GeekCornerGH requested review from BlackDex and removed request for VarChar42 March 13, 2023 09:31
dpinse

This comment was marked as duplicate.

@BlackDex
Copy link
Collaborator

@GeekCornerGH , my apologies already for my changes, hope it won't be to hard to merge hehe.

Copy link
Contributor

@tessus tessus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SQL statements are wrong. I am not sure how they ever ran successfully during a migration.

The proper statement is ALTER TABLE bla ADD COLUMN ...

@GeekCornerGH
Copy link
Contributor Author

Wooops, I guess git didn't caught the changes 😂 I'll rebase anyways

@GeekCornerGH GeekCornerGH force-pushed the feature/push-notifications branch 2 times, most recently from 5a6bfe3 to adeba68 Compare March 16, 2023 10:31
src/main.rs Outdated Show resolved Hide resolved
@GeekCornerGH
Copy link
Contributor Author

@tessus since GitHub won't allow me to request 2 reviewers at one time, I just tag you haha, is everything fine now?

Copy link
Contributor

@tessus tessus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there are still 2 points outstanding, from other reviewers:

  1. don't add an option in config.rs for PUSH_RELAY_URI (or at least it should not be public for now)
  2. merge the function calls

ad 1) currently there is only one push server and setting it to anything other than the bw address won't work. It is too error prone to allow users to change this value. However, in the code the variable should still be used, since bw might introduce other servers or allow customers to setup their own push server (which would also require a change in he client code).

ad 2) currently there are always 2 fuction calls, as an example:

send_folder_update(...)
push_folder_update(...)

If I understood BlackDex's comment correctly, the second call should be added to the first one:

fn send_folder_update(...) {
    original code;
    
    if (PUSH_ENABLED) {
        push_folder_update(...);
    }
}

But I am not the right person to review the entire PR. Someone who actually knows Rust (I only dabble with it) and the code base will hvae to do a proper review.

@samb-devel
Copy link
Contributor

Thank you @tessus for your remarks.

@BlackDex : could you please confirm that the code suggested by @tessus is what you inteded? Can we simply call push_folder_update(..) from within send_folder_update which is inside the impl WebSocketUsers block without any problem?

Thank you in advance for your feedback

@BlackDex
Copy link
Collaborator

BlackDex commented Mar 18, 2023

Thank you @tessus for your remarks.

@BlackDex : could you please confirm that the code suggested by @tessus is what you inteded? Can we simply call push_folder_update(..) from within send_folder_update which is inside the impl WebSocketUsers block without any problem?

Thank you in advance for your feedback

My main point is i don't like to have two functions being called at all those functions while using the same arguments.
I actually have not yet looked into the best way to do this. Maybe we need to create an overlay on both, so that in the future it could be easy to add a new way. (Maybe even support HA notifications between instances for example)

But i do think the nt can be used for both to simplify and consolidate this.

@samb-devel
Copy link
Contributor

@BlackDex thanks for the answer. I get your point. My main concern is that we're not very deep into rust development, We're happy to learn and do, we just need a bit of guidance on the best practices and on how Vaultwarden may develop.

Does it make sense to keep push calls and websocket notifications in two separate files, or should we merge them push.rs and notifications.rs?
Do you see any possible issue in calling the push_folder_update from within the impl WebSocketUsers block, or are there issues of any kind and that should be avoided?

@tessus
Copy link
Contributor

tessus commented Mar 22, 2023

Does it make sense to keep push calls and websocket notifications in two separate files, or should we merge them push.rs and notifications.rs?

I think this is up to you. Everyone has their preference. I don't see an issue to have 2 files. I suspect other reviewers would have already objected otherwise.

Do you see any possible issue in calling the push_folder_update from within the impl WebSocketUsers block, or are there issues of any kind and that should be avoided?

Personally I'd just go for it. It's just a bit of refactoring. But BlackDex also mentioned that a wrapper might be beneficial. However, as a first step, I'd just try adding it to the impl block and see what happens. ;-)

@tessus
Copy link
Contributor

tessus commented May 1, 2023

@GeekCornerGH It seems you are merging main into your PR. You need to rebase it. Currently your PR has so many changes that do not even belong to this PR that it makes reviewing it a real mess. e.g. you added 2 commits. None of them had anything to do with BlackDex's review. But I had to read all of it to find that out, and I might have missed somthing since BlackDex had quite a few comments.

@GeekCornerGH
Copy link
Contributor Author

GeekCornerGH commented May 1, 2023

@GeekCornerGH It seems you are merging main into your PR. You need to rebase it. Currently your PR has so many changes that do not even belong to this PR that it makes reviewing it a real mess. e.g. you added 2 commits. None of them had anything to do with BlackDex's review. But I had to read all of it to find that out, and I might have missed somthing since BlackDex had quite a few comments.

I'm in fact using rebase, not merge. Also I missed BlackDex's comments, as my phone didn't showed the reviews themselves. Checking this rn

Edit: I guess the multiple commits are shown if you had the pull request page open and GitHub caught up the changes.

@tessus
Copy link
Contributor

tessus commented May 1, 2023

I'm in fact using rebase, not merge.

This is very strange then. Maybe I clicked on the wrong button. I think I clicked on Compare instead of the Files changed button at the top.

In that case my apologies. My bad.

@GeekCornerGH GeekCornerGH requested a review from BlackDex May 1, 2023 16:12
@GeekCornerGH GeekCornerGH force-pushed the feature/push-notifications branch 4 times, most recently from 5a290bc to 5fac9f2 Compare May 10, 2023 11:07
@GeekCornerGH
Copy link
Contributor Author

Latest changes were tested against 2 cloned AVD, running the latest apk 2023.05.0

src/api/core/accounts.rs Outdated Show resolved Hide resolved
src/api/core/accounts.rs Outdated Show resolved Hide resolved
src/api/core/accounts.rs Outdated Show resolved Hide resolved
src/api/core/accounts.rs Outdated Show resolved Hide resolved
src/api/core/accounts.rs Outdated Show resolved Hide resolved
src/api/admin.rs Show resolved Hide resolved
src/config.rs Show resolved Hide resolved
.env.template Show resolved Hide resolved
src/api/core/accounts.rs Outdated Show resolved Hide resolved
@BlackDex
Copy link
Collaborator

Looks nice, some final tweaks i think.

src/api/core/accounts.rs Outdated Show resolved Hide resolved
Co-authored-by: samb-devel <125741162+samb-devel@users.noreply.github.com>
Co-authored-by: Zoruk <Zoruk@users.noreply.github.com>
@BlackDex BlackDex merged commit bd883de into dani-garcia:main Jun 12, 2023
3 checks passed
@BlackDex BlackDex mentioned this pull request Jul 9, 2023
59 tasks
arthurgeek pushed a commit to arthurgeek/vaultwarden-fly-template that referenced this pull request Jul 12, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [vaultwarden/server](https://togithub.com/dani-garcia/vaultwarden) |
stage | minor | `1.28.1-alpine` -> `1.29.0-alpine` |

---

### Release Notes

<details>
<summary>dani-garcia/vaultwarden (vaultwarden/server)</summary>

###
[`v1.29.0`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.29.0)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.28.1...1.29.0)

#### Major changes and New Features

- WebSocket notifications now work via the default HTTP port. No need
for `WEBSOCKET_ENABLED` and a separate port anymore.
The proxy examples still need to be updated for this. Support for the
old websockets port 3012 will remain for the time being.
- Mobile Client push notification support, see
[#&#8203;3304](https://togithub.com/dani-garcia/vaultwarden/issues/3304)
thanks [@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH)!
- Web-Vault updated to v2023.5.0 (v2023.5.1 does not add any
improvements for us)
- The latest Bitwarden Directory Connector can be used now
([v2022.11.0](https://togithub.com/bitwarden/directory-connector/releases/tag/v2022.11.0))
- [Storing passkeys](https://bitwarden.com/passwordless-passkeys) is
supported, though the clients are not yet released. So, it might be we
need to make some changes once they are released.
See:
[#&#8203;3593](https://togithub.com/dani-garcia/vaultwarden/issues/3593),
thanks [@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH)!

#### What's Changed

- check if reset password policy is enabled by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3427
- WebSockets via Rocket's Upgrade connection by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3404
- Several config and admin interface fixes by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3436
- Fixed missing footer_text and a few inconsistencies in email templates
by [@&#8203;kennymc-c](https://togithub.com/kennymc-c) in
[dani-garcia/vaultwarden#3439
- Small update to Rocket WebSockets by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3440
- inline static rsa keys by
[@&#8203;vilgotf](https://togithub.com/vilgotf) in
[dani-garcia/vaultwarden#3475
- Update Rust and Crates by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3469
- Change `String` to `&str` for all Rocket functions and some other
fixes by [@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3491
- Use Rocket `v0.5` branch to fix endpoints by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3502
- Use fully qualified image names in Dockerfile by
[@&#8203;gitouche-sur-osm](https://togithub.com/gitouche-sur-osm) in
[dani-garcia/vaultwarden#3505
- policy data should be `null` not an empty object by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3513
- update web-vault to v2023.4.2 by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3522
- Sync global_domains.json (Pinterest) by
[@&#8203;jjlin](https://togithub.com/jjlin) in
[dani-garcia/vaultwarden#3532
- Prevent 401 on main admin page by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3547
- Update crates and GH Workflow by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3548
- Fix collection change ws notifications by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3546
- Update Rust and Crates by
[@&#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#3563
- feat: Implement Push Notifications sync by
[@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH) in
[dani-garcia/vaultwarden#3304
- Implement the Organization API Key support for the new Directory
Connector v2022 by [@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3568
- Add mobile push device filter to non-null push uuid by
[@&#8203;quexten](https://togithub.com/quexten) in
[dani-garcia/vaultwarden#3578
- Update crates and workflow by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3603
- Add group import on invite by
[@&#8203;farodin91](https://togithub.com/farodin91) in
[dani-garcia/vaultwarden#3606
- Fix send access regression by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3608
- feat: Support for storing passkeys in the vault by
[@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH) in
[dani-garcia/vaultwarden#3593
- add user to collection during creation by
[@&#8203;farodin91](https://togithub.com/farodin91) in
[dani-garcia/vaultwarden#3609
- Updated docker run command by
[@&#8203;DenuxPlays](https://togithub.com/DenuxPlays) in
[dani-garcia/vaultwarden#3620
- Added-External_id for Collections by
[@&#8203;fashberg](https://togithub.com/fashberg) in
[dani-garcia/vaultwarden#3623
- fix missing password check while manual reset password enrollment by
[@&#8203;sirux88](https://togithub.com/sirux88) in
[dani-garcia/vaultwarden#3632
- Update crates and small clippy fix by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3649
- fix version when compiled at a specific commit by
[@&#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#3651
- Fix org creation regresion by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3659

#### New Contributors

- [@&#8203;kennymc-c](https://togithub.com/kennymc-c) made their first
contribution in
[dani-garcia/vaultwarden#3439
- [@&#8203;vilgotf](https://togithub.com/vilgotf) made their first
contribution in
[dani-garcia/vaultwarden#3475
- [@&#8203;gitouche-sur-osm](https://togithub.com/gitouche-sur-osm) made
their first contribution in
[dani-garcia/vaultwarden#3505
- [@&#8203;quexten](https://togithub.com/quexten) made their first
contribution in
[dani-garcia/vaultwarden#3578
- [@&#8203;DenuxPlays](https://togithub.com/DenuxPlays) made their first
contribution in
[dani-garcia/vaultwarden#3620
- [@&#8203;fashberg](https://togithub.com/fashberg) made their first
contribution in
[dani-garcia/vaultwarden#3623

**Full Changelog**:
dani-garcia/vaultwarden@1.28.1...1.29.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "on saturday" (UTC), Automerge - At
any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/arthurgeek/vaultwarden-fly-template).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi41LjMiLCJ1cGRhdGVkSW5WZXIiOiIzNi41LjMiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
arthurgeek pushed a commit to arthurgeek/vaultwarden-fly that referenced this pull request Jul 12, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [vaultwarden/server](https://togithub.com/dani-garcia/vaultwarden) |
stage | minor | `1.28.1-alpine` -> `1.29.0-alpine` |

---

### Release Notes

<details>
<summary>dani-garcia/vaultwarden (vaultwarden/server)</summary>

###
[`v1.29.0`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.29.0)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.28.1...1.29.0)

#### Major changes and New Features

- WebSocket notifications now work via the default HTTP port. No need
for `WEBSOCKET_ENABLED` and a separate port anymore.
The proxy examples still need to be updated for this. Support for the
old websockets port 3012 will remain for the time being.
- Mobile Client push notification support, see
[#&#8203;3304](https://togithub.com/dani-garcia/vaultwarden/issues/3304)
thanks [@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH)!
- Web-Vault updated to v2023.5.0 (v2023.5.1 does not add any
improvements for us)
- The latest Bitwarden Directory Connector can be used now
([v2022.11.0](https://togithub.com/bitwarden/directory-connector/releases/tag/v2022.11.0))
- [Storing passkeys](https://bitwarden.com/passwordless-passkeys) is
supported, though the clients are not yet released. So, it might be we
need to make some changes once they are released.
See:
[#&#8203;3593](https://togithub.com/dani-garcia/vaultwarden/issues/3593),
thanks [@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH)!

#### What's Changed

- check if reset password policy is enabled by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3427
- WebSockets via Rocket's Upgrade connection by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3404
- Several config and admin interface fixes by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3436
- Fixed missing footer_text and a few inconsistencies in email templates
by [@&#8203;kennymc-c](https://togithub.com/kennymc-c) in
[dani-garcia/vaultwarden#3439
- Small update to Rocket WebSockets by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3440
- inline static rsa keys by
[@&#8203;vilgotf](https://togithub.com/vilgotf) in
[dani-garcia/vaultwarden#3475
- Update Rust and Crates by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3469
- Change `String` to `&str` for all Rocket functions and some other
fixes by [@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3491
- Use Rocket `v0.5` branch to fix endpoints by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3502
- Use fully qualified image names in Dockerfile by
[@&#8203;gitouche-sur-osm](https://togithub.com/gitouche-sur-osm) in
[dani-garcia/vaultwarden#3505
- policy data should be `null` not an empty object by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3513
- update web-vault to v2023.4.2 by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3522
- Sync global_domains.json (Pinterest) by
[@&#8203;jjlin](https://togithub.com/jjlin) in
[dani-garcia/vaultwarden#3532
- Prevent 401 on main admin page by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3547
- Update crates and GH Workflow by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3548
- Fix collection change ws notifications by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3546
- Update Rust and Crates by
[@&#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#3563
- feat: Implement Push Notifications sync by
[@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH) in
[dani-garcia/vaultwarden#3304
- Implement the Organization API Key support for the new Directory
Connector v2022 by [@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3568
- Add mobile push device filter to non-null push uuid by
[@&#8203;quexten](https://togithub.com/quexten) in
[dani-garcia/vaultwarden#3578
- Update crates and workflow by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3603
- Add group import on invite by
[@&#8203;farodin91](https://togithub.com/farodin91) in
[dani-garcia/vaultwarden#3606
- Fix send access regression by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3608
- feat: Support for storing passkeys in the vault by
[@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH) in
[dani-garcia/vaultwarden#3593
- add user to collection during creation by
[@&#8203;farodin91](https://togithub.com/farodin91) in
[dani-garcia/vaultwarden#3609
- Updated docker run command by
[@&#8203;DenuxPlays](https://togithub.com/DenuxPlays) in
[dani-garcia/vaultwarden#3620
- Added-External_id for Collections by
[@&#8203;fashberg](https://togithub.com/fashberg) in
[dani-garcia/vaultwarden#3623
- fix missing password check while manual reset password enrollment by
[@&#8203;sirux88](https://togithub.com/sirux88) in
[dani-garcia/vaultwarden#3632
- Update crates and small clippy fix by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3649
- fix version when compiled at a specific commit by
[@&#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#3651
- Fix org creation regresion by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3659

#### New Contributors

- [@&#8203;kennymc-c](https://togithub.com/kennymc-c) made their first
contribution in
[dani-garcia/vaultwarden#3439
- [@&#8203;vilgotf](https://togithub.com/vilgotf) made their first
contribution in
[dani-garcia/vaultwarden#3475
- [@&#8203;gitouche-sur-osm](https://togithub.com/gitouche-sur-osm) made
their first contribution in
[dani-garcia/vaultwarden#3505
- [@&#8203;quexten](https://togithub.com/quexten) made their first
contribution in
[dani-garcia/vaultwarden#3578
- [@&#8203;DenuxPlays](https://togithub.com/DenuxPlays) made their first
contribution in
[dani-garcia/vaultwarden#3620
- [@&#8203;fashberg](https://togithub.com/fashberg) made their first
contribution in
[dani-garcia/vaultwarden#3623

**Full Changelog**:
dani-garcia/vaultwarden@1.28.1...1.29.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "on saturday" (UTC), Automerge - At
any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/arthurgeek/vaultwarden-fly-template).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi41LjMiLCJ1cGRhdGVkSW5WZXIiOiIzNi41LjMiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
arthurgeek pushed a commit to arthurgeek/vaultwarden-fly that referenced this pull request Jul 12, 2023
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [vaultwarden/server](https://togithub.com/dani-garcia/vaultwarden) |
stage | minor | `1.28.1-alpine` -> `1.29.0-alpine` |

---

### Release Notes

<details>
<summary>dani-garcia/vaultwarden (vaultwarden/server)</summary>

###
[`v1.29.0`](https://togithub.com/dani-garcia/vaultwarden/releases/tag/1.29.0)

[Compare
Source](https://togithub.com/dani-garcia/vaultwarden/compare/1.28.1...1.29.0)

#### Major changes and New Features

- WebSocket notifications now work via the default HTTP port. No need
for `WEBSOCKET_ENABLED` and a separate port anymore.
The proxy examples still need to be updated for this. Support for the
old websockets port 3012 will remain for the time being.
- Mobile Client push notification support, see
[#&#8203;3304](https://togithub.com/dani-garcia/vaultwarden/issues/3304)
thanks [@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH)!
- Web-Vault updated to v2023.5.0 (v2023.5.1 does not add any
improvements for us)
- The latest Bitwarden Directory Connector can be used now
([v2022.11.0](https://togithub.com/bitwarden/directory-connector/releases/tag/v2022.11.0))
- [Storing passkeys](https://bitwarden.com/passwordless-passkeys) is
supported, though the clients are not yet released. So, it might be we
need to make some changes once they are released.
See:
[#&#8203;3593](https://togithub.com/dani-garcia/vaultwarden/issues/3593),
thanks [@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH)!

#### What's Changed

- check if reset password policy is enabled by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3427
- WebSockets via Rocket's Upgrade connection by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3404
- Several config and admin interface fixes by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3436
- Fixed missing footer_text and a few inconsistencies in email templates
by [@&#8203;kennymc-c](https://togithub.com/kennymc-c) in
[dani-garcia/vaultwarden#3439
- Small update to Rocket WebSockets by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3440
- inline static rsa keys by
[@&#8203;vilgotf](https://togithub.com/vilgotf) in
[dani-garcia/vaultwarden#3475
- Update Rust and Crates by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3469
- Change `String` to `&str` for all Rocket functions and some other
fixes by [@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3491
- Use Rocket `v0.5` branch to fix endpoints by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3502
- Use fully qualified image names in Dockerfile by
[@&#8203;gitouche-sur-osm](https://togithub.com/gitouche-sur-osm) in
[dani-garcia/vaultwarden#3505
- policy data should be `null` not an empty object by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3513
- update web-vault to v2023.4.2 by
[@&#8203;stefan0xC](https://togithub.com/stefan0xC) in
[dani-garcia/vaultwarden#3522
- Sync global_domains.json (Pinterest) by
[@&#8203;jjlin](https://togithub.com/jjlin) in
[dani-garcia/vaultwarden#3532
- Prevent 401 on main admin page by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3547
- Update crates and GH Workflow by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3548
- Fix collection change ws notifications by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3546
- Update Rust and Crates by
[@&#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#3563
- feat: Implement Push Notifications sync by
[@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH) in
[dani-garcia/vaultwarden#3304
- Implement the Organization API Key support for the new Directory
Connector v2022 by [@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3568
- Add mobile push device filter to non-null push uuid by
[@&#8203;quexten](https://togithub.com/quexten) in
[dani-garcia/vaultwarden#3578
- Update crates and workflow by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3603
- Add group import on invite by
[@&#8203;farodin91](https://togithub.com/farodin91) in
[dani-garcia/vaultwarden#3606
- Fix send access regression by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3608
- feat: Support for storing passkeys in the vault by
[@&#8203;GeekCornerGH](https://togithub.com/GeekCornerGH) in
[dani-garcia/vaultwarden#3593
- add user to collection during creation by
[@&#8203;farodin91](https://togithub.com/farodin91) in
[dani-garcia/vaultwarden#3609
- Updated docker run command by
[@&#8203;DenuxPlays](https://togithub.com/DenuxPlays) in
[dani-garcia/vaultwarden#3620
- Added-External_id for Collections by
[@&#8203;fashberg](https://togithub.com/fashberg) in
[dani-garcia/vaultwarden#3623
- fix missing password check while manual reset password enrollment by
[@&#8203;sirux88](https://togithub.com/sirux88) in
[dani-garcia/vaultwarden#3632
- Update crates and small clippy fix by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3649
- fix version when compiled at a specific commit by
[@&#8203;tessus](https://togithub.com/tessus) in
[dani-garcia/vaultwarden#3651
- Fix org creation regresion by
[@&#8203;BlackDex](https://togithub.com/BlackDex) in
[dani-garcia/vaultwarden#3659

#### New Contributors

- [@&#8203;kennymc-c](https://togithub.com/kennymc-c) made their first
contribution in
[dani-garcia/vaultwarden#3439
- [@&#8203;vilgotf](https://togithub.com/vilgotf) made their first
contribution in
[dani-garcia/vaultwarden#3475
- [@&#8203;gitouche-sur-osm](https://togithub.com/gitouche-sur-osm) made
their first contribution in
[dani-garcia/vaultwarden#3505
- [@&#8203;quexten](https://togithub.com/quexten) made their first
contribution in
[dani-garcia/vaultwarden#3578
- [@&#8203;DenuxPlays](https://togithub.com/DenuxPlays) made their first
contribution in
[dani-garcia/vaultwarden#3620
- [@&#8203;fashberg](https://togithub.com/fashberg) made their first
contribution in
[dani-garcia/vaultwarden#3623

**Full Changelog**:
dani-garcia/vaultwarden@1.28.1...1.29.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "on saturday" (UTC), Automerge - At
any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/arthurgeek/vaultwarden-fly-template).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi41LjMiLCJ1cGRhdGVkSW5WZXIiOiIzNi41LjMiLCJ0YXJnZXRCcmFuY2giOiJtYWluIn0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
@tetsumaki
Copy link

I think you should delete EXPOSE 3012 from many Dockerfile here : https://github.com/dani-garcia/vaultwarden/tree/main/docker

@BlackDex
Copy link
Collaborator

I think you should delete EXPOSE 3012 from many Dockerfile here : https://github.com/dani-garcia/vaultwarden/tree/main/docker

For now we don't, since we need a transition from the old to the new way of websockets. And we don't want to break current installations.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet