| Age | Commit message (Collapse) | Author |
|
Updated by "Remove blank strings" hook in Weblate.
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/invidious/translations/
Translation: Invidious/Invidious Translations
|
|
* CI: Bump Crystal version matrix
- 1.12.1 -> 1.12.2
- 1.13.2 -> 1.13.3
- 1.14.0 -> 1.14.1
- 1.15.0 -> 1.15.1
- Add 1.16.3
* Update Crystal 1.16.2 to 1.16.3
https://github.com/crystal-lang/crystal/releases/tag/1.16.3
|
|
Bumps crystallang/crystal from 1.16.2-alpine to 1.16.3-alpine.
---
updated-dependencies:
- dependency-name: crystallang/crystal
dependency-version: 1.16.3-alpine
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
This reverts commit aab6ff4bb6e4d3174ab812e5a2cdeec841d2358e.
|
|
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>
|
|
This commit automates the process of documenting the licenses of
Invidious Javascript files through a compile time macro in the
licenses.ecr template file.
This should hopefully help keep the license documentation up-to-date
and allow extensions like LibreJS to always be able to load the latest
Javascript files of Invidious.
Currently only Invidious's first-party Javascript files are supported.
In the future it should be possible to leverage videojs-dependencies.yml
to automatically document the Javascript licenses for
VideoJS and co. as well.
|
|
|
|
Fixes https://github.com/iv-org/invidious/issues/5142
add reason why extra_media_csp is after reading user preferences from the database and cookies
set media-src after loading database user preferences
|
|
|
|
Bumps crystallang/crystal from 1.12.2-alpine to 1.16.2-alpine.
---
updated-dependencies:
- dependency-name: crystallang/crystal
dependency-version: 1.16.2-alpine
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
|
|
Bumps [crystal-lang/install-crystal](https://github.com/crystal-lang/install-crystal) from 1.8.0 to 1.8.2.
- [Release notes](https://github.com/crystal-lang/install-crystal/releases)
- [Commits](https://github.com/crystal-lang/install-crystal/compare/v1.8.0...v1.8.2)
---
updated-dependencies:
- dependency-name: crystal-lang/install-crystal
dependency-version: 1.8.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5 to 6.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v5...v6)
---
updated-dependencies:
- dependency-name: docker/build-push-action
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps alpine from 3.20 to 3.21.
---
updated-dependencies:
- dependency-name: alpine
dependency-version: '3.21'
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [actions/cache](https://github.com/actions/cache) from 3 to 4.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v3...v4)
---
updated-dependencies:
- dependency-name: actions/cache
dependency-version: '4'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Bumps [actions/stale](https://github.com/actions/stale) from 8 to 9.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v8...v9)
---
updated-dependencies:
- dependency-name: actions/stale
dependency-version: '9'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
|
|
Fixes https://github.com/iv-org/invidious/issues/5095
On some videos, `label` is missing from the video information. Invidious
assumed that the `label` key existed.
Videos with label have this inside `metadataBadgeRenderer`:
```
{"style" => "BADGE_STYLE_TYPE_SIMPLE",
"label" => "4K",
"trackingParams" => "COMDENwwGAoiEwiCrebe6JWNAxWIxz8EHSQRFTU="}
```
but other videos, for some reason, look like this:
```
{"icon" => {"iconType" => "PERSON_RADAR"},
"style" => "BADGE_STYLE_TYPE_SIMPLE",
"trackingParams" => "CM4DENwwGAsiEwiCrebe6JWNAxWIxz8EHSQRFTU="}
```
|
|
fixes #5273
|
|
Fixes https://github.com/iv-org/invidious/issues/5097
|
|
Fix that a user of my instance (https://inv.nadeko.net) sent me by email.
|
|
|
|
Update the comments in the example config to show that the companion secret key must be exactly 16 characters long as per https://github.com/iv-org/invidious-companion/pull/81#issuecomment-2750675405.
|
|
|
|
|
|
|
|
|
|
|
|
Remove explicit `self.` from #process of parsers
Remove explicit return tuple in get_issue_template
Fix formatting
Move inline issue template style to stylesheet
Use @id in ProblematicTimelineItem xml repr
Fix naming
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Also makes it show the error backtrace
|
|
The CSS for the search filters details box was applied to every
detail element when search.css is loaded
|
|
Prior to this commit, if even a single item fails to parse Invidious
will throw out an error. This means that even if everything else
on a page can be parsed and rendered without issues, the single
problematic item will cause the entire page to be unusable.
This commit gracefully handles parse errors by catching and then
replacing the problematic item with a new "timeline error" object
that represents the parse error. This will allow the rest of the page
to be rendered and an error card that will replace the location of the
problematic item.
|
|
|
|
* add support for invidious companion
* redirect latest_version and dash manifest to invidious companion
* fix Shadowing outer local variable `response`
* fixing condition for Content-Security-Policy
* throw error if inv_sig_helper and invidious_companion used same time
* Use sample instead of Random.rand
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>
* Remove debug puts functions
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>
* modify the description for config.example.yaml about invidious companion
* move config checks for invidious companion
* separate invidious_companion logic + better config.yaml config
* fixing "end" misplacement
* fix linting + use .empty?
* crystal handle decompression already by itself
* fix download function when invidious companion used
* fix linting
* invidious companion always used so always add CSP and redirect latest_version
* apply all the suggestions + rework invidious_companion parameter
* format watch.cr
* fix ameba Redundant use of `Object#to_s` in interpolation
* add ability for invidious companion to check request from invidious
* Better document private_url and public_url
* Better doc for invidious_companion_key
* !empty? to present?
* skip proxy for invidious companion
* fixing format
* missing ,
* add companion pooling http
* fix: don't use http proxy when sending requests to companion
* fix: logic where we want to have the invidious logic if companion is not used
* chore: remove baseurl usage from invidious companion
* chore: change from inv-sig-helper to companion for required playback
* fix: use puts + add warning for inv-sig-helper deprecated
---------
Co-authored-by: syeopite <70992037+syeopite@users.noreply.github.com>
|
|
* Release v2.20250314.0
* Update CHANGELOG.md
|
|
configured (#5202)
* Warn when required configs for playback is missing
* Add link to documentation in warnings
* Direct users to /installation instead
|
|
The crystal compiler seems to evaluate `require` in an alphabetical way,
so if anyone in the future, wants to add another job and that job is
above `base_job.cr` in alphabetical order, the compiler is going to fail
with `Error: undefined constant: Invidious::Jobs::BaseJob`.
This doesn't fix anything, but it will prevent a future headache.
|
|
|
|
Invidious does not currently support non-livestream hls playback
Originally, the HLS manifest check was essentially a boolean:
if the HLS manifest field was present, it was assumed to be a
livestream. Some videos include the HLS Manifest but aren't
livestreams.
In the case where they are livestreams, the video contains a videoType
field with the value "Livestream". In the case that they're normal
videos, the videoType is "Video". This is exposed via the
`video.live_now` property.
This commit just checks that `video.live_now` is true before treating
it as a livestream
|
|
|
|
|