webapp issueshttps://gitlab.com/gitterHQ/webapp/-/issues2020-09-02T02:34:08Zhttps://gitlab.com/gitterHQ/webapp/-/issues/2364Clicking notification changes URL but doesn't load room2020-09-02T02:34:08ZNaftoli GugenheimClicking notification changes URL but doesn't load roomWhen I click a browser notification popup from Gitter in chrome, it updates the URL in the address bar but the page stays on the same room instead of going to the URL.
## Relevant code
- [`public/js/components/user-notifications.js...When I click a browser notification popup from Gitter in chrome, it updates the URL in the address bar but the page stays on the same room instead of going to the URL.
## Relevant code
- [`public/js/components/user-notifications.js`](https://gitlab.com/gitlab-org/gitter/webapp/-/blob/c4888231939afb2addcd97ae1f9a18a8429877e3/public/js/components/user-notifications.js)
- [`public/js/components/spa-room-switcher.js`](https://gitlab.com/gitlab-org/gitter/webapp/-/blob/c4888231939afb2addcd97ae1f9a18a8429877e3/public/js/components/spa-room-switcher.js)Backloghttps://gitlab.com/gitterHQ/webapp/-/issues/2333Quoting a message temporarily disables all message context menus2020-11-16T02:06:38ZTomas Viktvik@gitlab.comQuoting a message temporarily disables all message context menusAfter selecting *Quote* from the message context menu, the context menu can't be opened on any message.
There are no error logs in the console.
The issue is temporary and disappears after removing all text from the message input box.
...After selecting *Quote* from the message context menu, the context menu can't be opened on any message.
There are no error logs in the console.
The issue is temporary and disappears after removing all text from the message input box.
![Kapture_2019-11-04_at_8.59.34](/uploads/645d58fa91d370786a8f11d78104589a/Kapture_2019-11-04_at_8.59.34.gif)https://gitlab.com/gitterHQ/webapp/-/issues/2301Use uploaded avatar for a community linked to a GitHub org2020-10-19T02:11:06ZTomas Viktvik@gitlab.comUse uploaded avatar for a community linked to a GitHub orgOriginally discovered in https://gitlab.com/gitlab-org/gitter/webapp/issues/2300#issue-2-the-avatar-upload-shouldnt-be-enabled-for-github-communities
**Problem:** Admins upload an avatar for a community, but that avatar isn't used.
The...Originally discovered in https://gitlab.com/gitlab-org/gitter/webapp/issues/2300#issue-2-the-avatar-upload-shouldnt-be-enabled-for-github-communities
**Problem:** Admins upload an avatar for a community, but that avatar isn't used.
The upload logic doesn't attach `avatarUrl` to communities that are linked with GitHub Orghttps://gitlab.com/gitterHQ/webapp/-/issues/2241Bitbucket integration setup is failing - Bitbucket API v1 is deprecated - Int...2020-09-02T02:52:18ZEric Eastwoodcontact@ericeastwood.comBitbucket integration setup is failing - Bitbucket API v1 is deprecated - InternalOAuthError: failed to fetch user profileBitbucket integration setup is failing - Bitbucket API v1 is deprecated - InternalOAuthError: failed to fetch user profile
https://sentry.gitlab.net/gitlab/gitter-webhooks/issues/800183
```
InternalOAuthErrorpassport-bitbucket.lib.pass...Bitbucket integration setup is failing - Bitbucket API v1 is deprecated - InternalOAuthError: failed to fetch user profile
https://sentry.gitlab.net/gitlab/gitter-webhooks/issues/800183
```
InternalOAuthErrorpassport-bitbucket.lib.passport-bitbucket:strategy in null.<anonymous>
failed to fetch user profile (status: 410 data: {"type": "error", "error": {"message": "Resource removed", "detail": "This API is no longer supported.\n\nFor information about its removal, please refer to the deprecation notice at: https://developer.atlassian.com/cloud/bitbucket/deprecation-notice-v1-apis/"}})
InternalOAuthError
{
oauthError: {
data: {"type": "error", "error": {"message": "Resource removed", "detail": "This API is no longer supported.\n\nFor information about its removal, please refer to the deprecation notice at: https://developer.atlassian.com/cloud/bitbucket/deprecation-notice-v1-apis/"}},
statusCode: 410
}
}
```
Ending URL: `https://webhooks.gitter.im/bitbucket/auth/callback?oauth_verifier=xxx&oauth_token=xxx`
![](https://i.imgur.com/v3wnjxj.gif)
---
- https://gitter.zendesk.com/agent/tickets/11267
## Relevant code
The [current Bitbucket integration is in the private `gitter-webhooks-handler` project](https://gitlab.com/gitlab-org/gitter/gitter-webhooks-handler/tree/5b56afbcb82b6e3935a3130201426a9a117e33ea/services/bitbucket) but we would accept a merge request to add a new Bitbucket integration in our public services repo, https://gitlab.com/gitlab-org/gitter/serviceshttps://gitlab.com/gitterHQ/webapp/-/issues/2197TimeoutError: Websocket connect timeout2020-09-02T02:57:20ZGitter BadgerTimeoutError: Websocket connect timeoutI don't think this error is necessarily bad(because some clients will be bound to fallback to other methods like `long-polling`) but not sure why we are seeing it more now
- https://sentry.gitlab.net/gitlab/gitter-frontend/issues/1086...I don't think this error is necessarily bad(because some clients will be bound to fallback to other methods like `long-polling`) but not sure why we are seeing it more now
- https://sentry.gitlab.net/gitlab/gitter-frontend/issues/1086413/
- https://sentry.gitlab.net/gitlab/gitter-frontend/issues/844237/
- https://sentry.gitlab.net/gitlab/gitter-frontend/issues/829130/
- https://sentry.gitlab.net/gitlab/gitter-frontend/issues/834151/
- https://sentry.gitlab.net/gitlab/gitter-frontend/issues/829137/
```
TimeoutError: Websocket connect timeout
at None (/dereneaton/ipyrad)
```
## Relevant code
- https://gitlab.com/gitlab-org/gitter/halley/blob/b759e5717a7938675246225c85639befd4ae843b/lib/transport/base-websocket.js#L156
## Cause
This started 2019-7-2, the [day we released](https://gitlab.com/gitlab-org/gitter/webapp/-/tags/19.53.0) [Gitter 19.53.0](https://gitlab.com/gitlab-org/gitter/webapp/blob/develop/CHANGELOG.md#19530-2019-6-27)
> Update `halley@0.7.0` -> `gitter-realtime-client@2.1.0` so `websocket` transport is chosen over `long-polling`, https://gitlab.com/gitlab-org/gitter/webapp/merge_requests/1453
> - https://gitlab.com/gitlab-org/gitter/realtime-client/merge_requests/24
> - https://gitlab.com/gitlab-org/gitter/halley/merge_requests/10
>
> https://gitlab.com/gitlab-org/gitter/webapp/blob/develop/CHANGELOG.md#19530-2019-6-27
![](https://i.imgur.com/iNikDUF.png)
Seems to only be happening for mobile devices, iPad, iPhone, "Smartphone"
![](https://i.imgur.com/6uTjPEm.gif)
![](https://i.imgur.com/Ql108EX.gif)https://gitlab.com/gitterHQ/webapp/-/issues/2196Improve flow when you don't have any communities to create a room in2020-09-02T02:57:23ZJames Ramsay (ex-GitLab)Improve flow when you don't have any communities to create a room inClicking create room, flashes the create room modal but then takes me to create community interface which is confusing
## Problem
I wanted to start a chat with a few people, so I:
- clicked the **+** button
- clicked **New Room**
##...Clicking create room, flashes the create room modal but then takes me to create community interface which is confusing
## Problem
I wanted to start a chat with a few people, so I:
- clicked the **+** button
- clicked **New Room**
## Expected
I should be able to create a new Gitter room
## Actual
The **New Room** modal opened, but then immediately a full screen interface appeared over the top to create a **New Community**
Either:
1. There is a bug, and I should be able to create a new room, or
1. There is a lack of feedback explaining that I need to be owner/admin of a community before I create a room, and that rooms must be part of a community
## Proposal
If you have no communities, we can have the `Create room` option disabled with an extra `(create a community first, 0 communities)` labelBackloghttps://gitlab.com/gitterHQ/webapp/-/issues/2132Alt-clicking timestamp does not insert permalink markdown into currently acti...2020-10-19T02:11:22ZBenAlt-clicking timestamp does not insert permalink markdown into currently active edit field on occasionOccasionally, alt-clicking the timestamp next to a message does not cause its permalink to be inserted into the currently active input field.
Restarting the Gitter client fixes the issue.
The next time this happens, I'll check the Deve...Occasionally, alt-clicking the timestamp next to a message does not cause its permalink to be inserted into the currently active input field.
Restarting the Gitter client fixes the issue.
The next time this happens, I'll check the Developer Tools console to see if any kind of error is generated.
At this point, it's unclear whether this problem is specific to the desktop client, to Windows, to both, or to neither.https://gitlab.com/gitterHQ/webapp/-/issues/2130Some links are parsing trailing parenthesis character2020-10-19T02:11:23ZGeorge TsiolisSome links are parsing trailing parenthesis characterHaven't figured out how to easily reproduce this. For example, see the video link in https://gitter.im/gitlabhq/contributors?at=5ccabbc81cd0b8307dabf007.
Input:
```md
(https://a.com) or see (see https://b.com)
```
Result:
```html
(<a...Haven't figured out how to easily reproduce this. For example, see the video link in https://gitter.im/gitlabhq/contributors?at=5ccabbc81cd0b8307dabf007.
Input:
```md
(https://a.com) or see (see https://b.com)
```
Result:
```html
(<a href="https://a.com" rel="nofollow noopener noreferrer" target="_blank" class="link">https://a.com</a>) or see (see <a href="https://b.com)" rel="nofollow noopener noreferrer" target="_blank" class="link">https://b.com)</a>
```
![](https://i.imgur.com/oxLDyYa.png)
### Relevant code
- https://gitlab.com/gitlab-org/gitter/gitter-markdown-processor
- https://gitlab.com/gitlab-org/gitter/gitter-markedhttps://gitlab.com/gitterHQ/webapp/-/issues/1919Fix Elasticsearch indexes/rivers in local dev Docker container (search)2022-02-18T22:35:35ZEric Eastwoodcontact@ericeastwood.comFix Elasticsearch indexes/rivers in local dev Docker container (search)Currently the Elasticsearch indexes and rivers in the local dev Docker `webapp_elasticsearch_1` container do not work. Elasticsearch drivers search for rooms, messages, users
**http://localhost:9200/_plugin/head/**
<img src="https://i....Currently the Elasticsearch indexes and rivers in the local dev Docker `webapp_elasticsearch_1` container do not work. Elasticsearch drivers search for rooms, messages, users
**http://localhost:9200/_plugin/head/**
<img src="https://i.imgur.com/xk071Iz.png" width="50%">
**http://localhost:9200/_plugin/river-mongodb/**
<img src="https://i.imgur.com/sSTPjw3.png" width="50%">
## Dev notes
Diving into the Elasticsearch container, it can access `mongo1` which is [linked in the Docker compose config](https://gitlab.com/gitterHQ/webapp/-/blob/226d1849982869bf1fc0461871c83831d764cda4/docker-compose.yml#L55-56)
```sh
$ docker exec -it webapp_elasticsearch_1 /bin/bash
$ curl mongo1:27017
It looks like you are trying to access MongoDB over HTTP on the native driver port.
```
### More logging
Add some `elasticsearch-river-mongodb` log tracing (via https://github.com/richardwilly98/elasticsearch-river-mongodb/wiki#troubleshooting)
Add the config
<details>
<summary>Commands to add config</summary>
```sh
$ docker exec -it webapp_elasticsearch_1 /bin/bash
$ cat << 'EOF' > /usr/share/elasticsearch/config/logging.yml
rootLogger: INFO,console
logger:
river.mongodb: TRACE
rest.action: TRACE
org.elasticsearch.river.mongodb: TRACE
appender:
console:
type: console
layout:
type: consolePattern
conversionPattern: "[%d{ISO8601}][%-5p][%-25c] %m%n"
EOF
```
</details>
View the logs:
```sh
$ docker exec -it webapp_elasticsearch_1 /bin/bash
$ cat /data/es/logs/es-command-output.log
```
### Does Mongo have a replica set/oplog?
The `elasticsearch-river-mongodb` wiki says to ["Make sure to enable replica set"](https://github.com/richardwilly98/elasticsearch-river-mongodb/wiki#troubleshooting).
Seems like it is working ✅
```sh
$ mongo gitter
> use local
> db.oplog.rs.count()
313148
> rs.printReplicationInfo()
configured oplog size: 1978.281982421875MB
log length start to end: 43687232secs (12135.34hrs)
oplog first event time: Thu Oct 01 2020 04:07:09 GMT+0000 (UTC)
oplog last event time: Fri Feb 18 2022 19:27:41 GMT+0000 (UTC)
now: Fri Feb 18 2022 19:27:44 GMT+0000 (UTC)
> db.getReplicationInfo()
{
"logSizeMB" : 1978.281982421875,
"usedMB" : 66.43,
"timeDiff" : 43687232,
"timeDiffHours" : 12135.34,
"tFirst" : "Thu Oct 01 2020 04:07:09 GMT+0000 (UTC)",
"tLast" : "Fri Feb 18 2022 19:27:41 GMT+0000 (UTC)",
"now" : "Fri Feb 18 2022 19:27:55 GMT+0000 (UTC)"
}
> rs.status()
{
"set" : "troupeSet",
"date" : ISODate("2022-02-18T20:28:24.704Z"),
"myState" : 1,
"term" : NumberLong(43),
"heartbeatIntervalMillis" : NumberLong(2000),
"members" : [
{
"_id" : 0,
"name" : "127.0.0.1:27017",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 1628737,
"optime" : {
"ts" : Timestamp(1645214524, 9),
"t" : NumberLong(43)
},
"optimeDate" : ISODate("2022-02-18T20:02:04Z"),
"electionTime" : Timestamp(1643587368, 1),
"electionDate" : ISODate("2022-01-31T00:02:48Z"),
"configVersion" : 1,
"self" : true
}
],
"ok" : 1
}
```https://gitlab.com/gitterHQ/webapp/-/issues/1834Twitter/GitLab user data not being updated on sign in2022-06-15T17:35:09ZEric Eastwoodcontact@ericeastwood.comTwitter/GitLab user data not being updated on sign inFor Twitter/GitLab, it looks like we only update the `identity` that backs the user and not the `user` itself. This means that if you change your username or avatar, it never gets updated when you sign in again.
- Calls `userService.fi...For Twitter/GitLab, it looks like we only update the `identity` that backs the user and not the `user` itself. This means that if you change your username or avatar, it never gets updated when you sign in again.
- Calls `userService.findOrCreateUserForProvider(twitterUser, twitterIdentity)`, [`server/web/strategies/twitter.js#L36`](https://gitlab.com/gitlab-org/gitter/webapp/blob/599aa0d3fd638d43eef0f9c0d8758481f592e1f3/server/web/strategies/twitter.js#L36)
- `findOrCreateUserForProvider` upserts the user object with `$setOnInsert` **(I think this should just be `$set`)**, [`server/services/user-service.js#L140`](https://gitlab.com/gitlab-org/gitter/webapp/blob/599aa0d3fd638d43eef0f9c0d8758481f592e1f3/server/services/user-service.js#L140)
Whereas with GitHub, we update the user object all the time, [`server/web/strategies/github-user.js#L68`](https://gitlab.com/gitlab-org/gitter/webapp/blob/599aa0d3fd638d43eef0f9c0d8758481f592e1f3/server/web/strategies/github-user.js#L68)
---
To access Mongo locally:
```sh
$ mongo localhost:27017
> use gitter
> db.users.findOne({ username: 'MadLittleMods_gitlab' })
```https://gitlab.com/gitterHQ/webapp/-/issues/1528Searching for messages with `from:xxx` giving no results for my username2021-11-02T19:45:02ZantonioaltamuraSearching for messages with `from:xxx` giving no results for my usernameI tried to search for the my messages using `from:antonioaltamura` in https://gitter.im/gitterHQ/gitter but no results are returned.
I do have messages in that room such as:
- :point_up: [November 17, 2016 10:36 AM](https://gitter.im...I tried to search for the my messages using `from:antonioaltamura` in https://gitter.im/gitterHQ/gitter but no results are returned.
I do have messages in that room such as:
- :point_up: [November 17, 2016 10:36 AM](https://gitter.im/gitterHQ/gitter?at=582ddc79188c9f4427f633a1)
- :point_up: [November 17, 2016 8:57 AM](https://gitter.im/gitterHQ/gitter?at=582dc54f188c9f4427f62435)
---
- timeout
- search
- from syntax
## Workaround
Since the Gitter search is full Elasticsearch syntax, you can try using `fromUserId:5c40d41ad73408ce4fb51ea9` and seems to be more reliable.
You can find someone's `userId` by inspecting their avatar with the browser devtools and looking for the `avatar-5c40d41ad73408ce4fb51ea9` class.
```html
<div class="trpDisplayPicture avatar-5c40d41ad73408ce4fb51ea9 avatar-s " aria-label="Daniel Nicolai">
<img src="https://avatars0.githubusercontent.com/u/18429791?v=4&s=30" srcset="https://avatars0.githubusercontent.com/u/18429791?v=4&s=60 2x" height="30" width="30" class="avatar__image" alt="" aria-label="Daniel Nicolai">
</div>
```
## Relevant code
- https://gitlab.com/gitlab-org/gitter/webapp/blob/a416606a9b2b31c63f76c0fdc238ffaf0a231dec/modules/chats/lib/chat-search-service.js#L11-42
- https://gitlab.com/gitlab-org/gitter/webapp/blob/a416606a9b2b31c63f76c0fdc238ffaf0a231dec/modules/elasticsearch/lib/chats-for-room-search.js#L37-49
You won't be able to debug this locally until https://gitlab.com/gitlab-org/gitter/webapp/issues/1919 is fixed thoughhttps://gitlab.com/gitterHQ/webapp/-/issues/973Searching for the full name of a repo room does not work2021-11-02T19:49:10ZAndrew Newdigateandrew@gitlab.comSearching for the full name of a repo room does not work*Created by: niemela*
If I search for the full name of a repository with a room (specifically, I was searching for `finnp/gitter-irc-bot`) I get nothing. If I search for either `finnp` or `gitter-irc-bot` I'll get several hits, among th...*Created by: niemela*
If I search for the full name of a repository with a room (specifically, I was searching for `finnp/gitter-irc-bot`) I get nothing. If I search for either `finnp` or `gitter-irc-bot` I'll get several hits, among them the correct one.
(On a side note, it's very unclear that the only way to go to a new room/channel is to search. The design of the Mac client is such that the search field clearly feels like a part of the current room/channel and not something on the global level. As such I would not expect a search there to find rooms/channels).https://gitlab.com/gitterHQ/webapp/-/issues/972Search breaks after searching and clicking "gitter"2021-11-02T19:47:22ZRaine VirtaSearch breaks after searching and clicking "gitter"> if you search for "gitter", and click the first result which should be the user with gravatar placeholder icon, the search no longer works in the new view> if you search for "gitter", and click the first result which should be the user with gravatar placeholder icon, the search no longer works in the new view