Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: jitsi/lib-jitsi-meet
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v1898.0.0+7a15afaf
Choose a base ref
...
head repository: jitsi/lib-jitsi-meet
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Jan 15, 2025

  1. Copy the full SHA
    1164ca6 View commit details
  2. Copy the full SHA
    115065f View commit details

Commits on Jan 16, 2025

  1. fix(video-quality) Fixes an issue where outbound resolution can be st…

    …uck at wrong resolution.
    
    The calls to RTCRtpSender.setParameters() are all chained and the current maxHeight is set after the call to setParameters is resolved. If there is another call made to setParameters before the previous one resolves, we can end up passing the wrong maxHeight resulting in the client getting stuck at an unexpected resolution. This issue can be reproduced sometimes  when the users are moving across the main and breakout rooms. TPC.setVideoCodecs() ends up pushing a wrong maxHeight for update when the previous call to setParameters hasn't resolved yet.
    jallamsetty1 committed Jan 16, 2025
    Copy the full SHA
    250ff7e View commit details

Commits on Jan 21, 2025

  1. fix(JPC) skip processing remote audio sources when startSilent

    Avoids having any actual remote audio tracks, which can mess with the
    mobile audio session.
    saghul committed Jan 21, 2025
    Copy the full SHA
    22daa35 View commit details

Commits on Jan 23, 2025

  1. Copy the full SHA
    8a5c1dd View commit details
  2. fix(SDP) Include the trackId in the signaled msid for the source. (#2621

    )
    
    * fix(SDP) Include the trackId in the signaled msid for the source.
    Without the trackID in a=ssrc lines in SDP, older versions of Chrome (108) reject the remote description resulting in endpoint getting kicked out of the conference.
    
    * squash: Fix unit test
    jallamsetty1 authored Jan 23, 2025
    Copy the full SHA
    54592e6 View commit details

Commits on Jan 27, 2025

  1. fix(xmpp) unescape HTML entities in JSON messages

    Jigasi / Jitsi (desktop) seems to encode apostrophes like (&apos or &#39) for
    instance.
    
    This is notably visible in the subtitles.
    
    Normalize it so it's plain UTF-8.
    saghul committed Jan 27, 2025
    Copy the full SHA
    8869b30 View commit details
  2. Copy the full SHA
    ca734af View commit details
  3. fix(codec) Debounce the call that calc codec intersection set. (#2622)

    * fix(codec) Debounce the call that calc codec intersection set.
    Calculate codec intersection set only once per second even when there is a burst of joins/leaves. Also, check for current codec before chaining a codec change operation when codec selection API is used.
    
    * squash: Address review comments
    jallamsetty1 authored Jan 27, 2025
    Copy the full SHA
    dfc23df View commit details

Commits on Jan 28, 2025

  1. feat: Updates userRegion from backend. (#2626)

    * feat: Updates userRegion from backend.
    
    * squash: Update comment.
    
    * squash: Fix options.
    damencho authored Jan 28, 2025
    Copy the full SHA
    0d3304b View commit details

Commits on Jan 31, 2025

  1. Copy the full SHA
    2a5d7fc View commit details

Commits on Feb 4, 2025

  1. Copy the full SHA
    efbc00c View commit details

Commits on Feb 6, 2025

  1. feat(JitsiConference) Allow adding multiple tracks to the conference.

    This should be supported by the backend. This limitation was added here only because of track synchronization issues between JM and LJM. The support is added behind testing.allowMultipleTracks config.js setting
    Fixes #2205
    jallamsetty1 committed Feb 6, 2025
    Copy the full SHA
    b06262d View commit details
  2. feat(ScreenObtainer) add fallback option for Electron

    If the enclosing Jitsi Meet app declares gDM in Electron is supported,
    ignore the `electronUseGetDisplayMedia` config flag and use the gDM
    flow. This facilitates having backwards compatibility since the Electron
    app won't know if the deployment it's about to join has the gDM flow
    support or not.
    saghul committed Feb 6, 2025
    Copy the full SHA
    28c1120 View commit details
  3. fix(ScreenObtainer) improve result handling

    - Lower logger level to warning
    - Use nested conditions
    saghul committed Feb 6, 2025
    Copy the full SHA
    31897f9 View commit details

Commits on Feb 11, 2025

  1. Copy the full SHA
    5c84d56 View commit details

Commits on Feb 12, 2025

  1. fix(ScreenObtainer) fix using gDM with old Electron clients

    Detect if gDM support has been enabled and fallback to the previous gUM
    flow otherwise.
    saghul committed Feb 12, 2025
    Copy the full SHA
    522577a View commit details

Commits on Feb 19, 2025

  1. fix(codec) Fix AV1/VP9 support on Firefox.

    Firefox added support for AV1 with DD and VP9 SVC is also working as expected in Firefox 136.
    jallamsetty1 committed Feb 19, 2025
    Copy the full SHA
    7d484a8 View commit details
  2. fix(SDP) Inject trackID if missing from signaled source info.

    Reconstruct the msid to include both streamId and trackId if its missing from the source signaling. Fixes issue on Chromium < 117 where the remote offer gets rejected and the client gets kicked out of the call.
    jallamsetty1 committed Feb 19, 2025
    Copy the full SHA
    c040dee View commit details

Commits on Feb 20, 2025

  1. fix(electron): Check for unsuported gDM

    Wrong check for unsupported getDisplayMedia when starting screen sharing will cause the app to never fallback to getUserMedia flow. This breaks screen sharing for all old electron clients that do not support getDisplayMedia.
    hristoterezov committed Feb 20, 2025
    Copy the full SHA
    6e9b9c0 View commit details

Commits on Feb 25, 2025

  1. fix(SDP) Add trackID if its missing in msid. (#2667)

    * fix(SDP) Add missing trackID if its missing in msid.
    This is needed for older versions of Chrome. Also skip performance optimizations if encode resolution is missing in the stats.
    
    * squash: address review comments
    jallamsetty1 authored Feb 25, 2025
    Copy the full SHA
    f5964f9 View commit details

Commits on Feb 26, 2025

  1. Copy the full SHA
    719b7d6 View commit details

Commits on Feb 28, 2025

  1. Copy the full SHA
    d6f7ff7 View commit details
  2. fix(TPCUtils): handle missing codec in isRunningInSimulcastMode.

    Aparently we call this for all tracks including for the audio tracks and it is failing with JS error. This leads to "participant unable to unmute".
    hristoterezov authored and damencho committed Feb 28, 2025
    Copy the full SHA
    d4a47d0 View commit details

Commits on Mar 4, 2025

  1. Copy the full SHA
    29f22e6 View commit details

Commits on Mar 10, 2025

  1. Copy the full SHA
    b2d47b0 View commit details

Commits on Mar 12, 2025

  1. feat(rtcstats): Adds a default log collector. (#2678)

    * feat(rtcstats): Adds a default log collector.
    
    * squash: Fix comments.
    
    * squash: Fix comments2.
    
    * squash: Fix comments.
    damencho authored Mar 12, 2025
    Copy the full SHA
    2503153 View commit details

Commits on Mar 14, 2025

  1. Copy the full SHA
    f0e3cb2 View commit details

Commits on Mar 17, 2025

  1. feat(deps) use our forked version of strophe.js

    - Based off 1.5.0, same as we were using before
    - Remove optional dependencies
    - Remove unnecessary dependencies
    
    In addition, in this repo:
    - Bundle the external plugins we are using as they are single JS files
    saghul committed Mar 17, 2025
    Copy the full SHA
    02bc630 View commit details
  2. chore(deps): bump body-parser from 1.19.2 to 1.20.3

    Bumps [body-parser](https://github.com/expressjs/body-parser) from 1.19.2 to 1.20.3.
    - [Release notes](https://github.com/expressjs/body-parser/releases)
    - [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md)
    - [Commits](expressjs/body-parser@1.19.2...1.20.3)
    
    ---
    updated-dependencies:
    - dependency-name: body-parser
      dependency-type: indirect
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and saghul committed Mar 17, 2025
    Copy the full SHA
    c68c03c View commit details
  3. feat: Set AV1 as the preferred video codec.

    This is done in code for desktop clients. Mobile clients will continue to encode VP8 by default
    jallamsetty1 committed Mar 17, 2025
    Copy the full SHA
    c661fde View commit details

Commits on Mar 18, 2025

  1. fix(connectivity) Do not overwrite the packet loss value when video m…

    …uted.
    
    RTCP termination for audio was implemented a while back. This hack is no longer needed.
    jallamsetty1 committed Mar 18, 2025
    Copy the full SHA
    2b08716 View commit details

Commits on Mar 19, 2025

  1. fix(SDP) Do not filter out SSRC 'cname' attributes. (#2695)

    * fix(SDP) Do not filter out SSRC 'cname' attributes.
    Chrome doesn't generate the a=ssrc line with 'msid' attribute when the track is removed from pc and a renegotiation is triggered. As a result a source-remove is sent to the p2p peer when it shouldn't be causing issues on the receiver when the same source is added back to the conference. Fixes toggleCamera on mobile browser not working as expected.
    jallamsetty1 authored Mar 19, 2025
    Copy the full SHA
    763b2c8 View commit details

Commits on Mar 20, 2025

  1. fix(gh) drop old stale.yml file

    We now use GHA for this.
    saghul committed Mar 20, 2025
    Copy the full SHA
    c4a1d9c View commit details
  2. feat(lint) update to eslint-config-jitsi v6

    It already includes all the necessary dependencies and works for JS and
    TS out of the box.
    saghul committed Mar 20, 2025
    Copy the full SHA
    dd36399 View commit details
  3. Copy the full SHA
    e4bad9a View commit details
  4. Copy the full SHA
    3444614 View commit details
  5. Copy the full SHA
    908812f View commit details
  6. Copy the full SHA
    91ae6cb View commit details
  7. Copy the full SHA
    6897105 View commit details
  8. feat(lint) make the linter more spartan

    No warnings are allowed.
    saghul committed Mar 20, 2025
    Copy the full SHA
    6cf27a2 View commit details
  9. Copy the full SHA
    0386de6 View commit details
  10. Copy the full SHA
    2e3a244 View commit details
  11. chore(deps-dev): bump serialize-javascript from 6.0.0 to 6.0.2

    Bumps [serialize-javascript](https://github.com/yahoo/serialize-javascript) from 6.0.0 to 6.0.2.
    - [Release notes](https://github.com/yahoo/serialize-javascript/releases)
    - [Commits](yahoo/serialize-javascript@v6.0.0...v6.0.2)
    
    ---
    updated-dependencies:
    - dependency-name: serialize-javascript
      dependency-type: indirect
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and saghul committed Mar 20, 2025
    Copy the full SHA
    ec76798 View commit details
  12. Copy the full SHA
    2a8647b View commit details
  13. chore(deps-dev): bump webpack from 5.76.0 to 5.98.0

    Bumps [webpack](https://github.com/webpack/webpack) from 5.76.0 to 5.98.0.
    - [Release notes](https://github.com/webpack/webpack/releases)
    - [Commits](webpack/webpack@v5.76.0...v5.98.0)
    
    ---
    updated-dependencies:
    - dependency-name: webpack
      dependency-type: direct:development
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored and saghul committed Mar 20, 2025
    Copy the full SHA
    e244421 View commit details
  14. fix(e2eping) fix linting error

    saghul committed Mar 20, 2025
    Copy the full SHA
    89c627b View commit details

Commits on Mar 21, 2025

  1. Copy the full SHA
    6997701 View commit details
  2. Copy the full SHA
    9a3eab4 View commit details
  3. Copy the full SHA
    d88001b View commit details
Showing with 12,712 additions and 8,441 deletions.
  1. +4 −0 .eslintignore
  2. +1 −4 .eslintrc.js
  3. +0 −27 .github/ISSUE_TEMPLATE/bug-report.md
  4. +75 −0 .github/ISSUE_TEMPLATE/bug.yml
  5. +59 −0 .github/ISSUE_TEMPLATE/enhancement.yml
  6. +43 −0 .github/PULL_REQUEST_TEMPLATE.md
  7. +0 −16 .github/stale.yml
  8. +21 −0 .github/workflows/stale.yml
  9. +20 −0 CONTRIBUTING.md
  10. +33 −5 JitsiConference.js
  11. +23 −22 JitsiConferenceErrors.ts
  12. +3 −1 JitsiConferenceEventManager.js
  13. +4 −0 JitsiConferenceEvents.spec.ts
  14. +55 −41 JitsiConferenceEvents.ts
  15. +1 −1 JitsiConnection.js
  16. +3 −2 JitsiConnectionErrors.ts
  17. +8 −7 JitsiConnectionEvents.ts
  18. +2 −1 JitsiMediaDevicesEvents.ts
  19. +39 −21 JitsiMeetJS.ts
  20. +80 −44 JitsiParticipant.js → JitsiParticipant.ts
  21. +0 −162 JitsiTrackError.js
  22. +158 −0 JitsiTrackError.ts
  23. +3 −0 JitsiTrackErrors.spec.ts
  24. +13 −5 JitsiTrackErrors.ts
  25. +23 −21 JitsiTrackEvents.ts
  26. +5 −4 JitsiTranscriptionStatus.ts
  27. +1 −1 authenticateAndUpgradeRole.js
  28. +6 −0 globals.d.ts
  29. +2 −1 index.js
  30. +45 −23 modules/RTC/{BridgeChannel.js → BridgeChannel.ts}
  31. +5 −5 modules/RTC/JitsiLocalTrack.js
  32. +1 −1 modules/RTC/JitsiRemoteTrack.js
  33. +1 −1 modules/RTC/JitsiTrack.js
  34. +85 −35 modules/RTC/{MockClasses.js → MockClasses.ts}
  35. +1 −1 modules/RTC/RTC.js
  36. +1 −1 modules/RTC/RTCUtils.js
  37. +36 −15 modules/RTC/ScreenObtainer.js
  38. +18 −11 modules/RTC/TPCUtils.js
  39. +36 −24 modules/RTC/TraceablePeerConnection.js
  40. +39 −0 modules/RTCStats/DefaulLogStorage.ts
  41. +60 −24 modules/RTCStats/RTCStats.ts
  42. +7 −6 modules/RTCStats/RTCStatsEvents.ts
  43. +7 −6 modules/browser/BrowserCapabilities.js
  44. +17 −20 modules/connectivity/ConnectionQuality.js
  45. +13 −6 modules/connectivity/{IceFailedHandling.js → IceFailedHandling.ts}
  46. +9 −3 modules/connectivity/{NetworkInfo.js → NetworkInfo.ts}
  47. +15 −17 modules/connectivity/TrackStreamingStatus.ts
  48. +1 −1 modules/detection/ActiveDeviceDetector.js
  49. +11 −10 modules/detection/DetectionEvents.ts
  50. +7 −4 modules/detection/{P2PDominantSpeakerDetection.js → P2PDominantSpeakerDetection.ts}
  51. +1 −1 modules/detection/VADAudioAnalyser.js
  52. +38 −18 modules/detection/{VADReportingService.js → VADReportingService.ts}
  53. +20 −11 modules/detection/{VADTalkMutedDetection.js → VADTalkMutedDetection.ts}
  54. +1 −1 modules/e2ee/E2EEContext.js
  55. +4 −4 modules/e2ee/E2EEErrors.ts
  56. +1 −1 modules/e2ee/KeyHandler.js
  57. +2 −2 modules/e2ee/ManagedKeyHandler.js
  58. +1 −1 modules/e2ee/OlmAdapter.js
  59. +14 −12 modules/e2ee/{SAS.js → SAS.ts}
  60. +1 −2 modules/e2ee/Worker.js
  61. +2 −2 modules/e2ee/crypto-utils.js
  62. +1 −1 modules/e2ee/{utils.js → utils.ts}
  63. +65 −26 modules/e2eping/{e2eping.js → e2eping.ts}
  64. +6 −2 modules/event/{Jvb121EventGenerator.js → Jvb121EventGenerator.ts}
  65. +1 −1 modules/flags/FeatureFlags.ts
  66. +9 −5 modules/litemode/{LiteModeContext.js → LiteModeContext.ts}
  67. +1 −1 modules/proxyconnection/CustomSignalingLayer.js
  68. +1 −1 modules/proxyconnection/ProxyConnectionPC.js
  69. +2 −2 modules/proxyconnection/ProxyConnectionService.js
  70. +1 −1 modules/proxyconnection/constants.ts
  71. +4 −5 modules/qualitycontrol/CodecSelection.js
  72. +93 −20 modules/qualitycontrol/CodecSelection.spec.js
  73. +7 −1 modules/qualitycontrol/MockClasses.ts
  74. +2 −2 modules/qualitycontrol/QualityController.spec.js
  75. +92 −44 modules/qualitycontrol/QualityController.ts
  76. +1 −1 modules/qualitycontrol/ReceiveVideoController.js
  77. +1 −1 modules/qualitycontrol/SendVideoController.js
  78. +25 −16 modules/recording/{RecordingManager.js → RecordingManager.ts}
  79. +0 −19 modules/recording/recordingConstants.js
  80. +41 −0 modules/recording/recordingConstants.ts
  81. +1 −1 modules/red/red.spec.js
  82. +12 −9 modules/red/{red.js → red.ts}
  83. +16 −5 modules/sdp/LocalSdpMunger.js
  84. +5 −21 modules/sdp/LocalSdpMunger.spec.js
  85. +1 −1 modules/sdp/RtxModifier.js
  86. +36 −2 modules/sdp/SDP.js
  87. +1 −1 modules/sdp/SDPUtil.js
  88. +24 −25 modules/sdp/SdpSimulcast.ts
  89. +24 −28 modules/settings/{Settings.js → Settings.ts}
  90. +1 −1 modules/statistics/AnalyticsAdapter.js
  91. +1 −1 modules/statistics/AvgRTPStatsReporter.js
  92. +1 −1 modules/statistics/LocalStatsCollector.js
  93. +1 −1 modules/statistics/PerformanceObserverStats.js
  94. +25 −15 modules/statistics/PreCallTest.ts
  95. +1 −1 modules/statistics/RTPStatsCollector.js
  96. +39 −22 modules/statistics/{SpeakerStats.js → SpeakerStats.ts}
  97. +1 −1 modules/statistics/statistics.js
  98. +18 −11 modules/util/{AsyncQueue.js → AsyncQueue.ts}
  99. +5 −0 modules/util/{EventEmitter.js → EventEmitter.ts}
  100. +11 −5 modules/util/{Listenable.js → Listenable.ts}
  101. +15 −14 modules/util/{MathUtil.js → MathUtil.ts}
  102. +0 −14 modules/util/Retry.js
  103. +14 −0 modules/util/Retry.ts
  104. +19 −9 modules/util/{ScriptUtil.js → ScriptUtil.ts}
  105. +6 −6 modules/util/{StringUtils.js → StringUtils.ts}
  106. +4 −2 modules/util/{TestUtils.js → TestUtils.ts}
  107. +6 −8 modules/util/{UsernameGenerator.js → UsernameGenerator.ts}
  108. +2 −2 modules/version/ComponentsVersions.ts
  109. +1 −1 modules/videosipgw/JitsiVideoSIPGWSession.js
  110. +1 −1 modules/videosipgw/VideoSIPGW.js
  111. +19 −16 modules/videosipgw/VideoSIPGWConstants.ts
  112. +4 −2 modules/watchRTC/WatchRTC.ts
  113. +3 −0 modules/watchRTC/functions.ts
  114. +1 −1 modules/webaudio/AudioMixer.js
  115. +28 −7 modules/xmpp/{AVModeration.js → AVModeration.ts}
  116. +1 −1 modules/xmpp/BreakoutRooms.js
  117. +26 −2 modules/xmpp/ChatRoom.js
  118. +5 −5 modules/xmpp/{ConnectionPlugin.js → ConnectionPlugin.ts}
  119. +34 −19 modules/xmpp/{JingleHelperFunctions.js → JingleHelperFunctions.ts}
  120. +1 −1 modules/xmpp/JingleSession.js
  121. +29 −9 modules/xmpp/JingleSessionPC.js
  122. +8 −7 modules/xmpp/JingleSessionState.ts
  123. +2 −2 modules/xmpp/Lobby.js
  124. +2 −0 modules/xmpp/MediaSessionEvents.spec.ts
  125. +9 −3 modules/xmpp/MediaSessionEvents.ts
  126. +5 −0 modules/xmpp/MockClasses.js
  127. +37 −30 modules/xmpp/{ResumeTask.js → ResumeTask.ts}
  128. +1 −1 modules/xmpp/RoomMetadata.ts
  129. +1 −1 modules/xmpp/SignalingLayerImpl.js
  130. +17 −9 modules/xmpp/XmppConnection.js
  131. +1 −1 modules/xmpp/moderator.js
  132. +235 −0 modules/xmpp/strophe.disco.js
  133. +1 −1 modules/xmpp/strophe.emuc.js
  134. +1 −1 modules/xmpp/strophe.jingle.js
  135. +1 −1 modules/xmpp/strophe.ping.js
  136. +1 −1 modules/xmpp/strophe.rayo.js
  137. +463 −0 modules/xmpp/strophe.stream-management.js
  138. +1 −1 modules/xmpp/strophe.util.js
  139. +6 −3 modules/xmpp/xmpp.js
  140. +9,441 −6,862 package-lock.json
  141. +10 −15 package.json
  142. +0 −46 patches/strophe.js+1.5.0.patch
  143. +1 −0 service/RTC/BridgeVideoType.ts
  144. +1 −0 service/RTC/CameraFacingMode.ts
  145. +1 −0 service/RTC/CodecMimeType.ts
  146. +1 −0 service/RTC/MediaDirection.ts
  147. +7 −6 service/RTC/MediaType.ts
  148. +57 −51 service/RTC/RTCEvents.ts
  149. 0 service/RTC/{Resolutions.js → Resolutions.ts}
  150. +1 −0 service/RTC/SignalingEvents.ts
  151. +37 −30 service/RTC/{SignalingLayer.js → SignalingLayer.ts}
  152. +11 −8 service/RTC/StandardVideoQualitySettings.ts
  153. +1 −0 service/RTC/VideoEncoderScalabilityMode.ts
  154. +1 −0 service/RTC/VideoType.ts
  155. 0 service/authentication/{AuthenticationEvents.js → AuthenticationEvents.ts}
  156. +2 −1 service/connectivity/ConnectionQualityEvents.ts
  157. +2 −0 service/connectivity/Constants.ts
  158. +2 −1 service/e2eping/E2ePingEvents.ts
  159. +5 −0 service/statistics/AnalyticsEvents.spec.ts
  160. +197 −138 service/statistics/AnalyticsEvents.ts
  161. +2 −1 service/statistics/Events.ts
  162. +1 −1 service/statistics/constants.ts
  163. +148 −126 service/xmpp/XMPPEvents.ts
  164. +7 −6 service/xmpp/XMPPExtensioProtocols.ts
  165. +0 −6 webpack-shared-config.js
  166. +3 −5 webpack.config.js
4 changes: 4 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -11,3 +11,7 @@ doc/example/libs/*
# not seem to be a reason why we will want to risk being inconsistent with our
# remaining JavaScript source code.
!.eslintrc.js

*.d.ts
*.spec.ts
*.spec.js
5 changes: 1 addition & 4 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
module.exports = {
parserOptions: {
requireConfigFile: false
},
'extends': [
extends: [
'@jitsi/eslint-config'
]
};
27 changes: 0 additions & 27 deletions .github/ISSUE_TEMPLATE/bug-report.md

This file was deleted.

75 changes: 75 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
name: 🐛 Bug Report
description: Report bugs to fix and improve.
title: "[BUG] <description>"
labels: ["bug"]


body:
- type: textarea
id: description
attributes:
label: Describe the bug.
description: A clear and concise description of what the bug is.
validations:
required: true

- type: textarea
id: expected
attributes:
label: Expected behavior
description: A clear and concise description of what you expected to happen.
validations:
required: true


- type: textarea
id: screenshots
attributes:
label: Screenshots
description: Please add screenshots/video of the bug you faced.
validations:
required: false

- type: textarea
id: reproduce
attributes:
label: How to Reproduce
description: Attach all steps/share a github gist that can help anyone reproduce the bug.
value: |
1. I first did this
2. I then did this
3. And so on . . .
validations:
required: true

- type: dropdown
id: browser
attributes:
label: "🥦 Browser"
description: "What browser are you using?"
options:
- Google Chrome
- Brave
- Microsoft Edge
- Mozilla Firefox
- Safari
- Opera
- Other
validations:
required: false

- type: checkboxes
id: no-duplicate-issues
attributes:
label: "👀 Have you checked for similar open issues?"
options:
- label: "I checked and didn't find similar issue"
required: true

- type: checkboxes
id: check-Community-Forum
attributes:
label: "🏢 Have you checked the Community Forum?"
options:
- label: "please make sure you check https://community.jitsi.org"
required: true
59 changes: 59 additions & 0 deletions .github/ISSUE_TEMPLATE/enhancement.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: 💡 Feature request
description: Suggest an idea for improving lib-jitsi-meet
labels: ["feature-request"]

body:
- type: markdown
attributes:
value: |
Thank you for suggesting an idea to improve lib-jitsi-meet!
**Note**: The decision to implement features lies with the Jitsi team, and not all requests will be accepted.
- type: textarea
id: problem
attributes:
label: What problem are you trying to solve?
description: Explain the issue or limitation that this feature would address.
validations:
required: true

- type: textarea
id: solution
attributes:
label: What solution would you like to see?
description: Describe the behavior or feature you'd like to have.
validations:
required: true

- type: textarea
id: alternative
attributes:
label: Is there an alternative?
description: Describe any alternative solutions or features you have considered.
validations:
required: false

- type: textarea
id: implementation
attributes:
label: How could this be implemented?
description: Suggest how this feature could be designed or integrated.
validations:
required: false

- type: textarea
id: screenshots
attributes:
label: Screenshots
description: Please add screenshots if applicable.
validations:
required: false

- type: checkboxes
id: check-Community-Forum
attributes:
label: "🏢 Have you checked the Community Forum?"
options:
- label: "please make sure you check https://community.jitsi.org"
required: true
43 changes: 43 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<!--- Provide a general summary of your changes in the Title above -->

## Description

<!--- Describe your changes in detail -->

## Related Issue

<!--- This project only accepts pull requests related to open issues -->
<!--- If suggesting a new feature or change, please discuss it in an issue first -->
<!--- If fixing a bug, there should be an issue describing it with steps to reproduce -->
<!--- Please link to the issue here: -->

## Motivation and Context

<!--- Why is this change required? What problem does it solve? -->

## How Has This Been Tested?

<!--- Please describe in detail how you tested your changes. -->
<!--- Include details of your testing environment, and the tests you ran to -->
<!--- see how your change affects other areas of the code, etc. -->

## Screenshots or GIF (In case of UI changes):

## Types of changes

<!--- What types of changes does your code introduce? Put an `x` in all the boxes that apply: -->

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)

## Checklist:

<!--- Go over all the following points, and put an `x` in all the boxes that apply. -->
<!--- If you're unsure about any of these, don't hesitate to ask. We're here to help! -->

- [ ] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [ ] I have added tests to cover my changes.
- [ ] All new and existing tests passed.
16 changes: 0 additions & 16 deletions .github/stale.yml

This file was deleted.

21 changes: 21 additions & 0 deletions .github/workflows/stale.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: 'Close stale issues and PRs'
on:
schedule:
- cron: '30 1 * * *'

jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v8
with:
stale-issue-message: 'This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.'
stale-pr-message: 'This PR has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.'
stale-issue-label: 'stale'
stale-pr-label: 'stale'
exempt-issue-labels: 'confirmed'
exempt-pr-labels: 'confirmed'
days-before-issue-stale: 60
days-before-pr-stale: 90
days-before-issue-close: 10
days-before-pr-close: 10
20 changes: 20 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Follow Our Updated Guide to See How You Can Contribute

**Hello there! 👋**

We're thrilled that you're eager to contribute to Lib Jitsi Meet! ❤️

Your interest in improving our platform means a lot to us. To ensure your contributions align seamlessly with our goals and processes, we've recently updated our guide. This guide will provide you with clear instructions on how to get involved effectively.

### 📖 Get Started

Ready to get started? Head over to our [Jitsi Meet Handbook](https://jitsi.github.io/handbook/docs/dev-guide/dev-guide-contributing/) and let's make Lib Jitsi Meet even better together!

### 💬 Join the Discussion

Have questions or need help? Join our community discussions on the [Jitsi Forum](https://community.jitsi.org/) where contributors and maintainers can assist you.

### ❗️Additional Note
Before sending us your code, double-check that it meets our coding standards. You can do this by running a command: `npm run lint`. If there are any issues, don't worry! You can fix them by running: `npm run lint-fix`. Once your code passes these checks, feel free to submit your pull request.

**Happy coding!**
Loading